@needle-tools/engine 3.22.0 → 3.22.1

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.
@@ -1 +1 @@
1
- {"version":3,"file":"engine_networking.js","sourceRoot":"","sources":["../../src/engine/engine_networking.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"engine_networking.js","sourceRoot":"","sources":["../../src/engine/engine_networking.ts"],"names":[],"mappings":"AAAA,MAAM,mCAAmC,GAAG,4DAA4D,CAAC;AACzG,IAAI,SAAS,GAAuB,4CAA4C,CAAC;AAKjF,OAAO,KAAK,KAAK,MAAM,mBAAmB,CAAC;AAC3C,OAAO,KAAK,WAAW,MAAM,aAAa,CAAC;AAC3C,OAAO,KAAK,OAAO,MAAM,8BAA8B,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAwC,SAAS,EAAE,MAAM,8BAA8B,CAAC;AAC/F,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAEhE,MAAM,CAAC,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;AAClE,MAAM,CAAC,MAAM,UAAU,GAAG,QAAQ,IAAI,KAAK,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;AAgBlF,iFAAiF;AACjF,MAAM,CAAN,IAAY,gBAEX;AAFD,WAAY,gBAAgB;IACxB,4DAAwC,CAAA;AAC5C,CAAC,EAFW,gBAAgB,KAAhB,gBAAgB,QAE3B;AAED;;;KAGK;AACL,MAAM,CAAN,IAAY,UAcX;AAdD,WAAY,UAAU;IAClB,kEAAkE;IAClE,gCAAkB,CAAA;IAClB,mEAAmE;IACnE,kCAAoB,CAAA;IACpB,sDAAsD;IACtD,wCAA0B,CAAA;IAC1B,oDAAoD;IACpD,oCAAsB,CAAA;IACtB,sDAAsD;IACtD,iDAAmC,CAAA;IACnC,oDAAoD;IACpD,6CAA+B,CAAA;IAC/B,+CAAiC,CAAA;AACrC,CAAC,EAdW,UAAU,KAAV,UAAU,QAcrB;AAED,+DAA+D;AAC/D,MAAM,OAAO,kBAAkB;IAC3B,IAAI,CAAU,CAAC,YAAY;IAC3B,MAAM,CAAU;IAChB,YAAY,CAAW;IACvB,MAAM,CAAY,CAAC,iBAAiB;CACvC;AAED,MAAM,OAAO,gBAAgB;IACzB,IAAI,CAAU,CAAC,YAAY;CAC9B;AAED,MAAM,OAAO,yBAAyB;IAClC,MAAM,CAAU;CACnB;AAED;sGACsG;AACtG,MAAM,CAAN,IAAY,cAWX;AAXD,WAAY,cAAc;IACtB,uDAAqC,CAAA;IACrC,yDAAuC,CAAA;IACvC,qDAAmC,CAAA;IACnC,uDAAqC,CAAA;IACrC,wDAAsC,CAAA;IACtC,sDAAoC,CAAA;IACpC,sDAAoC,CAAA;IACpC,kDAAgC,CAAA;IAChC,yEAAuD,CAAA;IACvD,qEAAmD,CAAA;AACvD,CAAC,EAXW,cAAc,KAAd,cAAc,QAWzB;AAkBD,kNAAkN;AAClN,MAAM,OAAO,cAAc;IAEhB,IAAI,CAAS;IACZ,UAAU,CAAoB;IAEtC,IAAW,YAAY;QACnB,OAAO,IAAI,CAAC,aAAa,CAAC;IAC9B,CAAC;IAED,+CAA+C;IAE/C,0BAA0B;IAC1B,IAAW,OAAO;QACd,OAAO,IAAI,CAAC,QAAQ,CAAC;IACzB,CAAC;IAED,IAAW,WAAW;QAClB,OAAO,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC;IACvC,CAAC;IAEO,aAAa,GAAY,KAAK,CAAC;IAC/B,QAAQ,GAAwB,SAAS,CAAC;IAC1C,iBAAiB,CAAW;IAC5B,iBAAiB,CAAW;IAC5B,iBAAiB,CAAW;IAEpC,YAAY,UAA6B,EAAE,IAAY;QACnD,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC3D,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACzD,UAAU,CAAC,WAAW,CAAC,cAAc,CAAC,aAAa,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC;QAC7E,UAAU,CAAC,WAAW,CAAC,cAAc,CAAC,wBAAwB,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC;QAExF,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5D,UAAU,CAAC,WAAW,CAAC,cAAc,CAAC,gBAAgB,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC;IACpF,CAAC;IAEO,sCAAsC,GAAoB,IAAI,CAAC;IAEhE,aAAa;QAChB,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,cAAc,CAAC,eAAe,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;IAC9E,CAAC;IAEO,kBAAkB,CAAC,GAAsB;QAC7C,IAAI,GAAG,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,EAAE;YACxB,IAAI,CAAC,QAAQ,GAAG,GAAG,CAAC,KAAK,CAAC;SAC7B;IACL,CAAC;IAEM,0BAA0B;QAC7B,IAAI,IAAI,CAAC,sCAAsC,KAAK,IAAI;YAAE,OAAO,IAAI,CAAC;QACtE,IAAI,CAAC,sCAAsC,GAAG,IAAI,CAAC,kCAAkC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjG,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,cAAc,CAAC,gBAAgB,EAAE,IAAI,CAAC,sCAAsC,CAAC,CAAC;QAC1G,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,cAAc,CAAC,eAAe,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;QAC1E,OAAO,IAAI,CAAC;IAChB,CAAC;IAEO,kCAAkC,CAAC,GAAsB;QAC7D,oBAAoB;QACpB,IAAI,GAAG,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,EAAE;YACxB,IAAI,IAAI,CAAC,sCAAsC,EAAE;gBAC7C,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,cAAc,CAAC,gBAAgB,EAAE,IAAI,CAAC,sCAAsC,CAAC,CAAC;gBACzG,IAAI,CAAC,sCAAsC,GAAG,IAAI,CAAC;aACtD;YACD,IAAI,CAAC,QAAQ,GAAG,GAAG,CAAC,KAAK,CAAC;YAC1B,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE;gBACZ,IAAI,UAAU;oBACV,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,IAAI,CAAC,IAAI,CAAC,CAAA;gBAC/C,IAAI,CAAC,gBAAgB,EAAE,CAAC;aAC3B;SACJ;IACL,CAAC;IAGM,qBAAqB;QACxB,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACnC,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACxB,IAAI,OAAO,GAAG,CAAC,CAAC;YAChB,MAAM,gBAAgB,GAAG,GAAG,EAAE;gBAC1B,IAAI,OAAO,EAAE,GAAG,EAAE;oBAAE,OAAO,MAAM,CAAC,SAAS,CAAC,CAAC;gBAC7C,UAAU,CAAC,GAAG,EAAE;oBACZ,IAAI,IAAI,CAAC,YAAY;wBAAE,OAAO,CAAC,IAAI,CAAC,CAAC;;wBAChC,gBAAgB,EAAE,CAAC;gBAC5B,CAAC,EAAE,GAAG,CAAC,CAAC;YACZ,CAAC,CAAC;YACF,gBAAgB,EAAE,CAAC;QACvB,CAAC,CAAC,CAAC;IACP,CAAC;IAEM,gBAAgB;QACnB,IAAI,UAAU;YAAE,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5D,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,cAAc,CAAC,gBAAgB,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;QAC3E,OAAO,IAAI,CAAC;IAChB,CAAC;IAEM,aAAa;QAChB,2CAA2C;QAC3C,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,cAAc,CAAC,eAAe,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;QAC1E,IAAI,IAAI,CAAC,sCAAsC,EAAE;YAC7C,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,cAAc,CAAC,gBAAgB,EAAE,IAAI,CAAC,sCAAsC,CAAC,CAAC;YACzG,IAAI,CAAC,sCAAsC,GAAG,IAAI,CAAC;SACtD;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAEM,OAAO;QACV,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,cAAc,CAAC,eAAe,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC;QACnF,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,cAAc,CAAC,aAAa,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC;QACjF,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,cAAc,CAAC,gBAAgB,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC;QACpF,IAAI,IAAI,CAAC,sCAAsC,EAAE;YAC7C,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,cAAc,CAAC,gBAAgB,EAAE,IAAI,CAAC,sCAAsC,CAAC,CAAC;YACzG,IAAI,CAAC,sCAAsC,GAAG,IAAI,CAAC;SACtD;IACL,CAAC;IAEO,iBAAiB,CAAC,GAAqC;QAC3D,IAAI,GAAG,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,EAAE;YACxB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;YACrB,kDAAkD;YAClD,IAAI,IAAI,CAAC,UAAU,CAAC,YAAY,KAAK,GAAG,CAAC,KAAK,EAAE;gBAC5C,IAAI,UAAU;oBACV,OAAO,CAAC,GAAG,CAAC,kBAAkB,EAAE,IAAI,CAAC,IAAI,CAAC,CAAA;gBAC9C,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;aAC7B;;gBACI,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;SACnC;IACL,CAAC;IACO,eAAe,CAAC,IAAY;QAChC,IAAI,IAAI,KAAK,IAAI,CAAC,IAAI,EAAE;YACpB,IAAI,UAAU;gBACV,OAAO,CAAC,GAAG,CAAC,gBAAgB,EAAE,IAAI,CAAC,IAAI,CAAC,CAAA;YAC5C,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;YAC3B,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;SACzB;IACL,CAAC;CACJ;AAOD,4DAA4D;AAC5D,MAAM,OAAO,iBAAiB;IAElB,OAAO,CAAU;IACjB,KAAK,GAA0B,IAAI,CAAC;IAE5C,YAAY,OAAgB;QACxB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IAC3B,CAAC;IAED,0CAA0C;IAC1C,IAAW,IAAI;QACX,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;YACb,IAAI,CAAC,KAAK,GAAG,IAAI,cAAc,EAAE,CAAC;SACrC;QACD,OAAO,IAAI,CAAC,KAAK,CAAC;IACtB,CAAC;IAEM,WAAW,CAAC,IAAY;QAC3B,IAAI,IAAI,KAAK,SAAS;YAAE,OAAO,IAAI,CAAC;QACpC,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAC7B,CAAC;IAED,yGAAyG;IACzG,IAAW,YAAY;QACnB,OAAO,IAAI,CAAC,aAAa,CAAC;IAC9B,CAAC;IAED,IAAW,cAAc;QACrB,OAAO,QAAQ,CAAC;IACpB,CAAC;IAED,oDAAoD;IACpD,IAAW,WAAW;QAClB,OAAO,IAAI,CAAC,SAAS,CAAC;IAC1B,CAAC;IAED,8DAA8D;IAC9D,IAAW,eAAe,KAAoB,OAAO,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC;IAC7E,oKAAoK;IACpK,IAAW,YAAY,KAAc,OAAO,IAAI,CAAC,wBAAwB,CAAC,CAAC,CAAC;IAC5E,wDAAwD;IACxD,IAAW,iBAAiB,KAAoB,OAAO,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC;IAEjF,mGAAmG;IACnG,IAAW,QAAQ;QACf,OAAO,IAAI,CAAC,SAAS,CAAC;IAC1B,CAAC;IAED,oDAAoD;IACpD,IAAW,cAAc;QACrB,OAAO,IAAI,CAAC,aAAa,CAAC;IAC9B,CAAC;IAED,qOAAqO;IAC9N,QAAQ;QACX,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;IACxD,CAAC;IAED,wEAAwE;IACjE,YAAY,CAAC,EAAU;QAC1B,OAAO,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;IAClD,CAAC;IAEO,gBAAgB,GAAG,EAAE,CAAC;IAC9B,yDAAyD;IAClD,WAAW,CAAC,SAA0B,IAAI;QAC7C,IAAI,CAAC,MAAM;YAAE,MAAM,GAAG,IAAI,CAAC,gBAAgB,CAAC;QAC5C,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;QAClB,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,cAAc;YAClC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACtB,OAAO,MAAM,CAAC;IAClB,CAAC;IAED,6HAA6H;IACtH,QAAQ,CAAC,IAAY,EAAE,WAAoB,KAAK;QACnD,IAAI,CAAC,IAAI,EAAE;YACP,OAAO,CAAC,KAAK,CAAC,qCAAqC,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC;YACnE,OAAO,KAAK,CAAC;SAChB;QACD,4DAA4D;QAC5D,IAAI,IAAI,CAAC,MAAM,GAAG,IAAI,EAAE;YACpB,OAAO,CAAC,KAAK,CAAC,sCAAsC,GAAG,IAAI,GAAG,oCAAoC,CAAC,CAAC;YACpG,OAAO,KAAK,CAAC;SAChB;QAED,IAAI,CAAC,OAAO,EAAE,CAAC;QAEf,IAAI,QAAQ;YACR,OAAO,CAAC,GAAG,CAAC,QAAQ,GAAG,IAAI,CAAC,CAAC;QACjC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,SAAS,CAAC,YAAY,CAAC,CAAC;QACvF,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,oKAAoK;IAC7J,SAAS,CAAC,OAAsB,IAAI;QACvC,IAAI,CAAC,IAAI;YAAE,IAAI,GAAG,IAAI,CAAC,eAAe,CAAC;QACvC,IAAI,CAAC,IAAI,EAAE;YACP,OAAO,CAAC,KAAK,CAAC,qCAAqC,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC;YACnE,OAAO,KAAK,CAAC;SAChB;QACD,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;QAC5C,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,wHAAwH;IACjH,IAAI,CAA8B,GAA4B,EAAE,OAAiB,IAAI,EAAE,QAAmB,SAAS,CAAC,MAAM;QAE7H,YAAY;QACZ,IAAI,IAAI,KAAK,IAAI;YAAE,IAAI,GAAG,EAAE,CAAC;QAE7B,IAAI,KAAK,KAAK,SAAS,CAAC,MAAM,EAAE;YAC5B,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;YAC5D,OAAO;SACV;QAED,+BAA+B;QAC/B,sBAAsB;QACtB,qCAAqC;QACrC,8BAA8B;QAC9B,wCAAwC;QACxC,gCAAgC;QAChC,OAAO,IAAI,CAAC,iBAAiB,CAAC,GAAG,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;IACpD,CAAC;IAED,yDAAyD;IAClD,qBAAqB,CAAC,IAAY;QACrC,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;QAC1D,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAC7B,CAAC;IAED,4EAA4E;IACrE,wBAAwB;QAC3B,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;QAC9B,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC;IACrB,CAAC;IAED,+EAA+E;IACxE,UAAU,CAAC,GAAe;QAC7B,IAAI,QAAQ;YAAE,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;QAChD,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;IACxB,CAAC;IAEO,sBAAsB,GAAuC,EAAE,CAAC;IAChE,2BAA2B,GAAsC,EAAE,CAAC;IACrE,uBAAuB;QAC1B,IAAI,CAAC,IAAI,CAAC,GAAG;YAAE,OAAO;QACtB,IAAI,CAAC,2BAA2B,CAAC,MAAM,GAAG,CAAC,CAAC;QAC5C,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC,MAAM,CAAC;QAC9D,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,sBAAsB,EAAE;YAC3C,MAAM,IAAI,GAAG,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC,CAAC;YAC9C,wEAAwE;YACxE,IAAI,KAAK,IAAI,CAAC,EAAE;gBACZ,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,KAAK,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;gBAClE,MAAM;aACT;YACD,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;YACjD,IAAI,CAAC,2BAA2B,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;SAC9C;QACD,IAAI,CAAC,sBAAsB,CAAC,MAAM,GAAG,CAAC,CAAC;QACvC,IAAI,IAAI,CAAC,2BAA2B,CAAC,MAAM,GAAG,CAAC,IAAI,QAAQ;YACvD,OAAO,CAAC,GAAG,CAAC,eAAe,EAAE,IAAI,CAAC,2BAA2B,CAAC,MAAM,CAAC,CAAC;QAC1E,IAAI,IAAI,CAAC,2BAA2B,CAAC,MAAM,IAAI,CAAC;YAAE,OAAO;QACzD,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;QACjE,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IAC5B,CAAC;IAED,kDAAkD;IAC3C,WAAW,CAAC,GAA4B,EAAE,QAAkB;QAC/D,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;YACrB,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;QAC9B,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACpC,OAAO,QAAQ,CAAC;IACpB,CAAC;IAED,4DAA4D;IACrD,aAAa,CAAC,GAA4B,EAAE,QAAyB,IAAI,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC;IAExH,iDAAiD;IAC1C,UAAU,CAAC,GAA4B,EAAE,QAAyB;QACrE,IAAI,CAAC,QAAQ;YAAE,OAAO;QACtB,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;YAAE,OAAO;QAClC,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QACrD,IAAI,KAAK,IAAI,CAAC,EAAE;YACZ,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;SACzC;IACL,CAAC;IAED,yDAAyD;IAClD,iBAAiB,CAAC,UAAkB,EAAE,QAAwB;QACjE,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC;YAClC,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC;QAC3C,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACjD,OAAO,QAAQ,CAAC;IACpB,CAAC;IAED,wDAAwD;IACjD,gBAAgB,CAAC,UAAkB,EAAE,QAAa;QACrD,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC;YAAE,OAAO;QAC/C,MAAM,KAAK,GAAG,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAClE,IAAI,KAAK,IAAI,CAAC,EAAE;YACZ,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;SACtD;IACL,CAAC;IAEO,uBAAuB,CAAmC;IAElE,gIAAgI;IACzH,gBAAgB,CAAC,IAAqC;QACzD,IAAI,CAAC,uBAAuB,GAAG,IAAI,CAAC;IACxC,CAAC;IAED,+CAA+C;IACxC,KAAK,CAAC,OAAO;QAChB,IAAI,IAAI,CAAC,SAAS;YAAE,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACjD,IAAI,QAAQ;YACR,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QAC9B,MAAM,WAAW,GAAG,IAAI,CAAC,uBAAuB,EAAE,eAAe,EAAE,CAAC;QACpE,IAAI,WAAW,EAAE;YACb,SAAS,GAAG,WAAW,CAAC;SAC3B;aACI,IAAI,gBAAgB,EAAE,EAAE;YACzB,SAAS,GAAG,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,GAAG,SAAS,CAAC;SAC3D;QACD,OAAO,IAAI,CAAC,gBAAgB,EAAE,CAAC;IACnC,CAAC;IAAA,CAAC;IAEF,oDAAoD;IAC7C,UAAU;QACb,IAAI,CAAC,GAAG,EAAE,KAAK,EAAE,CAAC;QAClB,IAAI,CAAC,GAAG,GAAG,SAAS,CAAC;IACzB,CAAC;IAEO,UAAU,GAAkC,EAAE,CAAC;IAC/C,gBAAgB,GAAwC,EAAE,CAAC;IAC3D,SAAS,GAAY,KAAK,CAAC;IAC3B,SAAS,CAAqB;IAC9B,aAAa,GAAkB,IAAI,CAAC;IAE5C,yEAAyE;IACjE,GAAG,CAAwB;IAC3B,iBAAiB,GAAuC,EAAE,CAAC;IAC3D,SAAS,GAAY,KAAK,CAAC;IAC3B,gBAAgB,GAAkB,IAAI,CAAC;IACvC,kBAAkB,GAAkB,IAAI,CAAC;IACzC,wBAAwB,GAAY,IAAI,CAAC;IACzC,cAAc,GAAa,EAAE,CAAC;IAC9B,MAAM,GAA2B,EAAE,CAAC;IACpC,aAAa,GAAW,CAAC,CAAC,CAAC;IAE3B,6BAA6B,GAA4B,IAAI,CAAC;IAE9D,gBAAgB;QACpB,IAAI,IAAI,CAAC,6BAA6B;YAAE,OAAO,IAAI,CAAC,6BAA6B,CAAC;QAClF,OAAO,IAAI,CAAC,6BAA6B,GAAG,IAAI,OAAO,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE;YACrE,IAAI,UAAU,GAAG,KAAK,CAAC;YACvB,MAAM,OAAO,GAAG,CAAC,GAAY,EAAE,EAAE;gBAC7B,IAAI,UAAU;oBAAE,OAAO;gBACvB,UAAU,GAAG,IAAI,CAAC;gBAClB,GAAG,CAAC,GAAG,CAAC,CAAC;YACb,CAAC,CAAA;YACD,IAAI,SAAS,KAAK,SAAS,EAAE;gBACzB,OAAO,CAAC,GAAG,CAAC,6BAA6B,GAAG,mCAAmC,CAAC,CAAC;gBACjF,MAAM,MAAM,GAAG,KAAK,CAAC;gBACrB,MAAM,kBAAkB,GAAG,MAAM,KAAK,CAAC,mCAAmC,CAAC,CAAC;gBAC5E,SAAS,GAAG,MAAM,kBAAkB,CAAC,IAAI,EAAE,CAAC;gBAC5C,IAAI,MAAM;oBAAE,OAAO;aACtB;YAED,IAAI,SAAS,KAAK,SAAS,EAAE;gBACzB,OAAO,CAAC,KAAK,CAAC,CAAC;gBACf,OAAO;aACV;YAED,OAAO,CAAC,GAAG,CAAC,yCAAyC,GAAG,SAAS,CAAC,CAAA;YAClE,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,cAAc,CAAC,CAAC;YACzC,aAAa;YACb,MAAM,gBAAgB,GAAG,GAAG,CAAC,OAAO,EAAE,gBAAgB,IAAI,GAAG,CAAC,gBAAgB,CAAC;YAC/E,MAAM,EAAE,GAAG,IAAI,gBAAgB,CAAC,SAAS,CAAC;iBACrC,MAAM,CAAC,GAAG,EAAE;gBACT,IAAI,CAAC,6BAA6B,GAAG,IAAI,CAAC;gBAC1C,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC;gBACd,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;gBACtB,OAAO,CAAC,GAAG,CAAC,qCAAqC,GAAG,SAAS,CAAC,CAAC;gBAC/D,OAAO,CAAC,IAAI,CAAC,CAAC;gBACd,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;YAC9C,CAAC,CAAC;iBACD,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;gBACd,IAAI,CAAC,6BAA6B,GAAG,IAAI,CAAC;gBAC1C,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;gBACvB,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;gBACvB,OAAO,CAAC,KAAK,CAAC,CAAC;YACnB,CAAC,CAAC;iBACD,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE;gBACf,OAAO,CAAC,KAAK,CAAC,mBAAmB,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;gBAC1C,OAAO,CAAC,KAAK,CAAC,CAAC;YACnB,CAAC,CAAC;iBACD,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;iBACpC,OAAO,CAAC,GAAG,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,0CAA0C,CAAC,CAAA,CAAC,CAAC,CAAC;iBAC1E,KAAK,EAAE,CAAC;QAEjB,CAAC,CAAC,CAAC;IACP,CAAC;IAEO,SAAS,CAAC,CAAC,EAAE,EAAE;QACnB,MAAM,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC;QACpB,IAAI;YACA,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE;gBACzB,IAAI,GAAG,CAAC,IAAI,EAAE;oBACV,iBAAiB;oBACjB,IAAI,CAAC,2BAA2B,CAAC,GAAG,CAAC,CAAC;iBACzC;gBACD,OAAO;aACV;YACD,MAAM,OAAO,GAA+C,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAC5E,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;gBACxB,oEAAoE;gBACpE,KAAK,MAAM,GAAG,IAAI,OAAO,EAAE;oBACvB,IAAI,CAAC,2BAA2B,CAAC,GAAG,CAAC,CAAC;iBACzC;aACJ;;gBACI,IAAI,CAAC,2BAA2B,CAAC,OAAO,CAAC,CAAC;YAC/C,OAAO;SACV;QACD,MAAM;YACF,IAAI,QAAQ,IAAI,GAAG,KAAK,MAAM;gBAAE,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;SAC1D;IACL,CAAC;IAEO,KAAK,CAAC,2BAA2B,CAAC,IAAU;QAChD,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QACrC,IAAI,IAAI,GAAG,IAAI,UAAU,CAAC,GAAG,CAAC,CAAC;QAC/B,MAAM,EAAE,GAAG,IAAI,WAAW,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QAC5C,MAAM,EAAE,GAAG,EAAE,CAAC,mBAAmB,EAAE,CAAC;QACpC,MAAM,SAAS,GAAG,IAAI,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC;QAC5C,0EAA0E;QAC1E,MAAM,GAAG,GAAG,OAAO,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;QACtC,MAAM,IAAI,GAAG,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;QACrC,IAAI,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE;YAClC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC;SAC3B;QACD,IAAI,CAAC,SAAS;YAAE,OAAO;QACvB,MAAM,GAAG,GAAG,GAAG,IAAI,EAAE,CAAC,CAAC,yDAAyD;QAChF,gDAAgD;QAChD,KAAK,MAAM,EAAE,IAAI,SAAS,EAAE;YACxB,EAAE,CAAC,GAAG,CAAC,CAAC;SACX;IACL,CAAC;IAEO,2BAA2B,CAAC,OAAyB;QAEzD,IAAI,QAAQ;YAAE,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,IAAI,OAAO,CAAC,CAAC;QACxD,IAAI,OAAO,CAAC,GAAG,EAAE;YACb,QAAQ,OAAO,CAAC,GAAG,EAAE;gBACjB,KAAK,gBAAgB,CAAC,cAAc;oBAChC,IAAI,OAAO,CAAC,IAAI,EAAE;wBACd,MAAM,UAAU,GAAG,OAAO,CAAC,IAAuB,CAAC;wBACnD,IAAI,UAAU,EAAE;4BACZ,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,KAAK,SAAS,IAAI,UAAU,CAAC,EAAE,KAAK,IAAI,IAAI,UAAU,CAAC,EAAE,CAAC,MAAM,GAAG,CAAC,EAC5F,mCAAmC,EAAE,UAAU,CAAC,EAAE,CAAC,CAAC;4BACxD,iBAAiB;4BACjB,OAAO,CAAC,GAAG,CAAC,cAAc,GAAG,UAAU,CAAC,EAAE,EAAE,IAAI,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;4BACtE,IAAI,CAAC,aAAa,GAAG,UAAU,CAAC,EAAE,CAAC;yBACtC;qBACJ;;wBACI,OAAO,CAAC,IAAI,CAAC,4BAA4B,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;oBAC9D,MAAM;gBACV,KAAK,UAAU,CAAC,UAAU;oBACtB,IAAI,QAAQ;wBACR,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;oBACzB,IAAI,OAAO,EAAE;wBACT,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;wBACtB,MAAM,KAAK,GAAG,OAAwC,CAAC;wBACvD,IAAI,CAAC,gBAAgB,GAAG,KAAK,CAAC,IAAI,CAAC;wBACnC,IAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC,MAAM,CAAC;wBACvC,IAAI,CAAC,wBAAwB,GAAG,KAAK,CAAC,YAAY,IAAI,IAAI,CAAC;wBAE3D,IAAI,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC;wBAC/B,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC;wBAC1C,IAAI,QAAQ;4BACR,OAAO,CAAC,GAAG,CAAC,kBAAkB,EAAE,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;wBAEnF,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;wBAC9C,IAAI,OAAO,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE;4BAClC,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;yBACvC;wBACD,OAAO,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,kBAAkB,CAAC,CAAC;wBAC1D,OAAO,CAAC,GAAG,CAAC,gBAAgB,GAAG,IAAI,CAAC,kBAAkB,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;qBACjF;oBAED,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;oBACxC,MAAM;gBAEV,KAAK,UAAU,CAAC,QAAQ;oBACpB,MAAM,KAAK,GAAG,OAAsC,CAAC;oBACrD,IAAI,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,eAAe,EAAE;wBACrC,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;wBACvB,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC;wBAC7B,IAAI,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC;qBAClC;oBACD,MAAM;gBACV,KAAK,UAAU,CAAC,cAAc;oBAC1B,IAAI,OAAO,CAAC,IAAI,EAAE;wBACd,MAAM,KAAK,GAAG,OAAO,CAAC,IAA4C,CAAC;wBACnE,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;wBACvC,IAAI,QAAQ;4BACR,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,SAAS,EAAE,cAAc,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;qBAClF;oBACD,MAAM;gBACV,KAAK,UAAU,CAAC,YAAY;oBACxB,IAAI,OAAO,CAAC,IAAI,EAAE;wBACd,MAAM,KAAK,GAAG,OAAO,CAAC,IAA4C,CAAC;wBACnE,MAAM,KAAK,GAAG,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;wBACxD,IAAI,KAAK,IAAI,CAAC,EAAE;4BACZ,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;4BAC9D,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;yBACxC;wBACD,IAAI,KAAK,CAAC,MAAM,KAAK,IAAI,CAAC,YAAY,EAAE;4BACpC,oBAAoB;4BACpB,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;yBACpC;qBACJ;oBACD,MAAM;gBAEV,KAAK,wBAAwB;oBACzB,IAAI,QAAQ;wBAAE,OAAO,CAAC,GAAG,CAAC,iCAAiC,CAAC,CAAC;oBAC7D,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC;oBACjB,MAAM;gBAEV,KAAK,MAAM,CAAC;gBACZ,KAAK,MAAM;oBACP,MAAM,IAAI,GAAI,OAAe,CAAC,IAAI,EAAE,IAAI,CAAC;oBACzC,IAAI,IAAI,EAAE;wBACN,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;qBACtD;oBACD,IAAI,QAAQ;wBACR,OAAO,CAAC,GAAG,CAAC,mBAAmB,GAAG,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,MAAM,EAAE,mBAAmB,GAAG,IAAI,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC;oBACjI,MAAM;aACb;SACJ;QAED,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAC/C,IAAI,SAAS,EAAE;YACX,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE;gBAC9B,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;aAC1B;SACJ;QAED,MAAM,KAAK,GAAG,OAAO,CAAC,IAAc,CAAC;QACrC,IAAI,KAAK,EAAE;YACP,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC;SACnC;IACL,CAAC;IAEO,SAAS,CAAC,GAAW,EAAE,IAAS;QACpC,OAAO;YACH,GAAG,EAAE,GAAG;YACR,IAAI,EAAE,IAAI;SACb,CAAC;IACN,CAAC;IAEO,iBAAiB,CAAC,GAAW,EAAE,IAAiD,EAAE,QAAmB,SAAS,CAAC,UAAU;QAC7H,oBAAoB;QACpB,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;YACX,MAAM,GAAG,GAAG,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;YAChD,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,GAAG,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;YACzD,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC;YACpC,sCAAsC;YACtC,OAAO;SACV;QACD,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC;QACtD,IAAI,QAAQ;YAAE,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;QACrC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACvB,CAAC;IAEO,YAAY,CAAC,KAAgB;QACjC,MAAM,MAAM,GAAG,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;QAC7C,sCAAsC;QACtC,IAAI,MAAM,EAAE;YACR,KAAK,MAAM,QAAQ,IAAI,MAAM,EAAE;gBAC3B,QAAQ,EAAE,CAAC;aACd;YACD,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;SACrB;IACL,CAAC;CAGJ"}
@@ -50,8 +50,11 @@ export declare class ScreenCapture extends Behaviour implements IPointerClickHan
50
50
  onEnable(): void;
51
51
  onDisable(): void;
52
52
  private onJoinedRoom;
53
+ private _ensureVideoPlayer;
54
+ private _activeShareRequest;
53
55
  /** Call to begin screensharing */
54
56
  share(opts?: ScreenCaptureOptions): Promise<void>;
57
+ private internalShare;
55
58
  close(): void;
56
59
  private setStream;
57
60
  private onReceiveStream;
@@ -8,7 +8,7 @@ import { Behaviour, GameObject } from "./Component.js";
8
8
  import { AspectMode, VideoPlayer } from "./VideoPlayer.js";
9
9
  import { serializable } from "../engine/engine_serialization.js";
10
10
  import { AudioSource } from "./AudioSource.js";
11
- import { getParam } from "../engine/engine_utils.js";
11
+ import { delay, getParam } from "../engine/engine_utils.js";
12
12
  import { showBalloonWarning } from "../engine/debug/index.js";
13
13
  import { NetworkedStreams, disposeStream, PeerHandle, NetworkedStreamEvents } from "../engine/engine_networking_streams.js";
14
14
  import { RoomEvents } from "../engine/engine_networking.js";
@@ -45,8 +45,6 @@ export class ScreenCapture extends Behaviour {
45
45
  return;
46
46
  if (evt && evt.pointerId !== 0)
47
47
  return;
48
- if (this.context.connection.isInRoom === false)
49
- return;
50
48
  if (this.isReceiving && this.videoPlayer?.isPlaying) {
51
49
  if (this.videoPlayer)
52
50
  this.videoPlayer.screenspace = !this.videoPlayer.screenspace;
@@ -109,9 +107,9 @@ export class ScreenCapture extends Behaviour {
109
107
  if (debug)
110
108
  console.log("Screensharing", this.name, this);
111
109
  AudioSource.registerWaitForAllowAudio(() => {
112
- if (this.videoPlayer && this._currentStream && this._currentMode === ScreenCaptureMode.Receiving) {
113
- this.videoPlayer.playInBackground = true;
114
- this.videoPlayer.setVideo(this._currentStream);
110
+ if (this._videoPlayer && this._currentStream && this._currentMode === ScreenCaptureMode.Receiving) {
111
+ this._videoPlayer.playInBackground = true;
112
+ this._videoPlayer.setVideo(this._currentStream);
115
113
  }
116
114
  });
117
115
  const handle = PeerHandle.getOrCreate(this.context, this.guid);
@@ -124,8 +122,11 @@ export class ScreenCapture extends Behaviour {
124
122
  //@ts-ignore
125
123
  this._net?.addEventListener(NetworkedStreamEvents.StreamEnded, this.onCallEnded);
126
124
  this.context.connection.beginListen(RoomEvents.JoinedRoom, this.onJoinedRoom);
127
- if (this.context.connection.isInRoom && this.autoConnect) {
128
- this.share();
125
+ if (this.autoConnect) {
126
+ delay(1000).then(() => {
127
+ if (this.enabled && this.autoConnect && !this.isReceiving && !this.isSending && this.context.connection.isInRoom)
128
+ this.share();
129
+ });
129
130
  }
130
131
  }
131
132
  onDisable() {
@@ -137,13 +138,33 @@ export class ScreenCapture extends Behaviour {
137
138
  this._net?.disable();
138
139
  this.close();
139
140
  }
140
- onJoinedRoom = () => {
141
- if (this.autoConnect && !this.isSending && !this.isReceiving) {
141
+ onJoinedRoom = async () => {
142
+ await delay(1000);
143
+ if (this.autoConnect && !this.isSending && !this.isReceiving && this.context.connection.isInRoom) {
142
144
  this.share();
143
145
  }
144
146
  };
147
+ _ensureVideoPlayer() {
148
+ const vp = new VideoPlayer();
149
+ vp.aspectMode = AspectMode.AdjustWidth;
150
+ GameObject.addComponent(this.gameObject, vp);
151
+ this._videoPlayer = vp;
152
+ }
153
+ _activeShareRequest = null;
145
154
  /** Call to begin screensharing */
146
155
  async share(opts) {
156
+ if (this._activeShareRequest)
157
+ return this._activeShareRequest;
158
+ this._activeShareRequest = this.internalShare(opts);
159
+ return this._activeShareRequest.then(() => {
160
+ this._activeShareRequest = null;
161
+ });
162
+ }
163
+ async internalShare(opts) {
164
+ if (this.context.connection.isInRoom === false) {
165
+ console.warn("Can not start screensharing: requires network connection");
166
+ return;
167
+ }
147
168
  if (opts?.device)
148
169
  this.device = opts.device;
149
170
  if (!this.videoPlayer && this.requiresVideoPlayer) {
@@ -151,10 +172,7 @@ export class ScreenCapture extends Behaviour {
151
172
  this._videoPlayer = GameObject.getComponent(this.gameObject, VideoPlayer) ?? undefined;
152
173
  }
153
174
  if (!this.videoPlayer) {
154
- const vp = new VideoPlayer();
155
- vp.aspectMode = AspectMode.AdjustWidth;
156
- GameObject.addComponent(this.gameObject, vp);
157
- this._videoPlayer = vp;
175
+ this._ensureVideoPlayer();
158
176
  }
159
177
  if (!this.videoPlayer) {
160
178
  console.warn("Can not share video without a videoPlayer assigned");
@@ -264,6 +282,8 @@ export class ScreenCapture extends Behaviour {
264
282
  const isVideoStream = this.device !== ScreenCaptureDevice.Microphone;
265
283
  const isSending = mode === ScreenCaptureMode.Sending;
266
284
  if (isVideoStream) {
285
+ if (!this._videoPlayer)
286
+ this._ensureVideoPlayer();
267
287
  if (this._videoPlayer)
268
288
  this._videoPlayer.setVideo(stream);
269
289
  else
@@ -1 +1 @@
1
- {"version":3,"file":"ScreenCapture.js","sourceRoot":"","sources":["../../src/engine-components/ScreenCapture.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ScreenCapture.js","sourceRoot":"","sources":["../../src/engine-components/ScreenCapture.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AAEjE,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AAC5D,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAyC,UAAU,EAAE,qBAAqB,EAAE,MAAM,wCAAwC,CAAC;AACnK,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAE5D,MAAM,KAAK,GAAG,QAAQ,CAAC,oBAAoB,CAAC,CAAC;AAE7C,MAAM,CAAN,IAAY,mBAOX;AAPD,WAAY,mBAAmB;IAC3B,iEAAU,CAAA;IACV,iEAAU,CAAA;IACV,yIAAyI;IACzI,iEAAU,CAAA;IACV,wDAAwD;IACxD,yEAAc,CAAA;AAClB,CAAC,EAPW,mBAAmB,KAAnB,mBAAmB,QAO9B;AAED,MAAM,CAAN,IAAY,iBAIX;AAJD,WAAY,iBAAiB;IACzB,yDAAQ,CAAA;IACR,+DAAW,CAAA;IACX,mEAAa,CAAA;AACjB,CAAC,EAJW,iBAAiB,KAAjB,iBAAiB,QAI5B;AAYD,MAAM,OAAO,aAAc,SAAQ,SAAS;IAGxC,iBAAiB,GAAY,IAAI,CAAC;IAElC,cAAc;QACV,IAAI,CAAC,IAAI,CAAC,iBAAiB;YAAE,OAAO;QACpC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,gBAAgB,EAAE,CAAC;IAC1C,CAAC;IACD,aAAa;QACT,IAAI,CAAC,IAAI,CAAC,iBAAiB;YAAE,OAAO;QACpC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,eAAe,EAAE,CAAC;IACzC,CAAC;IAED,cAAc,CAAC,GAAqB;QAChC,IAAI,CAAC,IAAI,CAAC,iBAAiB;YAAE,OAAO;QACpC,IAAI,GAAG,IAAI,GAAG,CAAC,SAAS,KAAK,CAAC;YAAE,OAAO;QACvC,IAAI,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,WAAW,EAAE,SAAS,EAAE;YACjD,IAAI,IAAI,CAAC,WAAW;gBAChB,IAAI,CAAC,WAAW,CAAC,WAAW,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC;YACjE,OAAO;SAEV;QACD,IAAI,IAAI,CAAC,SAAS,EAAE;YAChB,IAAI,CAAC,KAAK,EAAE,CAAC;YACb,OAAO;SACV;QACD,IAAI,CAAC,KAAK,EAAE,CAAC;IACjB,CAAC;IAGD,mGAAmG;IAEnG,WAAW,GAAY,KAAK,CAAC;IAI7B,IAAI,WAAW,CAAC,GAA4B;QACxC,IAAI,IAAI,CAAC,YAAY,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,WAAW,CAAC,EAAE;YAC3D,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;SAC5B;QACD,IAAI,CAAC,YAAY,GAAG,GAAG,CAAC;QACxB,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,cAAc,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,WAAW,CAAC,EAAE;YAClF,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;SACnD;IACL,CAAC;IACD,IAAI,WAAW,KAAK,OAAO,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC;IACvC,YAAY,CAAe;IAC3B,YAAY,CAAe;IAEnC,IAAI,WAAW,KAAK,OAAO,IAAI,CAAC,WAAW,EAAE,WAAW,IAAI,KAAK,CAAC,CAAC,CAAC;IACpE,IAAI,WAAW,CAAC,CAAU,IAAI,IAAI,IAAI,CAAC,WAAW;QAAE,IAAI,CAAC,WAAW,CAAC,WAAW,GAAG,CAAC,CAAC,CAAC,CAAC;IAEvF,6BAA6B;IAC7B,oDAAoD;IAEpD,MAAM,GAAwB,mBAAmB,CAAC,MAAM,CAAC;IAEzD,IAAI,aAAa;QACb,OAAO,IAAI,CAAC,cAAc,CAAC;IAC/B,CAAC;IACD,IAAI,WAAW;QACX,OAAO,IAAI,CAAC,YAAY,CAAC;IAC7B,CAAC;IAED,IAAI,SAAS;QACT,OAAO,IAAI,CAAC,cAAc,EAAE,MAAM,IAAI,IAAI,CAAC,YAAY,KAAK,iBAAiB,CAAC,OAAO,CAAC;IAC1F,CAAC;IACD,IAAI,WAAW;QACX,IAAI,IAAI,CAAC,YAAY,KAAK,iBAAiB,CAAC,SAAS,EAAE;YACnD,IAAI,CAAC,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,cAAc,CAAC,MAAM,KAAK,KAAK;gBAAE,OAAO,KAAK,CAAC;YAC/E,gDAAgD;YAChD,MAAM,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC,SAAS,EAAE,CAAC;YAC/C,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE;gBACxB,IAAI,KAAK,CAAC,UAAU,KAAK,MAAM;oBAAE,OAAO,IAAI,CAAC;aAChD;SACJ;QACD,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,IAAY,mBAAmB,KAAK,OAAO,IAAI,CAAC,MAAM,KAAK,mBAAmB,CAAC,UAAU,CAAA,CAAC,CAAC;IAEnF,IAAI,CAAoB;IACxB,YAAY,GAAY,KAAK,CAAC;IAC9B,cAAc,GAAuB,IAAI,CAAC;IAC1C,YAAY,GAAsB,iBAAiB,CAAC,IAAI,CAAC;IAEjE,KAAK;QACD,IAAI,KAAK;YACL,OAAO,CAAC,GAAG,CAAC,eAAe,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAClD,WAAW,CAAC,yBAAyB,CAAC,GAAG,EAAE;YACvC,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,YAAY,KAAK,iBAAiB,CAAC,SAAS,EAAE;gBAC/F,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG,IAAI,CAAC;gBAC1C,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;aACnD;QACL,CAAC,CAAC,CAAC;QACH,MAAM,MAAM,GAAG,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;QAC/D,IAAI,CAAC,IAAI,GAAG,IAAI,gBAAgB,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAC3D,CAAC;IAED,QAAQ;QACJ,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC;QACpB,YAAY;QACZ,IAAI,CAAC,IAAI,EAAE,gBAAgB,CAAC,qBAAqB,CAAC,cAAc,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;QACxF,YAAY;QACZ,IAAI,CAAC,IAAI,EAAE,gBAAgB,CAAC,qBAAqB,CAAC,WAAW,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;QACjF,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,WAAW,CAAC,UAAU,CAAC,UAAU,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;QAC9E,IAAI,IAAI,CAAC,WAAW,EAAE;YAClB,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE;gBAClB,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,WAAW,IAAI,CAAC,IAAI,CAAC,WAAW,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,QAAQ;oBAC5G,IAAI,CAAC,KAAK,EAAE,CAAA;YACpB,CAAC,CAAC,CAAC;SACN;IACL,CAAC;IAED,SAAS;QACL,YAAY;QACZ,IAAI,CAAC,IAAI,EAAE,mBAAmB,CAAC,qBAAqB,CAAC,cAAc,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;QAC3F,YAAY;QACZ,IAAI,CAAC,IAAI,EAAE,mBAAmB,CAAC,qBAAqB,CAAC,WAAW,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;QACpF,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC,UAAU,CAAC,UAAU,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;QAC7E,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,CAAC;QACrB,IAAI,CAAC,KAAK,EAAE,CAAC;IACjB,CAAC;IAEO,YAAY,GAAG,KAAK,IAAI,EAAE;QAC9B,MAAM,KAAK,CAAC,IAAI,CAAC,CAAC;QAClB,IAAI,IAAI,CAAC,WAAW,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,QAAQ,EAAE;YAC9F,IAAI,CAAC,KAAK,EAAE,CAAC;SAChB;IACL,CAAC,CAAA;IAEO,kBAAkB;QACtB,MAAM,EAAE,GAAG,IAAI,WAAW,EAAE,CAAC;QAC7B,EAAE,CAAC,UAAU,GAAG,UAAU,CAAC,WAAW,CAAC;QACvC,UAAU,CAAC,YAAY,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;QAC7C,IAAI,CAAC,YAAY,GAAG,EAAE,CAAC;IAC3B,CAAC;IAEO,mBAAmB,GAAyB,IAAI,CAAC;IAEzD,kCAAkC;IAClC,KAAK,CAAC,KAAK,CAAC,IAA2B;QACnC,IAAI,IAAI,CAAC,mBAAmB;YAAE,OAAO,IAAI,CAAC,mBAAmB,CAAC;QAC9D,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;QACpD,OAAO,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,GAAG,EAAE;YACtC,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC;QACpC,CAAC,CAAC,CAAA;IACN,CAAC;IAEO,KAAK,CAAC,aAAa,CAAC,IAA2B;QACnD,IAAI,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,QAAQ,KAAK,KAAK,EAAE;YAC5C,OAAO,CAAC,IAAI,CAAC,0DAA0D,CAAC,CAAC;YACzE,OAAO;SACV;QAED,IAAI,IAAI,EAAE,MAAM;YACZ,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAE9B,IAAI,CAAC,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,mBAAmB,EAAE;YAC/C,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE;gBACpB,IAAI,CAAC,YAAY,GAAG,UAAU,CAAC,YAAY,CAAC,IAAI,CAAC,UAAU,EAAE,WAAW,CAAC,IAAI,SAAS,CAAC;aAC1F;YACD,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;gBACnB,IAAI,CAAC,kBAAkB,EAAE,CAAC;aAC7B;YACD,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;gBACnB,OAAO,CAAC,IAAI,CAAC,oDAAoD,CAAC,CAAC;gBACnE,OAAO;aACV;SACJ;QAED,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QACzB,IAAI;YAEA,MAAM,QAAQ,GAA0B,IAAI,EAAE,WAAW,IAAI;gBACzD,gBAAgB,EAAE,IAAI;gBACtB,eAAe,EAAE,KAAK;aACzB,CAAC;YACF,MAAM,mBAAmB,GAA2B;gBAChD,KAAK,EAAE,QAAQ;gBACf,KAAK,EAAE,QAAQ;aAClB,CAAC;YACF,MAAM,YAAY,GAAG,mBAAmB,CAAC,KAAK,CAAC;YAC/C,IAAI,YAAY,KAAK,SAAS,IAAI,OAAO,YAAY,KAAK,SAAS,EAAE;gBACjE,6BAA6B;gBAC7B,IAAI,CAAC,YAAY,CAAC,KAAK;oBACnB,YAAY,CAAC,KAAK,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC;gBACvC,IAAI,CAAC,YAAY,CAAC,MAAM;oBACpB,YAAY,CAAC,MAAM,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC;gBACxC,IAAI,CAAC,YAAY,CAAC,WAAW;oBACzB,YAAY,CAAC,WAAW,GAAG,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC;gBACvD,IAAI,CAAC,YAAY,CAAC,SAAS;oBACvB,YAAY,CAAC,SAAS,GAAG,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;gBAC3C,IAAI,CAAC,YAAY,CAAC,UAAU;oBACxB,YAAY,CAAC,UAAU,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;aACnD;YAED,QAAQ,IAAI,CAAC,MAAM,EAAE;gBACjB,6BAA6B;gBAC7B,KAAK,mBAAmB,CAAC,MAAM;oBAC3B,IAAI,CAAC,kBAAkB,CAAC,mBAAmB,EAAE,IAAI,CAAC,CAAC;oBACnD,MAAM;gBAEV,wCAAwC;gBACxC,KAAK,mBAAmB,CAAC,MAAM;oBAC3B;wBACI,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,eAAe,EAAE;4BACzC,OAAO,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC;4BAC5C,OAAO;yBACV;wBACD,MAAM,OAAO,GAAG,MAAM,SAAS,CAAC,YAAY,CAAC,eAAe,CAAC,mBAAmB,CAAC,CAAC;wBAClF,IAAI,IAAI,CAAC,YAAY,EAAE;4BACnB,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,iBAAiB,CAAC,OAAO,CAAC,CAAC;yBACtD;;4BACI,aAAa,CAAC,OAAO,CAAC,CAAC;qBAC/B;oBACD,MAAM;gBAEV,8CAA8C;gBAC9C,KAAK,mBAAmB,CAAC,MAAM;oBAC3B,sFAAsF;oBACtF,uBAAuB;oBACvB,gEAAgE;oBAChE,MAAM,GAAG,GAAG,CAAC,CAAC;oBACd,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;oBACnE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,iBAAiB,CAAC,OAAO,CAAC,CAAC;oBAClD,MAAM;gBAEV,KAAK,mBAAmB,CAAC,UAAU;oBAC/B;wBACI,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,YAAY,EAAE;4BACtC,OAAO,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC;4BAC5C,OAAO;yBACV;wBACD,mBAAmB,CAAC,KAAK,GAAG,KAAK,CAAC;wBAClC,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,YAAY,CAAC,YAAY,CAAC,mBAAmB,CAAC,CAAC;wBAChF,IAAI,IAAI,CAAC,YAAY,EAAE;4BACnB,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,iBAAiB,CAAC,OAAO,CAAC,CAAC;yBACvD;;4BACI,aAAa,CAAC,QAAQ,CAAC,CAAC;qBAChC;oBACD,MAAK;aAEZ;SACJ;QAAC,OAAO,GAAQ,EAAE;YACf,IAAI,GAAG,CAAC,IAAI,KAAK,iBAAiB,EAAE;gBAChC,kCAAkC;gBAClC,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;gBACnC,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;gBAC1B,OAAO;aACV;YACD,OAAO,CAAC,KAAK,CAAC,qBAAqB,EAAE,GAAG,CAAC,CAAC;SAC7C;IACL,CAAC;IAED,KAAK;QACD,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;QAC1B,IAAI,IAAI,CAAC,cAAc,EAAE;YACrB,IAAI,KAAK;gBACL,OAAO,CAAC,IAAI,CAAC,gEAAgE,EAAE,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;YAC/G,IAAI,CAAC,IAAI,EAAE,iBAAiB,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;YAClD,aAAa,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;YACnC,IAAI,CAAC,YAAY,GAAG,iBAAiB,CAAC,IAAI,CAAC;YAC3C,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;SAC9B;IACL,CAAC;IAEO,SAAS,CAAC,MAAmB,EAAE,IAAuB;QAE1D,IAAI,MAAM,KAAK,IAAI,CAAC,cAAc;YAAE,OAAO;QAE3C,IAAI,CAAC,KAAK,EAAE,CAAC;QACb,IAAI,CAAC,MAAM;YAAE,OAAO;QAEpB,IAAI,CAAC,cAAc,GAAG,MAAM,CAAC;QAC7B,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QACzB,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QAEzB,MAAM,aAAa,GAAG,IAAI,CAAC,MAAM,KAAK,mBAAmB,CAAC,UAAU,CAAC;QACrE,MAAM,SAAS,GAAG,IAAI,KAAK,iBAAiB,CAAC,OAAO,CAAC;QAErD,IAAI,aAAa,EAAE;YACf,IAAI,CAAC,IAAI,CAAC,YAAY;gBAClB,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAC9B,IAAI,IAAI,CAAC,YAAY;gBACjB,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;;gBAClC,OAAO,CAAC,KAAK,CAAC,2CAA2C,CAAC,CAAC;SACnE;aACI;YACD,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE;gBACpB,IAAI,CAAC,YAAY,GAAG,IAAI,WAAW,EAAE,CAAC;gBACtC,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,CAAC,CAAC;gBACnC,IAAI,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC;gBAC7B,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;aACnD;YACD,IAAI,CAAC,SAAS,EAAE;gBACZ,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,cAAc,EAAE,CAAC,CAAA;gBAC5C,IAAI,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC;gBAC7B,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;aACnC;SACJ;QAED,IAAI,SAAS,EAAE;YACX,IAAI,CAAC,IAAI,EAAE,kBAAkB,CAAC,MAAM,CAAC,CAAC;SACzC;QAED,0CAA0C;QAC1C,IAAI,SAAS,EAAE;YACX,IAAI,IAAI,CAAC,YAAY;gBACjB,IAAI,CAAC,YAAY,CAAC,KAAK,GAAG,IAAI,CAAC;YACnC,IAAI,CAAC,YAAY,EAAE,IAAI,EAAE,CAAC;SAC7B;QAED,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,SAAS,EAAE,EAAE;YACpC,KAAK,CAAC,gBAAgB,CAAC,OAAO,EAAE,GAAG,EAAE;gBACjC,IAAI,KAAK;oBAAE,OAAO,CAAC,GAAG,CAAC,aAAa,EAAE,KAAK,CAAC,CAAC;gBAC7C,IAAI,CAAC,KAAK,EAAE,CAAC;YACjB,CAAC,CAAC,CAAC;YAEH,IAAI,KAAK,EAAE;gBACP,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,EAAE;oBACxB,IAAI,SAAS;wBACT,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC;;wBAE5C,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC;iBACnD;aACJ;SACJ;IAEL,CAAC;IAEO,eAAe,GAAG,CAAC,GAAwB,EAAE,EAAE;QACnD,IAAI,GAAG,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI;YAAE,OAAO;QACxC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,EAAE,iBAAiB,CAAC,SAAS,CAAC,CAAC;IAC5D,CAAC,CAAA;IACO,WAAW,GAAG,CAAC,IAAsB,EAAE,EAAE;QAC7C,IAAI,KAAK;YAAE,OAAO,CAAC,GAAG,CAAC,YAAY,EAAE,IAAI,CAAC,WAAW,EAAE,IAAI,EAAE,WAAW,CAAC,CAAA;QACzE,IAAI,IAAI,CAAC,WAAW;YAAE,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;IACnD,CAAC,CAAA;IAIO,KAAK,CAAC,kBAAkB,CAAC,IAA4B,EAAE,OAA8B;QAEzF,+DAA+D;QAC/D,gBAAgB;QAChB,gGAAgG;QAChG,IAAI;QAEJ,oCAAoC;QACpC,MAAM,OAAO,GAAG,CAAC,MAAM,SAAS,CAAC,YAAY,CAAC,gBAAgB,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,YAAY,CAAC,CAAC;QACvG,IAAI,KAAK;YACL,OAAO,CAAC,GAAG,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC;QAC3C,KAAK,MAAM,GAAG,IAAI,OAAO,EAAE;YACvB,IAAI;gBACA,IAAI,CAAC,IAAI,CAAC,YAAY;oBAAE,MAAM;gBAC9B,IAAI,GAAG,CAAC,IAAI,KAAK,YAAY;oBAAE,SAAS;gBACxC,MAAM,EAAE,GAAG,GAAG,CAAC,QAAQ,CAAC;gBACxB,IAAI,OAAO,EAAE,QAAQ,KAAK,SAAS,EAAE;oBACjC,IAAI,EAAE,KAAK,OAAO,CAAC,QAAQ;wBACvB,SAAS;iBAChB;gBACD,MAAM,SAAS,GAAG,OAAO,EAAE,YAAY,EAAE,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;gBACzD,IAAI,SAAS,KAAK,KAAK;oBAAE,SAAS;gBAElC,IAAI,IAAI,CAAC,KAAK,KAAK,KAAK,EAAE;oBACtB,IAAI,OAAO,IAAI,CAAC,KAAK,KAAK,WAAW,IAAI,OAAO,IAAI,CAAC,KAAK,KAAK,SAAS,EAAE;wBACtE,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;qBACnB;oBACD,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,EAAE,CAAC;iBAC5B;gBACD,MAAM,SAAS,GAAG,MAAM,SAAS,CAAC,YAAY,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;gBAClE,IAAI,IAAI,CAAC,YAAY,EAAE;oBACnB,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,iBAAiB,CAAC,OAAO,CAAC,CAAC;iBACxD;;oBACI,aAAa,CAAC,SAAS,CAAC,CAAC;gBAC9B,IAAI,KAAK;oBACL,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE,GAAG,CAAC,CAAC;gBACxC,MAAM;aACT;YACD,OAAO,GAAQ,EAAE;gBACb,oGAAoG;gBACpG,IAAI,GAAG,CAAC,OAAO,KAAK,gCAAgC,IAAI,GAAG,CAAC,OAAO,KAAK,8BAA8B,EAAE;oBACpG,kBAAkB,CAAC,kDAAkD,GAAG,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,CAAC;oBACxF,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;oBAClB,SAAS;iBACZ;qBACI;oBACD,OAAO,CAAC,KAAK,CAAC,0BAA0B,EAAE,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;iBACzE;aACJ;SACJ;IACL,CAAC;CAKJ;AA3YG;IADC,YAAY,EAAE;wDACmB;AA8BlC;IADC,YAAY,EAAE;kDACc;AAI7B;IADC,YAAY,CAAC,WAAW,CAAC;gDASzB;AAWD;IADC,YAAY,EAAE;6CAC0C"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@needle-tools/engine",
3
- "version": "3.22.0",
3
+ "version": "3.22.1",
4
4
  "description": "Needle Engine is a web-based runtime for 3D apps. It runs on your machine for development with great integrations into editors like Unity or Blender - and can be deployed onto any device! It is flexible, extensible and networking and XR are built-in",
5
5
  "main": "dist/needle-engine.umd.cjs",
6
6
  "type": "module",
@@ -1,5 +1,5 @@
1
1
  import { TypeStore } from "./../engine_typestore.js"
2
-
2
+
3
3
  // Import types
4
4
  import { __Ignore } from "../../engine-components/codegen/components.js";
5
5
  import { ActionBuilder } from "../../engine-components/export/usdz/extensions/behavior/BehavioursBuilder.js";
@@ -217,7 +217,7 @@ import { XRGrabModel } from "../../engine-components/webxr/WebXRGrabRendering.js
217
217
  import { XRGrabRendering } from "../../engine-components/webxr/WebXRGrabRendering.js";
218
218
  import { XRRig } from "../../engine-components/webxr/WebXRRig.js";
219
219
  import { XRState } from "../../engine-components/XRFlag.js";
220
-
220
+
221
221
  // Register types
222
222
  TypeStore.add("__Ignore", __Ignore);
223
223
  TypeStore.add("ActionBuilder", ActionBuilder);
@@ -951,7 +951,7 @@ export class Context implements IContext {
951
951
 
952
952
  this._currentFrameEvent = FrameEvent.Undefined;
953
953
 
954
- if (this.isInXR === false && this.targetFrameRate !== undefined) {
954
+ if (this.isManagedExternally === false && this.isInXR === false && this.targetFrameRate !== undefined) {
955
955
  if (this._lastTimestamp === 0) this._lastTimestamp = timestamp;
956
956
  this._accumulatedTime += (timestamp - this._lastTimestamp) / 1000;
957
957
  this._lastTimestamp = timestamp;
@@ -50,7 +50,6 @@ async function checkLicense() {
50
50
  const licenseUrl = "https://engine.needle.tools/licensing/check?location=" + encodeURIComponent(window.location.href) + "&version=" + VERSION + "&generator=" + encodeURIComponent(GENERATOR);
51
51
  const res = await fetch(licenseUrl, {
52
52
  method: "GET",
53
- mode: "no-cors",
54
53
  }).catch();
55
54
  if (res?.status === 200) {
56
55
  applicationIsForbidden = false;
@@ -226,12 +225,13 @@ async function logNonCommercialUse(_logo?: string) {
226
225
  margin-top: .3em;
227
226
  margin-bottom: .5em;
228
227
  padding: .2em;
229
- padding-left: 37px;
228
+ padding-left: 25px;
230
229
  border-radius: .5em;
231
- border: 2px solid rgba(160,160,160,.5);
230
+ border: 2px solid rgba(160,160,160,.3);
232
231
  `;
233
232
  // url must contain https for firefox to make it clickable
234
- const licenseText = "Needle Engine — No license active, commercial use is not allowed. Visit https://needle.tools/pricing for more information and licensing options.";
233
+ const version = VERSION;
234
+ const licenseText = `Needle Engine — No license active, commercial use is not allowed. Visit https://needle.tools/pricing for more information and licensing options! v${version}`;
235
235
  console.log("%c " + licenseText, style);
236
236
  }
237
237
 
@@ -28,20 +28,32 @@ declare type WebsocketMessage = {
28
28
  room: string | undefined;
29
29
  }
30
30
 
31
+ /** Events regarding the websocket connection (e.g. when the connection opens) */
31
32
  export enum ConnectionEvents {
32
33
  ConnectionInfo = "connection-start-info"
33
34
  }
34
35
 
36
+ /** Use to listen to room networking events like joining a networked room
37
+ * For example: `this.context.connection.beginListen(RoomEvents.JoinedRoom, () => { })`
38
+ * @link https://engine.needle.tools/docs/networking.html#manual-networking
39
+ * */
35
40
  export enum RoomEvents {
41
+ /** Internal: sent to the server when attempting to join a room */
36
42
  Join = "join-room",
43
+ /** Internal: sent to the server when attempting to leave a room */
37
44
  Leave = "leave-room",
45
+ /** Incoming: When the local user has joined a room */
38
46
  JoinedRoom = "joined-room",
47
+ /** Incoming: When the local user has left a room */
39
48
  LeftRoom = "left-room",
49
+ /** Incoming: When a other user has joined the room */
40
50
  UserJoinedRoom = "user-joined-room",
51
+ /** Incoming: When a other user has left the room */
41
52
  UserLeftRoom = "user-left-room",
42
53
  RoomStateSent = "room-state-sent",
43
54
  }
44
55
 
56
+ /** Received when listening to `RoomEvents.JoinedRoom` event */
45
57
  export class JoinedRoomResponse {
46
58
  room!: string; // room name
47
59
  viewId!: string;
@@ -57,6 +69,8 @@ export class UserJoinedOrLeftRoomModel {
57
69
  userId!: string;
58
70
  }
59
71
 
72
+ /** The Needle Engine networking server supports the concept of ownership that can be requested. The `OwnershipEvent` enum contains possible outgoing (Request) and incoming (Response) events for communicating ownership.
73
+ * We recommend using the `OwnershipModel` class instead of dealing with those events directly tho. */
60
74
  export enum OwnershipEvent {
61
75
  RequestHasOwner = 'request-has-owner',
62
76
  ResponseHasOwner = "response-has-owner",
@@ -86,6 +100,7 @@ declare type OwnershipResponse = {
86
100
 
87
101
  declare type WebsocketSendType = IModel | object | boolean | null | string | number;
88
102
 
103
+ /** Class for abstracting the concept of ownership regarding a networked object or component. A component that is owned by another user can not be modified through networking (the server will reject changes) */
89
104
  export class OwnershipModel {
90
105
 
91
106
  public guid: string;
@@ -229,6 +244,7 @@ export declare type BinaryCallback = {
229
244
  (data: any | flatbuffers.ByteBuffer): void;
230
245
  }
231
246
 
247
+ /** Main class to communicate with the networking backend */
232
248
  export class NetworkConnection implements INetworkConnection {
233
249
 
234
250
  private context: Context;
@@ -251,6 +267,7 @@ export class NetworkConnection implements INetworkConnection {
251
267
  return this._state[guid];
252
268
  }
253
269
 
270
+ /** The connection id of the local user - it is given by the networking backend and can not be changed */
254
271
  public get connectionId(): string | null {
255
272
  return this._connectionId;
256
273
  }
@@ -259,32 +276,40 @@ export class NetworkConnection implements INetworkConnection {
259
276
  return debugNet;
260
277
  }
261
278
 
279
+ /** True when connected to the networking backend */
262
280
  public get isConnected(): boolean {
263
281
  return this.connected;
264
282
  }
265
283
 
284
+ /** The name of the room the user is currently connected to */
266
285
  public get currentRoomName(): string | null { return this._currentRoomName; }
286
+ /** True when connected to a room via a regular url, otherwise (when using a view only url) false indicating that the user should not be able to modify the scene */
267
287
  public get allowEditing(): boolean { return this._currentRoomAllowEditing; }
268
288
  // use this to join a room in view mode (see SyncedRoom)
269
289
  public get currentRoomViewId(): string | null { return this._currentRoomViewId; }
270
290
 
291
+ /** True if connected to a networked room. Use the joinRoom function or a `SyncedRoom` component */
271
292
  public get isInRoom(): boolean {
272
293
  return this._isInRoom;
273
294
  }
274
295
 
296
+ /** Latency to currently connected backend server */
275
297
  public get currentLatency(): number {
276
298
  return this._currentDelay;
277
299
  }
278
300
 
301
+ /** A ping is sent to the server at a regular interval while the browser tab is active. This method can be used to send additional ping messages when needed so that the user doesn't get disconnected from the networking backend */
279
302
  public sendPing() {
280
303
  this.send("ping", { time: this.context.time.time });
281
304
  }
282
305
 
306
+ /** Returns true if a user with the given connectionId is in the room */
283
307
  public userIsInRoom(id: string): boolean {
284
308
  return this._currentInRoom.indexOf(id) !== -1;
285
309
  }
286
310
 
287
311
  private _usersInRoomCopy = [];
312
+ /** Returns a list of all user ids in the current room */
288
313
  public usersInRoom(target: string[] | null = null): string[] {
289
314
  if (!target) target = this._usersInRoomCopy;
290
315
  target.length = 0;
@@ -293,6 +318,7 @@ export class NetworkConnection implements INetworkConnection {
293
318
  return target;
294
319
  }
295
320
 
321
+ /** Joins a networked room. If you don't want to manage a connection yourself you can use a `SyncedRoom` component as well */
296
322
  public joinRoom(room: string, viewOnly: boolean = false): boolean {
297
323
  if (!room) {
298
324
  console.error("Missing room name, can not join: \"" + room + "\"");
@@ -312,6 +338,7 @@ export class NetworkConnection implements INetworkConnection {
312
338
  return true;
313
339
  }
314
340
 
341
+ /** Use to leave a room that you are currently connected to (use `leaveRoom()` to disconnect from the currently active room but you can also specify a room name) */
315
342
  public leaveRoom(room: string | null = null) {
316
343
  if (!room) room = this.currentRoomName;
317
344
  if (!room) {
@@ -322,6 +349,7 @@ export class NetworkConnection implements INetworkConnection {
322
349
  return true;
323
350
  }
324
351
 
352
+ /** Send a message to the networking backend - it will broadcasted to all connected users in the same room by default */
325
353
  public send<T extends WebsocketSendType>(key: string | OwnershipEvent, data: T | null = null, queue: SendQueue = SendQueue.Queued) {
326
354
 
327
355
  //@ts-ignore
@@ -341,16 +369,19 @@ export class NetworkConnection implements INetworkConnection {
341
369
  return this.sendWithWebsocket(key, data, queue);
342
370
  }
343
371
 
372
+ /** Use to delete state for a given guid on the server */
344
373
  public sendDeleteRemoteState(guid: string) {
345
374
  this.send("delete-state", { guid: guid, dontSave: true });
346
375
  delete this._state[guid];
347
376
  }
348
377
 
378
+ /** Use to delete all state in the currently connected room on the server */
349
379
  public sendDeleteRemoteStateAll() {
350
380
  this.send("delete-all-state");
351
381
  this._state = {};
352
382
  }
353
383
 
384
+ /** Send a binary message to the server (broadcasted to all connected users) */
354
385
  public sendBinary(bin: Uint8Array) {
355
386
  if (debugNet) console.log("<< bin", bin.length);
356
387
  this._ws?.send(bin);
@@ -380,6 +411,7 @@ export class NetworkConnection implements INetworkConnection {
380
411
  this._ws?.send(message);
381
412
  }
382
413
 
414
+ /** Use to start listening to networking events */
383
415
  public beginListen(key: string | OwnershipEvent, callback: Function): Function {
384
416
  if (!this._listeners[key])
385
417
  this._listeners[key] = [];
@@ -389,6 +421,8 @@ export class NetworkConnection implements INetworkConnection {
389
421
 
390
422
  /**@deprecated please use stopListen instead (2.65.2-pre) */
391
423
  public stopListening(key: string | OwnershipEvent, callback: Function | null) { return this.stopListen(key, callback); }
424
+
425
+ /** Use to stop listening to networking events */
392
426
  public stopListen(key: string | OwnershipEvent, callback: Function | null) {
393
427
  if (!callback) return;
394
428
  if (!this._listeners[key]) return;
@@ -398,6 +432,7 @@ export class NetworkConnection implements INetworkConnection {
398
432
  }
399
433
  }
400
434
 
435
+ /** Use to start listening to networking binary events */
401
436
  public beginListenBinary(identifier: string, callback: BinaryCallback): BinaryCallback {
402
437
  if (!this._listenersBinary[identifier])
403
438
  this._listenersBinary[identifier] = [];
@@ -405,6 +440,7 @@ export class NetworkConnection implements INetworkConnection {
405
440
  return callback;
406
441
  }
407
442
 
443
+ /** Use to stop listening to networking binary events */
408
444
  public stopListenBinary(identifier: string, callback: any) {
409
445
  if (!this._listenersBinary[identifier]) return;
410
446
  const index = this._listenersBinary[identifier].indexOf(callback);
@@ -415,10 +451,12 @@ export class NetworkConnection implements INetworkConnection {
415
451
 
416
452
  private netWebSocketUrlProvider?: INetworkingWebsocketUrlProvider;
417
453
 
454
+ /** Use to override the networking server backend url. This is what the `Networking` component uses to modify the backend url */
418
455
  public registerProvider(prov: INetworkingWebsocketUrlProvider) {
419
456
  this.netWebSocketUrlProvider = prov;
420
457
  }
421
458
 
459
+ /** Used to connect to the networking server */
422
460
  public async connect() {
423
461
  if (this.connected) return Promise.resolve(true);
424
462
  if (debugNet)
@@ -433,6 +471,7 @@ export class NetworkConnection implements INetworkConnection {
433
471
  return this.connectWebsocket();
434
472
  };
435
473
 
474
+ /** Used to disconnect from the networking server */
436
475
  public disconnect() {
437
476
  this._ws?.close();
438
477
  this._ws = undefined;
@@ -3,7 +3,7 @@ import { AspectMode, VideoPlayer } from "./VideoPlayer.js";
3
3
  import { serializable } from "../engine/engine_serialization.js";
4
4
  import type { IPointerClickHandler, PointerEventData } from "./ui/PointerEvents.js";
5
5
  import { AudioSource } from "./AudioSource.js";
6
- import { getParam } from "../engine/engine_utils.js";
6
+ import { delay, getParam } from "../engine/engine_utils.js";
7
7
  import { showBalloonWarning } from "../engine/debug/index.js";
8
8
  import { NetworkedStreams, disposeStream, StreamReceivedEvent, StreamEndedEvent, PeerHandle, NetworkedStreamEvents } from "../engine/engine_networking_streams.js";
9
9
  import { RoomEvents } from "../engine/engine_networking.js";
@@ -52,7 +52,6 @@ export class ScreenCapture extends Behaviour implements IPointerClickHandler {
52
52
  onPointerClick(evt: PointerEventData) {
53
53
  if (!this.allowStartOnClick) return;
54
54
  if (evt && evt.pointerId !== 0) return;
55
- if (this.context.connection.isInRoom === false) return;
56
55
  if (this.isReceiving && this.videoPlayer?.isPlaying) {
57
56
  if (this.videoPlayer)
58
57
  this.videoPlayer.screenspace = !this.videoPlayer.screenspace;
@@ -127,9 +126,9 @@ export class ScreenCapture extends Behaviour implements IPointerClickHandler {
127
126
  if (debug)
128
127
  console.log("Screensharing", this.name, this);
129
128
  AudioSource.registerWaitForAllowAudio(() => {
130
- if (this.videoPlayer && this._currentStream && this._currentMode === ScreenCaptureMode.Receiving) {
131
- this.videoPlayer.playInBackground = true;
132
- this.videoPlayer.setVideo(this._currentStream);
129
+ if (this._videoPlayer && this._currentStream && this._currentMode === ScreenCaptureMode.Receiving) {
130
+ this._videoPlayer.playInBackground = true;
131
+ this._videoPlayer.setVideo(this._currentStream);
133
132
  }
134
133
  });
135
134
  const handle = PeerHandle.getOrCreate(this.context, this.guid);
@@ -143,8 +142,11 @@ export class ScreenCapture extends Behaviour implements IPointerClickHandler {
143
142
  //@ts-ignore
144
143
  this._net?.addEventListener(NetworkedStreamEvents.StreamEnded, this.onCallEnded);
145
144
  this.context.connection.beginListen(RoomEvents.JoinedRoom, this.onJoinedRoom);
146
- if (this.context.connection.isInRoom && this.autoConnect) {
147
- this.share();
145
+ if (this.autoConnect) {
146
+ delay(1000).then(() => {
147
+ if (this.enabled && this.autoConnect && !this.isReceiving && !this.isSending && this.context.connection.isInRoom)
148
+ this.share()
149
+ });
148
150
  }
149
151
  }
150
152
 
@@ -158,14 +160,36 @@ export class ScreenCapture extends Behaviour implements IPointerClickHandler {
158
160
  this.close();
159
161
  }
160
162
 
161
- private onJoinedRoom = () => {
162
- if (this.autoConnect && !this.isSending && !this.isReceiving) {
163
+ private onJoinedRoom = async () => {
164
+ await delay(1000);
165
+ if (this.autoConnect && !this.isSending && !this.isReceiving && this.context.connection.isInRoom) {
163
166
  this.share();
164
167
  }
165
168
  }
166
169
 
170
+ private _ensureVideoPlayer() {
171
+ const vp = new VideoPlayer();
172
+ vp.aspectMode = AspectMode.AdjustWidth;
173
+ GameObject.addComponent(this.gameObject, vp);
174
+ this._videoPlayer = vp;
175
+ }
176
+
177
+ private _activeShareRequest: Promise<void> | null = null;
178
+
167
179
  /** Call to begin screensharing */
168
180
  async share(opts?: ScreenCaptureOptions) {
181
+ if (this._activeShareRequest) return this._activeShareRequest;
182
+ this._activeShareRequest = this.internalShare(opts);
183
+ return this._activeShareRequest.then(() =>{
184
+ this._activeShareRequest = null;
185
+ })
186
+ }
187
+
188
+ private async internalShare(opts?: ScreenCaptureOptions) {
189
+ if (this.context.connection.isInRoom === false) {
190
+ console.warn("Can not start screensharing: requires network connection");
191
+ return;
192
+ }
169
193
 
170
194
  if (opts?.device)
171
195
  this.device = opts.device;
@@ -175,10 +199,7 @@ export class ScreenCapture extends Behaviour implements IPointerClickHandler {
175
199
  this._videoPlayer = GameObject.getComponent(this.gameObject, VideoPlayer) ?? undefined;
176
200
  }
177
201
  if (!this.videoPlayer) {
178
- const vp = new VideoPlayer();
179
- vp.aspectMode = AspectMode.AdjustWidth;
180
- GameObject.addComponent(this.gameObject, vp);
181
- this._videoPlayer = vp;
202
+ this._ensureVideoPlayer();
182
203
  }
183
204
  if (!this.videoPlayer) {
184
205
  console.warn("Can not share video without a videoPlayer assigned");
@@ -297,6 +318,8 @@ export class ScreenCapture extends Behaviour implements IPointerClickHandler {
297
318
  const isSending = mode === ScreenCaptureMode.Sending;
298
319
 
299
320
  if (isVideoStream) {
321
+ if (!this._videoPlayer)
322
+ this._ensureVideoPlayer();
300
323
  if (this._videoPlayer)
301
324
  this._videoPlayer.setVideo(stream);
302
325
  else console.error("No video player assigned for video stream");