@needle-tools/engine 2.29.0-pre → 2.30.0-pre

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 (85) hide show
  1. package/CHANGELOG.md +9 -0
  2. package/dist/needle-engine.d.ts +44 -8
  3. package/dist/needle-engine.js +347 -343
  4. package/dist/needle-engine.js.map +4 -4
  5. package/dist/needle-engine.min.js +20 -16
  6. package/dist/needle-engine.min.js.map +4 -4
  7. package/lib/engine/engine.d.ts +1 -0
  8. package/lib/engine/engine_serialization.d.ts +1 -0
  9. package/lib/engine/engine_serialization.js +1 -0
  10. package/lib/engine/engine_serialization.js.map +1 -1
  11. package/lib/engine/engine_setup.d.ts +5 -0
  12. package/lib/engine/engine_setup.js +6 -0
  13. package/lib/engine/engine_setup.js.map +1 -1
  14. package/lib/engine/engine_utils.d.ts +1 -1
  15. package/lib/engine/engine_utils.js +25 -8
  16. package/lib/engine/engine_utils.js.map +1 -1
  17. package/lib/engine/extensions/NEEDLE_deferred_texture.d.ts +1 -1
  18. package/lib/engine/extensions/NEEDLE_deferred_texture.js +26 -14
  19. package/lib/engine/extensions/NEEDLE_deferred_texture.js.map +1 -1
  20. package/lib/engine/extensions/extension_utils.js +24 -13
  21. package/lib/engine/extensions/extension_utils.js.map +1 -1
  22. package/lib/engine/extensions/extensions.js +3 -1
  23. package/lib/engine/extensions/extensions.js.map +1 -1
  24. package/lib/engine-components/Camera.js +7 -0
  25. package/lib/engine-components/Camera.js.map +1 -1
  26. package/lib/engine-components/OrbitControls.js +2 -1
  27. package/lib/engine-components/OrbitControls.js.map +1 -1
  28. package/lib/engine-components/Renderer.d.ts +1 -0
  29. package/lib/engine-components/Renderer.js +10 -3
  30. package/lib/engine-components/Renderer.js.map +1 -1
  31. package/lib/engine-components/ScreenCapture.d.ts +1 -0
  32. package/lib/engine-components/ScreenCapture.js +265 -1
  33. package/lib/engine-components/ScreenCapture.js.map +1 -1
  34. package/lib/engine-components/SpectatorCamera.js +29 -5
  35. package/lib/engine-components/SpectatorCamera.js.map +1 -1
  36. package/lib/engine-components/SyncedRoom.js +2 -0
  37. package/lib/engine-components/SyncedRoom.js.map +1 -1
  38. package/lib/engine-components/VideoPlayer.d.ts +10 -1
  39. package/lib/engine-components/VideoPlayer.js +64 -15
  40. package/lib/engine-components/VideoPlayer.js.map +1 -1
  41. package/lib/engine-components/Volume.d.ts +4 -0
  42. package/lib/engine-components/Volume.js +44 -3
  43. package/lib/engine-components/Volume.js.map +1 -1
  44. package/lib/engine-components/WebARSessionRoot.d.ts +9 -2
  45. package/lib/engine-components/WebARSessionRoot.js +69 -24
  46. package/lib/engine-components/WebARSessionRoot.js.map +1 -1
  47. package/lib/engine-components/WebXR.d.ts +6 -3
  48. package/lib/engine-components/WebXR.js +42 -7
  49. package/lib/engine-components/WebXR.js.map +1 -1
  50. package/lib/engine-components/WebXRAvatar.js +4 -0
  51. package/lib/engine-components/WebXRAvatar.js.map +1 -1
  52. package/lib/engine-components/WebXRController.js +13 -7
  53. package/lib/engine-components/WebXRController.js.map +1 -1
  54. package/lib/engine-components/ui/CanvasGroup.d.ts +1 -0
  55. package/lib/engine-components/ui/CanvasGroup.js +1 -0
  56. package/lib/engine-components/ui/CanvasGroup.js.map +1 -1
  57. package/lib/engine-components/ui/EventSystem.js +13 -4
  58. package/lib/engine-components/ui/EventSystem.js.map +1 -1
  59. package/lib/engine-components/ui/Graphic.d.ts +1 -0
  60. package/lib/engine-components/ui/Graphic.js +2 -0
  61. package/lib/engine-components/ui/Graphic.js.map +1 -1
  62. package/lib/engine-components/ui/Interfaces.d.ts +2 -0
  63. package/package.json +2 -2
  64. package/src/engine/engine_serialization.ts +3 -1
  65. package/src/engine/engine_setup.ts +6 -0
  66. package/src/engine/engine_utils.ts +34 -8
  67. package/src/engine/extensions/NEEDLE_deferred_texture.ts +25 -19
  68. package/src/engine/extensions/extension_utils.ts +24 -12
  69. package/src/engine/extensions/extensions.ts +3 -2
  70. package/src/engine-components/Camera.ts +9 -1
  71. package/src/engine-components/OrbitControls.ts +2 -1
  72. package/src/engine-components/Renderer.ts +11 -3
  73. package/src/engine-components/ScreenCapture.ts +312 -2
  74. package/src/engine-components/SpectatorCamera.ts +28 -5
  75. package/src/engine-components/SyncedRoom.ts +1 -0
  76. package/src/engine-components/VideoPlayer.ts +97 -21
  77. package/src/engine-components/Volume.ts +47 -4
  78. package/src/engine-components/WebARSessionRoot.ts +78 -28
  79. package/src/engine-components/WebXR.ts +50 -15
  80. package/src/engine-components/WebXRAvatar.ts +5 -0
  81. package/src/engine-components/WebXRController.ts +20 -14
  82. package/src/engine-components/ui/CanvasGroup.ts +2 -0
  83. package/src/engine-components/ui/EventSystem.ts +21 -15
  84. package/src/engine-components/ui/Graphic.ts +3 -0
  85. package/src/engine-components/ui/Interfaces.ts +2 -0
@@ -1 +1 @@
1
- {"version":3,"file":"SpectatorCamera.js","sourceRoot":"","sources":["../../../engine-components/SpectatorCamera.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAa,UAAU,EAAE,MAAM,aAAa,CAAC;AAC/D,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,OAAO,EAAE,WAAW,EAAW,MAAM,wBAAwB,CAAC;AAE9D,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAClD,OAAO,EAAc,UAAU,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAU,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAGjE,MAAM,CAAN,IAAY,aAGX;AAHD,WAAY,aAAa;IACrB,+DAAe,CAAA;IACf,+DAAe,CAAA;AACnB,CAAC,EAHW,aAAa,KAAb,aAAa,QAGxB;AAED,MAAM,KAAK,GAAG,QAAQ,CAAC,gBAAgB,CAAC,CAAC;AAEzC,MAAM,OAAO,eAAgB,SAAQ,SAAS;IAE1C,GAAG,GAAkB,IAAI,CAAC;IAElB,KAAK,GAAkB,aAAa,CAAC,WAAW,CAAC;IAEzD,IAAI,IAAI,KAAK,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IACjC,IAAI,IAAI,CAAC,GAAkB;QACvB,IAAI,CAAC,KAAK,GAAG,GAAG,CAAC;IACrB,CAAC;IAED,wDAAwD;IACxD,IAAI,YAAY;QACZ,OAAO,IAAI,CAAC,QAAQ,EAAE,aAAa,KAAK,SAAS,CAAC;IACtD,CAAC;IAED,gBAAgB,CAAC,MAAc;QAC3B,OAAO,IAAI,CAAC,MAAM,EAAE,MAAM,KAAK,MAAM,CAAC;IAC1C,CAAC;IAED,YAAY,CAAC,MAAc;QACvB,OAAO,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IAC5C,CAAC;IAED,gDAAgD;IAChD,IAAI,SAAS;QACT,OAAO,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC;IACtC,CAAC;IAED,cAAc;QACV,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE;YACrB,IAAI,CAAC,UAAU,EAAE,CAAC;YAClB,OAAO;SACV;QACD,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;IAC5B,CAAC;IAED,4BAA4B;IAC5B,IAAI,MAAM,CAAC,MAA8B;QACrC,IAAI,IAAI,CAAC,QAAQ,EAAE;YAEf,6BAA6B;YAC7B,gFAAgF;YAChF,kCAAkC;YAClC,mDAAmD;YACnD,8BAA8B;YAC9B,QAAQ;YACR,IAAI;YAEJ,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;YACjD,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;YAEtF,sDAAsD;YACtD,IAAI,MAAM,KAAK,SAAS,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,KAAK,KAAK,IAAI,IAAI,EAAE,aAAa,KAAK,MAAM,CAAC,aAAa,CAAC,EAAE;gBACzG,IAAI,IAAI,CAAC,QAAQ,CAAC,aAAa,KAAK,SAAS,EAAE;oBAC3C,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;oBACxB,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;oBAC7C,IAAI,IAAI,CAAC,KAAK;wBAAE,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC;oBAC1C,IAAI,CAAC,WAAW,CAAC,wBAAwB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;iBAC3D;aACJ;iBACI,IAAI,IAAI,CAAC,QAAQ,CAAC,aAAa,KAAK,MAAM,EAAE;gBAC7C,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;gBAC1B,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;gBAC5C,IAAI,IAAI,CAAC,KAAK;oBAAE,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC;gBAC3C,IAAI,CAAC,WAAW,CAAC,wBAAwB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;aAC3D;SACJ;IACL,CAAC;IAED,IAAI,MAAM;QACN,OAAO,IAAI,CAAC,QAAQ,EAAE,aAAa,CAAC;IACxC,CAAC;IAED,kBAAkB;QACd,IAAI,CAAC,WAAW,CAAC,iBAAiB,EAAE,CAAC;IACzC,CAAC;IAED,IAAY,gBAAgB;QACxB,OAAO,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,MAAM,EAAE,aAAa,KAAK,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,aAAa,CAAC;IACvJ,CAAC;IAED,iEAAiE;IACjE,gEAAgE;IAChE,gDAAgD;IAExC,KAAK,GAAyB,IAAI,CAAC;IACnC,QAAQ,CAAqB;IAC7B,+BAA+B,GAAoB,IAAI,CAAC;IACxD,wBAAwB,GAAoB,IAAI,CAAC;IACjD,sBAAsB,GAAoB,IAAI,CAAC;IAC/C,MAAM,CAAgC;IACtC,WAAW,CAA0B;IAE7C,KAAK;QAED,IAAI,CAAC,MAAM,GAAG,IAAI,4BAA4B,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QACnE,IAAI,CAAC,WAAW,GAAG,IAAI,sBAAsB,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QAClE,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC;QAEzB,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;QAE7C,IAAI,CAAC,GAAG,GAAG,UAAU,CAAC,YAAY,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;QAC5D,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;YACX,OAAO,CAAC,KAAK,CAAC,yCAAyC,EAAE,IAAI,CAAC,CAAC;YAC/D,OAAO;SACV;QAGD,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,GAAG;YAC1B,IAAI,CAAC,QAAQ,GAAG,IAAI,gBAAgB,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QAGvE,IAAI,CAAC,+BAA+B,GAAG,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC/E,IAAI,CAAC,wBAAwB,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjE,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAE/D,KAAK,CAAC,gBAAgB,CAAC,UAAU,CAAC,gBAAgB,EAAE,IAAI,CAAC,+BAA+B,CAAC,CAAC;QAC1F,KAAK,CAAC,gBAAgB,CAAC,UAAU,CAAC,SAAS,EAAE,IAAI,CAAC,wBAAwB,CAAC,CAAC;QAC5E,KAAK,CAAC,gBAAgB,CAAC,UAAU,CAAC,SAAS,EAAE,IAAI,CAAC,sBAAsB,CAAC,CAAC;QAE1E,IAAI,CAAC,KAAK,GAAG,UAAU,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC;IACjF,CAAC;IAED,SAAS;QACL,IAAI,CAAC,cAAc,EAAE,CAAC;QACtB,KAAK,CAAC,mBAAmB,CAAC,UAAU,CAAC,gBAAgB,EAAE,IAAI,CAAC,wBAAwB,CAAC,CAAC;QACtF,KAAK,CAAC,mBAAmB,CAAC,UAAU,CAAC,SAAS,EAAE,IAAI,CAAC,wBAAwB,CAAC,CAAC;QAC/E,KAAK,CAAC,mBAAmB,CAAC,UAAU,CAAC,SAAS,EAAE,IAAI,CAAC,sBAAsB,CAAC,CAAC;QAC7E,IAAI,CAAC,QAAQ,EAAE,OAAO,EAAE,CAAC;QACzB,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC;IAC/B,CAAC;IAEO,mBAAmB;QACvB,MAAM,EAAE,GAAG,MAAM,CAAC,SAAS,CAAC,SAAS,CAAC;QACtC,MAAM,UAAU,GAAG,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC5C,MAAM,UAAU,GAAG,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAChF,OAAO,UAAU,IAAI,CAAC,UAAU,CAAC;IACrC,CAAC;IAEO,uBAAuB,CAAC,IAAI;QAChC,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE;YAAE,OAAO;QACxC,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;IAChD,CAAC;IAGO,gBAAgB,CAAC,IAAI;QACzB,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE;YAAE,OAAO;QACxC,IAAI,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE;YACzB,IAAI,CAAC,UAAU,EAAE,CAAC;SACrB;IACL,CAAC;IAEO,gBAAgB,CAAC,IAAI;QACzB,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACpC,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;QAC7C,IAAI,IAAI,CAAC,KAAK;YAAE,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC;QAC1C,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC;QAC9B,IAAI,CAAC,QAAQ,EAAE,OAAO,EAAE,CAAC;QACzB,IAAI,IAAI,CAAC,gBAAgB;YACrB,IAAI,CAAC,cAAc,EAAE,CAAC;IAC9B,CAAC;IAGO,UAAU;QACd,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;IAC3F,CAAC;IAED,+CAA+C;IAC/C,yCAAyC;IACzC,gGAAgG;IAChG,aAAa;QACT,IAAI,CAAC,IAAI,CAAC,GAAG;YAAE,OAAO;QAEtB,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC;QACvC,MAAM,YAAY,GAAG,QAAQ,CAAC,EAAE,CAAC,OAAO,CAAC;QAEzC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,YAAY,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,aAAa;YAAE,OAAO;QAEvE,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAElC,oDAAoD;QACpD,MAAM,oBAAoB,GAAG,QAAQ,CAAC,eAAe,EAAE,CAAC;QACxD,IAAI,cAAc,GAA4B,IAAI,CAAC;QAEnD,kEAAkE;QAClE,0CAA0C;QAC1C,IAAI,CAAC,oBAAoB,EAAE;YACvB,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,eAAe,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,iBAAiB;gBACpE,OAAO;YAEX,cAAc,GAAG,QAAQ,CAAC,cAAc,CAAC,CAAC;YAC1C,QAAQ,CAAC,KAAK,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;SAC1C;QAED,IAAI,CAAC,0BAA0B,EAAE,CAAC;QAElC,mEAAmE;QACnE,8CAA8C;QAC9C,4CAA4C;QAC5C,uDAAuD;QACvD,4FAA4F;QAC5F,gBAAgB;QAChB,oBAAoB;QACpB,mBAAmB;QACnB,oBAAoB;QACpB,qDAAqD;QACrD,oDAAoD;QACpD,iCAAiC;QACjC,QAAQ,CAAC,aAAa,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QACjD,QAAQ,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,yBAAyB;QACzD,QAAQ,CAAC,EAAE,CAAC,OAAO,GAAG,KAAK,CAAC;QAC5B,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC;QAC1B,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,GAA8B,CAAC,CAAC;QAC1D,MAAM,aAAa,GAAG,QAAQ,CAAC,EAAE,CAAC,YAAY,CAAC;QAC/C,QAAQ,CAAC,EAAE,CAAC,YAAY,GAAG,KAAK,CAAC;QACjC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QAChE,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QACzC,QAAQ,CAAC,EAAE,CAAC,YAAY,GAAG,aAAa,CAAC;QAEzC,4DAA4D;QAC5D,QAAQ,CAAC,EAAE,CAAC,OAAO,GAAG,YAAY,CAAC;QACnC,6CAA6C;QAC7C,2CAA2C;QAC3C,mDAAmD;QAEnD,IAAI,oBAAoB;YACpB,QAAQ,CAAC,eAAe,CAAC,oBAAoB,CAAC,CAAC;;YAE/C,QAAQ,CAAC,KAAK,CAAC,iBAAiB,CAAC,cAAc,CAAC,CAAC;QAErD,IAAI,CAAC,gBAAgB,EAAE,CAAC;IAC5B,CAAC;IAEO,0BAA0B;QAC9B,MAAM,iBAAiB,GAAG,IAAI,CAAC,KAAK,KAAK,aAAa,CAAC,WAAW,CAAC;QAEnE,KAAK,MAAM,EAAE,IAAI,YAAY,CAAC,SAAS,EAAE;YACrC,IAAI,EAAE,CAAC,MAAM,IAAI,eAAe,IAAI,EAAE,CAAC,MAAM,EAAE;gBAC3C,IAAI,IAAI,GAAG,WAAW,CAAC,GAAG,CAAC;gBAC3B,IAAI,IAAI,CAAC,gBAAgB;oBACrB,IAAI,GAAG,iBAAiB,IAAI,EAAE,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,WAAW,CAAC;gBAC5G,MAAM,KAAK,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC;gBAC9B,IAAI,CAAC,KAAK;oBAAE,SAAS;gBACrB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;oBACtB,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;iBAC5B;aACJ;SACJ;IACL,CAAC;IAEO,gBAAgB;QACpB,KAAK,MAAM,EAAE,IAAI,YAAY,CAAC,SAAS,EAAE;YACrC,IAAI,EAAE,CAAC,MAAM,IAAI,OAAO,IAAI,EAAE,CAAC,MAAM,EAAE;gBACnC,MAAM,KAAK,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC;gBAC9B,IAAI,CAAC,KAAK;oBAAE,SAAS;gBACrB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;oBACtB,IAAI,EAAE,CAAC,MAAM,EAAE,aAAa,EAAE;wBAC1B,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;qBAC/C;yBACI;wBACD,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;qBAC/C;iBACJ;aACJ;SACJ;IACL,CAAC;CACJ;AAWD,MAAM,gBAAgB;IAET,OAAO,CAAU;IACjB,GAAG,CAAS;IACZ,SAAS,CAAkB;IAE5B,MAAM,CAAgB;IACtB,MAAM,CAAkB;IACxB,IAAI,CAAc;IAClB,aAAa,CAAuB;IAE5C,IAAI,aAAa;QACb,OAAO,IAAI,CAAC,IAAI,CAAC;IACrB,CAAC;IAED,YAAY,OAAgB,EAAE,GAAW,EAAE,SAA0B;QACjE,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;QACf,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAC/B,CAAC;IAED,GAAG,CAAC,IAAiB;QACjB,MAAM,YAAY,GAAG,IAAI,EAAE,aAAa,CAAC;QACzC,IAAI,CAAC,YAAY,EAAE;YACf,IAAI,CAAC,SAAS,CAAC,cAAc,EAAE,CAAC;YAChC,OAAO;SACV;QACD,IAAI,YAAY,KAAK,IAAI,CAAC,aAAa;YAAE,OAAO;QAChD,IAAI,CAAC,aAAa,GAAG,YAAY,CAAC;QAClC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,IAAI,CAAC,MAAM;YACZ,IAAI,CAAC,MAAM,GAAG,UAAU,CAAC,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;QAChF,IAAI,CAAC,IAAI,CAAC,MAAM;YACZ,IAAI,CAAC,MAAM,GAAG,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;QACvC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAE9B,IAAI,CAAC,MAAM,CAAC,OAAO,GAAG,IAAI,CAAC;QAC3B,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QACjC,2CAA2C;QAC3C,IAAI,KAAK;YAAE,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;QAC/C,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE;YACtB,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;SAC3C;;YACI,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC7C,CAAC;IAED,OAAO;QACH,IAAI,KAAK;YAAE,OAAO,CAAC,GAAG,CAAC,aAAa,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;QAC1D,IAAI,CAAC,IAAI,GAAG,SAAS,CAAC;QACtB,IAAI,CAAC,aAAa,GAAG,SAAS,CAAC;QAC/B,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACpC,IAAI,IAAI,CAAC,MAAM;YACX,IAAI,CAAC,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;IACpC,CAAC;IAED,OAAO;QACH,IAAI,CAAC,MAAM,EAAE,gBAAgB,EAAE,CAAC;QAChC,IAAI,IAAI,CAAC,MAAM;YACX,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACxC,CAAC;IAED,MAAM,CAAC,IAAmB;QACtB,IAAI,IAAI,CAAC,aAAa,EAAE,WAAW,KAAK,KAAK,IAAI,IAAI,CAAC,aAAa,EAAE,OAAO,KAAK,IAAI,EAAE;YACnF,IAAI,KAAK;gBAAE,OAAO,CAAC,GAAG,CAAC,gCAAgC,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;YAC7E,IAAI,CAAC,SAAS,CAAC,cAAc,EAAE,CAAC;YAChC,OAAO;SACV;QACD,IAAI,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,aAAa,EAAE,aAAa,KAAK,IAAI,CAAC,aAAa,EAAE;YAChF,IAAI,KAAK;gBAAE,OAAO,CAAC,GAAG,CAAC,gBAAgB,EAAE,IAAI,CAAC,aAAa,EAAE,IAAI,EAAE,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC;YACrG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;SAChC;QACD,MAAM,iBAAiB,GAAG,IAAI,CAAC,OAAO,CAAC,UAAqC,CAAC;QAC7E,IAAI,iBAAiB,EAAE;YACnB,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,KAAK,iBAAiB,CAAC,IAAI,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,iBAAiB,CAAC,GAAG,EAAE;gBAC5F,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,GAAG,iBAAiB,CAAC,IAAI,CAAC;gBAC3C,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,GAAG,iBAAiB,CAAC,GAAG,CAAC;gBACzC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,sBAAsB,EAAE,CAAC;aACzC;SACJ;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC;QACnC,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM;YAAE,OAAO;QACpC,QAAQ,IAAI,EAAE;YACV,KAAK,aAAa,CAAC,WAAW;gBAC1B,IAAI,CAAC,MAAM,CAAC,YAAY,GAAG,EAAE,CAAC;gBAC9B,IAAI,CAAC,MAAM,CAAC,YAAY,GAAG,EAAE,CAAC;gBAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;gBAC7B,MAAM;YACV,KAAK,aAAa,CAAC,WAAW;gBAC1B,IAAI,CAAC,MAAM,CAAC,YAAY,GAAG,CAAC,CAAC;gBAC7B,IAAI,CAAC,MAAM,CAAC,YAAY,GAAG,CAAC,CAAC;gBAC7B,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC;gBAChC,MAAM;SACb;QACD,IAAI,CAAC,MAAM,CAAC,WAAW,GAAG,KAAK,CAAC;QAChC,0BAA0B;QAC1B,IAAI,IAAI,CAAC,IAAI,EAAE,UAAU,KAAK,UAAU,CAAC,OAAO;YAC5C,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;;YACrC,MAAM,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC;IACtC,CAAC;CAGJ;AAED,MAAM,aAAa,GAAG,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC,gBAAgB,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;AAGnG,MAAM,4BAA4B;IAEb,OAAO,CAAU;IACjB,SAAS,CAAkB;IAE5C,YAAY,OAAgB,EAAE,SAA0B;QACpD,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,OAAO,CAAC,GAAG,CAAC,kFAAkF,CAAC,CAAC;QAChG,MAAM,CAAC,gBAAgB,CAAC,SAAS,EAAE,CAAC,GAAG,EAAE,EAAE;YACvC,MAAM,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC;YACpB,IAAI,GAAG,KAAK,QAAQ,EAAE;gBAClB,IAAI,CAAC,SAAS,CAAC,cAAc,EAAE,CAAC;aACnC;QACL,CAAC,CAAC,CAAC;QACH,IAAI,QAAQ,GAAW,CAAC,CAAC;QACzB,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,gBAAgB,CAAC,WAAW,CAAC,WAAW,EAAE,CAAC,CAAC,EAAE;YAC7D,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC;QACtC,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,gBAAgB,CAAC,WAAW,CAAC,SAAS,EAAE,CAAC,CAAC,EAAE;YAC3D,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,GAAG,QAAQ,GAAG,CAAC,EAAE;gBACvC,IAAI,CAAC,SAAS,CAAC,cAAc,EAAE,CAAC;aACnC;;gBAEG,IAAI,CAAC,eAAe,EAAE,CAAC;QAC/B,CAAC,CAAC,CAAC;IACP,CAAC;IAEO,eAAe;QACnB,MAAM,IAAI,GAAG,IAAI,cAAc,EAAE,CAAC;QAClC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QACvB,sCAAsC;QACtC,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAChD,IAAI,KAAK;YAAE,OAAO,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC;QAChC,IAAI,IAAI,EAAE,MAAM,EAAE;YACd,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE;gBACpB,IAAI,GAAG,CAAC,QAAQ,GAAG,EAAE;oBAAE,SAAS;gBAChC,MAAM,GAAG,GAAG,GAAG,CAAC,MAAM,CAAC;gBACvB,MAAM,MAAM,GAAG,UAAU,CAAC,oBAAoB,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC;gBAClE,MAAM,EAAE,GAAG,MAAM,EAAE,YAAY,CAAC;gBAChC,IAAI,EAAE,EAAE;oBACJ,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;oBACpD,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,IAAI,CAAC;oBAC7B,IAAI,KAAK;wBAAE,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE,EAAE,EAAE,MAAM,CAAC,CAAC;oBAC/C,MAAM;iBACT;aACJ;SACJ;IACL,CAAC;CACJ;AAMD,MAAM,kCAAkC;IACpC,iCAAiC;IACjC,IAAI,CAAS;IACJ,QAAQ,GAAY,IAAI,CAAC;IAElC,8BAA8B;IAC9B,YAAY,CAAqB;IACjC,gBAAgB,CAAU;IAE1B,YAAY,YAAoB,EAAE,MAA0B,EAAE,gBAAyB;QACnF,IAAI,CAAC,IAAI,GAAG,YAAY,CAAC;QACzB,IAAI,CAAC,YAAY,GAAG,MAAM,CAAC;QAC3B,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;IAC7C,CAAC;CACJ;AAED,MAAM,yBAAyB;IAC3B,IAAI,CAAS;IACb,MAAM,CAAqB;IAE3B,YAAY,IAAe,EAAE,MAA0B;QACnD,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QACtB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACzB,CAAC;CACJ;AAED,MAAM,sBAAsB;IAEf,SAAS,GAAa,EAAE,CAAC;IAGjB,OAAO,CAAU;IACjB,SAAS,CAAkB;IACpC,oBAAoB,CAAW;IAC/B,oBAAoB,CAAW;IAC/B,iBAAiB,CAAW;IAEpC,YAAY,OAAgB,EAAE,SAA0B;QACpD,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5D,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjE,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC9D,CAAC;IAED,KAAK;QACD,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,WAAW,CAAC,4BAA4B,EAAE,IAAI,CAAC,oBAAoB,CAAC,CAAC;QAC7F,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,WAAW,CAAC,0BAA0B,EAAE,IAAI,CAAC,oBAAoB,CAAC,CAAC;QAC3F,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,WAAW,CAAC,UAAU,CAAC,UAAU,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC;QACnF,QAAQ,CAAC,gBAAgB,CAAC,SAAS,EAAE,GAAG,CAAC,EAAE;YACvC,IAAI,GAAG,CAAC,GAAG,KAAK,GAAG,EAAE;gBACjB,IAAI,CAAC,iBAAiB,EAAE,CAAC;aAC5B;iBACI,IAAI,GAAG,CAAC,GAAG,KAAK,QAAQ,EAAE;gBAC3B,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;aAChC;QACL,CAAC,CAAC,CAAC;IACP,CAAC;IAED,OAAO;QACH,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,aAAa,CAAC,4BAA4B,EAAE,IAAI,CAAC,oBAAoB,CAAC,CAAC;QAC/F,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,aAAa,CAAC,0BAA0B,EAAE,IAAI,CAAC,oBAAoB,CAAC,CAAC;QAC7F,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,aAAa,CAAC,UAAU,CAAC,UAAU,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC;IACzF,CAAC;IAED,wBAAwB,CAAC,MAA8B,EAAE,OAAgB;QACrE,IAAI,KAAK;YACL,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,YAAY,EAAE,0BAA0B,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;QACnG,IAAI,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,YAAY,EAAE;YACtC,MAAM,OAAO,GAAG,MAAM,EAAE,MAAM,KAAK,SAAS,CAAC;YAC7C,MAAM,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC;YAClD,MAAM,GAAG,GAAG,IAAI,kCAAkC,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,YAAY,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;YAC1G,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,4BAA4B,EAAE,GAAG,CAAC,CAAA;SAClE;IACL,CAAC;IAED,iBAAiB,CAAC,OAAgB,KAAK;QACnC,IAAI,KAAK;YACL,OAAO,CAAC,GAAG,CAAC,gBAAgB,EAAE,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;QACxE,IAAI,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,YAAY,EAAE;YACtC,IAAI,CAAC,SAAS,CAAC,cAAc,EAAE,CAAC;YAChC,MAAM,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,YAAY,CAAC;YACnE,MAAM,KAAK,GAAG,IAAI,yBAAyB,CAAC,IAAI,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;YAChE,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,0BAA0B,EAAE,KAAK,CAAC,CAAC;SACnE;IACL,CAAC;IAEO,gBAAgB;QACpB,IAAI,QAAQ,CAAC,UAAU,CAAC,EAAE;YACtB,IAAI,CAAC,iBAAiB,EAAE,CAAC;SAC5B;IACL,CAAC;IAEO,eAAe,CAAC,GAAuC;QAC3D,MAAM,iBAAiB,GAAG,GAAG,CAAC,YAAY,CAAC;QAC3C,MAAM,mBAAmB,GAAG,GAAG,CAAC,IAAI,CAAC;QAErC,IAAI,KAAK;YACL,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAErB,IAAI,iBAAiB,KAAK,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,YAAY,EAAE;YAC5D,IAAI,GAAG,CAAC,gBAAgB,EAAE;gBACtB,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC;gBAC1D,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE;oBACd,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;oBAChC,IAAI,CAAC,2BAA2B,EAAE,CAAC;oBACnC,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,eAAe,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;iBAC5E;aACJ;iBACI;gBACD,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,mBAAmB,CAAC,EAAE;oBAC/C,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;oBACzC,IAAI,CAAC,2BAA2B,EAAE,CAAC;oBACnC,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,aAAa,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;iBAC1E;aACJ;SACJ;IACL,CAAC;IAEO,2BAA2B;QAC/B,KAAK,IAAI,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;YACjD,MAAM,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;YAC7B,IAAI,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC,KAAK,KAAK,EAAE;gBACpD,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;aAC/B;SACJ;IACL,CAAC;IAEO,sBAAsB,CAAwC;IAE9D,oBAAoB,CAAC,GAA8B;QACvD,IAAI,CAAC,sBAAsB,GAAG,GAAG,CAAC;QAElC,IAAI,GAAG,CAAC,MAAM,KAAK,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,YAAY,EAAE;YACrD,IAAI,CAAC,SAAS,CAAC,cAAc,EAAE,CAAC;SACnC;aACI,IAAI,GAAG,CAAC,MAAM,KAAK,SAAS,EAAE;YAC/B,4EAA4E;YAC5E,IAAI,CAAC,SAAS,CAAC,cAAc,EAAE,CAAC;SACnC;aACI;YACD,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YAC5D,IAAI,IAAI,EAAE;gBACN,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,IAAI,CAAC;aAChC;iBACI;gBACD,IAAI,KAAK;oBACL,OAAO,CAAC,IAAI,CAAC,qBAAqB,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;gBACpD,IAAI,CAAC,aAAa,EAAE,CAAC;gBACrB,OAAO,KAAK,CAAC;aAChB;SACJ;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAEO,sBAAsB,CAAM;IAC5B,aAAa;QACjB,IAAI,IAAI,CAAC,sBAAsB;YAAE,OAAO;QACxC,IAAI,CAAC,sBAAsB,GAAG,WAAW,CAAC,GAAG,EAAE;YAC3C,IAAI,IAAI,CAAC,sBAAsB,KAAK,SAAS,IAAI,IAAI,CAAC,sBAAsB,CAAC,MAAM,IAAI,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,EAAE;gBACpJ,aAAa,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;gBAC3C,IAAI,CAAC,sBAAsB,GAAG,SAAS,CAAC;aAC3C;iBACI;gBACD,IAAI,KAAK;oBACL,OAAO,CAAC,GAAG,CAAC,sBAAsB,EAAE,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,CAAC;gBAC5E,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;aAC1D;QAEL,CAAC,EAAE,IAAI,CAAC,CAAC;IACb,CAAC;CACJ"}
1
+ {"version":3,"file":"SpectatorCamera.js","sourceRoot":"","sources":["../../../engine-components/SpectatorCamera.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAa,UAAU,EAAE,MAAM,aAAa,CAAC;AAC/D,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,OAAO,EAAE,WAAW,EAAW,MAAM,wBAAwB,CAAC;AAE9D,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAClD,OAAO,EAAc,UAAU,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAU,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAGjE,MAAM,CAAN,IAAY,aAGX;AAHD,WAAY,aAAa;IACrB,+DAAe,CAAA;IACf,+DAAe,CAAA;AACnB,CAAC,EAHW,aAAa,KAAb,aAAa,QAGxB;AAED,MAAM,KAAK,GAAG,QAAQ,CAAC,gBAAgB,CAAC,CAAC;AAEzC,MAAM,OAAO,eAAgB,SAAQ,SAAS;IAE1C,GAAG,GAAkB,IAAI,CAAC;IAElB,KAAK,GAAkB,aAAa,CAAC,WAAW,CAAC;IAEzD,IAAI,IAAI,KAAK,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IACjC,IAAI,IAAI,CAAC,GAAkB;QACvB,IAAI,CAAC,KAAK,GAAG,GAAG,CAAC;IACrB,CAAC;IAED,wDAAwD;IACxD,IAAI,YAAY;QACZ,OAAO,IAAI,CAAC,QAAQ,EAAE,aAAa,KAAK,SAAS,CAAC;IACtD,CAAC;IAED,gBAAgB,CAAC,MAAc;QAC3B,OAAO,IAAI,CAAC,MAAM,EAAE,MAAM,KAAK,MAAM,CAAC;IAC1C,CAAC;IAED,YAAY,CAAC,MAAc;QACvB,OAAO,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IAC5C,CAAC;IAED,gDAAgD;IAChD,IAAI,SAAS;QACT,OAAO,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC;IACtC,CAAC;IAED,cAAc;QACV,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE;YACrB,IAAI,CAAC,UAAU,EAAE,CAAC;YAClB,OAAO;SACV;QACD,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;IAC5B,CAAC;IAED,4BAA4B;IAC5B,IAAI,MAAM,CAAC,MAA8B;QACrC,IAAI,IAAI,CAAC,QAAQ,EAAE;YAEf,6BAA6B;YAC7B,gFAAgF;YAChF,kCAAkC;YAClC,mDAAmD;YACnD,8BAA8B;YAC9B,QAAQ;YACR,IAAI;YAEJ,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;YACjD,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;YAEtF,sDAAsD;YACtD,IAAI,MAAM,KAAK,SAAS,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,KAAK,KAAK,IAAI,IAAI,EAAE,aAAa,KAAK,MAAM,CAAC,aAAa,CAAC,EAAE;gBACzG,IAAI,IAAI,CAAC,QAAQ,CAAC,aAAa,KAAK,SAAS,EAAE;oBAC3C,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;oBACxB,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;oBAC7C,IAAI,IAAI,CAAC,KAAK;wBAAE,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC;oBAC1C,IAAI,CAAC,WAAW,CAAC,wBAAwB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;iBAC3D;aACJ;iBACI,IAAI,IAAI,CAAC,QAAQ,CAAC,aAAa,KAAK,MAAM,EAAE;gBAC7C,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;gBAC1B,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;gBAC5C,IAAI,IAAI,CAAC,KAAK;oBAAE,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC;gBAC3C,IAAI,CAAC,WAAW,CAAC,wBAAwB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;aAC3D;SACJ;IACL,CAAC;IAED,IAAI,MAAM;QACN,OAAO,IAAI,CAAC,QAAQ,EAAE,aAAa,CAAC;IACxC,CAAC;IAED,kBAAkB;QACd,IAAI,CAAC,WAAW,CAAC,iBAAiB,EAAE,CAAC;IACzC,CAAC;IAED,IAAY,gBAAgB;QACxB,OAAO,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,MAAM,EAAE,aAAa,KAAK,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,aAAa,CAAC;IACvJ,CAAC;IAED,iEAAiE;IACjE,gEAAgE;IAChE,gDAAgD;IAExC,KAAK,GAAyB,IAAI,CAAC;IACnC,QAAQ,CAAqB;IAC7B,+BAA+B,GAAoB,IAAI,CAAC;IACxD,wBAAwB,GAAoB,IAAI,CAAC;IACjD,sBAAsB,GAAoB,IAAI,CAAC;IAC/C,MAAM,CAAgC;IACtC,WAAW,CAA0B;IAE7C,KAAK;QAED,IAAI,CAAC,MAAM,GAAG,IAAI,4BAA4B,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QACnE,IAAI,CAAC,WAAW,GAAG,IAAI,sBAAsB,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QAClE,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC;QAEzB,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;QAE7C,IAAI,CAAC,GAAG,GAAG,UAAU,CAAC,YAAY,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;QAC5D,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;YACX,OAAO,CAAC,KAAK,CAAC,yCAAyC,EAAE,IAAI,CAAC,CAAC;YAC/D,OAAO;SACV;QAGD,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,GAAG;YAC1B,IAAI,CAAC,QAAQ,GAAG,IAAI,gBAAgB,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QAGvE,IAAI,CAAC,+BAA+B,GAAG,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC/E,IAAI,CAAC,wBAAwB,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjE,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAE/D,KAAK,CAAC,gBAAgB,CAAC,UAAU,CAAC,gBAAgB,EAAE,IAAI,CAAC,+BAA+B,CAAC,CAAC;QAC1F,KAAK,CAAC,gBAAgB,CAAC,UAAU,CAAC,SAAS,EAAE,IAAI,CAAC,wBAAwB,CAAC,CAAC;QAC5E,KAAK,CAAC,gBAAgB,CAAC,UAAU,CAAC,SAAS,EAAE,IAAI,CAAC,sBAAsB,CAAC,CAAC;QAE1E,IAAI,CAAC,KAAK,GAAG,UAAU,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC;IACjF,CAAC;IAED,SAAS;QACL,IAAI,CAAC,cAAc,EAAE,CAAC;QACtB,KAAK,CAAC,mBAAmB,CAAC,UAAU,CAAC,gBAAgB,EAAE,IAAI,CAAC,wBAAwB,CAAC,CAAC;QACtF,KAAK,CAAC,mBAAmB,CAAC,UAAU,CAAC,SAAS,EAAE,IAAI,CAAC,wBAAwB,CAAC,CAAC;QAC/E,KAAK,CAAC,mBAAmB,CAAC,UAAU,CAAC,SAAS,EAAE,IAAI,CAAC,sBAAsB,CAAC,CAAC;QAC7E,IAAI,CAAC,QAAQ,EAAE,OAAO,EAAE,CAAC;QACzB,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC;IAC/B,CAAC;IAEO,mBAAmB;QACvB,MAAM,EAAE,GAAG,MAAM,CAAC,SAAS,CAAC,SAAS,CAAC;QACtC,MAAM,UAAU,GAAG,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC5C,MAAM,UAAU,GAAG,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAChF,OAAO,UAAU,IAAI,CAAC,UAAU,CAAC;IACrC,CAAC;IAEO,uBAAuB,CAAC,IAAI;QAChC,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE;YAAE,OAAO;QACxC,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;IAChD,CAAC;IAGO,gBAAgB,CAAC,IAAI;QACzB,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE;YAAE,OAAO;QACxC,IAAI,KAAK;YAAE,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QAChD,IAAI,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE;YACzB,IAAI,CAAC,UAAU,EAAE,CAAC;SACrB;IACL,CAAC;IAEO,gBAAgB,CAAC,IAAI;QACzB,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACpC,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;QAC7C,IAAI,IAAI,CAAC,KAAK;YAAE,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC;QAC1C,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC;QAC9B,IAAI,CAAC,QAAQ,EAAE,OAAO,EAAE,CAAC;QACzB,IAAI,IAAI,CAAC,gBAAgB;YACrB,IAAI,CAAC,cAAc,EAAE,CAAC;IAC9B,CAAC;IAGO,UAAU;QACd,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;QACvF,IAAI,KAAK;YAAE,OAAO,CAAC,GAAG,CAAC,aAAa,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;IACvD,CAAC;IAED,+CAA+C;IAC/C,yCAAyC;IACzC,gGAAgG;IAChG,aAAa;QACT,IAAI,CAAC,IAAI,CAAC,GAAG;YAAE,OAAO;QAEtB,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC;QACvC,MAAM,YAAY,GAAG,QAAQ,CAAC,EAAE,CAAC,OAAO,CAAC;QAEzC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,YAAY,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,aAAa;YAAE,OAAO;QAEvE,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAElC,oDAAoD;QACpD,MAAM,oBAAoB,GAAG,QAAQ,CAAC,eAAe,EAAE,CAAC;QACxD,IAAI,cAAc,GAA4B,IAAI,CAAC;QAEnD,kEAAkE;QAClE,0CAA0C;QAC1C,IAAI,CAAC,oBAAoB,EAAE;YACvB,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,eAAe,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,iBAAiB;gBACpE,OAAO;YAEX,cAAc,GAAG,QAAQ,CAAC,cAAc,CAAC,CAAC;YAC1C,QAAQ,CAAC,KAAK,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;SAC1C;QAED,IAAI,CAAC,0BAA0B,EAAE,CAAC;QAElC,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,mBAAmB,CAAC;QAEjD,mEAAmE;QACnE,8CAA8C;QAC9C,4CAA4C;QAC5C,uDAAuD;QACvD,4FAA4F;QAC5F,gBAAgB;QAChB,oBAAoB;QACpB,mBAAmB;QACnB,oBAAoB;QACpB,qDAAqD;QACrD,oDAAoD;QACpD,iCAAiC;QACjC,IAAI,OAAO,EAAE;YACT,MAAM,eAAe,GAAG,OAAO,CAAC,eAAe,CAAC;YAChD,IAAI,eAAe;gBACf,QAAQ,CAAC,aAAa,CAAC,eAAe,EAAE,eAAe,CAAC,KAAK,CAAC,CAAC;YACnE,IAAI,CAAC,GAAG,CAAC,eAAe,GAAG,eAAe,CAAC;YAC3C,IAAI,CAAC,GAAG,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;YACzC,IAAI,CAAC,GAAG,CAAC,aAAa,GAAG,OAAO,CAAC,aAAa,CAAC;YAC/C,IAAI,CAAC,GAAG,CAAC,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC;SAChD;;YAEG,QAAQ,CAAC,aAAa,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QACrD,QAAQ,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,yBAAyB;QACzD,QAAQ,CAAC,EAAE,CAAC,OAAO,GAAG,KAAK,CAAC;QAC5B,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC;QAC1B,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,GAA8B,CAAC,CAAC;QAC1D,MAAM,aAAa,GAAG,QAAQ,CAAC,EAAE,CAAC,YAAY,CAAC;QAC/C,QAAQ,CAAC,EAAE,CAAC,YAAY,GAAG,KAAK,CAAC;QACjC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QAChE,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QACzC,QAAQ,CAAC,EAAE,CAAC,YAAY,GAAG,aAAa,CAAC;QAEzC,4DAA4D;QAC5D,QAAQ,CAAC,EAAE,CAAC,OAAO,GAAG,YAAY,CAAC;QACnC,6CAA6C;QAC7C,2CAA2C;QAC3C,mDAAmD;QAEnD,IAAI,oBAAoB;YACpB,QAAQ,CAAC,eAAe,CAAC,oBAAoB,CAAC,CAAC;;YAE/C,QAAQ,CAAC,KAAK,CAAC,iBAAiB,CAAC,cAAc,CAAC,CAAC;QAErD,IAAI,CAAC,gBAAgB,EAAE,CAAC;IAC5B,CAAC;IAEO,0BAA0B;QAC9B,MAAM,iBAAiB,GAAG,IAAI,CAAC,KAAK,KAAK,aAAa,CAAC,WAAW,CAAC;QAEnE,KAAK,MAAM,EAAE,IAAI,YAAY,CAAC,SAAS,EAAE;YACrC,IAAI,EAAE,CAAC,MAAM,IAAI,eAAe,IAAI,EAAE,CAAC,MAAM,EAAE;gBAC3C,IAAI,IAAI,GAAG,WAAW,CAAC,GAAG,CAAC;gBAC3B,IAAI,IAAI,CAAC,gBAAgB;oBACrB,IAAI,GAAG,iBAAiB,IAAI,EAAE,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,WAAW,CAAC;gBAC5G,MAAM,KAAK,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC;gBAC9B,IAAI,CAAC,KAAK;oBAAE,SAAS;gBACrB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;oBACtB,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;iBAC5B;aACJ;SACJ;IACL,CAAC;IAEO,gBAAgB;QACpB,KAAK,MAAM,EAAE,IAAI,YAAY,CAAC,SAAS,EAAE;YACrC,IAAI,EAAE,CAAC,MAAM,IAAI,OAAO,IAAI,EAAE,CAAC,MAAM,EAAE;gBACnC,MAAM,KAAK,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC;gBAC9B,IAAI,CAAC,KAAK;oBAAE,SAAS;gBACrB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;oBACtB,IAAI,EAAE,CAAC,MAAM,EAAE,aAAa,EAAE;wBAC1B,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;qBAC/C;yBACI;wBACD,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;qBAC/C;iBACJ;aACJ;SACJ;IACL,CAAC;CACJ;AAWD,MAAM,gBAAgB;IAET,OAAO,CAAU;IACjB,GAAG,CAAS;IACZ,SAAS,CAAkB;IAE5B,MAAM,CAAgB;IACtB,MAAM,CAAkB;IACxB,IAAI,CAAc;IAClB,aAAa,CAAuB;IAE5C,IAAI,aAAa;QACb,OAAO,IAAI,CAAC,IAAI,CAAC;IACrB,CAAC;IAED,YAAY,OAAgB,EAAE,GAAW,EAAE,SAA0B;QACjE,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;QACf,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAC/B,CAAC;IAED,GAAG,CAAC,IAAiB;QACjB,MAAM,YAAY,GAAG,IAAI,EAAE,aAAa,CAAC;QACzC,IAAI,CAAC,YAAY,EAAE;YACf,IAAI,CAAC,SAAS,CAAC,cAAc,EAAE,CAAC;YAChC,OAAO;SACV;QACD,IAAI,YAAY,KAAK,IAAI,CAAC,aAAa;YAAE,OAAO;QAChD,IAAI,CAAC,aAAa,GAAG,YAAY,CAAC;QAClC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,IAAI,CAAC,MAAM;YACZ,IAAI,CAAC,MAAM,GAAG,UAAU,CAAC,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;QAChF,IAAI,CAAC,IAAI,CAAC,MAAM;YACZ,IAAI,CAAC,MAAM,GAAG,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;QACvC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAE9B,IAAI,CAAC,MAAM,CAAC,OAAO,GAAG,IAAI,CAAC;QAC3B,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QACjC,2CAA2C;QAC3C,IAAI,KAAK;YAAE,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;QAC/C,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE;YACtB,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;SAC3C;;YACI,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC7C,CAAC;IAED,OAAO;QACH,IAAI,KAAK;YAAE,OAAO,CAAC,GAAG,CAAC,aAAa,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;QAC1D,IAAI,CAAC,IAAI,GAAG,SAAS,CAAC;QACtB,IAAI,CAAC,aAAa,GAAG,SAAS,CAAC;QAC/B,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACpC,IAAI,IAAI,CAAC,MAAM;YACX,IAAI,CAAC,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;IACpC,CAAC;IAED,OAAO;QACH,IAAI,CAAC,MAAM,EAAE,gBAAgB,EAAE,CAAC;QAChC,IAAI,IAAI,CAAC,MAAM;YACX,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACxC,CAAC;IAED,MAAM,CAAC,IAAmB;QACtB,IAAI,IAAI,CAAC,aAAa,EAAE,WAAW,KAAK,KAAK,IAAI,IAAI,CAAC,aAAa,EAAE,OAAO,KAAK,IAAI,EAAE;YACnF,IAAI,KAAK;gBAAE,OAAO,CAAC,GAAG,CAAC,gCAAgC,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;YAC7E,IAAI,CAAC,SAAS,CAAC,cAAc,EAAE,CAAC;YAChC,OAAO;SACV;QACD,IAAI,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,aAAa,EAAE,aAAa,KAAK,IAAI,CAAC,aAAa,EAAE;YAChF,IAAI,KAAK;gBAAE,OAAO,CAAC,GAAG,CAAC,gBAAgB,EAAE,IAAI,CAAC,aAAa,EAAE,IAAI,EAAE,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC;YACrG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;SAChC;QACD,MAAM,iBAAiB,GAAG,IAAI,CAAC,OAAO,CAAC,UAAqC,CAAC;QAC7E,IAAI,iBAAiB,EAAE;YACnB,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,KAAK,iBAAiB,CAAC,IAAI,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,iBAAiB,CAAC,GAAG,EAAE;gBAC5F,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,GAAG,iBAAiB,CAAC,IAAI,CAAC;gBAC3C,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,GAAG,iBAAiB,CAAC,GAAG,CAAC;gBACzC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,sBAAsB,EAAE,CAAC;aACzC;SACJ;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC;QACnC,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM;YAAE,OAAO;QACpC,QAAQ,IAAI,EAAE;YACV,KAAK,aAAa,CAAC,WAAW;gBAC1B,IAAI,IAAI,CAAC,IAAI,EAAE,UAAU,KAAK,UAAU,CAAC,OAAO,EAAE;oBAC9C,4BAA4B;oBAC5B,IAAI,CAAC,MAAM,CAAC,YAAY,GAAG,CAAC,CAAC;oBAC7B,IAAI,CAAC,MAAM,CAAC,YAAY,GAAG,CAAC,CAAC;iBAChC;qBACI;oBACD,4BAA4B;oBAC5B,IAAI,CAAC,MAAM,CAAC,YAAY,GAAG,EAAE,CAAC;oBAC9B,IAAI,CAAC,MAAM,CAAC,YAAY,GAAG,EAAE,CAAC;iBACjC;gBACD,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;gBAC7B,MAAM;YACV,KAAK,aAAa,CAAC,WAAW;gBAC1B,IAAI,CAAC,MAAM,CAAC,YAAY,GAAG,CAAC,CAAC;gBAC7B,IAAI,CAAC,MAAM,CAAC,YAAY,GAAG,CAAC,CAAC;gBAC7B,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC;gBAChC,MAAM;SACb;QACD,IAAI,CAAC,MAAM,CAAC,WAAW,GAAG,KAAK,CAAC;QAChC,0BAA0B;QAC1B,IAAI,IAAI,CAAC,IAAI,EAAE,UAAU,KAAK,UAAU,CAAC,OAAO;YAC5C,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;;YACrC,MAAM,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC;IACtC,CAAC;CAGJ;AAED,MAAM,aAAa,GAAG,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC,gBAAgB,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;AAGnG,MAAM,4BAA4B;IAEb,OAAO,CAAU;IACjB,SAAS,CAAkB;IAE5C,YAAY,OAAgB,EAAE,SAA0B;QACpD,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,OAAO,CAAC,GAAG,CAAC,kFAAkF,CAAC,CAAC;QAChG,MAAM,CAAC,gBAAgB,CAAC,SAAS,EAAE,CAAC,GAAG,EAAE,EAAE;YACvC,MAAM,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC;YACpB,IAAI,GAAG,KAAK,QAAQ,EAAE;gBAClB,IAAI,CAAC,SAAS,CAAC,cAAc,EAAE,CAAC;aACnC;QACL,CAAC,CAAC,CAAC;QACH,IAAI,QAAQ,GAAW,CAAC,CAAC;QACzB,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,gBAAgB,CAAC,WAAW,CAAC,WAAW,EAAE,CAAC,CAAC,EAAE;YAC7D,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC;QACtC,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,gBAAgB,CAAC,WAAW,CAAC,SAAS,EAAE,CAAC,CAAC,EAAE;YAC3D,MAAM,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,GAAG,QAAQ,CAAC;YAC7C,IAAI,EAAE,GAAG,CAAC,EAAE;gBACR,IAAI,CAAC,SAAS,CAAC,cAAc,EAAE,CAAC;aACnC;iBACI,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE;gBACvD,IAAI,CAAC,eAAe,EAAE,CAAC;QAC/B,CAAC,CAAC,CAAC;IACP,CAAC;IAEO,eAAe;QACnB,MAAM,IAAI,GAAG,IAAI,cAAc,EAAE,CAAC;QAClC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QACvB,sCAAsC;QACtC,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAChD,IAAI,KAAK;YAAE,OAAO,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC;QAChC,IAAI,IAAI,EAAE,MAAM,EAAE;YACd,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE;gBACpB,IAAI,GAAG,CAAC,QAAQ,GAAG,EAAE;oBAAE,SAAS;gBAChC,MAAM,GAAG,GAAG,GAAG,CAAC,MAAM,CAAC;gBACvB,MAAM,MAAM,GAAG,UAAU,CAAC,oBAAoB,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC;gBAClE,MAAM,EAAE,GAAG,MAAM,EAAE,YAAY,CAAC;gBAChC,IAAI,EAAE,EAAE;oBACJ,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;oBACpD,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,IAAI,CAAC;oBAC7B,IAAI,KAAK;wBAAE,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE,EAAE,EAAE,MAAM,CAAC,CAAC;oBAC/C,MAAM;iBACT;aACJ;SACJ;IACL,CAAC;CACJ;AAMD,MAAM,kCAAkC;IACpC,iCAAiC;IACjC,IAAI,CAAS;IACJ,QAAQ,GAAY,IAAI,CAAC;IAElC,8BAA8B;IAC9B,YAAY,CAAqB;IACjC,gBAAgB,CAAU;IAE1B,YAAY,YAAoB,EAAE,MAA0B,EAAE,gBAAyB;QACnF,IAAI,CAAC,IAAI,GAAG,YAAY,CAAC;QACzB,IAAI,CAAC,YAAY,GAAG,MAAM,CAAC;QAC3B,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;IAC7C,CAAC;CACJ;AAED,MAAM,yBAAyB;IAC3B,IAAI,CAAS;IACb,MAAM,CAAqB;IAE3B,YAAY,IAAe,EAAE,MAA0B;QACnD,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QACtB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACzB,CAAC;CACJ;AAED,MAAM,sBAAsB;IAEf,SAAS,GAAa,EAAE,CAAC;IAGjB,OAAO,CAAU;IACjB,SAAS,CAAkB;IACpC,oBAAoB,CAAW;IAC/B,oBAAoB,CAAW;IAC/B,iBAAiB,CAAW;IAEpC,YAAY,OAAgB,EAAE,SAA0B;QACpD,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5D,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjE,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC9D,CAAC;IAED,KAAK;QACD,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,WAAW,CAAC,4BAA4B,EAAE,IAAI,CAAC,oBAAoB,CAAC,CAAC;QAC7F,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,WAAW,CAAC,0BAA0B,EAAE,IAAI,CAAC,oBAAoB,CAAC,CAAC;QAC3F,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,WAAW,CAAC,UAAU,CAAC,UAAU,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC;QACnF,QAAQ,CAAC,gBAAgB,CAAC,SAAS,EAAE,GAAG,CAAC,EAAE;YACvC,IAAI,GAAG,CAAC,GAAG,KAAK,GAAG,EAAE;gBACjB,IAAI,CAAC,iBAAiB,EAAE,CAAC;aAC5B;iBACI,IAAI,GAAG,CAAC,GAAG,KAAK,QAAQ,EAAE;gBAC3B,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;aAChC;QACL,CAAC,CAAC,CAAC;IACP,CAAC;IAED,OAAO;QACH,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,aAAa,CAAC,4BAA4B,EAAE,IAAI,CAAC,oBAAoB,CAAC,CAAC;QAC/F,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,aAAa,CAAC,0BAA0B,EAAE,IAAI,CAAC,oBAAoB,CAAC,CAAC;QAC7F,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,aAAa,CAAC,UAAU,CAAC,UAAU,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC;IACzF,CAAC;IAED,wBAAwB,CAAC,MAA8B,EAAE,OAAgB;QACrE,IAAI,KAAK;YACL,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,YAAY,EAAE,0BAA0B,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;QACnG,IAAI,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,YAAY,EAAE;YACtC,MAAM,OAAO,GAAG,MAAM,EAAE,MAAM,KAAK,SAAS,CAAC;YAC7C,MAAM,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC;YAClD,MAAM,GAAG,GAAG,IAAI,kCAAkC,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,YAAY,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;YAC1G,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,4BAA4B,EAAE,GAAG,CAAC,CAAA;SAClE;IACL,CAAC;IAED,iBAAiB,CAAC,OAAgB,KAAK;QACnC,IAAI,KAAK;YACL,OAAO,CAAC,GAAG,CAAC,gBAAgB,EAAE,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;QACxE,IAAI,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,YAAY,EAAE;YACtC,IAAI,CAAC,SAAS,CAAC,cAAc,EAAE,CAAC;YAChC,MAAM,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,YAAY,CAAC;YACnE,MAAM,KAAK,GAAG,IAAI,yBAAyB,CAAC,IAAI,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;YAChE,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,0BAA0B,EAAE,KAAK,CAAC,CAAC;SACnE;IACL,CAAC;IAEO,gBAAgB;QACpB,IAAI,QAAQ,CAAC,UAAU,CAAC,EAAE;YACtB,IAAI,CAAC,iBAAiB,EAAE,CAAC;SAC5B;IACL,CAAC;IAEO,eAAe,CAAC,GAAuC;QAC3D,MAAM,iBAAiB,GAAG,GAAG,CAAC,YAAY,CAAC;QAC3C,MAAM,mBAAmB,GAAG,GAAG,CAAC,IAAI,CAAC;QAErC,IAAI,KAAK;YACL,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAErB,IAAI,iBAAiB,KAAK,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,YAAY,EAAE;YAC5D,IAAI,GAAG,CAAC,gBAAgB,EAAE;gBACtB,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC;gBAC1D,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE;oBACd,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;oBAChC,IAAI,CAAC,2BAA2B,EAAE,CAAC;oBACnC,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,eAAe,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;iBAC5E;aACJ;iBACI;gBACD,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,mBAAmB,CAAC,EAAE;oBAC/C,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;oBACzC,IAAI,CAAC,2BAA2B,EAAE,CAAC;oBACnC,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,aAAa,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;iBAC1E;aACJ;SACJ;IACL,CAAC;IAEO,2BAA2B;QAC/B,KAAK,IAAI,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;YACjD,MAAM,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;YAC7B,IAAI,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC,KAAK,KAAK,EAAE;gBACpD,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;aAC/B;SACJ;IACL,CAAC;IAEO,sBAAsB,CAAwC;IAE9D,oBAAoB,CAAC,GAA8B;QACvD,IAAI,CAAC,sBAAsB,GAAG,GAAG,CAAC;QAElC,IAAI,GAAG,CAAC,MAAM,KAAK,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,YAAY,EAAE;YACrD,IAAI,CAAC,SAAS,CAAC,cAAc,EAAE,CAAC;SACnC;aACI,IAAI,GAAG,CAAC,MAAM,KAAK,SAAS,EAAE;YAC/B,4EAA4E;YAC5E,IAAI,CAAC,SAAS,CAAC,cAAc,EAAE,CAAC;SACnC;aACI;YACD,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YAC5D,IAAI,IAAI,EAAE;gBACN,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,IAAI,CAAC;aAChC;iBACI;gBACD,IAAI,KAAK;oBACL,OAAO,CAAC,IAAI,CAAC,qBAAqB,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;gBACpD,IAAI,CAAC,aAAa,EAAE,CAAC;gBACrB,OAAO,KAAK,CAAC;aAChB;SACJ;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAEO,sBAAsB,CAAM;IAC5B,aAAa;QACjB,IAAI,IAAI,CAAC,sBAAsB;YAAE,OAAO;QACxC,IAAI,CAAC,sBAAsB,GAAG,WAAW,CAAC,GAAG,EAAE;YAC3C,IAAI,IAAI,CAAC,sBAAsB,KAAK,SAAS,IAAI,IAAI,CAAC,sBAAsB,CAAC,MAAM,IAAI,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,EAAE;gBACpJ,aAAa,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;gBAC3C,IAAI,CAAC,sBAAsB,GAAG,SAAS,CAAC;aAC3C;iBACI;gBACD,IAAI,KAAK;oBACL,OAAO,CAAC,GAAG,CAAC,sBAAsB,EAAE,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,CAAC;gBAC5E,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;aAC1D;QAEL,CAAC,EAAE,IAAI,CAAC,CAAC;IACb,CAAC;CACJ"}
@@ -37,6 +37,8 @@ export class SyncedRoom extends Behaviour {
37
37
  this.context.connection.leaveRoom(this.roomName);
38
38
  }
39
39
  tryJoinRoom(call = 0) {
40
+ if (call === undefined)
41
+ call = 0;
40
42
  let hasRoomParameter = false;
41
43
  if (this.urlParameterName) {
42
44
  const val = utils.getParam(this.urlParameterName);
@@ -1 +1 @@
1
- {"version":3,"file":"SyncedRoom.js","sourceRoot":"","sources":["../../../engine-components/SyncedRoom.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SyncedRoom.js","sourceRoot":"","sources":["../../../engine-components/SyncedRoom.ts"],"names":[],"mappings":"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"}
@@ -10,11 +10,20 @@ export declare enum VideoAudioOutputMode {
10
10
  Direct = 2,
11
11
  APIOnly = 3
12
12
  }
13
+ export declare enum VideoRenderMode {
14
+ CameraFarPlane = 0,
15
+ CameraNearPlane = 1,
16
+ RenderTexture = 2,
17
+ MaterialOverride = 3
18
+ }
13
19
  export declare class VideoPlayer extends Behaviour {
14
20
  renderer: THREE.Object3D | null;
15
21
  playOnAwake: boolean;
16
22
  playOnEnable?: boolean;
17
- targetMaterialProperty?: string;
23
+ private renderMode?;
24
+ private targetMaterialProperty?;
25
+ private targetMaterialRenderer?;
26
+ private targetTexture?;
18
27
  private time;
19
28
  private _playbackSpeed;
20
29
  get playbackSpeed(): number;
@@ -7,9 +7,10 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
7
7
  import { Behaviour } from "./Component";
8
8
  import * as THREE from "three";
9
9
  import { serializeable } from "../engine/engine_serialization_decorator";
10
- import { Object3D } from "three";
10
+ import { Object3D, Texture } from "three";
11
11
  import { awaitInput } from "../engine/engine_input_utils";
12
12
  import { getParam } from "../engine/engine_utils";
13
+ import { Renderer } from "./Renderer";
13
14
  const debug = getParam("debugvideo");
14
15
  export var VideoSource;
15
16
  (function (VideoSource) {
@@ -24,28 +25,26 @@ export var VideoSource;
24
25
  })(VideoSource || (VideoSource = {}));
25
26
  export var VideoAudioOutputMode;
26
27
  (function (VideoAudioOutputMode) {
27
- /// <summary>
28
- /// <para>Disable the embedded audio.</para>
29
- /// </summary>
30
28
  VideoAudioOutputMode[VideoAudioOutputMode["None"] = 0] = "None";
31
- /// <summary>
32
- /// <para>Send the embedded audio into a specified AudioSource.</para>
33
- /// </summary>
34
29
  VideoAudioOutputMode[VideoAudioOutputMode["AudioSource"] = 1] = "AudioSource";
35
- /// <summary>
36
- /// <para>Send the embedded audio direct to the platform's audio hardware.</para>
37
- /// </summary>
38
30
  VideoAudioOutputMode[VideoAudioOutputMode["Direct"] = 2] = "Direct";
39
- /// <summary>
40
- /// <para>Send the embedded audio to the associated AudioSampleProvider.</para>
41
- /// </summary>
42
31
  VideoAudioOutputMode[VideoAudioOutputMode["APIOnly"] = 3] = "APIOnly";
43
32
  })(VideoAudioOutputMode || (VideoAudioOutputMode = {}));
33
+ export var VideoRenderMode;
34
+ (function (VideoRenderMode) {
35
+ VideoRenderMode[VideoRenderMode["CameraFarPlane"] = 0] = "CameraFarPlane";
36
+ VideoRenderMode[VideoRenderMode["CameraNearPlane"] = 1] = "CameraNearPlane";
37
+ VideoRenderMode[VideoRenderMode["RenderTexture"] = 2] = "RenderTexture";
38
+ VideoRenderMode[VideoRenderMode["MaterialOverride"] = 3] = "MaterialOverride";
39
+ })(VideoRenderMode || (VideoRenderMode = {}));
44
40
  export class VideoPlayer extends Behaviour {
45
41
  renderer = null;
46
42
  playOnAwake = true;
47
43
  playOnEnable;
44
+ renderMode;
48
45
  targetMaterialProperty;
46
+ targetMaterialRenderer;
47
+ targetTexture;
49
48
  time = 0;
50
49
  _playbackSpeed = 1;
51
50
  get playbackSpeed() {
@@ -228,11 +227,24 @@ export class VideoPlayer extends Behaviour {
228
227
  return;
229
228
  if (!this.videoElement)
230
229
  return;
231
- const mat = this.gameObject["material"];
230
+ let target = this.gameObject;
231
+ switch (this.renderMode) {
232
+ case VideoRenderMode.MaterialOverride:
233
+ target = this.targetMaterialRenderer?.gameObject;
234
+ break;
235
+ case VideoRenderMode.RenderTexture:
236
+ console.error("VideoPlayer renderTexture not implemented yet. Please use material override instead");
237
+ return;
238
+ }
239
+ if (!target) {
240
+ console.error("Missing target for video material renderer", this);
241
+ return;
242
+ }
243
+ const mat = target["material"];
232
244
  if (mat) {
233
245
  if (mat !== this.videoMaterial) {
234
246
  this.videoMaterial = mat.clone();
235
- this.gameObject["material"] = this.videoMaterial;
247
+ target["material"] = this.videoMaterial;
236
248
  }
237
249
  if (!this.targetMaterialProperty) {
238
250
  this.videoMaterial.map = this.videoTexture;
@@ -292,9 +304,18 @@ __decorate([
292
304
  __decorate([
293
305
  serializeable()
294
306
  ], VideoPlayer.prototype, "playOnEnable", void 0);
307
+ __decorate([
308
+ serializeable()
309
+ ], VideoPlayer.prototype, "renderMode", void 0);
295
310
  __decorate([
296
311
  serializeable()
297
312
  ], VideoPlayer.prototype, "targetMaterialProperty", void 0);
313
+ __decorate([
314
+ serializeable(Renderer)
315
+ ], VideoPlayer.prototype, "targetMaterialRenderer", void 0);
316
+ __decorate([
317
+ serializeable(Texture)
318
+ ], VideoPlayer.prototype, "targetTexture", void 0);
298
319
  __decorate([
299
320
  serializeable()
300
321
  ], VideoPlayer.prototype, "time", void 0);
@@ -304,4 +325,32 @@ __decorate([
304
325
  __decorate([
305
326
  serializeable()
306
327
  ], VideoPlayer.prototype, "isLooping", null);
328
+ // class VideoTexture extends Texture {
329
+ // get isVideoTexture() { return true; }
330
+ // constructor( video, mapping, wrapS, wrapT, magFilter, minFilter, format, type, anisotropy ) {
331
+ // super( video, mapping, wrapS, wrapT, magFilter, minFilter, format, type, anisotropy );
332
+ // this.minFilter = minFilter !== undefined ? minFilter : LinearFilter;
333
+ // this.magFilter = magFilter !== undefined ? magFilter : LinearFilter;
334
+ // this.generateMipmaps = false;
335
+ // const scope = this;
336
+ // function updateVideo() {
337
+ // scope.needsUpdate = true;
338
+ // video.requestVideoFrameCallback( updateVideo );
339
+ // }
340
+ // if ( 'requestVideoFrameCallback' in video ) {
341
+ // video.requestVideoFrameCallback( updateVideo );
342
+ // }
343
+ // }
344
+ // // clone() {
345
+ // // return new this.constructor( this.image ).copy( this );
346
+ // // }
347
+ // update() {
348
+ // const video = this.image;
349
+ // const hasVideoFrameCallback = 'requestVideoFrameCallback' in video;
350
+ // if ( hasVideoFrameCallback === false && video.readyState >= video.HAVE_CURRENT_DATA ) {
351
+ // this.needsUpdate = true;
352
+ // }
353
+ // }
354
+ // }
355
+ // export { VideoTexture };
307
356
  //# sourceMappingURL=VideoPlayer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"VideoPlayer.js","sourceRoot":"","sources":["../../../engine-components/VideoPlayer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"VideoPlayer.js","sourceRoot":"","sources":["../../../engine-components/VideoPlayer.ts"],"names":[],"mappings":"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"}
@@ -23,8 +23,12 @@ export declare class ColorAdjustments extends VolumeComponent {
23
23
  export declare class VolumeProfile {
24
24
  components?: VolumeComponent[];
25
25
  apply(context: Context): void;
26
+ unapply(context: Context): void;
27
+ private onUpdate;
26
28
  }
27
29
  export declare class Volume extends Behaviour {
28
30
  sharedProfile?: VolumeProfile;
31
+ awake(): void;
29
32
  onEnable(): void;
33
+ onDisable(): void;
30
34
  }
@@ -7,6 +7,8 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
7
7
  import { Behaviour } from "./Component";
8
8
  import { LinearToneMapping, ACESFilmicToneMapping, ReinhardToneMapping } from "three";
9
9
  import { serializeable } from "../engine/engine_serialization_decorator";
10
+ import { getParam } from "../engine/engine_utils";
11
+ const debug = getParam("debugvolume");
10
12
  export var TonemappingMode;
11
13
  (function (TonemappingMode) {
12
14
  TonemappingMode[TonemappingMode["None"] = 0] = "None";
@@ -36,18 +38,38 @@ function resolveComponentType(data) {
36
38
  return ColorAdjustments;
37
39
  return VolumeComponent;
38
40
  }
41
+ const volumeKey = Symbol("volumeprofile");
39
42
  export class VolumeProfile {
40
43
  components;
41
44
  apply(context) {
45
+ this.onUpdate(context, false);
46
+ }
47
+ unapply(context) {
48
+ this.onUpdate(context, true);
49
+ }
50
+ onUpdate(context, remove) {
42
51
  if (!this.components)
43
52
  return;
53
+ const renderer = context.renderer;
54
+ const currentProfile = renderer[volumeKey];
55
+ const isActive = currentProfile !== undefined;
56
+ if (remove) {
57
+ // can not remove volume profile that is not active
58
+ if (!isActive)
59
+ return;
60
+ }
61
+ else {
62
+ renderer[volumeKey] = this;
63
+ }
44
64
  for (const component of this.components) {
45
65
  if (component instanceof ToneMapping) {
46
66
  const tonemapping = component;
47
- if (!component.active) {
67
+ if (!component.active || remove) {
48
68
  context.renderer.toneMapping = LinearToneMapping;
49
69
  continue;
50
70
  }
71
+ if (debug)
72
+ console.log("VOLUME:", TonemappingMode[tonemapping.mode?.value ?? 0]);
51
73
  switch (tonemapping.mode?.value ?? 0) {
52
74
  case TonemappingMode.None:
53
75
  context.renderer.toneMapping = LinearToneMapping;
@@ -64,9 +86,11 @@ export class VolumeProfile {
64
86
  const colorAdjustments = component;
65
87
  // unity range goes from -15..15
66
88
  // three.js range goes from 0..inf
67
- console.log(colorAdjustments.postExposure);
89
+ if (debug)
90
+ console.log(colorAdjustments.postExposure);
68
91
  const exposure = Math.pow(2, colorAdjustments.postExposure?.value ?? 0);
69
- context.renderer.toneMappingExposure = colorAdjustments.postExposure?.overrideState ? exposure : 1;
92
+ const useExposure = colorAdjustments.postExposure?.overrideState && !remove;
93
+ context.renderer.toneMappingExposure = useExposure ? exposure : 1;
70
94
  }
71
95
  }
72
96
  }
@@ -76,9 +100,26 @@ __decorate([
76
100
  ], VolumeProfile.prototype, "components", void 0);
77
101
  export class Volume extends Behaviour {
78
102
  sharedProfile;
103
+ awake() {
104
+ if (debug) {
105
+ console.log(this);
106
+ console.log("Press P to toggle post processing");
107
+ window.addEventListener("keydown", (e) => {
108
+ if (e.key === "p") {
109
+ console.log("Toggle volume: " + this.name, !this.enabled);
110
+ this.enabled = !this.enabled;
111
+ }
112
+ });
113
+ }
114
+ }
79
115
  onEnable() {
116
+ if (debug)
117
+ console.log("APPLY VOLUME", this);
80
118
  this.sharedProfile?.apply(this.context);
81
119
  }
120
+ onDisable() {
121
+ this.sharedProfile?.unapply(this.context);
122
+ }
82
123
  }
83
124
  __decorate([
84
125
  serializeable(VolumeProfile)
@@ -1 +1 @@
1
- {"version":3,"file":"Volume.js","sourceRoot":"","sources":["../../../engine-components/Volume.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Volume.js","sourceRoot":"","sources":["../../../engine-components/Volume.ts"],"names":[],"mappings":"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"}
@@ -1,19 +1,26 @@
1
1
  import { Behaviour } from "./Component";
2
2
  import * as THREE from 'three';
3
- import { XRPose } from "three";
3
+ import { Matrix4, XRPose } from "three";
4
4
  import { WebAR } from "./WebXR";
5
5
  export declare class WebARSessionRoot extends Behaviour {
6
6
  webAR: WebAR | null;
7
+ get rig(): THREE.Object3D | undefined;
7
8
  invertForward: boolean;
8
9
  get arScale(): number;
9
10
  set arScale(val: number);
11
+ private readonly _initalMatrix;
12
+ private readonly _selectStartFn;
13
+ private readonly _selectEndFn;
14
+ start(): void;
10
15
  private _arScale;
11
16
  private _rig;
12
17
  private _startPose;
13
18
  private _placementPose;
14
19
  private _isTouching;
20
+ private _rigStartPose;
15
21
  onBegin(session: THREE.XRSession): void;
16
- onUpdate(rig: THREE.Object3D | null, _session: THREE.XRSession, pose: XRPose | null | undefined): void;
22
+ onUpdate(rig: THREE.Object3D | null, _session: THREE.XRSession, pose: XRPose | null | undefined): boolean;
23
+ placeAt(rig: THREE.Object3D | null, mat: Matrix4): void;
17
24
  onEnd(rig: THREE.Object3D | null, _session: THREE.XRSession): void;
18
25
  private onSelectStart;
19
26
  private onSelectEnd;
@@ -4,13 +4,17 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
4
4
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
5
  return c > 3 && r && Object.defineProperty(target, key, r), r;
6
6
  };
7
- import { Behaviour } from "./Component";
7
+ import { Behaviour, GameObject } from "./Component";
8
8
  import * as THREE from 'three';
9
+ import { WebXR } from "./WebXR";
9
10
  import { InstancingUtil } from "./Renderer";
10
11
  import { serializeable } from "../engine/engine_serialization_decorator";
11
12
  // https://github.com/takahirox/takahirox.github.io/blob/master/three.js.mmdeditor/examples/js/controls/DeviceOrientationControls.js
12
13
  export class WebARSessionRoot extends Behaviour {
13
14
  webAR = null;
15
+ get rig() {
16
+ return this.webAR?.webxr.Rig;
17
+ }
14
18
  invertForward = false;
15
19
  get arScale() {
16
20
  return this._arScale;
@@ -21,43 +25,51 @@ export class WebARSessionRoot extends Behaviour {
21
25
  this._arScale = val;
22
26
  this.setScale(val);
23
27
  }
28
+ _initalMatrix = new THREE.Matrix4();
29
+ _selectStartFn = this.onSelectStart.bind(this);
30
+ _selectEndFn = this.onSelectEnd.bind(this);
31
+ start() {
32
+ const xr = GameObject.findObjectOfType(WebXR);
33
+ if (xr) {
34
+ xr.Rig.updateMatrix();
35
+ this._initalMatrix.copy(xr.Rig.matrix);
36
+ }
37
+ }
24
38
  _arScale = 5;
25
39
  _rig = null;
26
40
  _startPose = null;
27
41
  _placementPose = null;
28
42
  _isTouching = false;
43
+ _rigStartPose = null;
29
44
  onBegin(session) {
30
45
  this._placementPose = null;
31
46
  this.gameObject.visible = false;
32
47
  this.gameObject.matrixAutoUpdate = false;
33
48
  this._startPose = this.gameObject.matrix.clone();
34
- session.addEventListener('selectstart', this.onSelectStart.bind(this));
35
- session.addEventListener('selectend', this.onSelectEnd.bind(this));
36
- setTimeout(() => this.gameObject.visible = false, 1000);
49
+ this._rigStartPose = this.rig?.matrix.clone();
50
+ session.addEventListener('selectstart', this._selectStartFn);
51
+ session.addEventListener('selectend', this._selectEndFn);
52
+ // setTimeout(() => this.gameObject.visible = false, 1000); // TODO test on phone AR and Hololens if this was still needed
53
+ // console.log(this.rig?.position, this.rig?.quaternion, this.rig?.scale);
54
+ this.gameObject.visible = false;
55
+ if (this.rig) {
56
+ // reset rig to initial pose, this is helping the mix of immersive AR and immersive VR that we now have on quest
57
+ // where the rig can be moved and scaled by the user in VR mode and we use the rig position when entering
58
+ // immersive Ar right now to place the user/offset the session
59
+ this.rig.matrixAutoUpdate = true;
60
+ this._initalMatrix.decompose(this.rig.position, this.rig.quaternion, this.rig.scale);
61
+ }
37
62
  }
38
63
  onUpdate(rig, _session, pose) {
39
64
  if (pose && !this._placementPose) {
40
65
  if (this._isTouching) {
41
66
  if (this.webAR)
42
67
  this.webAR.setReticleActive(false);
43
- this._placementPose = new THREE.Matrix4().fromArray(pose.transform.matrix).invert();
44
- if (rig) {
45
- if (this.invertForward) {
46
- const rot = new THREE.Matrix4().makeRotationY(Math.PI);
47
- this._placementPose.premultiply(rot);
48
- }
49
- this._rig = rig;
50
- this.setScale(this.arScale);
51
- }
52
- else
53
- this._rig = null;
54
- // this.gameObject.matrix.copy(this._placementPose);
55
- // if (rig) {
56
- // this.gameObject.matrix.premultiply(rig.matrixWorld)
57
- // }
58
- this.gameObject.visible = true;
68
+ this.placeAt(rig, new THREE.Matrix4().fromArray(pose.transform.matrix).invert());
69
+ return true;
59
70
  }
60
71
  }
72
+ return false;
61
73
  // if (this._placementPose) {
62
74
  // this.gameObject.matrixAutoUpdate = false;
63
75
  // const matrix = pose?.transform.matrix;
@@ -67,17 +79,46 @@ export class WebARSessionRoot extends Behaviour {
67
79
  // this.gameObject.visible = true;
68
80
  // }
69
81
  }
82
+ placeAt(rig, mat) {
83
+ if (!this._placementPose)
84
+ this._placementPose = new THREE.Matrix4();
85
+ this._placementPose.copy(mat);
86
+ if (rig) {
87
+ if (this.invertForward) {
88
+ const rot = new THREE.Matrix4().makeRotationY(Math.PI);
89
+ this._placementPose.premultiply(rot);
90
+ }
91
+ this._rig = rig;
92
+ this.setScale(this.arScale);
93
+ }
94
+ else
95
+ this._rig = null;
96
+ // this.gameObject.matrix.copy(this._placementPose);
97
+ // if (rig) {
98
+ // this.gameObject.matrix.premultiply(rig.matrixWorld)
99
+ // }
100
+ this.gameObject.visible = true;
101
+ }
70
102
  onEnd(rig, _session) {
71
103
  this._placementPose = null;
72
104
  this.gameObject.visible = false;
73
- if (this._startPose)
105
+ this.gameObject.matrixAutoUpdate = false;
106
+ if (this._startPose) {
74
107
  this.gameObject.matrix.copy(this._startPose);
75
- this.gameObject.matrixAutoUpdate = true;
76
- if (rig)
108
+ }
109
+ if (rig) {
77
110
  rig.matrixAutoUpdate = true;
111
+ if (this._rigStartPose) {
112
+ this._rigStartPose.decompose(rig.position, rig.quaternion, rig.scale);
113
+ // console.log(rig.position, rig.quaternion, rig.scale);
114
+ }
115
+ }
78
116
  InstancingUtil.markDirty(this.gameObject, true);
79
117
  // HACK to fix physics being not in correct place after exiting AR
80
- setTimeout(() => this.gameObject.visible = true, 100);
118
+ setTimeout(() => {
119
+ this.gameObject.matrixAutoUpdate = true;
120
+ this.gameObject.visible = true;
121
+ }, 100);
81
122
  }
82
123
  onSelectStart() {
83
124
  this._isTouching = true;
@@ -90,10 +131,14 @@ export class WebARSessionRoot extends Behaviour {
90
131
  if (!rig || !this._placementPose) {
91
132
  return;
92
133
  }
134
+ if (!this._rigStartPose) {
135
+ this._rigStartPose = rig.matrix.clone();
136
+ }
93
137
  rig.matrixAutoUpdate = false;
94
138
  rig.matrix.multiplyMatrices(new THREE.Matrix4().makeScale(scale, scale, scale), this._placementPose);
95
139
  rig.matrix.decompose(rig.position, rig.quaternion, rig.scale);
96
140
  rig.updateMatrixWorld();
141
+ console.log("Place", rig.position);
97
142
  }
98
143
  }
99
144
  __decorate([