@supraio/client-daemon-js 1.0.0-mzbrightsigndecoder.486 → 1.0.0-mzbrightsigndecoder.490

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.
@@ -160945,7 +160945,7 @@ $packages["github.com/supraio/client-daemon/pkg/netsamsungwasmtcp"] = (function(
160945
160945
  return $pkg;
160946
160946
  })();
160947
160947
  $packages["github.com/supraio/client-daemon/pkg/netstream"] = (function() {
160948
- var $pkg = {}, $init, context, errors, websocket, errs, jshelper, netbrightsigntcp, netnacltcp, netsamsungwasmtcp, net, strconv, sync, js, time, SamsungWasmTCPConn, NaClTCPConn, JsWebsocketConn, ReaderWriter, ReaderWriterCloser, Driver, BrightSignTCPConn, sliceType, ptrType, mapType, sliceType$1, sliceType$2, ptrType$1, ptrType$2, ptrType$3, ptrType$4, ptrType$5, connects, init, ConnectSamsungWasmTCP, init$1, ConnectNaClTCP, init$2, ConnectJsWebsocket, Create, init$3, ConnectBrightSignTCP;
160948
+ var $pkg = {}, $init, context, errors, websocket, errs, jshelper, netbrightsigntcp, netnacltcp, netsamsungwasmtcp, net, strconv, sync, js, time, SamsungWasmTCPConn, NaClTCPConn, JsWebsocketConn, ReaderWriter, ReaderWriterCloser, Driver, BrightSignTCPConn, sliceType, ptrType, mapType, sliceType$1, sliceType$2, funcType, arrayType, structType, ptrType$1, ptrType$2, ptrType$3, ptrType$4, ptrType$5, chanType, connects, init, ConnectSamsungWasmTCP, init$1, ConnectNaClTCP, init$2, ConnectJsWebsocket, Create, init$3, ConnectBrightSignTCP, brightSignOperationContext, brightSignFiniteTimeout, brightSignCancelAfter;
160949
160949
  context = $packages["context"];
160950
160950
  errors = $packages["errors"];
160951
160951
  websocket = $packages["github.com/coder/websocket"];
@@ -160986,15 +160986,21 @@ $packages["github.com/supraio/client-daemon/pkg/netstream"] = (function() {
160986
160986
  ReaderWriter = $pkg.ReaderWriter = $newType(8, $kindInterface, "netstream.ReaderWriter", true, "github.com/supraio/client-daemon/pkg/netstream", true, null);
160987
160987
  ReaderWriterCloser = $pkg.ReaderWriterCloser = $newType(8, $kindInterface, "netstream.ReaderWriterCloser", true, "github.com/supraio/client-daemon/pkg/netstream", true, null);
160988
160988
  Driver = $pkg.Driver = $newType(8, $kindString, "netstream.Driver", true, "github.com/supraio/client-daemon/pkg/netstream", true, null);
160989
- BrightSignTCPConn = $pkg.BrightSignTCPConn = $newType(0, $kindStruct, "netstream.BrightSignTCPConn", true, "github.com/supraio/client-daemon/pkg/netstream", true, function(conn_, readMu_, remainder_) {
160989
+ BrightSignTCPConn = $pkg.BrightSignTCPConn = $newType(0, $kindStruct, "netstream.BrightSignTCPConn", true, "github.com/supraio/client-daemon/pkg/netstream", true, function(conn_, controller_, cancel_, closeOnce_, readMu_, remainder_) {
160990
160990
  this.$val = this;
160991
160991
  if (arguments.length === 0) {
160992
160992
  this.conn = ptrType.nil;
160993
+ this.controller = new js.Value.ptr(null, false, arrayType.zero());
160994
+ this.cancel = $chanNil;
160995
+ this.closeOnce = new sync.Once.ptr(0, new sync.Mutex.ptr(0, 0));
160993
160996
  this.readMu = new sync.Mutex.ptr(0, 0);
160994
160997
  this.remainder = sliceType$2.nil;
160995
160998
  return;
160996
160999
  }
160997
161000
  this.conn = conn_;
161001
+ this.controller = controller_;
161002
+ this.cancel = cancel_;
161003
+ this.closeOnce = closeOnce_;
160998
161004
  this.readMu = readMu_;
160999
161005
  this.remainder = remainder_;
161000
161006
  });
@@ -161003,11 +161009,15 @@ $packages["github.com/supraio/client-daemon/pkg/netstream"] = (function() {
161003
161009
  mapType = $mapType($String, $emptyInterface);
161004
161010
  sliceType$1 = $sliceType($String);
161005
161011
  sliceType$2 = $sliceType($Uint8);
161012
+ funcType = $funcType([], [], false);
161013
+ arrayType = $arrayType(funcType, 0);
161014
+ structType = $structType("", []);
161006
161015
  ptrType$1 = $ptrType(SamsungWasmTCPConn);
161007
161016
  ptrType$2 = $ptrType(NaClTCPConn);
161008
161017
  ptrType$3 = $ptrType(websocket.Conn);
161009
161018
  ptrType$4 = $ptrType(JsWebsocketConn);
161010
161019
  ptrType$5 = $ptrType(BrightSignTCPConn);
161020
+ chanType = $chanType(structType, false, false);
161011
161021
  init = function() {
161012
161022
  var _key;
161013
161023
  _key = "samsung_wasm_tcp"; (connects || $throwRuntimeError("assignment to entry in nil map")).set(Driver.keyFor(_key), { k: _key, v: ConnectSamsungWasmTCP });
@@ -161348,32 +161358,40 @@ $packages["github.com/supraio/client-daemon/pkg/netstream"] = (function() {
161348
161358
  _key = "brightsign_tcp"; (connects || $throwRuntimeError("assignment to entry in nil map")).set(Driver.keyFor(_key), { k: _key, v: ConnectBrightSignTCP });
161349
161359
  };
161350
161360
  BrightSignTCPConn.ptr.prototype.Write = function(data) {
161351
- var {$24r, _arg, _r, _r$1, _r$2, _r$3, _r$4, _r$5, _tuple, c, data, err, uint8Array, $s, $r, $c} = $restore(this, {data});
161361
+ var {$24r, $24r$1, _arg, _r, _r$1, _r$2, _r$3, _r$4, _r$5, _r$6, _tuple, c, canceled, data, err, uint8Array, x, x$1, $s, $r, $c} = $restore(this, {data});
161352
161362
  /* */ $s = $s || 0; s: while (true) { switch ($s) { case 0:
161353
161363
  c = this;
161354
161364
  _r = $clone($clone(js.Global(), js.Value).Get("Uint8Array"), js.Value).New(new sliceType([new $Int(data.$length)])); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
161355
161365
  uint8Array = $clone(_r, js.Value);
161356
161366
  js.CopyBytesToJS($clone(uint8Array, js.Value), data);
161357
- _r$1 = $clone(c.conn, js.Value).Call("write", new sliceType([new uint8Array.constructor.elem(uint8Array)])); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
161358
- _r$2 = jshelper.Await($clone(_r$1, js.Value)); /* */ $s = 3; case 3: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
161367
+ _r$1 = $clone(c.conn, js.Value).Call("write", new sliceType([new uint8Array.constructor.elem(uint8Array), (x = js.ValueOf(new mapType($makeMap($String.keyFor, [{ k: "signal", v: (x$1 = $clone(c.controller, js.Value).Get("signal"), new x$1.constructor.elem(x$1)) }]))), new x.constructor.elem(x))])); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
161368
+ _r$2 = jshelper.AwaitWithCancel($clone(_r$1, js.Value), c.cancel); /* */ $s = 3; case 3: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
161359
161369
  _tuple = _r$2;
161360
161370
  err = _tuple[1];
161361
- /* */ if (!(err === ptrType.nil)) { $s = 4; continue; }
161371
+ canceled = _tuple[2];
161372
+ /* */ if (canceled) { $s = 4; continue; }
161362
161373
  /* */ $s = 5; continue;
161363
- /* if (!(err === ptrType.nil)) { */ case 4:
161364
- _r$3 = jshelper.GetError(err); /* */ $s = 6; case 6: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
161365
- _r$4 = _r$3.Error(); /* */ $s = 7; case 7: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
161366
- _arg = new $String(_r$4);
161367
- _r$5 = errs.Errorf("Failed to write BrightSign TCP stream: %s", new sliceType([_arg])); /* */ $s = 8; case 8: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
161368
- $24r = [0, _r$5];
161369
- $s = 9; case 9: return $24r;
161374
+ /* if (canceled) { */ case 4:
161375
+ _r$3 = errs.Errorf("BrightSign TCP stream write canceled", sliceType.nil); /* */ $s = 6; case 6: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
161376
+ $24r = [0, _r$3];
161377
+ $s = 7; case 7: return $24r;
161370
161378
  /* } */ case 5:
161379
+ /* */ if (!(err === ptrType.nil)) { $s = 8; continue; }
161380
+ /* */ $s = 9; continue;
161381
+ /* if (!(err === ptrType.nil)) { */ case 8:
161382
+ _r$4 = jshelper.GetError(err); /* */ $s = 10; case 10: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
161383
+ _r$5 = _r$4.Error(); /* */ $s = 11; case 11: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
161384
+ _arg = new $String(_r$5);
161385
+ _r$6 = errs.Errorf("Failed to write BrightSign TCP stream: %s", new sliceType([_arg])); /* */ $s = 12; case 12: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
161386
+ $24r$1 = [0, _r$6];
161387
+ $s = 13; case 13: return $24r$1;
161388
+ /* } */ case 9:
161371
161389
  $s = -1; return [data.$length, $ifaceNil];
161372
- /* */ } return; } var $f = {$blk: BrightSignTCPConn.ptr.prototype.Write, $c: true, $r, $24r, _arg, _r, _r$1, _r$2, _r$3, _r$4, _r$5, _tuple, c, data, err, uint8Array, $s};return $f;
161390
+ /* */ } return; } var $f = {$blk: BrightSignTCPConn.ptr.prototype.Write, $c: true, $r, $24r, $24r$1, _arg, _r, _r$1, _r$2, _r$3, _r$4, _r$5, _r$6, _tuple, c, canceled, data, err, uint8Array, x, x$1, $s};return $f;
161373
161391
  };
161374
161392
  BrightSignTCPConn.prototype.Write = function(data) { return this.$val.Write(data); };
161375
161393
  BrightSignTCPConn.ptr.prototype.Read = function(data) {
161376
- var {$24r, $24r$1, $24r$2, $24r$3, _arg, _r, _r$1, _r$2, _r$3, _r$4, _tuple, c, chunk, data, err, n, n$1, value, $s, $deferred, $r, $c} = $restore(this, {data});
161394
+ var {$24r, $24r$1, $24r$2, $24r$3, $24r$4, _arg, _r, _r$1, _r$2, _r$3, _r$4, _r$5, _tuple, c, canceled, chunk, data, err, n, n$1, value, x, $s, $deferred, $r, $c} = $restore(this, {data});
161377
161395
  /* */ $s = $s || 0; var $err = null; try { s: while (true) { switch ($s) { case 0: $deferred = []; $curGoroutine.deferStack.push($deferred);
161378
161396
  c = this;
161379
161397
  /* */ if (data.$length === 0) { $s = 1; continue; }
@@ -161392,45 +161410,83 @@ $packages["github.com/supraio/client-daemon/pkg/netstream"] = (function() {
161392
161410
  $24r$1 = [n, $ifaceNil];
161393
161411
  $s = 7; case 7: return $24r$1;
161394
161412
  /* } */ case 6:
161395
- _r = $clone(c.conn, js.Value).Call("read", sliceType.nil); /* */ $s = 8; case 8: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
161396
- _r$1 = jshelper.Await($clone(_r, js.Value)); /* */ $s = 9; case 9: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
161413
+ _r = $clone(c.conn, js.Value).Call("read", new sliceType([(x = $clone(c.controller, js.Value).Get("signal"), new x.constructor.elem(x))])); /* */ $s = 8; case 8: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
161414
+ _r$1 = jshelper.AwaitWithCancel($clone(_r, js.Value), c.cancel); /* */ $s = 9; case 9: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
161397
161415
  _tuple = _r$1;
161398
161416
  value = _tuple[0];
161399
161417
  err = _tuple[1];
161400
- /* */ if (!(err === ptrType.nil)) { $s = 10; continue; }
161418
+ canceled = _tuple[2];
161419
+ /* */ if (canceled) { $s = 10; continue; }
161401
161420
  /* */ $s = 11; continue;
161402
- /* if (!(err === ptrType.nil)) { */ case 10:
161403
- _r$2 = jshelper.GetError(err); /* */ $s = 12; case 12: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
161404
- _r$3 = _r$2.Error(); /* */ $s = 13; case 13: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
161405
- _arg = new $String(_r$3);
161406
- _r$4 = errs.Errorf("Failed to read BrightSign TCP stream: %s", new sliceType([_arg])); /* */ $s = 14; case 14: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
161407
- $24r$2 = [0, _r$4];
161408
- $s = 15; case 15: return $24r$2;
161421
+ /* if (canceled) { */ case 10:
161422
+ _r$2 = errs.Errorf("BrightSign TCP stream read canceled", sliceType.nil); /* */ $s = 12; case 12: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
161423
+ $24r$2 = [0, _r$2];
161424
+ $s = 13; case 13: return $24r$2;
161409
161425
  /* } */ case 11:
161426
+ /* */ if (!(err === ptrType.nil)) { $s = 14; continue; }
161427
+ /* */ $s = 15; continue;
161428
+ /* if (!(err === ptrType.nil)) { */ case 14:
161429
+ _r$3 = jshelper.GetError(err); /* */ $s = 16; case 16: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
161430
+ _r$4 = _r$3.Error(); /* */ $s = 17; case 17: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
161431
+ _arg = new $String(_r$4);
161432
+ _r$5 = errs.Errorf("Failed to read BrightSign TCP stream: %s", new sliceType([_arg])); /* */ $s = 18; case 18: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
161433
+ $24r$3 = [0, _r$5];
161434
+ $s = 19; case 19: return $24r$3;
161435
+ /* } */ case 15:
161410
161436
  chunk = $makeSlice(sliceType$2, $clone($clone(value, js.Value).Get("byteLength"), js.Value).Int());
161411
161437
  js.CopyBytesToGo(chunk, $clone(value, js.Value));
161412
161438
  n$1 = $copySlice(data, chunk);
161413
161439
  if (n$1 < chunk.$length) {
161414
161440
  c.remainder = $subslice(chunk, n$1);
161415
161441
  }
161416
- $24r$3 = [n$1, $ifaceNil];
161417
- $s = 16; case 16: return $24r$3;
161418
- /* */ } return; } } catch(err) { $err = err; $s = -1; return [0, $ifaceNil]; } finally { $callDeferred($deferred, $err); if($curGoroutine.asleep) { var $f = {$blk: BrightSignTCPConn.ptr.prototype.Read, $c: true, $r, $24r, $24r$1, $24r$2, $24r$3, _arg, _r, _r$1, _r$2, _r$3, _r$4, _tuple, c, chunk, data, err, n, n$1, value, $s, $deferred};return $f; } }
161442
+ $24r$4 = [n$1, $ifaceNil];
161443
+ $s = 20; case 20: return $24r$4;
161444
+ /* */ } return; } } catch(err) { $err = err; $s = -1; return [0, $ifaceNil]; } finally { $callDeferred($deferred, $err); if($curGoroutine.asleep) { var $f = {$blk: BrightSignTCPConn.ptr.prototype.Read, $c: true, $r, $24r, $24r$1, $24r$2, $24r$3, $24r$4, _arg, _r, _r$1, _r$2, _r$3, _r$4, _r$5, _tuple, c, canceled, chunk, data, err, n, n$1, value, x, $s, $deferred};return $f; } }
161419
161445
  };
161420
161446
  BrightSignTCPConn.prototype.Read = function(data) { return this.$val.Read(data); };
161421
161447
  BrightSignTCPConn.ptr.prototype.Close = function() {
161422
- var {_r, c, $s, $r, $c} = $restore(this, {});
161448
+ var {c, closeErr, $s, $r, $c} = $restore(this, {});
161423
161449
  /* */ $s = $s || 0; s: while (true) { switch ($s) { case 0:
161424
- c = this;
161425
- _r = $clone(c.conn, js.Value).Call("close", sliceType.nil); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
161426
- _r;
161427
- $s = -1; return $ifaceNil;
161428
- /* */ } return; } var $f = {$blk: BrightSignTCPConn.ptr.prototype.Close, $c: true, $r, _r, c, $s};return $f;
161450
+ c = [c];
161451
+ closeErr = [closeErr];
161452
+ c[0] = this;
161453
+ closeErr[0] = $ifaceNil;
161454
+ $r = c[0].closeOnce.Do((function(c, closeErr) { return function $b() {
161455
+ var {_arg, _r, _r$1, _r$2, _r$3, _r$4, _r$5, _r$6, _tuple, canceled, err, x, $s, $r, $c} = $restore(this, {});
161456
+ /* */ $s = $s || 0; s: while (true) { switch ($s) { case 0:
161457
+ $close(c[0].cancel);
161458
+ _r = $clone(c[0].controller, js.Value).Call("abort", sliceType.nil); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
161459
+ _r;
161460
+ _r$1 = $clone(c[0].conn, js.Value).Call("close", new sliceType([(x = brightSignOperationContext(new time.Duration(0, 1000000000)), new x.constructor.elem(x))])); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
161461
+ _r$2 = jshelper.AwaitWithCancel($clone(_r$1, js.Value), brightSignCancelAfter(new time.Duration(0, 1000000000))); /* */ $s = 3; case 3: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
161462
+ _tuple = _r$2;
161463
+ err = _tuple[1];
161464
+ canceled = _tuple[2];
161465
+ /* */ if (canceled) { $s = 4; continue; }
161466
+ /* */ if (!(err === ptrType.nil)) { $s = 5; continue; }
161467
+ /* */ $s = 6; continue;
161468
+ /* if (canceled) { */ case 4:
161469
+ _r$3 = errs.Errorf("BrightSign TCP stream close timed out", sliceType.nil); /* */ $s = 7; case 7: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
161470
+ closeErr[0] = _r$3;
161471
+ $s = 6; continue;
161472
+ /* } else if (!(err === ptrType.nil)) { */ case 5:
161473
+ _r$4 = jshelper.GetError(err); /* */ $s = 8; case 8: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
161474
+ _r$5 = _r$4.Error(); /* */ $s = 9; case 9: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
161475
+ _arg = new $String(_r$5);
161476
+ _r$6 = errs.Errorf("Failed to close BrightSign TCP stream: %s", new sliceType([_arg])); /* */ $s = 10; case 10: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
161477
+ closeErr[0] = _r$6;
161478
+ /* } */ case 6:
161479
+ $s = -1; return;
161480
+ /* */ } return; } var $f = {$blk: $b, $c: true, $r, _arg, _r, _r$1, _r$2, _r$3, _r$4, _r$5, _r$6, _tuple, canceled, err, x, $s};return $f;
161481
+ }; })(c, closeErr)); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
161482
+ $s = -1; return closeErr[0];
161483
+ /* */ } return; } var $f = {$blk: BrightSignTCPConn.ptr.prototype.Close, $c: true, $r, c, closeErr, $s};return $f;
161429
161484
  };
161430
161485
  BrightSignTCPConn.prototype.Close = function() { return this.$val.Close(); };
161431
161486
  ConnectBrightSignTCP = function(host, timeout, secure) {
161432
- var {$24r, $24r$1, $24r$2, $24r$3, _arg, _arg$1, _r, _r$1, _r$2, _r$3, _r$4, _r$5, _r$6, _r$7, _r$8, _tuple, _tuple$1, _tuple$2, awaitErr, err, host, hostname, opts, port, portString, secure, timeout, value, $s, $r, $c} = $restore(this, {host, timeout, secure});
161487
+ var {$24r, $24r$1, $24r$2, $24r$3, $24r$4, $24r$5, _arg, _arg$1, _r, _r$1, _r$10, _r$2, _r$3, _r$4, _r$5, _r$6, _r$7, _r$8, _r$9, _tuple, _tuple$1, _tuple$2, awaitErr, canceled, err, host, hostname, opts, port, portString, secure, timeout, value, x, $s, $r, $c} = $restore(this, {host, timeout, secure});
161433
161488
  /* */ $s = $s || 0; s: while (true) { switch ($s) { case 0:
161489
+ timeout = brightSignFiniteTimeout(timeout);
161434
161490
  /* */ if (!netbrightsigntcp.IsAvailable()) { $s = 1; continue; }
161435
161491
  /* */ $s = 2; continue;
161436
161492
  /* if (!netbrightsigntcp.IsAvailable()) { */ case 1:
@@ -161461,27 +161517,64 @@ $packages["github.com/supraio/client-daemon/pkg/netstream"] = (function() {
161461
161517
  $s = 13; case 13: return $24r$2;
161462
161518
  /* } */ case 11:
161463
161519
  opts = $clone(js.ValueOf(new mapType($makeMap($String.keyFor, [{ k: "host", v: new $String(hostname) }, { k: "port", v: new $Int(port) }, { k: "secure", v: new $Bool(secure) }]))), js.Value);
161464
- $unused(timeout);
161465
- _r$4 = $clone(netbrightsigntcp.Get(), js.Value).Call("createRawStream", new sliceType([new opts.constructor.elem(opts)])); /* */ $s = 14; case 14: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
161466
- _r$5 = jshelper.Await($clone(_r$4, js.Value)); /* */ $s = 15; case 15: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
161520
+ _r$4 = $clone(netbrightsigntcp.Get(), js.Value).Call("createRawStream", new sliceType([new opts.constructor.elem(opts), (x = brightSignOperationContext(timeout), new x.constructor.elem(x))])); /* */ $s = 14; case 14: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
161521
+ _r$5 = jshelper.AwaitWithCancel($clone(_r$4, js.Value), brightSignCancelAfter(timeout)); /* */ $s = 15; case 15: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
161467
161522
  _tuple$2 = _r$5;
161468
161523
  value = _tuple$2[0];
161469
161524
  awaitErr = _tuple$2[1];
161470
- /* */ if (!(awaitErr === ptrType.nil)) { $s = 16; continue; }
161525
+ canceled = _tuple$2[2];
161526
+ /* */ if (canceled) { $s = 16; continue; }
161471
161527
  /* */ $s = 17; continue;
161472
- /* if (!(awaitErr === ptrType.nil)) { */ case 16:
161473
- _arg = new $String(host);
161474
- _r$6 = jshelper.GetError(awaitErr); /* */ $s = 18; case 18: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
161475
- _r$7 = _r$6.Error(); /* */ $s = 19; case 19: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
161476
- _arg$1 = new $String(_r$7);
161477
- _r$8 = errs.Errorf("Failed to connect BrightSign TCP %s: %s", new sliceType([_arg, _arg$1])); /* */ $s = 20; case 20: if($c) { $c = false; _r$8 = _r$8.$blk(); } if (_r$8 && _r$8.$blk !== undefined) { break s; }
161478
- $24r$3 = [$ifaceNil, _r$8];
161479
- $s = 21; case 21: return $24r$3;
161528
+ /* if (canceled) { */ case 16:
161529
+ _r$6 = errs.Errorf("Timed out connecting BrightSign TCP %s", new sliceType([new $String(host)])); /* */ $s = 18; case 18: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
161530
+ $24r$3 = [$ifaceNil, _r$6];
161531
+ $s = 19; case 19: return $24r$3;
161480
161532
  /* } */ case 17:
161481
- $s = -1; return [new BrightSignTCPConn.ptr(value, new sync.Mutex.ptr(0, 0), sliceType$2.nil), $ifaceNil];
161482
- /* */ } return; } var $f = {$blk: ConnectBrightSignTCP, $c: true, $r, $24r, $24r$1, $24r$2, $24r$3, _arg, _arg$1, _r, _r$1, _r$2, _r$3, _r$4, _r$5, _r$6, _r$7, _r$8, _tuple, _tuple$1, _tuple$2, awaitErr, err, host, hostname, opts, port, portString, secure, timeout, value, $s};return $f;
161533
+ /* */ if (!(awaitErr === ptrType.nil)) { $s = 20; continue; }
161534
+ /* */ $s = 21; continue;
161535
+ /* if (!(awaitErr === ptrType.nil)) { */ case 20:
161536
+ _arg = new $String(host);
161537
+ _r$7 = jshelper.GetError(awaitErr); /* */ $s = 22; case 22: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
161538
+ _r$8 = _r$7.Error(); /* */ $s = 23; case 23: if($c) { $c = false; _r$8 = _r$8.$blk(); } if (_r$8 && _r$8.$blk !== undefined) { break s; }
161539
+ _arg$1 = new $String(_r$8);
161540
+ _r$9 = errs.Errorf("Failed to connect BrightSign TCP %s: %s", new sliceType([_arg, _arg$1])); /* */ $s = 24; case 24: if($c) { $c = false; _r$9 = _r$9.$blk(); } if (_r$9 && _r$9.$blk !== undefined) { break s; }
161541
+ $24r$4 = [$ifaceNil, _r$9];
161542
+ $s = 25; case 25: return $24r$4;
161543
+ /* } */ case 21:
161544
+ _r$10 = $clone($clone(js.Global(), js.Value).Get("AbortController"), js.Value).New(sliceType.nil); /* */ $s = 26; case 26: if($c) { $c = false; _r$10 = _r$10.$blk(); } if (_r$10 && _r$10.$blk !== undefined) { break s; }
161545
+ $24r$5 = [new BrightSignTCPConn.ptr(value, $clone(_r$10, js.Value), new $Chan(structType, 0), new sync.Once.ptr(0, new sync.Mutex.ptr(0, 0)), new sync.Mutex.ptr(0, 0), sliceType$2.nil), $ifaceNil];
161546
+ $s = 27; case 27: return $24r$5;
161547
+ /* */ } return; } var $f = {$blk: ConnectBrightSignTCP, $c: true, $r, $24r, $24r$1, $24r$2, $24r$3, $24r$4, $24r$5, _arg, _arg$1, _r, _r$1, _r$10, _r$2, _r$3, _r$4, _r$5, _r$6, _r$7, _r$8, _r$9, _tuple, _tuple$1, _tuple$2, awaitErr, canceled, err, host, hostname, opts, port, portString, secure, timeout, value, x, $s};return $f;
161483
161548
  };
161484
161549
  $pkg.ConnectBrightSignTCP = ConnectBrightSignTCP;
161550
+ brightSignOperationContext = function(timeout) {
161551
+ var timeout;
161552
+ return js.ValueOf(new mapType($makeMap($String.keyFor, [{ k: "deadlineMs", v: brightSignFiniteTimeout(timeout).Milliseconds() }])));
161553
+ };
161554
+ brightSignFiniteTimeout = function(timeout) {
161555
+ var timeout;
161556
+ if ((timeout.$high < 0 || (timeout.$high === 0 && timeout.$low <= 0))) {
161557
+ return new time.Duration(0, 1000000000);
161558
+ }
161559
+ return timeout;
161560
+ };
161561
+ brightSignCancelAfter = function(timeout) {
161562
+ var cancel, timeout;
161563
+ cancel = new $Chan(structType, 0);
161564
+ $go((function $b() {
161565
+ var {_r, _r$1, timer, $s, $deferred, $r, $c} = $restore(this, {});
161566
+ /* */ $s = $s || 0; var $err = null; try { s: while (true) { switch ($s) { case 0: $deferred = []; $curGoroutine.deferStack.push($deferred);
161567
+ _r = time.NewTimer(brightSignFiniteTimeout(timeout)); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
161568
+ timer = _r;
161569
+ $deferred.push([$methodVal(timer, "Stop"), []]);
161570
+ _r$1 = $recv(timer.C); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
161571
+ _r$1[0];
161572
+ $close(cancel);
161573
+ $s = -1; return;
161574
+ /* */ } return; } } catch(err) { $err = err; $s = -1; } finally { $callDeferred($deferred, $err); if($curGoroutine.asleep) { var $f = {$blk: $b, $c: true, $r, _r, _r$1, timer, $s, $deferred};return $f; } }
161575
+ }), []);
161576
+ return cancel;
161577
+ };
161485
161578
  ptrType$1.methods = [{prop: "Write", name: "Write", pkg: "", typ: $funcType([sliceType$2], [$Int, $error], false)}, {prop: "Read", name: "Read", pkg: "", typ: $funcType([sliceType$2], [$Int, $error], false)}, {prop: "Close", name: "Close", pkg: "", typ: $funcType([], [$error], false)}, {prop: "GetJSConnection", name: "GetJSConnection", pkg: "", typ: $funcType([], [ptrType], false)}];
161486
161579
  ptrType$2.methods = [{prop: "Write", name: "Write", pkg: "", typ: $funcType([sliceType$2], [$Int, $error], false)}, {prop: "Read", name: "Read", pkg: "", typ: $funcType([sliceType$2], [$Int, $error], false)}, {prop: "Close", name: "Close", pkg: "", typ: $funcType([], [$error], false)}, {prop: "GetJSConnection", name: "GetJSConnection", pkg: "", typ: $funcType([], [ptrType], false)}];
161487
161580
  ptrType$4.methods = [{prop: "Write", name: "Write", pkg: "", typ: $funcType([sliceType$2], [$Int, $error], false)}, {prop: "Read", name: "Read", pkg: "", typ: $funcType([sliceType$2], [$Int, $error], false)}, {prop: "Close", name: "Close", pkg: "", typ: $funcType([], [$error], false)}];
@@ -161491,7 +161584,7 @@ $packages["github.com/supraio/client-daemon/pkg/netstream"] = (function() {
161491
161584
  JsWebsocketConn.init("github.com/supraio/client-daemon/pkg/netstream", [{prop: "conn", name: "conn", embedded: false, exported: false, typ: ptrType$3, tag: ""}]);
161492
161585
  ReaderWriter.init([{prop: "Read", name: "Read", pkg: "", typ: $funcType([sliceType$2], [$Int, $error], false)}, {prop: "Write", name: "Write", pkg: "", typ: $funcType([sliceType$2], [$Int, $error], false)}]);
161493
161586
  ReaderWriterCloser.init([{prop: "Close", name: "Close", pkg: "", typ: $funcType([], [$error], false)}, {prop: "Read", name: "Read", pkg: "", typ: $funcType([sliceType$2], [$Int, $error], false)}, {prop: "Write", name: "Write", pkg: "", typ: $funcType([sliceType$2], [$Int, $error], false)}]);
161494
- BrightSignTCPConn.init("github.com/supraio/client-daemon/pkg/netstream", [{prop: "conn", name: "conn", embedded: false, exported: false, typ: ptrType, tag: ""}, {prop: "readMu", name: "readMu", embedded: false, exported: false, typ: sync.Mutex, tag: ""}, {prop: "remainder", name: "remainder", embedded: false, exported: false, typ: sliceType$2, tag: ""}]);
161587
+ BrightSignTCPConn.init("github.com/supraio/client-daemon/pkg/netstream", [{prop: "conn", name: "conn", embedded: false, exported: false, typ: ptrType, tag: ""}, {prop: "controller", name: "controller", embedded: false, exported: false, typ: js.Value, tag: ""}, {prop: "cancel", name: "cancel", embedded: false, exported: false, typ: chanType, tag: ""}, {prop: "closeOnce", name: "closeOnce", embedded: false, exported: false, typ: sync.Once, tag: ""}, {prop: "readMu", name: "readMu", embedded: false, exported: false, typ: sync.Mutex, tag: ""}, {prop: "remainder", name: "remainder", embedded: false, exported: false, typ: sliceType$2, tag: ""}]);
161495
161588
  $init = function() {
161496
161589
  $pkg.$init = function() {};
161497
161590
  /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
@@ -162289,7 +162382,7 @@ $packages["github.com/supraio/client-daemon/pkg/netclient"] = (function() {
162289
162382
  return $pkg;
162290
162383
  })();
162291
162384
  $packages["github.com/supraio/client-daemon/pkg/netpacket"] = (function() {
162292
- var $pkg = {}, $init, context, errors, websocket, errs, jshelper, netbrightsigntcp, netnacltcp, netsamsungwasmtcp, net, strconv, strings, js, time, SamsungWasmTCPConn, NaClTCPConn, JsWebsocketConn, JsWebsocketWorkerConn, Driver, BrightSignTCPConn, sliceType, ptrType, mapType, funcType, arrayType, sliceType$1, sliceType$2, ptrType$1, ptrType$2, ptrType$3, ptrType$4, ptrType$5, ptrType$6, connects, maxPacketSizes, init, ConnectSamsungWasmTCP, init$1, ConnectNaClTCP, init$2, getPerformanceTimestamp, ConnectJsWebsocket, init$3, ConnectBrightSignTCP;
162385
+ var $pkg = {}, $init, context, errors, websocket, errs, jshelper, netbrightsigntcp, netnacltcp, netsamsungwasmtcp, net, strconv, strings, sync, js, time, SamsungWasmTCPConn, NaClTCPConn, JsWebsocketConn, JsWebsocketWorkerConn, Driver, BrightSignTCPConn, sliceType, ptrType, mapType, funcType, arrayType, sliceType$1, structType, sliceType$2, ptrType$1, ptrType$2, ptrType$3, ptrType$4, ptrType$5, ptrType$6, chanType, connects, maxPacketSizes, init, ConnectSamsungWasmTCP, init$1, ConnectNaClTCP, init$2, getPerformanceTimestamp, ConnectJsWebsocket, init$3, ConnectBrightSignTCP, operationContext, finiteTimeout, cancelAfter;
162293
162386
  context = $packages["context"];
162294
162387
  errors = $packages["errors"];
162295
162388
  websocket = $packages["github.com/coder/websocket"];
@@ -162301,6 +162394,7 @@ $packages["github.com/supraio/client-daemon/pkg/netpacket"] = (function() {
162301
162394
  net = $packages["net"];
162302
162395
  strconv = $packages["strconv"];
162303
162396
  strings = $packages["strings"];
162397
+ sync = $packages["sync"];
162304
162398
  js = $packages["syscall/js"];
162305
162399
  time = $packages["time"];
162306
162400
  SamsungWasmTCPConn = $pkg.SamsungWasmTCPConn = $newType(0, $kindStruct, "netpacket.SamsungWasmTCPConn", true, "github.com/supraio/client-daemon/pkg/netpacket", true, function(conn_) {
@@ -162336,13 +162430,19 @@ $packages["github.com/supraio/client-daemon/pkg/netpacket"] = (function() {
162336
162430
  this.conn = conn_;
162337
162431
  });
162338
162432
  Driver = $pkg.Driver = $newType(8, $kindString, "netpacket.Driver", true, "github.com/supraio/client-daemon/pkg/netpacket", true, null);
162339
- BrightSignTCPConn = $pkg.BrightSignTCPConn = $newType(0, $kindStruct, "netpacket.BrightSignTCPConn", true, "github.com/supraio/client-daemon/pkg/netpacket", true, function(conn_) {
162433
+ BrightSignTCPConn = $pkg.BrightSignTCPConn = $newType(0, $kindStruct, "netpacket.BrightSignTCPConn", true, "github.com/supraio/client-daemon/pkg/netpacket", true, function(conn_, controller_, cancel_, closeOnce_) {
162340
162434
  this.$val = this;
162341
162435
  if (arguments.length === 0) {
162342
162436
  this.conn = ptrType.nil;
162437
+ this.controller = new js.Value.ptr(null, false, arrayType.zero());
162438
+ this.cancel = $chanNil;
162439
+ this.closeOnce = new sync.Once.ptr(0, new sync.Mutex.ptr(0, 0));
162343
162440
  return;
162344
162441
  }
162345
162442
  this.conn = conn_;
162443
+ this.controller = controller_;
162444
+ this.cancel = cancel_;
162445
+ this.closeOnce = closeOnce_;
162346
162446
  });
162347
162447
  sliceType = $sliceType($emptyInterface);
162348
162448
  ptrType = $ptrType(js.Value);
@@ -162350,6 +162450,7 @@ $packages["github.com/supraio/client-daemon/pkg/netpacket"] = (function() {
162350
162450
  funcType = $funcType([], [], false);
162351
162451
  arrayType = $arrayType(funcType, 0);
162352
162452
  sliceType$1 = $sliceType($String);
162453
+ structType = $structType("", []);
162353
162454
  sliceType$2 = $sliceType($Uint8);
162354
162455
  ptrType$1 = $ptrType(SamsungWasmTCPConn);
162355
162456
  ptrType$2 = $ptrType(NaClTCPConn);
@@ -162357,6 +162458,7 @@ $packages["github.com/supraio/client-daemon/pkg/netpacket"] = (function() {
162357
162458
  ptrType$4 = $ptrType(JsWebsocketConn);
162358
162459
  ptrType$5 = $ptrType(JsWebsocketWorkerConn);
162359
162460
  ptrType$6 = $ptrType(BrightSignTCPConn);
162461
+ chanType = $chanType(structType, false, false);
162360
162462
  init = function() {
162361
162463
  var _key, _key$1;
162362
162464
  _key = "samsung_wasm_tcp"; (connects || $throwRuntimeError("assignment to entry in nil map")).set(Driver.keyFor(_key), { k: _key, v: ConnectSamsungWasmTCP });
@@ -162816,61 +162918,110 @@ $packages["github.com/supraio/client-daemon/pkg/netpacket"] = (function() {
162816
162918
  _key$1 = "brightsign_tcp"; (maxPacketSizes || $throwRuntimeError("assignment to entry in nil map")).set(Driver.keyFor(_key$1), { k: _key$1, v: 65535 });
162817
162919
  };
162818
162920
  BrightSignTCPConn.ptr.prototype.Write = function(data) {
162819
- var {$24r, _arg, _r, _r$1, _r$2, _r$3, _r$4, _r$5, _tuple, c, data, err, uint8Array, $s, $r, $c} = $restore(this, {data});
162921
+ var {$24r, $24r$1, _arg, _r, _r$1, _r$2, _r$3, _r$4, _r$5, _r$6, _tuple, c, canceled, data, err, uint8Array, x, x$1, $s, $r, $c} = $restore(this, {data});
162820
162922
  /* */ $s = $s || 0; s: while (true) { switch ($s) { case 0:
162821
162923
  c = this;
162822
162924
  _r = $clone($clone(js.Global(), js.Value).Get("Uint8Array"), js.Value).New(new sliceType([new $Int(data.$length)])); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
162823
162925
  uint8Array = $clone(_r, js.Value);
162824
162926
  js.CopyBytesToJS($clone(uint8Array, js.Value), data);
162825
- _r$1 = $clone(c.conn, js.Value).Call("write", new sliceType([new uint8Array.constructor.elem(uint8Array)])); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
162826
- _r$2 = jshelper.Await($clone(_r$1, js.Value)); /* */ $s = 3; case 3: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
162927
+ _r$1 = $clone(c.conn, js.Value).Call("write", new sliceType([new uint8Array.constructor.elem(uint8Array), (x = js.ValueOf(new mapType($makeMap($String.keyFor, [{ k: "signal", v: (x$1 = $clone(c.controller, js.Value).Get("signal"), new x$1.constructor.elem(x$1)) }]))), new x.constructor.elem(x))])); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
162928
+ _r$2 = jshelper.AwaitWithCancel($clone(_r$1, js.Value), c.cancel); /* */ $s = 3; case 3: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
162827
162929
  _tuple = _r$2;
162828
162930
  err = _tuple[1];
162829
- /* */ if (!(err === ptrType.nil)) { $s = 4; continue; }
162931
+ canceled = _tuple[2];
162932
+ /* */ if (canceled) { $s = 4; continue; }
162830
162933
  /* */ $s = 5; continue;
162831
- /* if (!(err === ptrType.nil)) { */ case 4:
162832
- _r$3 = jshelper.GetError(err); /* */ $s = 6; case 6: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
162833
- _r$4 = _r$3.Error(); /* */ $s = 7; case 7: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
162834
- _arg = new $String(_r$4);
162835
- _r$5 = errs.Errorf("Failed to write BrightSign TCP packet: %s", new sliceType([_arg])); /* */ $s = 8; case 8: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
162836
- $24r = [0, _r$5];
162837
- $s = 9; case 9: return $24r;
162934
+ /* if (canceled) { */ case 4:
162935
+ _r$3 = errs.Errorf("BrightSign TCP packet write canceled", sliceType.nil); /* */ $s = 6; case 6: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
162936
+ $24r = [0, _r$3];
162937
+ $s = 7; case 7: return $24r;
162838
162938
  /* } */ case 5:
162939
+ /* */ if (!(err === ptrType.nil)) { $s = 8; continue; }
162940
+ /* */ $s = 9; continue;
162941
+ /* if (!(err === ptrType.nil)) { */ case 8:
162942
+ _r$4 = jshelper.GetError(err); /* */ $s = 10; case 10: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
162943
+ _r$5 = _r$4.Error(); /* */ $s = 11; case 11: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
162944
+ _arg = new $String(_r$5);
162945
+ _r$6 = errs.Errorf("Failed to write BrightSign TCP packet: %s", new sliceType([_arg])); /* */ $s = 12; case 12: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
162946
+ $24r$1 = [0, _r$6];
162947
+ $s = 13; case 13: return $24r$1;
162948
+ /* } */ case 9:
162839
162949
  $s = -1; return [data.$length, $ifaceNil];
162840
- /* */ } return; } var $f = {$blk: BrightSignTCPConn.ptr.prototype.Write, $c: true, $r, $24r, _arg, _r, _r$1, _r$2, _r$3, _r$4, _r$5, _tuple, c, data, err, uint8Array, $s};return $f;
162950
+ /* */ } return; } var $f = {$blk: BrightSignTCPConn.ptr.prototype.Write, $c: true, $r, $24r, $24r$1, _arg, _r, _r$1, _r$2, _r$3, _r$4, _r$5, _r$6, _tuple, c, canceled, data, err, uint8Array, x, x$1, $s};return $f;
162841
162951
  };
162842
162952
  BrightSignTCPConn.prototype.Write = function(data) { return this.$val.Write(data); };
162843
162953
  BrightSignTCPConn.ptr.prototype.Read = function(data) {
162844
- var {$24r, _arg, _r, _r$1, _r$2, _r$3, _r$4, _tuple, c, data, err, value, $s, $r, $c} = $restore(this, {data});
162954
+ var {$24r, $24r$1, _arg, _r, _r$1, _r$2, _r$3, _r$4, _r$5, _r$6, _tuple, c, canceled, data, err, uint8Array, value, x, $s, $r, $c} = $restore(this, {data});
162845
162955
  /* */ $s = $s || 0; s: while (true) { switch ($s) { case 0:
162846
162956
  c = this;
162847
- _r = $clone(c.conn, js.Value).Call("read", sliceType.nil); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
162848
- _r$1 = jshelper.Await($clone(_r, js.Value)); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
162849
- _tuple = _r$1;
162957
+ _r = $clone($clone(js.Global(), js.Value).Get("Uint8Array"), js.Value).New(new sliceType([new $Int(data.$length)])); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
162958
+ uint8Array = $clone(_r, js.Value);
162959
+ _r$1 = $clone(c.conn, js.Value).Call("readInto", new sliceType([new uint8Array.constructor.elem(uint8Array), (x = $clone(c.controller, js.Value).Get("signal"), new x.constructor.elem(x))])); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
162960
+ _r$2 = jshelper.AwaitWithCancel($clone(_r$1, js.Value), c.cancel); /* */ $s = 3; case 3: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
162961
+ _tuple = _r$2;
162850
162962
  value = _tuple[0];
162851
162963
  err = _tuple[1];
162852
- /* */ if (!(err === ptrType.nil)) { $s = 3; continue; }
162853
- /* */ $s = 4; continue;
162854
- /* if (!(err === ptrType.nil)) { */ case 3:
162855
- _r$2 = jshelper.GetError(err); /* */ $s = 5; case 5: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
162856
- _r$3 = _r$2.Error(); /* */ $s = 6; case 6: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
162857
- _arg = new $String(_r$3);
162858
- _r$4 = errs.Errorf("Failed to read BrightSign TCP packet: %s", new sliceType([_arg])); /* */ $s = 7; case 7: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
162859
- $24r = [0, _r$4];
162860
- $s = 8; case 8: return $24r;
162861
- /* } */ case 4:
162862
- $s = -1; return [js.CopyBytesToGo(data, $clone(value, js.Value)), $ifaceNil];
162863
- /* */ } return; } var $f = {$blk: BrightSignTCPConn.ptr.prototype.Read, $c: true, $r, $24r, _arg, _r, _r$1, _r$2, _r$3, _r$4, _tuple, c, data, err, value, $s};return $f;
162964
+ canceled = _tuple[2];
162965
+ /* */ if (canceled) { $s = 4; continue; }
162966
+ /* */ $s = 5; continue;
162967
+ /* if (canceled) { */ case 4:
162968
+ _r$3 = errs.Errorf("BrightSign TCP packet read canceled", sliceType.nil); /* */ $s = 6; case 6: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
162969
+ $24r = [0, _r$3];
162970
+ $s = 7; case 7: return $24r;
162971
+ /* } */ case 5:
162972
+ /* */ if (!(err === ptrType.nil)) { $s = 8; continue; }
162973
+ /* */ $s = 9; continue;
162974
+ /* if (!(err === ptrType.nil)) { */ case 8:
162975
+ _r$4 = jshelper.GetError(err); /* */ $s = 10; case 10: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
162976
+ _r$5 = _r$4.Error(); /* */ $s = 11; case 11: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
162977
+ _arg = new $String(_r$5);
162978
+ _r$6 = errs.Errorf("Failed to read BrightSign TCP packet: %s", new sliceType([_arg])); /* */ $s = 12; case 12: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
162979
+ $24r$1 = [0, _r$6];
162980
+ $s = 13; case 13: return $24r$1;
162981
+ /* } */ case 9:
162982
+ js.CopyBytesToGo(data, $clone(uint8Array, js.Value));
162983
+ $s = -1; return [$clone(value, js.Value).Int(), $ifaceNil];
162984
+ /* */ } return; } var $f = {$blk: BrightSignTCPConn.ptr.prototype.Read, $c: true, $r, $24r, $24r$1, _arg, _r, _r$1, _r$2, _r$3, _r$4, _r$5, _r$6, _tuple, c, canceled, data, err, uint8Array, value, x, $s};return $f;
162864
162985
  };
162865
162986
  BrightSignTCPConn.prototype.Read = function(data) { return this.$val.Read(data); };
162866
162987
  BrightSignTCPConn.ptr.prototype.Close = function() {
162867
- var {_r, c, $s, $r, $c} = $restore(this, {});
162988
+ var {c, closeErr, $s, $r, $c} = $restore(this, {});
162868
162989
  /* */ $s = $s || 0; s: while (true) { switch ($s) { case 0:
162869
- c = this;
162870
- _r = $clone(c.conn, js.Value).Call("close", sliceType.nil); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
162871
- _r;
162872
- $s = -1; return $ifaceNil;
162873
- /* */ } return; } var $f = {$blk: BrightSignTCPConn.ptr.prototype.Close, $c: true, $r, _r, c, $s};return $f;
162990
+ c = [c];
162991
+ closeErr = [closeErr];
162992
+ c[0] = this;
162993
+ closeErr[0] = $ifaceNil;
162994
+ $r = c[0].closeOnce.Do((function(c, closeErr) { return function $b() {
162995
+ var {_arg, _r, _r$1, _r$2, _r$3, _r$4, _r$5, _r$6, _tuple, canceled, deadline, err, x, $s, $r, $c} = $restore(this, {});
162996
+ /* */ $s = $s || 0; s: while (true) { switch ($s) { case 0:
162997
+ $close(c[0].cancel);
162998
+ _r = $clone(c[0].controller, js.Value).Call("abort", sliceType.nil); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
162999
+ _r;
163000
+ deadline = cancelAfter(new time.Duration(0, 1000000000));
163001
+ _r$1 = $clone(c[0].conn, js.Value).Call("close", new sliceType([(x = operationContext(new time.Duration(0, 1000000000)), new x.constructor.elem(x))])); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
163002
+ _r$2 = jshelper.AwaitWithCancel($clone(_r$1, js.Value), deadline); /* */ $s = 3; case 3: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
163003
+ _tuple = _r$2;
163004
+ err = _tuple[1];
163005
+ canceled = _tuple[2];
163006
+ /* */ if (canceled) { $s = 4; continue; }
163007
+ /* */ if (!(err === ptrType.nil)) { $s = 5; continue; }
163008
+ /* */ $s = 6; continue;
163009
+ /* if (canceled) { */ case 4:
163010
+ _r$3 = errs.Errorf("BrightSign TCP packet close timed out", sliceType.nil); /* */ $s = 7; case 7: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
163011
+ closeErr[0] = _r$3;
163012
+ $s = 6; continue;
163013
+ /* } else if (!(err === ptrType.nil)) { */ case 5:
163014
+ _r$4 = jshelper.GetError(err); /* */ $s = 8; case 8: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
163015
+ _r$5 = _r$4.Error(); /* */ $s = 9; case 9: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
163016
+ _arg = new $String(_r$5);
163017
+ _r$6 = errs.Errorf("Failed to close BrightSign TCP packet: %s", new sliceType([_arg])); /* */ $s = 10; case 10: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
163018
+ closeErr[0] = _r$6;
163019
+ /* } */ case 6:
163020
+ $s = -1; return;
163021
+ /* */ } return; } var $f = {$blk: $b, $c: true, $r, _arg, _r, _r$1, _r$2, _r$3, _r$4, _r$5, _r$6, _tuple, canceled, deadline, err, x, $s};return $f;
163022
+ }; })(c, closeErr)); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
163023
+ $s = -1; return closeErr[0];
163024
+ /* */ } return; } var $f = {$blk: BrightSignTCPConn.ptr.prototype.Close, $c: true, $r, c, closeErr, $s};return $f;
162874
163025
  };
162875
163026
  BrightSignTCPConn.prototype.Close = function() { return this.$val.Close(); };
162876
163027
  BrightSignTCPConn.ptr.prototype.GetJSConnection = function() {
@@ -162879,9 +163030,51 @@ $packages["github.com/supraio/client-daemon/pkg/netpacket"] = (function() {
162879
163030
  return c.conn;
162880
163031
  };
162881
163032
  BrightSignTCPConn.prototype.GetJSConnection = function() { return this.$val.GetJSConnection(); };
163033
+ BrightSignTCPConn.ptr.prototype.ReadFrame = function() {
163034
+ var {$24r, $24r$1, _arg, _r, _r$1, _r$2, _r$3, _r$4, _r$5, _tuple, c, canceled, err, value, x, $s, $r, $c} = $restore(this, {});
163035
+ /* */ $s = $s || 0; s: while (true) { switch ($s) { case 0:
163036
+ c = this;
163037
+ _r = $clone(c.conn, js.Value).Call("readFrame", new sliceType([(x = $clone(c.controller, js.Value).Get("signal"), new x.constructor.elem(x))])); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
163038
+ _r$1 = jshelper.AwaitWithCancel($clone(_r, js.Value), c.cancel); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
163039
+ _tuple = _r$1;
163040
+ value = _tuple[0];
163041
+ err = _tuple[1];
163042
+ canceled = _tuple[2];
163043
+ /* */ if (canceled) { $s = 3; continue; }
163044
+ /* */ $s = 4; continue;
163045
+ /* if (canceled) { */ case 3:
163046
+ _r$2 = errs.Errorf("BrightSign TCP frame read canceled", sliceType.nil); /* */ $s = 5; case 5: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
163047
+ $24r = [ptrType.nil, _r$2];
163048
+ $s = 6; case 6: return $24r;
163049
+ /* } */ case 4:
163050
+ /* */ if (!(err === ptrType.nil)) { $s = 7; continue; }
163051
+ /* */ $s = 8; continue;
163052
+ /* if (!(err === ptrType.nil)) { */ case 7:
163053
+ _r$3 = jshelper.GetError(err); /* */ $s = 9; case 9: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
163054
+ _r$4 = _r$3.Error(); /* */ $s = 10; case 10: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
163055
+ _arg = new $String(_r$4);
163056
+ _r$5 = errs.Errorf("Failed to collect BrightSign TCP frame: %s", new sliceType([_arg])); /* */ $s = 11; case 11: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
163057
+ $24r$1 = [ptrType.nil, _r$5];
163058
+ $s = 12; case 12: return $24r$1;
163059
+ /* } */ case 8:
163060
+ $s = -1; return [value, $ifaceNil];
163061
+ /* */ } return; } var $f = {$blk: BrightSignTCPConn.ptr.prototype.ReadFrame, $c: true, $r, $24r, $24r$1, _arg, _r, _r$1, _r$2, _r$3, _r$4, _r$5, _tuple, c, canceled, err, value, x, $s};return $f;
163062
+ };
163063
+ BrightSignTCPConn.prototype.ReadFrame = function() { return this.$val.ReadFrame(); };
163064
+ BrightSignTCPConn.ptr.prototype.ReleaseFrame = function(reference) {
163065
+ var {_r, c, reference, $s, $r, $c} = $restore(this, {reference});
163066
+ /* */ $s = $s || 0; s: while (true) { switch ($s) { case 0:
163067
+ c = this;
163068
+ _r = $clone(c.conn, js.Value).Call("releaseFrame", new sliceType([new reference.constructor.elem(reference)])); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
163069
+ _r;
163070
+ $s = -1; return;
163071
+ /* */ } return; } var $f = {$blk: BrightSignTCPConn.ptr.prototype.ReleaseFrame, $c: true, $r, _r, c, reference, $s};return $f;
163072
+ };
163073
+ BrightSignTCPConn.prototype.ReleaseFrame = function(reference) { return this.$val.ReleaseFrame(reference); };
162882
163074
  ConnectBrightSignTCP = function(host, timeout, secure) {
162883
- var {$24r, $24r$1, $24r$2, $24r$3, _arg, _arg$1, _r, _r$1, _r$2, _r$3, _r$4, _r$5, _r$6, _r$7, _r$8, _tuple, _tuple$1, _tuple$2, awaitErr, err, host, hostname, opts, port, portString, secure, timeout, value, $s, $r, $c} = $restore(this, {host, timeout, secure});
163075
+ var {$24r, $24r$1, $24r$2, $24r$3, $24r$4, $24r$5, _arg, _arg$1, _r, _r$1, _r$10, _r$2, _r$3, _r$4, _r$5, _r$6, _r$7, _r$8, _r$9, _tuple, _tuple$1, _tuple$2, awaitErr, canceled, err, host, hostname, opts, port, portString, secure, timeout, value, x, $s, $r, $c} = $restore(this, {host, timeout, secure});
162884
163076
  /* */ $s = $s || 0; s: while (true) { switch ($s) { case 0:
163077
+ timeout = finiteTimeout(timeout);
162885
163078
  /* */ if (!netbrightsigntcp.IsAvailable()) { $s = 1; continue; }
162886
163079
  /* */ $s = 2; continue;
162887
163080
  /* if (!netbrightsigntcp.IsAvailable()) { */ case 1:
@@ -162912,37 +163105,74 @@ $packages["github.com/supraio/client-daemon/pkg/netpacket"] = (function() {
162912
163105
  $s = 13; case 13: return $24r$2;
162913
163106
  /* } */ case 11:
162914
163107
  opts = $clone(js.ValueOf(new mapType($makeMap($String.keyFor, [{ k: "host", v: new $String(hostname) }, { k: "port", v: new $Int(port) }, { k: "secure", v: new $Bool(secure) }]))), js.Value);
162915
- $unused(timeout);
162916
- _r$4 = $clone(netbrightsigntcp.Get(), js.Value).Call("createPacket", new sliceType([new opts.constructor.elem(opts)])); /* */ $s = 14; case 14: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
162917
- _r$5 = jshelper.Await($clone(_r$4, js.Value)); /* */ $s = 15; case 15: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
163108
+ _r$4 = $clone(netbrightsigntcp.Get(), js.Value).Call("createPacket", new sliceType([new opts.constructor.elem(opts), (x = operationContext(timeout), new x.constructor.elem(x))])); /* */ $s = 14; case 14: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
163109
+ _r$5 = jshelper.AwaitWithCancel($clone(_r$4, js.Value), cancelAfter(timeout)); /* */ $s = 15; case 15: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
162918
163110
  _tuple$2 = _r$5;
162919
163111
  value = _tuple$2[0];
162920
163112
  awaitErr = _tuple$2[1];
162921
- /* */ if (!(awaitErr === ptrType.nil)) { $s = 16; continue; }
163113
+ canceled = _tuple$2[2];
163114
+ /* */ if (canceled) { $s = 16; continue; }
162922
163115
  /* */ $s = 17; continue;
162923
- /* if (!(awaitErr === ptrType.nil)) { */ case 16:
162924
- _arg = new $String(host);
162925
- _r$6 = jshelper.GetError(awaitErr); /* */ $s = 18; case 18: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
162926
- _r$7 = _r$6.Error(); /* */ $s = 19; case 19: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
162927
- _arg$1 = new $String(_r$7);
162928
- _r$8 = errs.Errorf("Failed to connect BrightSign TCP %s: %s", new sliceType([_arg, _arg$1])); /* */ $s = 20; case 20: if($c) { $c = false; _r$8 = _r$8.$blk(); } if (_r$8 && _r$8.$blk !== undefined) { break s; }
162929
- $24r$3 = [$ifaceNil, _r$8];
162930
- $s = 21; case 21: return $24r$3;
163116
+ /* if (canceled) { */ case 16:
163117
+ _r$6 = errs.Errorf("Timed out connecting BrightSign TCP %s", new sliceType([new $String(host)])); /* */ $s = 18; case 18: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
163118
+ $24r$3 = [$ifaceNil, _r$6];
163119
+ $s = 19; case 19: return $24r$3;
162931
163120
  /* } */ case 17:
162932
- $s = -1; return [new BrightSignTCPConn.ptr(value), $ifaceNil];
162933
- /* */ } return; } var $f = {$blk: ConnectBrightSignTCP, $c: true, $r, $24r, $24r$1, $24r$2, $24r$3, _arg, _arg$1, _r, _r$1, _r$2, _r$3, _r$4, _r$5, _r$6, _r$7, _r$8, _tuple, _tuple$1, _tuple$2, awaitErr, err, host, hostname, opts, port, portString, secure, timeout, value, $s};return $f;
163121
+ /* */ if (!(awaitErr === ptrType.nil)) { $s = 20; continue; }
163122
+ /* */ $s = 21; continue;
163123
+ /* if (!(awaitErr === ptrType.nil)) { */ case 20:
163124
+ _arg = new $String(host);
163125
+ _r$7 = jshelper.GetError(awaitErr); /* */ $s = 22; case 22: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
163126
+ _r$8 = _r$7.Error(); /* */ $s = 23; case 23: if($c) { $c = false; _r$8 = _r$8.$blk(); } if (_r$8 && _r$8.$blk !== undefined) { break s; }
163127
+ _arg$1 = new $String(_r$8);
163128
+ _r$9 = errs.Errorf("Failed to connect BrightSign TCP %s: %s", new sliceType([_arg, _arg$1])); /* */ $s = 24; case 24: if($c) { $c = false; _r$9 = _r$9.$blk(); } if (_r$9 && _r$9.$blk !== undefined) { break s; }
163129
+ $24r$4 = [$ifaceNil, _r$9];
163130
+ $s = 25; case 25: return $24r$4;
163131
+ /* } */ case 21:
163132
+ _r$10 = $clone($clone(js.Global(), js.Value).Get("AbortController"), js.Value).New(sliceType.nil); /* */ $s = 26; case 26: if($c) { $c = false; _r$10 = _r$10.$blk(); } if (_r$10 && _r$10.$blk !== undefined) { break s; }
163133
+ $24r$5 = [new BrightSignTCPConn.ptr(value, $clone(_r$10, js.Value), new $Chan(structType, 0), new sync.Once.ptr(0, new sync.Mutex.ptr(0, 0))), $ifaceNil];
163134
+ $s = 27; case 27: return $24r$5;
163135
+ /* */ } return; } var $f = {$blk: ConnectBrightSignTCP, $c: true, $r, $24r, $24r$1, $24r$2, $24r$3, $24r$4, $24r$5, _arg, _arg$1, _r, _r$1, _r$10, _r$2, _r$3, _r$4, _r$5, _r$6, _r$7, _r$8, _r$9, _tuple, _tuple$1, _tuple$2, awaitErr, canceled, err, host, hostname, opts, port, portString, secure, timeout, value, x, $s};return $f;
162934
163136
  };
162935
163137
  $pkg.ConnectBrightSignTCP = ConnectBrightSignTCP;
163138
+ operationContext = function(timeout) {
163139
+ var timeout;
163140
+ return js.ValueOf(new mapType($makeMap($String.keyFor, [{ k: "deadlineMs", v: finiteTimeout(timeout).Milliseconds() }])));
163141
+ };
163142
+ finiteTimeout = function(timeout) {
163143
+ var timeout;
163144
+ if ((timeout.$high < 0 || (timeout.$high === 0 && timeout.$low <= 0))) {
163145
+ return new time.Duration(0, 1000000000);
163146
+ }
163147
+ return timeout;
163148
+ };
163149
+ cancelAfter = function(timeout) {
163150
+ var cancel, timeout;
163151
+ cancel = new $Chan(structType, 0);
163152
+ $go((function $b() {
163153
+ var {_r, _r$1, timer, $s, $deferred, $r, $c} = $restore(this, {});
163154
+ /* */ $s = $s || 0; var $err = null; try { s: while (true) { switch ($s) { case 0: $deferred = []; $curGoroutine.deferStack.push($deferred);
163155
+ _r = time.NewTimer(finiteTimeout(timeout)); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
163156
+ timer = _r;
163157
+ $deferred.push([$methodVal(timer, "Stop"), []]);
163158
+ _r$1 = $recv(timer.C); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
163159
+ _r$1[0];
163160
+ $close(cancel);
163161
+ $s = -1; return;
163162
+ /* */ } return; } } catch(err) { $err = err; $s = -1; } finally { $callDeferred($deferred, $err); if($curGoroutine.asleep) { var $f = {$blk: $b, $c: true, $r, _r, _r$1, timer, $s, $deferred};return $f; } }
163163
+ }), []);
163164
+ return cancel;
163165
+ };
162936
163166
  ptrType$1.methods = [{prop: "Write", name: "Write", pkg: "", typ: $funcType([sliceType$2], [$Int, $error], false)}, {prop: "Read", name: "Read", pkg: "", typ: $funcType([sliceType$2], [$Int, $error], false)}, {prop: "Close", name: "Close", pkg: "", typ: $funcType([], [$error], false)}, {prop: "GetJSConnection", name: "GetJSConnection", pkg: "", typ: $funcType([], [ptrType], false)}];
162937
163167
  ptrType$2.methods = [{prop: "Write", name: "Write", pkg: "", typ: $funcType([sliceType$2], [$Int, $error], false)}, {prop: "Read", name: "Read", pkg: "", typ: $funcType([sliceType$2], [$Int, $error], false)}, {prop: "Close", name: "Close", pkg: "", typ: $funcType([], [$error], false)}, {prop: "GetJSConnection", name: "GetJSConnection", pkg: "", typ: $funcType([], [ptrType], false)}];
162938
163168
  ptrType$4.methods = [{prop: "Write", name: "Write", pkg: "", typ: $funcType([sliceType$2], [$Int, $error], false)}, {prop: "Read", name: "Read", pkg: "", typ: $funcType([sliceType$2], [$Int, $error], false)}, {prop: "Close", name: "Close", pkg: "", typ: $funcType([], [$error], false)}];
162939
163169
  ptrType$5.methods = [{prop: "Write", name: "Write", pkg: "", typ: $funcType([sliceType$2], [$Int, $error], false)}, {prop: "Read", name: "Read", pkg: "", typ: $funcType([sliceType$2], [$Int, $error], false)}, {prop: "Close", name: "Close", pkg: "", typ: $funcType([], [$error], false)}, {prop: "CollectFrame", name: "CollectFrame", pkg: "", typ: $funcType([], [ptrType, $Float64, $error], false)}];
162940
- ptrType$6.methods = [{prop: "Write", name: "Write", pkg: "", typ: $funcType([sliceType$2], [$Int, $error], false)}, {prop: "Read", name: "Read", pkg: "", typ: $funcType([sliceType$2], [$Int, $error], false)}, {prop: "Close", name: "Close", pkg: "", typ: $funcType([], [$error], false)}, {prop: "GetJSConnection", name: "GetJSConnection", pkg: "", typ: $funcType([], [ptrType], false)}];
163170
+ ptrType$6.methods = [{prop: "Write", name: "Write", pkg: "", typ: $funcType([sliceType$2], [$Int, $error], false)}, {prop: "Read", name: "Read", pkg: "", typ: $funcType([sliceType$2], [$Int, $error], false)}, {prop: "Close", name: "Close", pkg: "", typ: $funcType([], [$error], false)}, {prop: "GetJSConnection", name: "GetJSConnection", pkg: "", typ: $funcType([], [ptrType], false)}, {prop: "ReadFrame", name: "ReadFrame", pkg: "", typ: $funcType([], [ptrType, $error], false)}, {prop: "ReleaseFrame", name: "ReleaseFrame", pkg: "", typ: $funcType([js.Value], [], false)}];
162941
163171
  SamsungWasmTCPConn.init("github.com/supraio/client-daemon/pkg/netpacket", [{prop: "conn", name: "conn", embedded: false, exported: false, typ: ptrType, tag: ""}]);
162942
163172
  NaClTCPConn.init("github.com/supraio/client-daemon/pkg/netpacket", [{prop: "conn", name: "conn", embedded: false, exported: false, typ: ptrType, tag: ""}]);
162943
163173
  JsWebsocketConn.init("github.com/supraio/client-daemon/pkg/netpacket", [{prop: "conn", name: "conn", embedded: false, exported: false, typ: ptrType$3, tag: ""}]);
162944
163174
  JsWebsocketWorkerConn.init("github.com/supraio/client-daemon/pkg/netpacket", [{prop: "conn", name: "conn", embedded: false, exported: false, typ: js.Value, tag: ""}]);
162945
- BrightSignTCPConn.init("github.com/supraio/client-daemon/pkg/netpacket", [{prop: "conn", name: "conn", embedded: false, exported: false, typ: ptrType, tag: ""}]);
163175
+ BrightSignTCPConn.init("github.com/supraio/client-daemon/pkg/netpacket", [{prop: "conn", name: "conn", embedded: false, exported: false, typ: ptrType, tag: ""}, {prop: "controller", name: "controller", embedded: false, exported: false, typ: js.Value, tag: ""}, {prop: "cancel", name: "cancel", embedded: false, exported: false, typ: chanType, tag: ""}, {prop: "closeOnce", name: "closeOnce", embedded: false, exported: false, typ: sync.Once, tag: ""}]);
162946
163176
  $init = function() {
162947
163177
  $pkg.$init = function() {};
162948
163178
  /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
@@ -162957,8 +163187,9 @@ $packages["github.com/supraio/client-daemon/pkg/netpacket"] = (function() {
162957
163187
  $r = net.$init(); /* */ $s = 9; case 9: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
162958
163188
  $r = strconv.$init(); /* */ $s = 10; case 10: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
162959
163189
  $r = strings.$init(); /* */ $s = 11; case 11: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
162960
- $r = js.$init(); /* */ $s = 12; case 12: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
162961
- $r = time.$init(); /* */ $s = 13; case 13: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
163190
+ $r = sync.$init(); /* */ $s = 12; case 12: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
163191
+ $r = js.$init(); /* */ $s = 13; case 13: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
163192
+ $r = time.$init(); /* */ $s = 14; case 14: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
162962
163193
  connects = $makeMap(Driver.keyFor, []);
162963
163194
  maxPacketSizes = $makeMap(Driver.keyFor, []);
162964
163195
  init();
@@ -183426,282 +183657,6 @@ $packages["github.com/supraio/client-daemon/pkg/decoder/general"] = (function()
183426
183657
  $pkg.$init = $init;
183427
183658
  return $pkg;
183428
183659
  })();
183429
- $packages["github.com/supraio/client-daemon/pkg/render/frame"] = (function() {
183430
- var $pkg = {}, $init, js, time, JSFrame, FrameType, FrameInterface, funcType, arrayType, sliceType, ptrType, NewJSFrame;
183431
- js = $packages["syscall/js"];
183432
- time = $packages["time"];
183433
- JSFrame = $pkg.JSFrame = $newType(0, $kindStruct, "frame.JSFrame", true, "github.com/supraio/client-daemon/pkg/render/frame", true, function(frameType_, buffer_, timestamp_) {
183434
- this.$val = this;
183435
- if (arguments.length === 0) {
183436
- this.frameType = 0;
183437
- this.buffer = new js.Value.ptr(null, false, arrayType.zero());
183438
- this.timestamp = new $Uint64(0, 0);
183439
- return;
183440
- }
183441
- this.frameType = frameType_;
183442
- this.buffer = buffer_;
183443
- this.timestamp = timestamp_;
183444
- });
183445
- FrameType = $pkg.FrameType = $newType(1, $kindUint8, "frame.FrameType", true, "github.com/supraio/client-daemon/pkg/render/frame", true, null);
183446
- FrameInterface = $pkg.FrameInterface = $newType(8, $kindInterface, "frame.FrameInterface", true, "github.com/supraio/client-daemon/pkg/render/frame", true, null);
183447
- funcType = $funcType([], [], false);
183448
- arrayType = $arrayType(funcType, 0);
183449
- sliceType = $sliceType($Uint8);
183450
- ptrType = $ptrType(JSFrame);
183451
- NewJSFrame = function(frameType, buffer, timestamp) {
183452
- var buffer, frameType, timestamp;
183453
- return new JSFrame.ptr(frameType, $clone(buffer, js.Value), timestamp);
183454
- };
183455
- $pkg.NewJSFrame = NewJSFrame;
183456
- JSFrame.ptr.prototype.FrameType = function() {
183457
- var f;
183458
- f = this;
183459
- return f.frameType;
183460
- };
183461
- JSFrame.prototype.FrameType = function() { return this.$val.FrameType(); };
183462
- JSFrame.ptr.prototype.Buffer = function() {
183463
- var f;
183464
- f = this;
183465
- return sliceType.nil;
183466
- };
183467
- JSFrame.prototype.Buffer = function() { return this.$val.Buffer(); };
183468
- JSFrame.ptr.prototype.JSBuffer = function() {
183469
- var f;
183470
- f = this;
183471
- return f.buffer;
183472
- };
183473
- JSFrame.prototype.JSBuffer = function() { return this.$val.JSBuffer(); };
183474
- JSFrame.ptr.prototype.ByteLength = function() {
183475
- var f;
183476
- f = this;
183477
- return $clone($clone(f.buffer, js.Value).Get("byteLength"), js.Value).Int();
183478
- };
183479
- JSFrame.prototype.ByteLength = function() { return this.$val.ByteLength(); };
183480
- JSFrame.ptr.prototype.GetTimestamp = function() {
183481
- var f, x;
183482
- f = this;
183483
- return time.Unix(new $Int64(0, 0), ((x = f.timestamp, new $Int64(x.$high, x.$low))));
183484
- };
183485
- JSFrame.prototype.GetTimestamp = function() { return this.$val.GetTimestamp(); };
183486
- ptrType.methods = [{prop: "FrameType", name: "FrameType", pkg: "", typ: $funcType([], [FrameType], false)}, {prop: "Buffer", name: "Buffer", pkg: "", typ: $funcType([], [sliceType], false)}, {prop: "JSBuffer", name: "JSBuffer", pkg: "", typ: $funcType([], [js.Value], false)}, {prop: "ByteLength", name: "ByteLength", pkg: "", typ: $funcType([], [$Int], false)}, {prop: "GetTimestamp", name: "GetTimestamp", pkg: "", typ: $funcType([], [time.Time], false)}];
183487
- JSFrame.init("github.com/supraio/client-daemon/pkg/render/frame", [{prop: "frameType", name: "frameType", embedded: false, exported: false, typ: FrameType, tag: ""}, {prop: "buffer", name: "buffer", embedded: false, exported: false, typ: js.Value, tag: ""}, {prop: "timestamp", name: "timestamp", embedded: false, exported: false, typ: $Uint64, tag: ""}]);
183488
- FrameInterface.init([{prop: "Buffer", name: "Buffer", pkg: "", typ: $funcType([], [sliceType], false)}, {prop: "FrameType", name: "FrameType", pkg: "", typ: $funcType([], [FrameType], false)}, {prop: "GetTimestamp", name: "GetTimestamp", pkg: "", typ: $funcType([], [time.Time], false)}]);
183489
- $init = function() {
183490
- $pkg.$init = function() {};
183491
- /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
183492
- $r = js.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
183493
- $r = time.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
183494
- /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
183495
- };
183496
- $pkg.$init = $init;
183497
- return $pkg;
183498
- })();
183499
- $packages["github.com/supraio/client-daemon/pkg/render/netframe"] = (function() {
183500
- var $pkg = {}, $init, binary, errs, netpacket, frame, time, FrameCollectionDurationCallback, frameCollectorFactories, RegisterFrameCollector;
183501
- binary = $packages["encoding/binary"];
183502
- errs = $packages["github.com/supraio/client-daemon/pkg/errs"];
183503
- netpacket = $packages["github.com/supraio/client-daemon/pkg/netpacket"];
183504
- frame = $packages["github.com/supraio/client-daemon/pkg/render/frame"];
183505
- time = $packages["time"];
183506
- FrameCollectionDurationCallback = $pkg.FrameCollectionDurationCallback = $newType(4, $kindFunc, "netframe.FrameCollectionDurationCallback", true, "github.com/supraio/client-daemon/pkg/render/netframe", true, null);
183507
- RegisterFrameCollector = function(name, factory) {
183508
- var _key, factory, name;
183509
- _key = name; (frameCollectorFactories || $throwRuntimeError("assignment to entry in nil map")).set($String.keyFor(_key), { k: _key, v: factory });
183510
- };
183511
- $pkg.RegisterFrameCollector = RegisterFrameCollector;
183512
- FrameCollectionDurationCallback.init([time.Duration], [], false);
183513
- $init = function() {
183514
- $pkg.$init = function() {};
183515
- /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
183516
- $r = binary.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
183517
- $r = errs.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
183518
- $r = netpacket.$init(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
183519
- $r = frame.$init(); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
183520
- $r = time.$init(); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
183521
- frameCollectorFactories = new $global.Map();
183522
- /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
183523
- };
183524
- $pkg.$init = $init;
183525
- return $pkg;
183526
- })();
183527
- $packages["github.com/supraio/client-daemon/pkg/render/netframe/brightsigntcp"] = (function() {
183528
- var $pkg = {}, $init, errs, jshelper, netbrightsigntcp, netpacket, frame, netframe, log, sync, js, time, FrameCollector, Frame, ptrType, sliceType, ptrType$1, funcType, arrayType, sliceType$1, ptrType$2, ptrType$3, init, NewFrameCollector;
183529
- errs = $packages["github.com/supraio/client-daemon/pkg/errs"];
183530
- jshelper = $packages["github.com/supraio/client-daemon/pkg/jshelper"];
183531
- netbrightsigntcp = $packages["github.com/supraio/client-daemon/pkg/netbrightsigntcp"];
183532
- netpacket = $packages["github.com/supraio/client-daemon/pkg/netpacket"];
183533
- frame = $packages["github.com/supraio/client-daemon/pkg/render/frame"];
183534
- netframe = $packages["github.com/supraio/client-daemon/pkg/render/netframe"];
183535
- log = $packages["log"];
183536
- sync = $packages["sync"];
183537
- js = $packages["syscall/js"];
183538
- time = $packages["time"];
183539
- FrameCollector = $pkg.FrameCollector = $newType(0, $kindStruct, "brightsigntcp.FrameCollector", true, "github.com/supraio/client-daemon/pkg/render/netframe/brightsigntcp", true, function(conn_) {
183540
- this.$val = this;
183541
- if (arguments.length === 0) {
183542
- this.conn = new netpacket.BrightSignTCPConn.ptr(ptrType$1.nil);
183543
- return;
183544
- }
183545
- this.conn = conn_;
183546
- });
183547
- Frame = $pkg.Frame = $newType(0, $kindStruct, "brightsigntcp.Frame", true, "github.com/supraio/client-daemon/pkg/render/netframe/brightsigntcp", true, function(frameType_, timestamp_, reference_, releaseOnce_) {
183548
- this.$val = this;
183549
- if (arguments.length === 0) {
183550
- this.frameType = 0;
183551
- this.timestamp = new $Uint64(0, 0);
183552
- this.reference = new js.Value.ptr(null, false, arrayType.zero());
183553
- this.releaseOnce = new sync.Once.ptr(0, new sync.Mutex.ptr(0, 0));
183554
- return;
183555
- }
183556
- this.frameType = frameType_;
183557
- this.timestamp = timestamp_;
183558
- this.reference = reference_;
183559
- this.releaseOnce = releaseOnce_;
183560
- });
183561
- ptrType = $ptrType(netpacket.BrightSignTCPConn);
183562
- sliceType = $sliceType($emptyInterface);
183563
- ptrType$1 = $ptrType(js.Value);
183564
- funcType = $funcType([], [], false);
183565
- arrayType = $arrayType(funcType, 0);
183566
- sliceType$1 = $sliceType($Uint8);
183567
- ptrType$2 = $ptrType(FrameCollector);
183568
- ptrType$3 = $ptrType(Frame);
183569
- init = function() {
183570
- if (netbrightsigntcp.IsAvailable()) {
183571
- netframe.RegisterFrameCollector("brightsign_tcp", NewFrameCollector);
183572
- }
183573
- };
183574
- NewFrameCollector = function(screenConn, maxPacketSize) {
183575
- var {_tuple, conn, maxPacketSize, ok, screenConn, $s, $r, $c} = $restore(this, {screenConn, maxPacketSize});
183576
- /* */ $s = $s || 0; s: while (true) { switch ($s) { case 0:
183577
- _tuple = $assertType(screenConn, ptrType, true);
183578
- conn = _tuple[0];
183579
- ok = _tuple[1];
183580
- /* */ if (!ok) { $s = 1; continue; }
183581
- /* */ $s = 2; continue;
183582
- /* if (!ok) { */ case 1:
183583
- $r = log.Printf("BrightSign FrameCollector: incompatible connection type %T", new sliceType([screenConn])); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
183584
- $s = -1; return $ifaceNil;
183585
- /* } */ case 2:
183586
- $unused(maxPacketSize);
183587
- $s = -1; return new FrameCollector.ptr($clone(conn, netpacket.BrightSignTCPConn));
183588
- /* */ } return; } var $f = {$blk: NewFrameCollector, $c: true, $r, _tuple, conn, maxPacketSize, ok, screenConn, $s};return $f;
183589
- };
183590
- $pkg.NewFrameCollector = NewFrameCollector;
183591
- FrameCollector.ptr.prototype.CollectFrame = function(startCb, endCb, param) {
183592
- var {$24r, _arg, _r, _r$1, _r$2, _r$3, _r$4, _tuple, c, collected, endCb, err, param, startCb, timestampHi, timestampLo, x, $s, $r, $c} = $restore(this, {startCb, endCb, param});
183593
- /* */ $s = $s || 0; s: while (true) { switch ($s) { case 0:
183594
- c = this;
183595
- $r = startCb(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
183596
- _r = $clone(c.conn.GetJSConnection(), js.Value).Call("readFrame", sliceType.nil); /* */ $s = 2; case 2: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
183597
- _r$1 = jshelper.Await($clone(_r, js.Value)); /* */ $s = 3; case 3: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
183598
- _tuple = _r$1;
183599
- collected = _tuple[0];
183600
- err = _tuple[1];
183601
- $r = endCb(); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
183602
- /* */ if (!(err === ptrType$1.nil)) { $s = 5; continue; }
183603
- /* */ $s = 6; continue;
183604
- /* if (!(err === ptrType$1.nil)) { */ case 5:
183605
- _r$2 = jshelper.GetError(err); /* */ $s = 7; case 7: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
183606
- _r$3 = _r$2.Error(); /* */ $s = 8; case 8: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
183607
- _arg = new $String(_r$3);
183608
- _r$4 = errs.Errorf("Failed to collect BrightSign TCP frame: %s", new sliceType([_arg])); /* */ $s = 9; case 9: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
183609
- $24r = [$ifaceNil, _r$4];
183610
- $s = 10; case 10: return $24r;
183611
- /* } */ case 6:
183612
- timestampLo = (new $Uint64(0, (($clone($clone($clone(collected, js.Value).Get("timestamp"), js.Value).Get("lo"), js.Value).Int() >>> 0))));
183613
- timestampHi = (new $Uint64(0, (($clone($clone($clone(collected, js.Value).Get("timestamp"), js.Value).Get("hi"), js.Value).Int() >>> 0))));
183614
- $s = -1; return [new Frame.ptr((($clone($clone(collected, js.Value).Get("frameType"), js.Value).Int() << 24 >>> 24)), (x = $shiftLeft64(timestampHi, 32), new $Uint64(timestampLo.$high | x.$high, (timestampLo.$low | x.$low) >>> 0)), $clone($clone(collected, js.Value).Get("reference"), js.Value), new sync.Once.ptr(0, new sync.Mutex.ptr(0, 0))), $ifaceNil];
183615
- /* */ } return; } var $f = {$blk: FrameCollector.ptr.prototype.CollectFrame, $c: true, $r, $24r, _arg, _r, _r$1, _r$2, _r$3, _r$4, _tuple, c, collected, endCb, err, param, startCb, timestampHi, timestampLo, x, $s};return $f;
183616
- };
183617
- FrameCollector.prototype.CollectFrame = function(startCb, endCb, param) { return this.$val.CollectFrame(startCb, endCb, param); };
183618
- Frame.ptr.prototype.FrameType = function() {
183619
- var f;
183620
- f = this;
183621
- return f.frameType;
183622
- };
183623
- Frame.prototype.FrameType = function() { return this.$val.FrameType(); };
183624
- Frame.ptr.prototype.Buffer = function() {
183625
- var f;
183626
- f = this;
183627
- return sliceType$1.nil;
183628
- };
183629
- Frame.prototype.Buffer = function() { return this.$val.Buffer(); };
183630
- Frame.ptr.prototype.GetTimestamp = function() {
183631
- var f, x;
183632
- f = this;
183633
- return time.Unix(new $Int64(0, 0), ((x = f.timestamp, new $Int64(x.$high, x.$low))));
183634
- };
183635
- Frame.prototype.GetTimestamp = function() { return this.$val.GetTimestamp(); };
183636
- Frame.ptr.prototype.Reference = function() {
183637
- var f;
183638
- f = this;
183639
- return f.reference;
183640
- };
183641
- Frame.prototype.Reference = function() { return this.$val.Reference(); };
183642
- Frame.ptr.prototype.Release = function() {
183643
- var {f, $s, $r, $c} = $restore(this, {});
183644
- /* */ $s = $s || 0; s: while (true) { switch ($s) { case 0:
183645
- f = [f];
183646
- f[0] = this;
183647
- $r = f[0].releaseOnce.Do((function(f) { return function() {
183648
- var release, x;
183649
- release = $clone($clone(js.Global(), js.Value).Get("brightSignReleaseFrameReference"), js.Value);
183650
- if ($clone(release, js.Value).Type() === 7) {
183651
- $clone(release, js.Value).Invoke(new sliceType([(x = f[0].reference, new x.constructor.elem(x))]));
183652
- }
183653
- }; })(f)); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
183654
- $s = -1; return;
183655
- /* */ } return; } var $f = {$blk: Frame.ptr.prototype.Release, $c: true, $r, f, $s};return $f;
183656
- };
183657
- Frame.prototype.Release = function() { return this.$val.Release(); };
183658
- ptrType$2.methods = [{prop: "CollectFrame", name: "CollectFrame", pkg: "", typ: $funcType([funcType, funcType, netframe.FrameCollectionDurationCallback], [frame.FrameInterface, $error], false)}];
183659
- ptrType$3.methods = [{prop: "FrameType", name: "FrameType", pkg: "", typ: $funcType([], [frame.FrameType], false)}, {prop: "Buffer", name: "Buffer", pkg: "", typ: $funcType([], [sliceType$1], false)}, {prop: "GetTimestamp", name: "GetTimestamp", pkg: "", typ: $funcType([], [time.Time], false)}, {prop: "Reference", name: "Reference", pkg: "", typ: $funcType([], [js.Value], false)}, {prop: "Release", name: "Release", pkg: "", typ: $funcType([], [], false)}];
183660
- FrameCollector.init("github.com/supraio/client-daemon/pkg/render/netframe/brightsigntcp", [{prop: "conn", name: "conn", embedded: false, exported: false, typ: netpacket.BrightSignTCPConn, tag: ""}]);
183661
- Frame.init("github.com/supraio/client-daemon/pkg/render/netframe/brightsigntcp", [{prop: "frameType", name: "frameType", embedded: false, exported: false, typ: frame.FrameType, tag: ""}, {prop: "timestamp", name: "timestamp", embedded: false, exported: false, typ: $Uint64, tag: ""}, {prop: "reference", name: "reference", embedded: false, exported: false, typ: js.Value, tag: ""}, {prop: "releaseOnce", name: "releaseOnce", embedded: false, exported: false, typ: sync.Once, tag: ""}]);
183662
- $init = function() {
183663
- $pkg.$init = function() {};
183664
- /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
183665
- $r = errs.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
183666
- $r = jshelper.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
183667
- $r = netbrightsigntcp.$init(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
183668
- $r = netpacket.$init(); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
183669
- $r = frame.$init(); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
183670
- $r = netframe.$init(); /* */ $s = 6; case 6: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
183671
- $r = log.$init(); /* */ $s = 7; case 7: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
183672
- $r = sync.$init(); /* */ $s = 8; case 8: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
183673
- $r = js.$init(); /* */ $s = 9; case 9: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
183674
- $r = time.$init(); /* */ $s = 10; case 10: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
183675
- init();
183676
- /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
183677
- };
183678
- $pkg.$init = $init;
183679
- return $pkg;
183680
- })();
183681
- $packages["github.com/supraio/client-daemon/pkg/decoder/brightsigndecoder"] = (function() {
183682
- var $pkg = {}, $init, general, errs, jshelper, frame, brightsigntcp, sync, js;
183683
- general = $packages["github.com/supraio/client-daemon/pkg/decoder/general"];
183684
- errs = $packages["github.com/supraio/client-daemon/pkg/errs"];
183685
- jshelper = $packages["github.com/supraio/client-daemon/pkg/jshelper"];
183686
- frame = $packages["github.com/supraio/client-daemon/pkg/render/frame"];
183687
- brightsigntcp = $packages["github.com/supraio/client-daemon/pkg/render/netframe/brightsigntcp"];
183688
- sync = $packages["sync"];
183689
- js = $packages["syscall/js"];
183690
- $init = function() {
183691
- $pkg.$init = function() {};
183692
- /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
183693
- $r = general.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
183694
- $r = errs.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
183695
- $r = jshelper.$init(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
183696
- $r = frame.$init(); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
183697
- $r = brightsigntcp.$init(); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
183698
- $r = sync.$init(); /* */ $s = 6; case 6: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
183699
- $r = js.$init(); /* */ $s = 7; case 7: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
183700
- /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
183701
- };
183702
- $pkg.$init = $init;
183703
- return $pkg;
183704
- })();
183705
183660
  $packages["github.com/supraio/client-daemon/pkg/decoder/nacldecoder/jsdecoder"] = (function() {
183706
183661
  var $pkg = {}, $init, js, ptrType, initiateReset, jsNaClDecoder, ShouldResetOnNextDecode, IsAvailable, GetJsNaClDecoder;
183707
183662
  js = $packages["syscall/js"];
@@ -187172,6 +187127,104 @@ $packages["github.com/supraio/client-daemon/pkg/decoder/nacldecoder/nacldriver"]
187172
187127
  $pkg.$init = $init;
187173
187128
  return $pkg;
187174
187129
  })();
187130
+ $packages["github.com/supraio/client-daemon/pkg/render/frame"] = (function() {
187131
+ var $pkg = {}, $init, js, time, JSFrame, FrameType, FrameInterface, funcType, arrayType, sliceType, ptrType, NewJSFrame;
187132
+ js = $packages["syscall/js"];
187133
+ time = $packages["time"];
187134
+ JSFrame = $pkg.JSFrame = $newType(0, $kindStruct, "frame.JSFrame", true, "github.com/supraio/client-daemon/pkg/render/frame", true, function(frameType_, buffer_, timestamp_) {
187135
+ this.$val = this;
187136
+ if (arguments.length === 0) {
187137
+ this.frameType = 0;
187138
+ this.buffer = new js.Value.ptr(null, false, arrayType.zero());
187139
+ this.timestamp = new $Uint64(0, 0);
187140
+ return;
187141
+ }
187142
+ this.frameType = frameType_;
187143
+ this.buffer = buffer_;
187144
+ this.timestamp = timestamp_;
187145
+ });
187146
+ FrameType = $pkg.FrameType = $newType(1, $kindUint8, "frame.FrameType", true, "github.com/supraio/client-daemon/pkg/render/frame", true, null);
187147
+ FrameInterface = $pkg.FrameInterface = $newType(8, $kindInterface, "frame.FrameInterface", true, "github.com/supraio/client-daemon/pkg/render/frame", true, null);
187148
+ funcType = $funcType([], [], false);
187149
+ arrayType = $arrayType(funcType, 0);
187150
+ sliceType = $sliceType($Uint8);
187151
+ ptrType = $ptrType(JSFrame);
187152
+ NewJSFrame = function(frameType, buffer, timestamp) {
187153
+ var buffer, frameType, timestamp;
187154
+ return new JSFrame.ptr(frameType, $clone(buffer, js.Value), timestamp);
187155
+ };
187156
+ $pkg.NewJSFrame = NewJSFrame;
187157
+ JSFrame.ptr.prototype.FrameType = function() {
187158
+ var f;
187159
+ f = this;
187160
+ return f.frameType;
187161
+ };
187162
+ JSFrame.prototype.FrameType = function() { return this.$val.FrameType(); };
187163
+ JSFrame.ptr.prototype.Buffer = function() {
187164
+ var f;
187165
+ f = this;
187166
+ return sliceType.nil;
187167
+ };
187168
+ JSFrame.prototype.Buffer = function() { return this.$val.Buffer(); };
187169
+ JSFrame.ptr.prototype.JSBuffer = function() {
187170
+ var f;
187171
+ f = this;
187172
+ return f.buffer;
187173
+ };
187174
+ JSFrame.prototype.JSBuffer = function() { return this.$val.JSBuffer(); };
187175
+ JSFrame.ptr.prototype.ByteLength = function() {
187176
+ var f;
187177
+ f = this;
187178
+ return $clone($clone(f.buffer, js.Value).Get("byteLength"), js.Value).Int();
187179
+ };
187180
+ JSFrame.prototype.ByteLength = function() { return this.$val.ByteLength(); };
187181
+ JSFrame.ptr.prototype.GetTimestamp = function() {
187182
+ var f, x;
187183
+ f = this;
187184
+ return time.Unix(new $Int64(0, 0), ((x = f.timestamp, new $Int64(x.$high, x.$low))));
187185
+ };
187186
+ JSFrame.prototype.GetTimestamp = function() { return this.$val.GetTimestamp(); };
187187
+ ptrType.methods = [{prop: "FrameType", name: "FrameType", pkg: "", typ: $funcType([], [FrameType], false)}, {prop: "Buffer", name: "Buffer", pkg: "", typ: $funcType([], [sliceType], false)}, {prop: "JSBuffer", name: "JSBuffer", pkg: "", typ: $funcType([], [js.Value], false)}, {prop: "ByteLength", name: "ByteLength", pkg: "", typ: $funcType([], [$Int], false)}, {prop: "GetTimestamp", name: "GetTimestamp", pkg: "", typ: $funcType([], [time.Time], false)}];
187188
+ JSFrame.init("github.com/supraio/client-daemon/pkg/render/frame", [{prop: "frameType", name: "frameType", embedded: false, exported: false, typ: FrameType, tag: ""}, {prop: "buffer", name: "buffer", embedded: false, exported: false, typ: js.Value, tag: ""}, {prop: "timestamp", name: "timestamp", embedded: false, exported: false, typ: $Uint64, tag: ""}]);
187189
+ FrameInterface.init([{prop: "Buffer", name: "Buffer", pkg: "", typ: $funcType([], [sliceType], false)}, {prop: "FrameType", name: "FrameType", pkg: "", typ: $funcType([], [FrameType], false)}, {prop: "GetTimestamp", name: "GetTimestamp", pkg: "", typ: $funcType([], [time.Time], false)}]);
187190
+ $init = function() {
187191
+ $pkg.$init = function() {};
187192
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
187193
+ $r = js.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
187194
+ $r = time.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
187195
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
187196
+ };
187197
+ $pkg.$init = $init;
187198
+ return $pkg;
187199
+ })();
187200
+ $packages["github.com/supraio/client-daemon/pkg/render/netframe"] = (function() {
187201
+ var $pkg = {}, $init, binary, errs, netpacket, frame, time, FrameCollectionDurationCallback, frameCollectorFactories, RegisterFrameCollector;
187202
+ binary = $packages["encoding/binary"];
187203
+ errs = $packages["github.com/supraio/client-daemon/pkg/errs"];
187204
+ netpacket = $packages["github.com/supraio/client-daemon/pkg/netpacket"];
187205
+ frame = $packages["github.com/supraio/client-daemon/pkg/render/frame"];
187206
+ time = $packages["time"];
187207
+ FrameCollectionDurationCallback = $pkg.FrameCollectionDurationCallback = $newType(4, $kindFunc, "netframe.FrameCollectionDurationCallback", true, "github.com/supraio/client-daemon/pkg/render/netframe", true, null);
187208
+ RegisterFrameCollector = function(name, factory) {
187209
+ var _key, factory, name;
187210
+ _key = name; (frameCollectorFactories || $throwRuntimeError("assignment to entry in nil map")).set($String.keyFor(_key), { k: _key, v: factory });
187211
+ };
187212
+ $pkg.RegisterFrameCollector = RegisterFrameCollector;
187213
+ FrameCollectionDurationCallback.init([time.Duration], [], false);
187214
+ $init = function() {
187215
+ $pkg.$init = function() {};
187216
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
187217
+ $r = binary.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
187218
+ $r = errs.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
187219
+ $r = netpacket.$init(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
187220
+ $r = frame.$init(); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
187221
+ $r = time.$init(); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
187222
+ frameCollectorFactories = new $global.Map();
187223
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
187224
+ };
187225
+ $pkg.$init = $init;
187226
+ return $pkg;
187227
+ })();
187175
187228
  $packages["github.com/supraio/client-daemon/pkg/render/netframe/nacltcp"] = (function() {
187176
187229
  var $pkg = {}, $init, jsdecoder, errs, jshelper, netpacket, frame, netframe, log, js, time, NTFrameCollector, NTFrame, ptrType, ptrType$1, sliceType, sliceType$1, funcType, ptrType$2, ptrType$3, init, NewNaClTCPFrameCollector;
187177
187230
  jsdecoder = $packages["github.com/supraio/client-daemon/pkg/decoder/nacldecoder/jsdecoder"];
@@ -192632,6 +192685,179 @@ $packages["github.com/supraio/client-daemon/pkg/render/netframe/jswebsocketworke
192632
192685
  $pkg.$init = $init;
192633
192686
  return $pkg;
192634
192687
  })();
192688
+ $packages["github.com/supraio/client-daemon/pkg/render/netframe/brightsigntcp"] = (function() {
192689
+ var $pkg = {}, $init, netbrightsigntcp, netpacket, frame, netframe, log, sync, js, time, FrameCollector, Frame, ptrType, sliceType, ptrType$1, funcType, arrayType, sliceType$1, ptrType$2, ptrType$3, funcType$1, init, NewFrameCollector;
192690
+ netbrightsigntcp = $packages["github.com/supraio/client-daemon/pkg/netbrightsigntcp"];
192691
+ netpacket = $packages["github.com/supraio/client-daemon/pkg/netpacket"];
192692
+ frame = $packages["github.com/supraio/client-daemon/pkg/render/frame"];
192693
+ netframe = $packages["github.com/supraio/client-daemon/pkg/render/netframe"];
192694
+ log = $packages["log"];
192695
+ sync = $packages["sync"];
192696
+ js = $packages["syscall/js"];
192697
+ time = $packages["time"];
192698
+ FrameCollector = $pkg.FrameCollector = $newType(0, $kindStruct, "brightsigntcp.FrameCollector", true, "github.com/supraio/client-daemon/pkg/render/netframe/brightsigntcp", true, function(conn_) {
192699
+ this.$val = this;
192700
+ if (arguments.length === 0) {
192701
+ this.conn = new netpacket.BrightSignTCPConn.ptr(ptrType$1.nil, new js.Value.ptr(null, false, arrayType.zero()), $chanNil, new sync.Once.ptr(0, new sync.Mutex.ptr(0, 0)));
192702
+ return;
192703
+ }
192704
+ this.conn = conn_;
192705
+ });
192706
+ Frame = $pkg.Frame = $newType(0, $kindStruct, "brightsigntcp.Frame", true, "github.com/supraio/client-daemon/pkg/render/netframe/brightsigntcp", true, function(frameType_, timestamp_, reference_, release_, releaseOnce_) {
192707
+ this.$val = this;
192708
+ if (arguments.length === 0) {
192709
+ this.frameType = 0;
192710
+ this.timestamp = new $Uint64(0, 0);
192711
+ this.reference = new js.Value.ptr(null, false, arrayType.zero());
192712
+ this.release = $throwNilPointerError;
192713
+ this.releaseOnce = new sync.Once.ptr(0, new sync.Mutex.ptr(0, 0));
192714
+ return;
192715
+ }
192716
+ this.frameType = frameType_;
192717
+ this.timestamp = timestamp_;
192718
+ this.reference = reference_;
192719
+ this.release = release_;
192720
+ this.releaseOnce = releaseOnce_;
192721
+ });
192722
+ ptrType = $ptrType(netpacket.BrightSignTCPConn);
192723
+ sliceType = $sliceType($emptyInterface);
192724
+ ptrType$1 = $ptrType(js.Value);
192725
+ funcType = $funcType([], [], false);
192726
+ arrayType = $arrayType(funcType, 0);
192727
+ sliceType$1 = $sliceType($Uint8);
192728
+ ptrType$2 = $ptrType(FrameCollector);
192729
+ ptrType$3 = $ptrType(Frame);
192730
+ funcType$1 = $funcType([js.Value], [], false);
192731
+ init = function() {
192732
+ if (netbrightsigntcp.IsAvailable()) {
192733
+ netframe.RegisterFrameCollector("brightsign_tcp", NewFrameCollector);
192734
+ }
192735
+ };
192736
+ NewFrameCollector = function(screenConn, maxPacketSize) {
192737
+ var {_tuple, conn, maxPacketSize, ok, screenConn, $s, $r, $c} = $restore(this, {screenConn, maxPacketSize});
192738
+ /* */ $s = $s || 0; s: while (true) { switch ($s) { case 0:
192739
+ _tuple = $assertType(screenConn, ptrType, true);
192740
+ conn = _tuple[0];
192741
+ ok = _tuple[1];
192742
+ /* */ if (!ok) { $s = 1; continue; }
192743
+ /* */ $s = 2; continue;
192744
+ /* if (!ok) { */ case 1:
192745
+ $r = log.Printf("BrightSign FrameCollector: incompatible connection type %T", new sliceType([screenConn])); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
192746
+ $s = -1; return $ifaceNil;
192747
+ /* } */ case 2:
192748
+ $unused(maxPacketSize);
192749
+ $s = -1; return new FrameCollector.ptr($clone(conn, netpacket.BrightSignTCPConn));
192750
+ /* */ } return; } var $f = {$blk: NewFrameCollector, $c: true, $r, _tuple, conn, maxPacketSize, ok, screenConn, $s};return $f;
192751
+ };
192752
+ $pkg.NewFrameCollector = NewFrameCollector;
192753
+ FrameCollector.ptr.prototype.CollectFrame = function(startCb, endCb, param) {
192754
+ var {_r, _tuple, c, collected, endCb, err, param, startCb, timestampHi, timestampLo, x, $s, $r, $c} = $restore(this, {startCb, endCb, param});
192755
+ /* */ $s = $s || 0; s: while (true) { switch ($s) { case 0:
192756
+ c = this;
192757
+ $r = startCb(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
192758
+ _r = c.conn.ReadFrame(); /* */ $s = 2; case 2: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
192759
+ _tuple = _r;
192760
+ collected = _tuple[0];
192761
+ err = _tuple[1];
192762
+ $r = endCb(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
192763
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
192764
+ $s = -1; return [$ifaceNil, err];
192765
+ }
192766
+ timestampLo = (new $Uint64(0, (($clone($clone($clone(collected, js.Value).Get("timestamp"), js.Value).Get("lo"), js.Value).Int() >>> 0))));
192767
+ timestampHi = (new $Uint64(0, (($clone($clone($clone(collected, js.Value).Get("timestamp"), js.Value).Get("hi"), js.Value).Int() >>> 0))));
192768
+ $s = -1; return [new Frame.ptr((($clone($clone(collected, js.Value).Get("frameType"), js.Value).Int() << 24 >>> 24)), (x = $shiftLeft64(timestampHi, 32), new $Uint64(timestampLo.$high | x.$high, (timestampLo.$low | x.$low) >>> 0)), $clone($clone(collected, js.Value).Get("reference"), js.Value), $methodVal(c.conn, "ReleaseFrame"), new sync.Once.ptr(0, new sync.Mutex.ptr(0, 0))), $ifaceNil];
192769
+ /* */ } return; } var $f = {$blk: FrameCollector.ptr.prototype.CollectFrame, $c: true, $r, _r, _tuple, c, collected, endCb, err, param, startCb, timestampHi, timestampLo, x, $s};return $f;
192770
+ };
192771
+ FrameCollector.prototype.CollectFrame = function(startCb, endCb, param) { return this.$val.CollectFrame(startCb, endCb, param); };
192772
+ Frame.ptr.prototype.FrameType = function() {
192773
+ var f;
192774
+ f = this;
192775
+ return f.frameType;
192776
+ };
192777
+ Frame.prototype.FrameType = function() { return this.$val.FrameType(); };
192778
+ Frame.ptr.prototype.Buffer = function() {
192779
+ var f;
192780
+ f = this;
192781
+ return sliceType$1.nil;
192782
+ };
192783
+ Frame.prototype.Buffer = function() { return this.$val.Buffer(); };
192784
+ Frame.ptr.prototype.GetTimestamp = function() {
192785
+ var f, x;
192786
+ f = this;
192787
+ return time.Unix(new $Int64(0, 0), ((x = f.timestamp, new $Int64(x.$high, x.$low))));
192788
+ };
192789
+ Frame.prototype.GetTimestamp = function() { return this.$val.GetTimestamp(); };
192790
+ Frame.ptr.prototype.Reference = function() {
192791
+ var f;
192792
+ f = this;
192793
+ return f.reference;
192794
+ };
192795
+ Frame.prototype.Reference = function() { return this.$val.Reference(); };
192796
+ Frame.ptr.prototype.Release = function() {
192797
+ var {f, $s, $r, $c} = $restore(this, {});
192798
+ /* */ $s = $s || 0; s: while (true) { switch ($s) { case 0:
192799
+ f = [f];
192800
+ f[0] = this;
192801
+ $r = f[0].releaseOnce.Do((function(f) { return function $b() {
192802
+ var {$s, $r, $c} = $restore(this, {});
192803
+ /* */ $s = $s || 0; s: while (true) { switch ($s) { case 0:
192804
+ /* */ if (!(f[0].release === $throwNilPointerError)) { $s = 1; continue; }
192805
+ /* */ $s = 2; continue;
192806
+ /* if (!(f[0].release === $throwNilPointerError)) { */ case 1:
192807
+ $r = f[0].release($clone(f[0].reference, js.Value)); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
192808
+ /* } */ case 2:
192809
+ $s = -1; return;
192810
+ /* */ } return; } var $f = {$blk: $b, $c: true, $r, $s};return $f;
192811
+ }; })(f)); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
192812
+ $s = -1; return;
192813
+ /* */ } return; } var $f = {$blk: Frame.ptr.prototype.Release, $c: true, $r, f, $s};return $f;
192814
+ };
192815
+ Frame.prototype.Release = function() { return this.$val.Release(); };
192816
+ ptrType$2.methods = [{prop: "CollectFrame", name: "CollectFrame", pkg: "", typ: $funcType([funcType, funcType, netframe.FrameCollectionDurationCallback], [frame.FrameInterface, $error], false)}];
192817
+ ptrType$3.methods = [{prop: "FrameType", name: "FrameType", pkg: "", typ: $funcType([], [frame.FrameType], false)}, {prop: "Buffer", name: "Buffer", pkg: "", typ: $funcType([], [sliceType$1], false)}, {prop: "GetTimestamp", name: "GetTimestamp", pkg: "", typ: $funcType([], [time.Time], false)}, {prop: "Reference", name: "Reference", pkg: "", typ: $funcType([], [js.Value], false)}, {prop: "Release", name: "Release", pkg: "", typ: $funcType([], [], false)}];
192818
+ FrameCollector.init("github.com/supraio/client-daemon/pkg/render/netframe/brightsigntcp", [{prop: "conn", name: "conn", embedded: false, exported: false, typ: netpacket.BrightSignTCPConn, tag: ""}]);
192819
+ Frame.init("github.com/supraio/client-daemon/pkg/render/netframe/brightsigntcp", [{prop: "frameType", name: "frameType", embedded: false, exported: false, typ: frame.FrameType, tag: ""}, {prop: "timestamp", name: "timestamp", embedded: false, exported: false, typ: $Uint64, tag: ""}, {prop: "reference", name: "reference", embedded: false, exported: false, typ: js.Value, tag: ""}, {prop: "release", name: "release", embedded: false, exported: false, typ: funcType$1, tag: ""}, {prop: "releaseOnce", name: "releaseOnce", embedded: false, exported: false, typ: sync.Once, tag: ""}]);
192820
+ $init = function() {
192821
+ $pkg.$init = function() {};
192822
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
192823
+ $r = netbrightsigntcp.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
192824
+ $r = netpacket.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
192825
+ $r = frame.$init(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
192826
+ $r = netframe.$init(); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
192827
+ $r = log.$init(); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
192828
+ $r = sync.$init(); /* */ $s = 6; case 6: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
192829
+ $r = js.$init(); /* */ $s = 7; case 7: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
192830
+ $r = time.$init(); /* */ $s = 8; case 8: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
192831
+ init();
192832
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
192833
+ };
192834
+ $pkg.$init = $init;
192835
+ return $pkg;
192836
+ })();
192837
+ $packages["github.com/supraio/client-daemon/pkg/decoder/brightsigndecoder"] = (function() {
192838
+ var $pkg = {}, $init, general, errs, jshelper, frame, brightsigntcp, sync, js;
192839
+ general = $packages["github.com/supraio/client-daemon/pkg/decoder/general"];
192840
+ errs = $packages["github.com/supraio/client-daemon/pkg/errs"];
192841
+ jshelper = $packages["github.com/supraio/client-daemon/pkg/jshelper"];
192842
+ frame = $packages["github.com/supraio/client-daemon/pkg/render/frame"];
192843
+ brightsigntcp = $packages["github.com/supraio/client-daemon/pkg/render/netframe/brightsigntcp"];
192844
+ sync = $packages["sync"];
192845
+ js = $packages["syscall/js"];
192846
+ $init = function() {
192847
+ $pkg.$init = function() {};
192848
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
192849
+ $r = general.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
192850
+ $r = errs.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
192851
+ $r = jshelper.$init(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
192852
+ $r = frame.$init(); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
192853
+ $r = brightsigntcp.$init(); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
192854
+ $r = sync.$init(); /* */ $s = 6; case 6: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
192855
+ $r = js.$init(); /* */ $s = 7; case 7: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
192856
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
192857
+ };
192858
+ $pkg.$init = $init;
192859
+ return $pkg;
192860
+ })();
192635
192861
  $packages["golang.org/x/exp/shiny/imageutil"] = (function() {
192636
192862
  var $pkg = {}, $init, screen, image, draw, ConvertYCbCrToRGBA;
192637
192863
  screen = $packages["golang.org/x/exp/shiny/screen"];
@@ -193922,7 +194148,7 @@ $packages["github.com/supraio/client-daemon/pkg/decoder/sosstream"] = (function(
193922
194148
  return $pkg;
193923
194149
  })();
193924
194150
  $packages["github.com/supraio/client-daemon/pkg/decoder"] = (function() {
193925
- var $pkg = {}, $init, brightsigndecoder, general, h264decoder, nacldecoder, samsungwasmdecoder, sosstream, webcodecs, errs, frame, videostream, log;
194151
+ var $pkg = {}, $init, brightsigndecoder, general, h264decoder, nacldecoder, samsungwasmdecoder, sosstream, webcodecs, errs, netpacket, frame, videostream, log;
193926
194152
  brightsigndecoder = $packages["github.com/supraio/client-daemon/pkg/decoder/brightsigndecoder"];
193927
194153
  general = $packages["github.com/supraio/client-daemon/pkg/decoder/general"];
193928
194154
  h264decoder = $packages["github.com/supraio/client-daemon/pkg/decoder/h264decoder"];
@@ -193931,6 +194157,7 @@ $packages["github.com/supraio/client-daemon/pkg/decoder"] = (function() {
193931
194157
  sosstream = $packages["github.com/supraio/client-daemon/pkg/decoder/sosstream"];
193932
194158
  webcodecs = $packages["github.com/supraio/client-daemon/pkg/decoder/webcodecs"];
193933
194159
  errs = $packages["github.com/supraio/client-daemon/pkg/errs"];
194160
+ netpacket = $packages["github.com/supraio/client-daemon/pkg/netpacket"];
193934
194161
  frame = $packages["github.com/supraio/client-daemon/pkg/render/frame"];
193935
194162
  videostream = $packages["github.com/supraio/client-daemon/pkg/videostream"];
193936
194163
  log = $packages["log"];
@@ -193945,9 +194172,10 @@ $packages["github.com/supraio/client-daemon/pkg/decoder"] = (function() {
193945
194172
  $r = sosstream.$init(); /* */ $s = 6; case 6: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
193946
194173
  $r = webcodecs.$init(); /* */ $s = 7; case 7: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
193947
194174
  $r = errs.$init(); /* */ $s = 8; case 8: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
193948
- $r = frame.$init(); /* */ $s = 9; case 9: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
193949
- $r = videostream.$init(); /* */ $s = 10; case 10: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
193950
- $r = log.$init(); /* */ $s = 11; case 11: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
194175
+ $r = netpacket.$init(); /* */ $s = 9; case 9: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
194176
+ $r = frame.$init(); /* */ $s = 10; case 10: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
194177
+ $r = videostream.$init(); /* */ $s = 11; case 11: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
194178
+ $r = log.$init(); /* */ $s = 12; case 12: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
193951
194179
  /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
193952
194180
  };
193953
194181
  $pkg.$init = $init;
@@ -194007,9 +194235,10 @@ $packages["github.com/supraio/client-daemon/pkg/stats"] = (function() {
194007
194235
  return $pkg;
194008
194236
  })();
194009
194237
  $packages["github.com/supraio/client-daemon/pkg/render/player"] = (function() {
194010
- var $pkg = {}, $init, decoder, errs, frame, netframe, screenbuffer, stats, screen, image, sync, time;
194238
+ var $pkg = {}, $init, decoder, errs, netpacket, frame, netframe, screenbuffer, stats, screen, image, sync, time;
194011
194239
  decoder = $packages["github.com/supraio/client-daemon/pkg/decoder"];
194012
194240
  errs = $packages["github.com/supraio/client-daemon/pkg/errs"];
194241
+ netpacket = $packages["github.com/supraio/client-daemon/pkg/netpacket"];
194013
194242
  frame = $packages["github.com/supraio/client-daemon/pkg/render/frame"];
194014
194243
  netframe = $packages["github.com/supraio/client-daemon/pkg/render/netframe"];
194015
194244
  screenbuffer = $packages["github.com/supraio/client-daemon/pkg/render/screenbuffer"];
@@ -194023,14 +194252,15 @@ $packages["github.com/supraio/client-daemon/pkg/render/player"] = (function() {
194023
194252
  /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
194024
194253
  $r = decoder.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
194025
194254
  $r = errs.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
194026
- $r = frame.$init(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
194027
- $r = netframe.$init(); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
194028
- $r = screenbuffer.$init(); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
194029
- $r = stats.$init(); /* */ $s = 6; case 6: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
194030
- $r = screen.$init(); /* */ $s = 7; case 7: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
194031
- $r = image.$init(); /* */ $s = 8; case 8: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
194032
- $r = sync.$init(); /* */ $s = 9; case 9: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
194033
- $r = time.$init(); /* */ $s = 10; case 10: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
194255
+ $r = netpacket.$init(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
194256
+ $r = frame.$init(); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
194257
+ $r = netframe.$init(); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
194258
+ $r = screenbuffer.$init(); /* */ $s = 6; case 6: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
194259
+ $r = stats.$init(); /* */ $s = 7; case 7: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
194260
+ $r = screen.$init(); /* */ $s = 8; case 8: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
194261
+ $r = image.$init(); /* */ $s = 9; case 9: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
194262
+ $r = sync.$init(); /* */ $s = 10; case 10: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
194263
+ $r = time.$init(); /* */ $s = 11; case 11: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
194034
194264
  /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
194035
194265
  };
194036
194266
  $pkg.$init = $init;
@@ -194465,14 +194695,13 @@ $packages["golang.org/x/mobile/event/lifecycle"] = (function() {
194465
194695
  return $pkg;
194466
194696
  })();
194467
194697
  $packages["github.com/supraio/client-daemon/pkg/render"] = (function() {
194468
- var $pkg = {}, $init, binary, json, fmt, query, clientscreen, clipboard, brightsigndecoder, nacldecoder, nacldriver, samsungwasmdecoder, webcodecs, errs, helper, input, message, netclient, netpacket, netstream, netframe, jswebsocketworker, player, overlaydriver, stats, videostream, window, canvasdriver, webgldriver, screen, focus, key, lifecycle, mouse, size, touch, geom, image, io, ioutil, log, os, path, filepath, runtime, strconv, strings, sync, js, time, Geometry, screenParams, ScreenManager, ProcessInfo, ProcessInfoManager, sliceType, sliceType$1, ptrType, funcType, ptrType$14, sliceType$4, arrayType, mapType, ptrType$16, onScreenWindowStarted, openScreenWindows, mutex, waitForScreenLifecycleExit, NewScreenManager, NewProcessInfoManager, init, registerJSBridge, newJSBridgeFacades, geometryValue;
194698
+ var $pkg = {}, $init, binary, json, fmt, query, clientscreen, clipboard, nacldecoder, nacldriver, samsungwasmdecoder, webcodecs, errs, helper, input, message, netclient, netpacket, netstream, netframe, jswebsocketworker, player, overlaydriver, stats, videostream, window, canvasdriver, webgldriver, screen, focus, key, lifecycle, mouse, size, touch, geom, image, io, ioutil, log, os, path, filepath, runtime, strconv, strings, sync, js, time, Geometry, screenParams, ScreenManager, ProcessInfo, ProcessInfoManager, sliceType, sliceType$1, ptrType, funcType, ptrType$15, sliceType$4, arrayType, mapType, ptrType$17, onScreenWindowStarted, openScreenWindows, mutex, waitForScreenLifecycleExit, NewScreenManager, NewProcessInfoManager, init, registerJSBridge, newJSBridgeFacades, geometryValue;
194469
194699
  binary = $packages["encoding/binary"];
194470
194700
  json = $packages["encoding/json"];
194471
194701
  fmt = $packages["fmt"];
194472
194702
  query = $packages["github.com/google/go-querystring/query"];
194473
194703
  clientscreen = $packages["github.com/supraio/client-daemon/pkg/clientscreen"];
194474
194704
  clipboard = $packages["github.com/supraio/client-daemon/pkg/clipboard"];
194475
- brightsigndecoder = $packages["github.com/supraio/client-daemon/pkg/decoder/brightsigndecoder"];
194476
194705
  nacldecoder = $packages["github.com/supraio/client-daemon/pkg/decoder/nacldecoder"];
194477
194706
  nacldriver = $packages["github.com/supraio/client-daemon/pkg/decoder/nacldecoder/nacldriver"];
194478
194707
  samsungwasmdecoder = $packages["github.com/supraio/client-daemon/pkg/decoder/samsungwasmdecoder"];
@@ -194528,7 +194757,7 @@ $packages["github.com/supraio/client-daemon/pkg/render"] = (function() {
194528
194757
  this.Width = Width_;
194529
194758
  this.Height = Height_;
194530
194759
  });
194531
- screenParams = $pkg.screenParams = $newType(0, $kindStruct, "render.screenParams", true, "github.com/supraio/client-daemon/pkg/render", false, function(ScreenID_, ScreenDriver_, ScreenHost_, MetadataDriver_, MetadataHost_, ClientID_, ClientSecret_, Secure_) {
194760
+ screenParams = $pkg.screenParams = $newType(0, $kindStruct, "render.screenParams", true, "github.com/supraio/client-daemon/pkg/render", false, function(ScreenID_, ScreenDriver_, ScreenHost_, MetadataDriver_, MetadataHost_, ClientID_, ClientSecret_, Secure_, StreamProtocol_) {
194532
194761
  this.$val = this;
194533
194762
  if (arguments.length === 0) {
194534
194763
  this.ScreenID = "";
@@ -194539,6 +194768,7 @@ $packages["github.com/supraio/client-daemon/pkg/render"] = (function() {
194539
194768
  this.ClientID = "";
194540
194769
  this.ClientSecret = "";
194541
194770
  this.Secure = false;
194771
+ this.StreamProtocol = "";
194542
194772
  return;
194543
194773
  }
194544
194774
  this.ScreenID = ScreenID_;
@@ -194549,6 +194779,7 @@ $packages["github.com/supraio/client-daemon/pkg/render"] = (function() {
194549
194779
  this.ClientID = ClientID_;
194550
194780
  this.ClientSecret = ClientSecret_;
194551
194781
  this.Secure = Secure_;
194782
+ this.StreamProtocol = StreamProtocol_;
194552
194783
  });
194553
194784
  ScreenManager = $pkg.ScreenManager = $newType(0, $kindStruct, "render.ScreenManager", true, "github.com/supraio/client-daemon/pkg/render", true, function(screenWindowCmd_, logDir_, processInfoManager_, processMu_) {
194554
194785
  this.$val = this;
@@ -194588,13 +194819,13 @@ $packages["github.com/supraio/client-daemon/pkg/render"] = (function() {
194588
194819
  sliceType$1 = $sliceType($Uint8);
194589
194820
  ptrType = $ptrType(ProcessInfoManager);
194590
194821
  funcType = $funcType([], [], false);
194591
- ptrType$14 = $ptrType(Geometry);
194822
+ ptrType$15 = $ptrType(Geometry);
194592
194823
  sliceType$4 = $sliceType($String);
194593
194824
  arrayType = $arrayType(funcType, 0);
194594
194825
  mapType = $mapType($String, $emptyInterface);
194595
- ptrType$16 = $ptrType(ScreenManager);
194826
+ ptrType$17 = $ptrType(ScreenManager);
194596
194827
  ScreenManager.ptr.prototype.StartScreen = function(screenID, screenDriver, screenHost, metadataDriver, metadataHost, clientID, clientSecret, secure) {
194597
- var {$24r, $24r$1, $24r$2, _key, _r, _r$1, _tuple, baseUrl, clientID, clientSecret, err, height, killScreen, left, m, metadataDriver, metadataHost, params, screenDriver, screenHost, screenID, screenWindow, secure, top, width, windowOpts, $s, $deferred, $r, $c} = $restore(this, {screenID, screenDriver, screenHost, metadataDriver, metadataHost, clientID, clientSecret, secure});
194828
+ var {$24r, $24r$1, $24r$2, _key, _r, _r$1, _tuple, baseUrl, clientID, clientSecret, config, err, height, killScreen, left, m, metadataDriver, metadataHost, params, screenDriver, screenHost, screenID, screenWindow, secure, sos, streamProtocol, top, width, windowOpts, $s, $deferred, $r, $c} = $restore(this, {screenID, screenDriver, screenHost, metadataDriver, metadataHost, clientID, clientSecret, secure});
194598
194829
  /* */ $s = $s || 0; var $err = null; try { s: while (true) { switch ($s) { case 0: $deferred = []; $curGoroutine.deferStack.push($deferred);
194599
194830
  m = [m];
194600
194831
  screenWindow = [screenWindow];
@@ -194608,7 +194839,17 @@ $packages["github.com/supraio/client-daemon/pkg/render"] = (function() {
194608
194839
  left = 0;
194609
194840
  top = 0;
194610
194841
  windowOpts = new sliceType$4(["width=" + strconv.Itoa(width), "height=" + strconv.Itoa(height), "left=" + strconv.Itoa(left), "top=" + strconv.Itoa(top), "location=no", "menubar=no", "status=no", "titlebar=no", "toolbar=no"]);
194611
- params = new screenParams.ptr(screenID, (screenDriver), screenHost, (metadataDriver), metadataHost, clientID, clientSecret, secure);
194842
+ params = new screenParams.ptr(screenID, (screenDriver), screenHost, (metadataDriver), metadataHost, clientID, clientSecret, secure, "");
194843
+ sos = $clone($clone(js.Global(), js.Value).Get("sos"), js.Value);
194844
+ if ($clone(sos, js.Value).Type() === 6) {
194845
+ config = $clone($clone(sos, js.Value).Get("config"), js.Value);
194846
+ if ($clone(config, js.Value).Type() === 6) {
194847
+ streamProtocol = $clone($clone(config, js.Value).Get("streamProtocol"), js.Value);
194848
+ if ($clone(streamProtocol, js.Value).Type() === 4) {
194849
+ params.StreamProtocol = $clone(streamProtocol, js.Value).String();
194850
+ }
194851
+ }
194852
+ }
194612
194853
  baseUrl = $clone($clone($clone(js.Global(), js.Value).Get("location"), js.Value).Get("origin"), js.Value).String();
194613
194854
  _r = m[0].openWindow(baseUrl, $clone(params, screenParams), windowOpts); /* */ $s = 3; case 3: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
194614
194855
  _tuple = _r;
@@ -194645,7 +194886,7 @@ $packages["github.com/supraio/client-daemon/pkg/render"] = (function() {
194645
194886
  _key = screenID; (openScreenWindows || $throwRuntimeError("assignment to entry in nil map")).set($String.keyFor(_key), { k: _key, v: $clone(screenWindow[0], js.Value) });
194646
194887
  $24r$2 = $ifaceNil;
194647
194888
  $s = 12; case 12: return $24r$2;
194648
- /* */ } return; } } catch(err) { $err = err; $s = -1; return $ifaceNil; } finally { $callDeferred($deferred, $err); if($curGoroutine.asleep) { var $f = {$blk: ScreenManager.ptr.prototype.StartScreen, $c: true, $r, $24r, $24r$1, $24r$2, _key, _r, _r$1, _tuple, baseUrl, clientID, clientSecret, err, height, killScreen, left, m, metadataDriver, metadataHost, params, screenDriver, screenHost, screenID, screenWindow, secure, top, width, windowOpts, $s, $deferred};return $f; } }
194889
+ /* */ } return; } } catch(err) { $err = err; $s = -1; return $ifaceNil; } finally { $callDeferred($deferred, $err); if($curGoroutine.asleep) { var $f = {$blk: ScreenManager.ptr.prototype.StartScreen, $c: true, $r, $24r, $24r$1, $24r$2, _key, _r, _r$1, _tuple, baseUrl, clientID, clientSecret, config, err, height, killScreen, left, m, metadataDriver, metadataHost, params, screenDriver, screenHost, screenID, screenWindow, secure, sos, streamProtocol, top, width, windowOpts, $s, $deferred};return $f; } }
194649
194890
  };
194650
194891
  ScreenManager.prototype.StartScreen = function(screenID, screenDriver, screenHost, metadataDriver, metadataHost, clientID, clientSecret, secure) { return this.$val.StartScreen(screenID, screenDriver, screenHost, metadataDriver, metadataHost, clientID, clientSecret, secure); };
194651
194892
  ScreenManager.ptr.prototype.openWindow = function(baseUrl, params, windowOpts) {
@@ -195177,15 +195418,15 @@ $packages["github.com/supraio/client-daemon/pkg/render"] = (function() {
195177
195418
  };
195178
195419
  geometryValue = function(g) {
195179
195420
  var g;
195180
- if (g === ptrType$14.nil) {
195421
+ if (g === ptrType$15.nil) {
195181
195422
  return $ifaceNil;
195182
195423
  }
195183
195424
  return new mapType($makeMap($String.keyFor, [{ k: "x", v: new $Int(g.X) }, { k: "y", v: new $Int(g.Y) }, { k: "width", v: new $Int(g.Width) }, { k: "height", v: new $Int(g.Height) }]));
195184
195425
  };
195185
- ptrType$16.methods = [{prop: "StartScreen", name: "StartScreen", pkg: "", typ: $funcType([$String, netpacket.Driver, $String, netstream.Driver, $String, $String, $String, $Bool], [$error], false)}, {prop: "openWindow", name: "openWindow", pkg: "github.com/supraio/client-daemon/pkg/render", typ: $funcType([$String, screenParams, sliceType$4], [js.Value, $error], false)}, {prop: "closeWindow", name: "closeWindow", pkg: "github.com/supraio/client-daemon/pkg/render", typ: $funcType([js.Value], [$error], false)}, {prop: "StopScreen", name: "StopScreen", pkg: "", typ: $funcType([$String], [$error], false)}, {prop: "pipeErrLog", name: "pipeErrLog", pkg: "github.com/supraio/client-daemon/pkg/render", typ: $funcType([$String, io.Reader], [$error], false)}, {prop: "ListScreens", name: "ListScreens", pkg: "", typ: $funcType([], [sliceType$4, $error], false)}];
195426
+ ptrType$17.methods = [{prop: "StartScreen", name: "StartScreen", pkg: "", typ: $funcType([$String, netpacket.Driver, $String, netstream.Driver, $String, $String, $String, $Bool], [$error], false)}, {prop: "openWindow", name: "openWindow", pkg: "github.com/supraio/client-daemon/pkg/render", typ: $funcType([$String, screenParams, sliceType$4], [js.Value, $error], false)}, {prop: "closeWindow", name: "closeWindow", pkg: "github.com/supraio/client-daemon/pkg/render", typ: $funcType([js.Value], [$error], false)}, {prop: "StopScreen", name: "StopScreen", pkg: "", typ: $funcType([$String], [$error], false)}, {prop: "pipeErrLog", name: "pipeErrLog", pkg: "github.com/supraio/client-daemon/pkg/render", typ: $funcType([$String, io.Reader], [$error], false)}, {prop: "ListScreens", name: "ListScreens", pkg: "", typ: $funcType([], [sliceType$4, $error], false)}];
195186
195427
  ptrType.methods = [{prop: "CreateProcessInfo", name: "CreateProcessInfo", pkg: "", typ: $funcType([$String, $Int], [$error], false)}, {prop: "RemoveProcessInfo", name: "RemoveProcessInfo", pkg: "", typ: $funcType([$String], [$error], false)}, {prop: "RemoveProcessInfoByPid", name: "RemoveProcessInfoByPid", pkg: "", typ: $funcType([$String, $Int], [$error], false)}, {prop: "WaitProcess", name: "WaitProcess", pkg: "", typ: $funcType([$String], [$error], false)}, {prop: "WaitProcessStopped", name: "WaitProcessStopped", pkg: "", typ: $funcType([$String, time.Duration], [$error], false)}, {prop: "GetProcessInfo", name: "GetProcessInfo", pkg: "", typ: $funcType([$String], [ProcessInfo, $error], false)}, {prop: "ListScreenIDs", name: "ListScreenIDs", pkg: "", typ: $funcType([], [sliceType$4, $error], false)}, {prop: "getUserProcessDirPath", name: "getUserProcessDirPath", pkg: "github.com/supraio/client-daemon/pkg/render", typ: $funcType([], [$String], false)}];
195187
195428
  Geometry.init("", [{prop: "X", name: "X", embedded: false, exported: true, typ: $Int, tag: "json:\"x\""}, {prop: "Y", name: "Y", embedded: false, exported: true, typ: $Int, tag: "json:\"y\""}, {prop: "Width", name: "Width", embedded: false, exported: true, typ: $Int, tag: "json:\"width\""}, {prop: "Height", name: "Height", embedded: false, exported: true, typ: $Int, tag: "json:\"height\""}]);
195188
- screenParams.init("", [{prop: "ScreenID", name: "ScreenID", embedded: false, exported: true, typ: $String, tag: "url:\"screenID\""}, {prop: "ScreenDriver", name: "ScreenDriver", embedded: false, exported: true, typ: $String, tag: "url:\"screenDriver\""}, {prop: "ScreenHost", name: "ScreenHost", embedded: false, exported: true, typ: $String, tag: "url:\"screenHost\""}, {prop: "MetadataDriver", name: "MetadataDriver", embedded: false, exported: true, typ: $String, tag: "url:\"metadataDriver\""}, {prop: "MetadataHost", name: "MetadataHost", embedded: false, exported: true, typ: $String, tag: "url:\"metadataHost\""}, {prop: "ClientID", name: "ClientID", embedded: false, exported: true, typ: $String, tag: "url:\"clientID\""}, {prop: "ClientSecret", name: "ClientSecret", embedded: false, exported: true, typ: $String, tag: "url:\"clientSecret\""}, {prop: "Secure", name: "Secure", embedded: false, exported: true, typ: $Bool, tag: "url:\"secure\""}]);
195429
+ screenParams.init("", [{prop: "ScreenID", name: "ScreenID", embedded: false, exported: true, typ: $String, tag: "url:\"screenID\""}, {prop: "ScreenDriver", name: "ScreenDriver", embedded: false, exported: true, typ: $String, tag: "url:\"screenDriver\""}, {prop: "ScreenHost", name: "ScreenHost", embedded: false, exported: true, typ: $String, tag: "url:\"screenHost\""}, {prop: "MetadataDriver", name: "MetadataDriver", embedded: false, exported: true, typ: $String, tag: "url:\"metadataDriver\""}, {prop: "MetadataHost", name: "MetadataHost", embedded: false, exported: true, typ: $String, tag: "url:\"metadataHost\""}, {prop: "ClientID", name: "ClientID", embedded: false, exported: true, typ: $String, tag: "url:\"clientID\""}, {prop: "ClientSecret", name: "ClientSecret", embedded: false, exported: true, typ: $String, tag: "url:\"clientSecret\""}, {prop: "Secure", name: "Secure", embedded: false, exported: true, typ: $Bool, tag: "url:\"secure\""}, {prop: "StreamProtocol", name: "StreamProtocol", embedded: false, exported: true, typ: $String, tag: "url:\"streamProtocol,omitempty\""}]);
195189
195430
  ScreenManager.init("github.com/supraio/client-daemon/pkg/render", [{prop: "screenWindowCmd", name: "screenWindowCmd", embedded: false, exported: false, typ: $String, tag: ""}, {prop: "logDir", name: "logDir", embedded: false, exported: false, typ: $String, tag: ""}, {prop: "processInfoManager", name: "processInfoManager", embedded: false, exported: false, typ: ptrType, tag: ""}, {prop: "processMu", name: "processMu", embedded: false, exported: false, typ: sync.Mutex, tag: ""}]);
195190
195431
  ProcessInfo.init("", [{prop: "ScreenID", name: "ScreenID", embedded: false, exported: true, typ: $String, tag: ""}, {prop: "Pid", name: "Pid", embedded: false, exported: true, typ: $Int, tag: ""}]);
195191
195432
  ProcessInfoManager.init("github.com/supraio/client-daemon/pkg/render", [{prop: "username", name: "username", embedded: false, exported: false, typ: $String, tag: ""}, {prop: "processDir", name: "processDir", embedded: false, exported: false, typ: $String, tag: ""}]);
@@ -195198,48 +195439,47 @@ $packages["github.com/supraio/client-daemon/pkg/render"] = (function() {
195198
195439
  $r = query.$init(); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
195199
195440
  $r = clientscreen.$init(); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
195200
195441
  $r = clipboard.$init(); /* */ $s = 6; case 6: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
195201
- $r = brightsigndecoder.$init(); /* */ $s = 7; case 7: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
195202
- $r = nacldecoder.$init(); /* */ $s = 8; case 8: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
195203
- $r = nacldriver.$init(); /* */ $s = 9; case 9: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
195204
- $r = samsungwasmdecoder.$init(); /* */ $s = 10; case 10: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
195205
- $r = webcodecs.$init(); /* */ $s = 11; case 11: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
195206
- $r = errs.$init(); /* */ $s = 12; case 12: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
195207
- $r = helper.$init(); /* */ $s = 13; case 13: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
195208
- $r = input.$init(); /* */ $s = 14; case 14: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
195209
- $r = message.$init(); /* */ $s = 15; case 15: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
195210
- $r = netclient.$init(); /* */ $s = 16; case 16: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
195211
- $r = netpacket.$init(); /* */ $s = 17; case 17: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
195212
- $r = netstream.$init(); /* */ $s = 18; case 18: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
195213
- $r = netframe.$init(); /* */ $s = 19; case 19: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
195214
- $r = jswebsocketworker.$init(); /* */ $s = 20; case 20: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
195215
- $r = player.$init(); /* */ $s = 21; case 21: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
195216
- $r = overlaydriver.$init(); /* */ $s = 22; case 22: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
195217
- $r = stats.$init(); /* */ $s = 23; case 23: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
195218
- $r = videostream.$init(); /* */ $s = 24; case 24: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
195219
- $r = window.$init(); /* */ $s = 25; case 25: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
195220
- $r = canvasdriver.$init(); /* */ $s = 26; case 26: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
195221
- $r = webgldriver.$init(); /* */ $s = 27; case 27: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
195222
- $r = screen.$init(); /* */ $s = 28; case 28: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
195223
- $r = focus.$init(); /* */ $s = 29; case 29: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
195224
- $r = key.$init(); /* */ $s = 30; case 30: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
195225
- $r = lifecycle.$init(); /* */ $s = 31; case 31: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
195226
- $r = mouse.$init(); /* */ $s = 32; case 32: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
195227
- $r = size.$init(); /* */ $s = 33; case 33: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
195228
- $r = touch.$init(); /* */ $s = 34; case 34: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
195229
- $r = geom.$init(); /* */ $s = 35; case 35: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
195230
- $r = image.$init(); /* */ $s = 36; case 36: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
195231
- $r = io.$init(); /* */ $s = 37; case 37: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
195232
- $r = ioutil.$init(); /* */ $s = 38; case 38: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
195233
- $r = log.$init(); /* */ $s = 39; case 39: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
195234
- $r = os.$init(); /* */ $s = 40; case 40: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
195235
- $r = path.$init(); /* */ $s = 41; case 41: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
195236
- $r = filepath.$init(); /* */ $s = 42; case 42: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
195237
- $r = runtime.$init(); /* */ $s = 43; case 43: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
195238
- $r = strconv.$init(); /* */ $s = 44; case 44: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
195239
- $r = strings.$init(); /* */ $s = 45; case 45: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
195240
- $r = sync.$init(); /* */ $s = 46; case 46: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
195241
- $r = js.$init(); /* */ $s = 47; case 47: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
195242
- $r = time.$init(); /* */ $s = 48; case 48: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
195442
+ $r = nacldecoder.$init(); /* */ $s = 7; case 7: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
195443
+ $r = nacldriver.$init(); /* */ $s = 8; case 8: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
195444
+ $r = samsungwasmdecoder.$init(); /* */ $s = 9; case 9: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
195445
+ $r = webcodecs.$init(); /* */ $s = 10; case 10: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
195446
+ $r = errs.$init(); /* */ $s = 11; case 11: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
195447
+ $r = helper.$init(); /* */ $s = 12; case 12: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
195448
+ $r = input.$init(); /* */ $s = 13; case 13: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
195449
+ $r = message.$init(); /* */ $s = 14; case 14: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
195450
+ $r = netclient.$init(); /* */ $s = 15; case 15: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
195451
+ $r = netpacket.$init(); /* */ $s = 16; case 16: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
195452
+ $r = netstream.$init(); /* */ $s = 17; case 17: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
195453
+ $r = netframe.$init(); /* */ $s = 18; case 18: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
195454
+ $r = jswebsocketworker.$init(); /* */ $s = 19; case 19: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
195455
+ $r = player.$init(); /* */ $s = 20; case 20: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
195456
+ $r = overlaydriver.$init(); /* */ $s = 21; case 21: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
195457
+ $r = stats.$init(); /* */ $s = 22; case 22: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
195458
+ $r = videostream.$init(); /* */ $s = 23; case 23: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
195459
+ $r = window.$init(); /* */ $s = 24; case 24: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
195460
+ $r = canvasdriver.$init(); /* */ $s = 25; case 25: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
195461
+ $r = webgldriver.$init(); /* */ $s = 26; case 26: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
195462
+ $r = screen.$init(); /* */ $s = 27; case 27: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
195463
+ $r = focus.$init(); /* */ $s = 28; case 28: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
195464
+ $r = key.$init(); /* */ $s = 29; case 29: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
195465
+ $r = lifecycle.$init(); /* */ $s = 30; case 30: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
195466
+ $r = mouse.$init(); /* */ $s = 31; case 31: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
195467
+ $r = size.$init(); /* */ $s = 32; case 32: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
195468
+ $r = touch.$init(); /* */ $s = 33; case 33: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
195469
+ $r = geom.$init(); /* */ $s = 34; case 34: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
195470
+ $r = image.$init(); /* */ $s = 35; case 35: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
195471
+ $r = io.$init(); /* */ $s = 36; case 36: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
195472
+ $r = ioutil.$init(); /* */ $s = 37; case 37: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
195473
+ $r = log.$init(); /* */ $s = 38; case 38: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
195474
+ $r = os.$init(); /* */ $s = 39; case 39: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
195475
+ $r = path.$init(); /* */ $s = 40; case 40: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
195476
+ $r = filepath.$init(); /* */ $s = 41; case 41: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
195477
+ $r = runtime.$init(); /* */ $s = 42; case 42: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
195478
+ $r = strconv.$init(); /* */ $s = 43; case 43: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
195479
+ $r = strings.$init(); /* */ $s = 44; case 44: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
195480
+ $r = sync.$init(); /* */ $s = 45; case 45: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
195481
+ $r = js.$init(); /* */ $s = 46; case 46: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
195482
+ $r = time.$init(); /* */ $s = 47; case 47: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
195243
195483
  onScreenWindowStarted = $throwNilPointerError;
195244
195484
  openScreenWindows = $makeMap($String.keyFor, []);
195245
195485
  mutex = new sync.Mutex.ptr(0, 0);