mirror of
https://github.com/status-im/whispervis.git
synced 2025-02-08 11:23:53 +00:00
Disable widgets while simulation is in progress
This commit is contained in:
parent
16c8778680
commit
a2f5ee79e1
41
page.go
41
page.go
@ -18,7 +18,8 @@ type Page struct {
|
||||
|
||||
webgl *WebGLScene
|
||||
|
||||
loaded bool
|
||||
loaded bool
|
||||
isSimulating bool
|
||||
|
||||
loader *widgets.Loader
|
||||
forceEditor *widgets.ForceEditor
|
||||
@ -54,18 +55,36 @@ func (p *Page) Render() vecty.ComponentOrHTML {
|
||||
vecty.Markup(vecty.Class("pure-u-1-5")),
|
||||
elem.Heading1(vecty.Text("Whisper Message Propagation")),
|
||||
elem.Paragraph(vecty.Text("This visualization represents message propagation in the p2p network.")),
|
||||
p.network,
|
||||
elem.Div(
|
||||
vecty.Markup(
|
||||
vecty.MarkupIf(p.isSimulating,
|
||||
// disable
|
||||
vecty.Style("pointer-events", "none"),
|
||||
vecty.Style("opacity", "0.4"),
|
||||
),
|
||||
),
|
||||
p.network,
|
||||
),
|
||||
elem.HorizontalRule(),
|
||||
elem.Div(
|
||||
vecty.Markup(
|
||||
vecty.MarkupIf(!p.loaded, vecty.Style("visibility", "hidden")),
|
||||
),
|
||||
p.simulationWidget,
|
||||
elem.HorizontalRule(),
|
||||
p.forceEditor,
|
||||
p.updateButton(),
|
||||
elem.HorizontalRule(),
|
||||
p.statsWidget,
|
||||
elem.Div(
|
||||
vecty.Markup(
|
||||
vecty.MarkupIf(p.isSimulating,
|
||||
// disable
|
||||
vecty.Style("pointer-events", "none"),
|
||||
vecty.Style("opacity", "0.4"),
|
||||
),
|
||||
),
|
||||
elem.HorizontalRule(),
|
||||
p.forceEditor,
|
||||
p.updateButton(),
|
||||
elem.HorizontalRule(),
|
||||
p.statsWidget,
|
||||
),
|
||||
),
|
||||
),
|
||||
elem.Div(
|
||||
@ -129,6 +148,14 @@ func (p *Page) onNetworkChange(network *Network) {
|
||||
|
||||
// startSimulation is called on the end of each simulation round.
|
||||
func (p *Page) startSimulation() error {
|
||||
p.isSimulating = true
|
||||
vecty.Rerender(p)
|
||||
|
||||
defer func() {
|
||||
p.isSimulating = false
|
||||
vecty.Rerender(p)
|
||||
}()
|
||||
|
||||
backend := p.simulationWidget.Address()
|
||||
sim, err := p.runSimulation(backend)
|
||||
if err != nil {
|
||||
|
194
whispervis.js
194
whispervis.js
@ -42433,7 +42433,7 @@ $packages["github.com/gopherjs/vecty"] = (function() {
|
||||
return $pkg;
|
||||
})();
|
||||
$packages["github.com/gopherjs/vecty/elem"] = (function() {
|
||||
var $pkg = {}, $init, vecty, Body, Break, Button, Canvas, Div, Form, Heading1, Heading3, HorizontalRule, Input, Label, Option, Paragraph, Select, Table, TableBody, TableData, TableRow;
|
||||
var $pkg = {}, $init, vecty, Body, Break, Button, Canvas, Div, Form, Heading1, Heading3, Heading5, HorizontalRule, Input, Label, Option, Paragraph, Select, Table, TableBody, TableData, TableRow;
|
||||
vecty = $packages["github.com/gopherjs/vecty"];
|
||||
Body = function(markup) {
|
||||
var _r, markup, $s, $r;
|
||||
@ -42499,6 +42499,14 @@ $packages["github.com/gopherjs/vecty/elem"] = (function() {
|
||||
/* */ } return; } if ($f === undefined) { $f = { $blk: Heading3 }; } $f._r = _r; $f.markup = markup; $f.$s = $s; $f.$r = $r; return $f;
|
||||
};
|
||||
$pkg.Heading3 = Heading3;
|
||||
Heading5 = function(markup) {
|
||||
var _r, markup, $s, $r;
|
||||
/* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; _r = $f._r; markup = $f.markup; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
|
||||
_r = vecty.Tag("h5", markup); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
|
||||
$s = -1; return _r;
|
||||
/* */ } return; } if ($f === undefined) { $f = { $blk: Heading5 }; } $f._r = _r; $f.markup = markup; $f.$s = $s; $f.$r = $r; return $f;
|
||||
};
|
||||
$pkg.Heading5 = Heading5;
|
||||
HorizontalRule = function(markup) {
|
||||
var _r, markup, $s, $r;
|
||||
/* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; _r = $f._r; markup = $f.markup; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
|
||||
@ -78297,7 +78305,7 @@ $packages["github.com/status-im/whispervis/widgets"] = (function() {
|
||||
this.title = title_;
|
||||
this.value = value_;
|
||||
});
|
||||
Simulation = $pkg.Simulation = $newType(0, $kindStruct, "widgets.Simulation", true, "github.com/status-im/whispervis/widgets", true, function(Core_, startSimulation_, replay_, address_, errMsg_, hasResults_) {
|
||||
Simulation = $pkg.Simulation = $newType(0, $kindStruct, "widgets.Simulation", true, "github.com/status-im/whispervis/widgets", true, function(Core_, startSimulation_, replay_, address_, errMsg_, hasResults_, inProgress_) {
|
||||
this.$val = this;
|
||||
if (arguments.length === 0) {
|
||||
this.Core = new vecty.Core.ptr($ifaceNil, $ifaceNil, false, false);
|
||||
@ -78306,6 +78314,7 @@ $packages["github.com/status-im/whispervis/widgets"] = (function() {
|
||||
this.address = "";
|
||||
this.errMsg = "";
|
||||
this.hasResults = false;
|
||||
this.inProgress = false;
|
||||
return;
|
||||
}
|
||||
this.Core = Core_;
|
||||
@ -78314,6 +78323,7 @@ $packages["github.com/status-im/whispervis/widgets"] = (function() {
|
||||
this.address = address_;
|
||||
this.errMsg = errMsg_;
|
||||
this.hasResults = hasResults_;
|
||||
this.inProgress = inProgress_;
|
||||
});
|
||||
Stats = $pkg.Stats = $newType(0, $kindStruct, "widgets.Stats", true, "github.com/status-im/whispervis/widgets", true, function(Core_, stats_) {
|
||||
this.$val = this;
|
||||
@ -78586,56 +78596,65 @@ $packages["github.com/status-im/whispervis/widgets"] = (function() {
|
||||
if (address === "") {
|
||||
address = "http://localhost:8084";
|
||||
}
|
||||
return new Simulation.ptr(new vecty.Core.ptr($ifaceNil, $ifaceNil, false, false), startSimulation, replay, address, "", false);
|
||||
return new Simulation.ptr(new vecty.Core.ptr($ifaceNil, $ifaceNil, false, false), startSimulation, replay, address, "", false, false);
|
||||
};
|
||||
$pkg.NewSimulation = NewSimulation;
|
||||
Simulation.ptr.prototype.Render = function() {
|
||||
var _arg, _arg$1, _arg$10, _arg$11, _arg$12, _arg$13, _arg$14, _arg$15, _arg$16, _arg$17, _arg$18, _arg$19, _arg$2, _arg$20, _arg$21, _arg$22, _arg$3, _arg$4, _arg$5, _arg$6, _arg$7, _arg$8, _arg$9, _r, _r$1, _r$10, _r$11, _r$12, _r$13, _r$14, _r$15, _r$16, _r$17, _r$2, _r$3, _r$4, _r$5, _r$6, _r$7, _r$8, _r$9, s, x, x$1, x$2, x$3, x$4, x$5, x$6, $s, $r;
|
||||
/* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; _arg = $f._arg; _arg$1 = $f._arg$1; _arg$10 = $f._arg$10; _arg$11 = $f._arg$11; _arg$12 = $f._arg$12; _arg$13 = $f._arg$13; _arg$14 = $f._arg$14; _arg$15 = $f._arg$15; _arg$16 = $f._arg$16; _arg$17 = $f._arg$17; _arg$18 = $f._arg$18; _arg$19 = $f._arg$19; _arg$2 = $f._arg$2; _arg$20 = $f._arg$20; _arg$21 = $f._arg$21; _arg$22 = $f._arg$22; _arg$3 = $f._arg$3; _arg$4 = $f._arg$4; _arg$5 = $f._arg$5; _arg$6 = $f._arg$6; _arg$7 = $f._arg$7; _arg$8 = $f._arg$8; _arg$9 = $f._arg$9; _r = $f._r; _r$1 = $f._r$1; _r$10 = $f._r$10; _r$11 = $f._r$11; _r$12 = $f._r$12; _r$13 = $f._r$13; _r$14 = $f._r$14; _r$15 = $f._r$15; _r$16 = $f._r$16; _r$17 = $f._r$17; _r$2 = $f._r$2; _r$3 = $f._r$3; _r$4 = $f._r$4; _r$5 = $f._r$5; _r$6 = $f._r$6; _r$7 = $f._r$7; _r$8 = $f._r$8; _r$9 = $f._r$9; s = $f.s; x = $f.x; x$1 = $f.x$1; x$2 = $f.x$2; x$3 = $f.x$3; x$4 = $f.x$4; x$5 = $f.x$5; x$6 = $f.x$6; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
|
||||
var _arg, _arg$1, _arg$10, _arg$11, _arg$12, _arg$13, _arg$14, _arg$15, _arg$16, _arg$17, _arg$18, _arg$19, _arg$2, _arg$20, _arg$21, _arg$22, _arg$23, _arg$24, _arg$25, _arg$26, _arg$27, _arg$3, _arg$4, _arg$5, _arg$6, _arg$7, _arg$8, _arg$9, _r, _r$1, _r$10, _r$11, _r$12, _r$13, _r$14, _r$15, _r$16, _r$17, _r$18, _r$19, _r$2, _r$20, _r$21, _r$3, _r$4, _r$5, _r$6, _r$7, _r$8, _r$9, s, x, x$1, x$2, x$3, x$4, x$5, x$6, x$7, $s, $r;
|
||||
/* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; _arg = $f._arg; _arg$1 = $f._arg$1; _arg$10 = $f._arg$10; _arg$11 = $f._arg$11; _arg$12 = $f._arg$12; _arg$13 = $f._arg$13; _arg$14 = $f._arg$14; _arg$15 = $f._arg$15; _arg$16 = $f._arg$16; _arg$17 = $f._arg$17; _arg$18 = $f._arg$18; _arg$19 = $f._arg$19; _arg$2 = $f._arg$2; _arg$20 = $f._arg$20; _arg$21 = $f._arg$21; _arg$22 = $f._arg$22; _arg$23 = $f._arg$23; _arg$24 = $f._arg$24; _arg$25 = $f._arg$25; _arg$26 = $f._arg$26; _arg$27 = $f._arg$27; _arg$3 = $f._arg$3; _arg$4 = $f._arg$4; _arg$5 = $f._arg$5; _arg$6 = $f._arg$6; _arg$7 = $f._arg$7; _arg$8 = $f._arg$8; _arg$9 = $f._arg$9; _r = $f._r; _r$1 = $f._r$1; _r$10 = $f._r$10; _r$11 = $f._r$11; _r$12 = $f._r$12; _r$13 = $f._r$13; _r$14 = $f._r$14; _r$15 = $f._r$15; _r$16 = $f._r$16; _r$17 = $f._r$17; _r$18 = $f._r$18; _r$19 = $f._r$19; _r$2 = $f._r$2; _r$20 = $f._r$20; _r$21 = $f._r$21; _r$3 = $f._r$3; _r$4 = $f._r$4; _r$5 = $f._r$5; _r$6 = $f._r$6; _r$7 = $f._r$7; _r$8 = $f._r$8; _r$9 = $f._r$9; s = $f.s; x = $f.x; x$1 = $f.x$1; x$2 = $f.x$2; x$3 = $f.x$3; x$4 = $f.x$4; x$5 = $f.x$5; x$6 = $f.x$6; x$7 = $f.x$7; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
|
||||
s = this;
|
||||
_r = vecty.Text("Simulation backend:", new sliceType([])); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
|
||||
_r$1 = elem.Heading3(new sliceType([_r])); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
|
||||
_arg = _r$1;
|
||||
_arg$1 = (x = vecty.Markup(new sliceType$2([vecty.Class(new sliceType$1(["pure-markup-group", "pure-u-1"]))])), new x.constructor.elem(x));
|
||||
_arg$2 = (x$1 = vecty.Markup(new sliceType$2([vecty.Class(new sliceType$1(["pure-u-1-2"]))])), new x$1.constructor.elem(x$1));
|
||||
_arg$2 = (x$1 = vecty.Markup(new sliceType$2([vecty.MarkupIf(s.inProgress, new sliceType$2([vecty.Style("pointer-events", "none"), vecty.Style("opacity", "0.4")]))])), new x$1.constructor.elem(x$1));
|
||||
_arg$3 = (x$2 = vecty.Markup(new sliceType$2([vecty.Class(new sliceType$1(["pure-u-1-2"]))])), new x$2.constructor.elem(x$2));
|
||||
_r$2 = vecty.Text("Host address:", new sliceType([])); /* */ $s = 3; case 3: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
|
||||
_arg$3 = _r$2;
|
||||
_r$3 = elem.Label(new sliceType([_arg$2, _arg$3])); /* */ $s = 4; case 4: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
|
||||
_arg$4 = _r$3;
|
||||
_r$4 = elem.Input(new sliceType([(x$2 = vecty.Markup(new sliceType$2([prop.Value(s.address), event.Input($methodVal(s, "onEditInput")), vecty.Class(new sliceType$1(["pure-input-1-3"])), vecty.Style("float", "right"), vecty.Style("margin-right", "10px"), vecty.Style("text-align", "right")])), new x$2.constructor.elem(x$2))])); /* */ $s = 5; case 5: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
|
||||
_arg$5 = _r$4;
|
||||
_r$5 = elem.Div(new sliceType([_arg, _arg$1, _arg$4, _arg$5])); /* */ $s = 6; case 6: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
|
||||
_arg$6 = _r$5;
|
||||
_arg$7 = (x$3 = vecty.Markup(new sliceType$2([vecty.Class(new sliceType$1(["pure-markup-group", "pure-u-1"]))])), new x$3.constructor.elem(x$3));
|
||||
_arg$8 = (x$4 = vecty.Markup(new sliceType$2([vecty.Class(new sliceType$1(["pure-button"])), vecty.Class(new sliceType$1(["pure-u-1-2"])), vecty.Style("background", "rgb(28, 184, 65)"), vecty.Style("color", "white"), vecty.Style("border-radius", "4px"), event.Click($methodVal(s, "onSimulateClick"))])), new x$4.constructor.elem(x$4));
|
||||
_r$6 = vecty.Text("Start simulation", new sliceType([])); /* */ $s = 7; case 7: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
|
||||
_arg$9 = _r$6;
|
||||
_r$7 = elem.Button(new sliceType([_arg$8, _arg$9])); /* */ $s = 8; case 8: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
|
||||
_arg$10 = _r$7;
|
||||
_arg$11 = s.hasResults;
|
||||
_arg$12 = (x$5 = vecty.Markup(new sliceType$2([vecty.Class(new sliceType$1(["pure-button"])), vecty.Class(new sliceType$1(["pure-u-1-3"])), vecty.Style("background", "rgb(28, 184, 65)"), vecty.Style("color", "white"), vecty.Style("margin", "10px"), vecty.Style("border-radius", "4px"), event.Click($methodVal(s, "onRestartClick"))])), new x$5.constructor.elem(x$5));
|
||||
_r$8 = vecty.Text("Replay", new sliceType([])); /* */ $s = 9; case 9: if($c) { $c = false; _r$8 = _r$8.$blk(); } if (_r$8 && _r$8.$blk !== undefined) { break s; }
|
||||
_arg$13 = _r$8;
|
||||
_r$9 = elem.Button(new sliceType([_arg$12, _arg$13])); /* */ $s = 10; case 10: if($c) { $c = false; _r$9 = _r$9.$blk(); } if (_r$9 && _r$9.$blk !== undefined) { break s; }
|
||||
_arg$14 = _r$9;
|
||||
_r$10 = vecty.If(_arg$11, new sliceType$4([_arg$14])); /* */ $s = 11; case 11: if($c) { $c = false; _r$10 = _r$10.$blk(); } if (_r$10 && _r$10.$blk !== undefined) { break s; }
|
||||
_arg$15 = _r$10;
|
||||
_r$11 = elem.Break(new sliceType([])); /* */ $s = 12; case 12: if($c) { $c = false; _r$11 = _r$11.$blk(); } if (_r$11 && _r$11.$blk !== undefined) { break s; }
|
||||
_arg$16 = _r$11;
|
||||
_arg$17 = !(s.errMsg === "");
|
||||
_arg$18 = (x$6 = vecty.Markup(new sliceType$2([vecty.Style("background", "rgb(202, 60, 60)"), vecty.Style("color", "white"), vecty.Style("border-radius", "4px"), vecty.Style("margin-right", "5px"), vecty.Style("padding", "5px")])), new x$6.constructor.elem(x$6));
|
||||
_r$12 = vecty.Text(s.errMsg, new sliceType([])); /* */ $s = 13; case 13: if($c) { $c = false; _r$12 = _r$12.$blk(); } if (_r$12 && _r$12.$blk !== undefined) { break s; }
|
||||
_arg$19 = _r$12;
|
||||
_r$13 = elem.Paragraph(new sliceType([_arg$18, _arg$19])); /* */ $s = 14; case 14: if($c) { $c = false; _r$13 = _r$13.$blk(); } if (_r$13 && _r$13.$blk !== undefined) { break s; }
|
||||
_arg$20 = _r$13;
|
||||
_r$14 = vecty.If(_arg$17, new sliceType$4([_arg$20])); /* */ $s = 15; case 15: if($c) { $c = false; _r$14 = _r$14.$blk(); } if (_r$14 && _r$14.$blk !== undefined) { break s; }
|
||||
_r$15 = elem.Div(new sliceType([_r$14])); /* */ $s = 16; case 16: if($c) { $c = false; _r$15 = _r$15.$blk(); } if (_r$15 && _r$15.$blk !== undefined) { break s; }
|
||||
_arg$4 = _r$2;
|
||||
_r$3 = elem.Label(new sliceType([_arg$3, _arg$4])); /* */ $s = 4; case 4: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
|
||||
_arg$5 = _r$3;
|
||||
_r$4 = elem.Input(new sliceType([(x$3 = vecty.Markup(new sliceType$2([prop.Value(s.address), event.Input($methodVal(s, "onEditInput")), vecty.Class(new sliceType$1(["pure-input-1-3"])), vecty.Style("float", "right"), vecty.Style("margin-right", "10px"), vecty.Style("text-align", "right")])), new x$3.constructor.elem(x$3))])); /* */ $s = 5; case 5: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
|
||||
_arg$6 = _r$4;
|
||||
_r$5 = elem.Div(new sliceType([_arg$2, _arg$5, _arg$6])); /* */ $s = 6; case 6: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
|
||||
_arg$7 = _r$5;
|
||||
_r$6 = elem.Div(new sliceType([_arg, _arg$1, _arg$7])); /* */ $s = 7; case 7: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
|
||||
_arg$8 = _r$6;
|
||||
_arg$9 = (x$4 = vecty.Markup(new sliceType$2([vecty.Class(new sliceType$1(["pure-markup-group", "pure-u-1"]))])), new x$4.constructor.elem(x$4));
|
||||
_arg$10 = (x$5 = vecty.Markup(new sliceType$2([vecty.MarkupIf(s.inProgress, new sliceType$2([vecty.Style("pointer-events", "none"), vecty.Style("opacity", "0.4")])), vecty.Class(new sliceType$1(["pure-button"])), vecty.Class(new sliceType$1(["pure-u-1-2"])), vecty.Style("background", "rgb(28, 184, 65)"), vecty.Style("color", "white"), vecty.Style("border-radius", "4px"), event.Click($methodVal(s, "onSimulateClick"))])), new x$5.constructor.elem(x$5));
|
||||
_r$7 = vecty.Text("Start simulation", new sliceType([])); /* */ $s = 8; case 8: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
|
||||
_arg$11 = _r$7;
|
||||
_r$8 = elem.Button(new sliceType([_arg$10, _arg$11])); /* */ $s = 9; case 9: if($c) { $c = false; _r$8 = _r$8.$blk(); } if (_r$8 && _r$8.$blk !== undefined) { break s; }
|
||||
_arg$12 = _r$8;
|
||||
_arg$13 = s.hasResults;
|
||||
_arg$14 = (x$6 = vecty.Markup(new sliceType$2([vecty.Class(new sliceType$1(["pure-button"])), vecty.Class(new sliceType$1(["pure-u-1-3"])), vecty.Style("background", "rgb(28, 184, 65)"), vecty.Style("color", "white"), vecty.Style("margin", "10px"), vecty.Style("border-radius", "4px"), event.Click($methodVal(s, "onRestartClick"))])), new x$6.constructor.elem(x$6));
|
||||
_r$9 = vecty.Text("Replay", new sliceType([])); /* */ $s = 10; case 10: if($c) { $c = false; _r$9 = _r$9.$blk(); } if (_r$9 && _r$9.$blk !== undefined) { break s; }
|
||||
_arg$15 = _r$9;
|
||||
_r$10 = elem.Button(new sliceType([_arg$14, _arg$15])); /* */ $s = 11; case 11: if($c) { $c = false; _r$10 = _r$10.$blk(); } if (_r$10 && _r$10.$blk !== undefined) { break s; }
|
||||
_arg$16 = _r$10;
|
||||
_r$11 = vecty.If(_arg$13, new sliceType$4([_arg$16])); /* */ $s = 12; case 12: if($c) { $c = false; _r$11 = _r$11.$blk(); } if (_r$11 && _r$11.$blk !== undefined) { break s; }
|
||||
_arg$17 = _r$11;
|
||||
_r$12 = elem.Break(new sliceType([])); /* */ $s = 13; case 13: if($c) { $c = false; _r$12 = _r$12.$blk(); } if (_r$12 && _r$12.$blk !== undefined) { break s; }
|
||||
_arg$18 = _r$12;
|
||||
_arg$19 = s.inProgress;
|
||||
_r$13 = vecty.Text("Running simulation...", new sliceType([])); /* */ $s = 14; case 14: if($c) { $c = false; _r$13 = _r$13.$blk(); } if (_r$13 && _r$13.$blk !== undefined) { break s; }
|
||||
_r$14 = elem.Heading5(new sliceType([_r$13])); /* */ $s = 15; case 15: if($c) { $c = false; _r$14 = _r$14.$blk(); } if (_r$14 && _r$14.$blk !== undefined) { break s; }
|
||||
_arg$20 = _r$14;
|
||||
_r$15 = vecty.If(_arg$19, new sliceType$4([_arg$20])); /* */ $s = 16; case 16: if($c) { $c = false; _r$15 = _r$15.$blk(); } if (_r$15 && _r$15.$blk !== undefined) { break s; }
|
||||
_arg$21 = _r$15;
|
||||
_r$16 = elem.Div(new sliceType([_arg$7, _arg$10, _arg$15, _arg$16, _arg$21])); /* */ $s = 17; case 17: if($c) { $c = false; _r$16 = _r$16.$blk(); } if (_r$16 && _r$16.$blk !== undefined) { break s; }
|
||||
_arg$22 = _r$16;
|
||||
_r$17 = elem.Div(new sliceType([_arg$6, _arg$22])); /* */ $s = 18; case 18: if($c) { $c = false; _r$17 = _r$17.$blk(); } if (_r$17 && _r$17.$blk !== undefined) { break s; }
|
||||
$s = -1; return _r$17;
|
||||
/* */ } return; } if ($f === undefined) { $f = { $blk: Simulation.ptr.prototype.Render }; } $f._arg = _arg; $f._arg$1 = _arg$1; $f._arg$10 = _arg$10; $f._arg$11 = _arg$11; $f._arg$12 = _arg$12; $f._arg$13 = _arg$13; $f._arg$14 = _arg$14; $f._arg$15 = _arg$15; $f._arg$16 = _arg$16; $f._arg$17 = _arg$17; $f._arg$18 = _arg$18; $f._arg$19 = _arg$19; $f._arg$2 = _arg$2; $f._arg$20 = _arg$20; $f._arg$21 = _arg$21; $f._arg$22 = _arg$22; $f._arg$3 = _arg$3; $f._arg$4 = _arg$4; $f._arg$5 = _arg$5; $f._arg$6 = _arg$6; $f._arg$7 = _arg$7; $f._arg$8 = _arg$8; $f._arg$9 = _arg$9; $f._r = _r; $f._r$1 = _r$1; $f._r$10 = _r$10; $f._r$11 = _r$11; $f._r$12 = _r$12; $f._r$13 = _r$13; $f._r$14 = _r$14; $f._r$15 = _r$15; $f._r$16 = _r$16; $f._r$17 = _r$17; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._r$4 = _r$4; $f._r$5 = _r$5; $f._r$6 = _r$6; $f._r$7 = _r$7; $f._r$8 = _r$8; $f._r$9 = _r$9; $f.s = s; $f.x = x; $f.x$1 = x$1; $f.x$2 = x$2; $f.x$3 = x$3; $f.x$4 = x$4; $f.x$5 = x$5; $f.x$6 = x$6; $f.$s = $s; $f.$r = $r; return $f;
|
||||
_arg$22 = !(s.errMsg === "");
|
||||
_arg$23 = (x$7 = vecty.Markup(new sliceType$2([vecty.Style("background", "rgb(202, 60, 60)"), vecty.Style("color", "white"), vecty.Style("border-radius", "4px"), vecty.Style("margin-right", "5px"), vecty.Style("padding", "5px")])), new x$7.constructor.elem(x$7));
|
||||
_r$16 = vecty.Text(s.errMsg, new sliceType([])); /* */ $s = 17; case 17: if($c) { $c = false; _r$16 = _r$16.$blk(); } if (_r$16 && _r$16.$blk !== undefined) { break s; }
|
||||
_arg$24 = _r$16;
|
||||
_r$17 = elem.Paragraph(new sliceType([_arg$23, _arg$24])); /* */ $s = 18; case 18: if($c) { $c = false; _r$17 = _r$17.$blk(); } if (_r$17 && _r$17.$blk !== undefined) { break s; }
|
||||
_arg$25 = _r$17;
|
||||
_r$18 = vecty.If(_arg$22, new sliceType$4([_arg$25])); /* */ $s = 19; case 19: if($c) { $c = false; _r$18 = _r$18.$blk(); } if (_r$18 && _r$18.$blk !== undefined) { break s; }
|
||||
_r$19 = elem.Div(new sliceType([_r$18])); /* */ $s = 20; case 20: if($c) { $c = false; _r$19 = _r$19.$blk(); } if (_r$19 && _r$19.$blk !== undefined) { break s; }
|
||||
_arg$26 = _r$19;
|
||||
_r$20 = elem.Div(new sliceType([_arg$9, _arg$12, _arg$17, _arg$18, _arg$21, _arg$26])); /* */ $s = 21; case 21: if($c) { $c = false; _r$20 = _r$20.$blk(); } if (_r$20 && _r$20.$blk !== undefined) { break s; }
|
||||
_arg$27 = _r$20;
|
||||
_r$21 = elem.Div(new sliceType([_arg$8, _arg$27])); /* */ $s = 22; case 22: if($c) { $c = false; _r$21 = _r$21.$blk(); } if (_r$21 && _r$21.$blk !== undefined) { break s; }
|
||||
$s = -1; return _r$21;
|
||||
/* */ } return; } if ($f === undefined) { $f = { $blk: Simulation.ptr.prototype.Render }; } $f._arg = _arg; $f._arg$1 = _arg$1; $f._arg$10 = _arg$10; $f._arg$11 = _arg$11; $f._arg$12 = _arg$12; $f._arg$13 = _arg$13; $f._arg$14 = _arg$14; $f._arg$15 = _arg$15; $f._arg$16 = _arg$16; $f._arg$17 = _arg$17; $f._arg$18 = _arg$18; $f._arg$19 = _arg$19; $f._arg$2 = _arg$2; $f._arg$20 = _arg$20; $f._arg$21 = _arg$21; $f._arg$22 = _arg$22; $f._arg$23 = _arg$23; $f._arg$24 = _arg$24; $f._arg$25 = _arg$25; $f._arg$26 = _arg$26; $f._arg$27 = _arg$27; $f._arg$3 = _arg$3; $f._arg$4 = _arg$4; $f._arg$5 = _arg$5; $f._arg$6 = _arg$6; $f._arg$7 = _arg$7; $f._arg$8 = _arg$8; $f._arg$9 = _arg$9; $f._r = _r; $f._r$1 = _r$1; $f._r$10 = _r$10; $f._r$11 = _r$11; $f._r$12 = _r$12; $f._r$13 = _r$13; $f._r$14 = _r$14; $f._r$15 = _r$15; $f._r$16 = _r$16; $f._r$17 = _r$17; $f._r$18 = _r$18; $f._r$19 = _r$19; $f._r$2 = _r$2; $f._r$20 = _r$20; $f._r$21 = _r$21; $f._r$3 = _r$3; $f._r$4 = _r$4; $f._r$5 = _r$5; $f._r$6 = _r$6; $f._r$7 = _r$7; $f._r$8 = _r$8; $f._r$9 = _r$9; $f.s = s; $f.x = x; $f.x$1 = x$1; $f.x$2 = x$2; $f.x$3 = x$3; $f.x$4 = x$4; $f.x$5 = x$5; $f.x$6 = x$6; $f.x$7 = x$7; $f.$s = $s; $f.$r = $r; return $f;
|
||||
};
|
||||
Simulation.prototype.Render = function() { return this.$val.Render(); };
|
||||
Simulation.ptr.prototype.onEditInput = function(event$1) {
|
||||
@ -78659,6 +78678,7 @@ $packages["github.com/status-im/whispervis/widgets"] = (function() {
|
||||
/* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; _r = $f._r; _r$1 = $f._r$1; err = $f.err; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
|
||||
s.errMsg = "";
|
||||
s.hasResults = false;
|
||||
s.inProgress = true;
|
||||
$r = vecty.Rerender(s); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
|
||||
_r = s.startSimulation(); /* */ $s = 2; case 2: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
|
||||
err = _r;
|
||||
@ -78669,6 +78689,7 @@ $packages["github.com/status-im/whispervis/widgets"] = (function() {
|
||||
s.errMsg = _r$1;
|
||||
/* } */ case 4:
|
||||
s.hasResults = $interfaceIsEqual(err, $ifaceNil);
|
||||
s.inProgress = false;
|
||||
$r = vecty.Rerender(s); /* */ $s = 6; case 6: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
|
||||
$s = -1; return;
|
||||
/* */ } return; } if ($f === undefined) { $f = { $blk: $b }; } $f._r = _r; $f._r$1 = _r$1; $f.err = err; $f.$s = $s; $f.$r = $r; return $f;
|
||||
@ -78792,7 +78813,7 @@ $packages["github.com/status-im/whispervis/widgets"] = (function() {
|
||||
ForceInput.init("github.com/status-im/whispervis/widgets", [{prop: "Core", name: "Core", embedded: true, exported: true, typ: vecty.Core, tag: ""}, {prop: "changed", name: "changed", embedded: false, exported: false, typ: $Bool, tag: ""}, {prop: "title", name: "title", embedded: false, exported: false, typ: $String, tag: ""}, {prop: "value", name: "value", embedded: false, exported: false, typ: $Float64, tag: ""}]);
|
||||
Loader.init("github.com/status-im/whispervis/widgets", [{prop: "Core", name: "Core", embedded: true, exported: true, typ: vecty.Core, tag: ""}, {prop: "mx", name: "mx", embedded: false, exported: false, typ: sync.RWMutex, tag: ""}, {prop: "steps", name: "steps", embedded: false, exported: false, typ: $Int, tag: ""}, {prop: "current", name: "current", embedded: false, exported: false, typ: $Int, tag: ""}]);
|
||||
Range.init("github.com/status-im/whispervis/widgets", [{prop: "Core", name: "Core", embedded: true, exported: true, typ: vecty.Core, tag: ""}, {prop: "changed", name: "changed", embedded: false, exported: false, typ: $Bool, tag: ""}, {prop: "title", name: "title", embedded: false, exported: false, typ: $String, tag: ""}, {prop: "value", name: "value", embedded: false, exported: false, typ: $Int, tag: ""}]);
|
||||
Simulation.init("github.com/status-im/whispervis/widgets", [{prop: "Core", name: "Core", embedded: true, exported: true, typ: vecty.Core, tag: ""}, {prop: "startSimulation", name: "startSimulation", embedded: false, exported: false, typ: funcType, tag: ""}, {prop: "replay", name: "replay", embedded: false, exported: false, typ: funcType$1, tag: ""}, {prop: "address", name: "address", embedded: false, exported: false, typ: $String, tag: ""}, {prop: "errMsg", name: "errMsg", embedded: false, exported: false, typ: $String, tag: ""}, {prop: "hasResults", name: "hasResults", embedded: false, exported: false, typ: $Bool, tag: ""}]);
|
||||
Simulation.init("github.com/status-im/whispervis/widgets", [{prop: "Core", name: "Core", embedded: true, exported: true, typ: vecty.Core, tag: ""}, {prop: "startSimulation", name: "startSimulation", embedded: false, exported: false, typ: funcType, tag: ""}, {prop: "replay", name: "replay", embedded: false, exported: false, typ: funcType$1, tag: ""}, {prop: "address", name: "address", embedded: false, exported: false, typ: $String, tag: ""}, {prop: "errMsg", name: "errMsg", embedded: false, exported: false, typ: $String, tag: ""}, {prop: "hasResults", name: "hasResults", embedded: false, exported: false, typ: $Bool, tag: ""}, {prop: "inProgress", name: "inProgress", embedded: false, exported: false, typ: $Bool, tag: ""}]);
|
||||
Stats.init("github.com/status-im/whispervis/widgets", [{prop: "Core", name: "Core", embedded: true, exported: true, typ: vecty.Core, tag: ""}, {prop: "stats", name: "stats", embedded: false, exported: false, typ: ptrType$2, tag: ""}]);
|
||||
UploadWidget.init("github.com/status-im/whispervis/widgets", [{prop: "Core", name: "Core", embedded: true, exported: true, typ: vecty.Core, tag: ""}, {prop: "handler", name: "handler", embedded: false, exported: false, typ: funcType$2, tag: ""}]);
|
||||
$init = function() {
|
||||
@ -162318,13 +162339,14 @@ $packages["github.com/status-im/whispervis"] = (function() {
|
||||
this.To = To_;
|
||||
this.Line = Line_;
|
||||
});
|
||||
Page = $pkg.Page = $newType(0, $kindStruct, "main.Page", true, "github.com/status-im/whispervis", true, function(Core_, layout_, webgl_, loaded_, loader_, forceEditor_, network_, simulationWidget_, statsWidget_, simulation_) {
|
||||
Page = $pkg.Page = $newType(0, $kindStruct, "main.Page", true, "github.com/status-im/whispervis", true, function(Core_, layout_, webgl_, loaded_, isSimulating_, loader_, forceEditor_, network_, simulationWidget_, statsWidget_, simulation_) {
|
||||
this.$val = this;
|
||||
if (arguments.length === 0) {
|
||||
this.Core = new vecty.Core.ptr($ifaceNil, $ifaceNil, false, false);
|
||||
this.layout = ptrType$17.nil;
|
||||
this.webgl = ptrType$18.nil;
|
||||
this.loaded = false;
|
||||
this.isSimulating = false;
|
||||
this.loader = ptrType$19.nil;
|
||||
this.forceEditor = ptrType$20.nil;
|
||||
this.network = ptrType$21.nil;
|
||||
@ -162337,6 +162359,7 @@ $packages["github.com/status-im/whispervis"] = (function() {
|
||||
this.layout = layout_;
|
||||
this.webgl = webgl_;
|
||||
this.loaded = loaded_;
|
||||
this.isSimulating = isSimulating_;
|
||||
this.loader = loader_;
|
||||
this.forceEditor = forceEditor_;
|
||||
this.network = network_;
|
||||
@ -163293,7 +163316,7 @@ $packages["github.com/status-im/whispervis"] = (function() {
|
||||
NewPage = function() {
|
||||
var _r, page, $s, $r;
|
||||
/* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; _r = $f._r; page = $f.page; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
|
||||
page = new Page.ptr(new vecty.Core.ptr($ifaceNil, $ifaceNil, false, false), ptrType$17.nil, ptrType$18.nil, false, widgets.NewLoader(), widgets.NewForceEditor(), ptrType$21.nil, ptrType$22.nil, ptrType$23.nil, ptrType$24.nil);
|
||||
page = new Page.ptr(new vecty.Core.ptr($ifaceNil, $ifaceNil, false, false), ptrType$17.nil, ptrType$18.nil, false, false, widgets.NewLoader(), widgets.NewForceEditor(), ptrType$21.nil, ptrType$22.nil, ptrType$23.nil, ptrType$24.nil);
|
||||
_r = NewNetworkSelector($methodVal(page, "onNetworkChange")); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
|
||||
page.network = _r;
|
||||
page.webgl = NewWebGLScene();
|
||||
@ -163304,8 +163327,8 @@ $packages["github.com/status-im/whispervis"] = (function() {
|
||||
};
|
||||
$pkg.NewPage = NewPage;
|
||||
Page.ptr.prototype.Render = function() {
|
||||
var _arg, _arg$1, _arg$10, _arg$11, _arg$12, _arg$13, _arg$14, _arg$15, _arg$16, _arg$2, _arg$3, _arg$4, _arg$5, _arg$6, _arg$7, _arg$8, _arg$9, _r, _r$1, _r$10, _r$11, _r$12, _r$13, _r$2, _r$3, _r$4, _r$5, _r$6, _r$7, _r$8, _r$9, p, x, x$1, x$2, x$3, x$4, x$5, $s, $r;
|
||||
/* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; _arg = $f._arg; _arg$1 = $f._arg$1; _arg$10 = $f._arg$10; _arg$11 = $f._arg$11; _arg$12 = $f._arg$12; _arg$13 = $f._arg$13; _arg$14 = $f._arg$14; _arg$15 = $f._arg$15; _arg$16 = $f._arg$16; _arg$2 = $f._arg$2; _arg$3 = $f._arg$3; _arg$4 = $f._arg$4; _arg$5 = $f._arg$5; _arg$6 = $f._arg$6; _arg$7 = $f._arg$7; _arg$8 = $f._arg$8; _arg$9 = $f._arg$9; _r = $f._r; _r$1 = $f._r$1; _r$10 = $f._r$10; _r$11 = $f._r$11; _r$12 = $f._r$12; _r$13 = $f._r$13; _r$2 = $f._r$2; _r$3 = $f._r$3; _r$4 = $f._r$4; _r$5 = $f._r$5; _r$6 = $f._r$6; _r$7 = $f._r$7; _r$8 = $f._r$8; _r$9 = $f._r$9; p = $f.p; x = $f.x; x$1 = $f.x$1; x$2 = $f.x$2; x$3 = $f.x$3; x$4 = $f.x$4; x$5 = $f.x$5; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
|
||||
var _arg, _arg$1, _arg$10, _arg$11, _arg$12, _arg$13, _arg$14, _arg$15, _arg$16, _arg$17, _arg$18, _arg$2, _arg$3, _arg$4, _arg$5, _arg$6, _arg$7, _arg$8, _arg$9, _r, _r$1, _r$10, _r$11, _r$12, _r$13, _r$14, _r$15, _r$2, _r$3, _r$4, _r$5, _r$6, _r$7, _r$8, _r$9, p, x, x$1, x$2, x$3, x$4, x$5, x$6, x$7, $s, $r;
|
||||
/* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; _arg = $f._arg; _arg$1 = $f._arg$1; _arg$10 = $f._arg$10; _arg$11 = $f._arg$11; _arg$12 = $f._arg$12; _arg$13 = $f._arg$13; _arg$14 = $f._arg$14; _arg$15 = $f._arg$15; _arg$16 = $f._arg$16; _arg$17 = $f._arg$17; _arg$18 = $f._arg$18; _arg$2 = $f._arg$2; _arg$3 = $f._arg$3; _arg$4 = $f._arg$4; _arg$5 = $f._arg$5; _arg$6 = $f._arg$6; _arg$7 = $f._arg$7; _arg$8 = $f._arg$8; _arg$9 = $f._arg$9; _r = $f._r; _r$1 = $f._r$1; _r$10 = $f._r$10; _r$11 = $f._r$11; _r$12 = $f._r$12; _r$13 = $f._r$13; _r$14 = $f._r$14; _r$15 = $f._r$15; _r$2 = $f._r$2; _r$3 = $f._r$3; _r$4 = $f._r$4; _r$5 = $f._r$5; _r$6 = $f._r$6; _r$7 = $f._r$7; _r$8 = $f._r$8; _r$9 = $f._r$9; p = $f.p; x = $f.x; x$1 = $f.x$1; x$2 = $f.x$2; x$3 = $f.x$3; x$4 = $f.x$4; x$5 = $f.x$5; x$6 = $f.x$6; x$7 = $f.x$7; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
|
||||
p = this;
|
||||
_arg = (x = vecty.Markup(new sliceType$6([vecty.Class(new sliceType$2(["pure-g"])), vecty.Style("height", "100%")])), new x.constructor.elem(x));
|
||||
_arg$1 = (x$1 = vecty.Markup(new sliceType$6([vecty.Class(new sliceType$2(["pure-u-1-5"]))])), new x$1.constructor.elem(x$1));
|
||||
@ -163315,31 +163338,35 @@ $packages["github.com/status-im/whispervis"] = (function() {
|
||||
_r$2 = vecty.Text("This visualization represents message propagation in the p2p network.", new sliceType$5([])); /* */ $s = 3; case 3: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
|
||||
_r$3 = elem.Paragraph(new sliceType$5([_r$2])); /* */ $s = 4; case 4: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
|
||||
_arg$3 = _r$3;
|
||||
_arg$4 = p.network;
|
||||
_r$4 = elem.HorizontalRule(new sliceType$5([])); /* */ $s = 5; case 5: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
|
||||
_arg$5 = _r$4;
|
||||
_arg$6 = (x$2 = vecty.Markup(new sliceType$6([vecty.MarkupIf(!p.loaded, new sliceType$6([vecty.Style("visibility", "hidden")]))])), new x$2.constructor.elem(x$2));
|
||||
_arg$7 = p.simulationWidget;
|
||||
_r$4 = elem.Div(new sliceType$5([(x$2 = vecty.Markup(new sliceType$6([vecty.MarkupIf(p.isSimulating, new sliceType$6([vecty.Style("pointer-events", "none"), vecty.Style("opacity", "0.4")]))])), new x$2.constructor.elem(x$2)), p.network])); /* */ $s = 5; case 5: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
|
||||
_arg$4 = _r$4;
|
||||
_r$5 = elem.HorizontalRule(new sliceType$5([])); /* */ $s = 6; case 6: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
|
||||
_arg$8 = _r$5;
|
||||
_arg$9 = p.forceEditor;
|
||||
_r$6 = p.updateButton(); /* */ $s = 7; case 7: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
|
||||
_arg$10 = _r$6;
|
||||
_r$7 = elem.HorizontalRule(new sliceType$5([])); /* */ $s = 8; case 8: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
|
||||
_arg$5 = _r$5;
|
||||
_arg$6 = (x$3 = vecty.Markup(new sliceType$6([vecty.MarkupIf(!p.loaded, new sliceType$6([vecty.Style("visibility", "hidden")]))])), new x$3.constructor.elem(x$3));
|
||||
_arg$7 = p.simulationWidget;
|
||||
_arg$8 = (x$4 = vecty.Markup(new sliceType$6([vecty.MarkupIf(p.isSimulating, new sliceType$6([vecty.Style("pointer-events", "none"), vecty.Style("opacity", "0.4")]))])), new x$4.constructor.elem(x$4));
|
||||
_r$6 = elem.HorizontalRule(new sliceType$5([])); /* */ $s = 7; case 7: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
|
||||
_arg$9 = _r$6;
|
||||
_arg$10 = p.forceEditor;
|
||||
_r$7 = p.updateButton(); /* */ $s = 8; case 8: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
|
||||
_arg$11 = _r$7;
|
||||
_arg$12 = p.statsWidget;
|
||||
_r$8 = elem.Div(new sliceType$5([_arg$6, _arg$7, _arg$8, _arg$9, _arg$10, _arg$11, _arg$12])); /* */ $s = 9; case 9: if($c) { $c = false; _r$8 = _r$8.$blk(); } if (_r$8 && _r$8.$blk !== undefined) { break s; }
|
||||
_arg$13 = _r$8;
|
||||
_r$9 = elem.Div(new sliceType$5([_arg$1, _arg$2, _arg$3, _arg$4, _arg$5, _arg$13])); /* */ $s = 10; case 10: if($c) { $c = false; _r$9 = _r$9.$blk(); } if (_r$9 && _r$9.$blk !== undefined) { break s; }
|
||||
_r$8 = elem.HorizontalRule(new sliceType$5([])); /* */ $s = 9; case 9: if($c) { $c = false; _r$8 = _r$8.$blk(); } if (_r$8 && _r$8.$blk !== undefined) { break s; }
|
||||
_arg$12 = _r$8;
|
||||
_arg$13 = p.statsWidget;
|
||||
_r$9 = elem.Div(new sliceType$5([_arg$8, _arg$9, _arg$10, _arg$11, _arg$12, _arg$13])); /* */ $s = 10; case 10: if($c) { $c = false; _r$9 = _r$9.$blk(); } if (_r$9 && _r$9.$blk !== undefined) { break s; }
|
||||
_arg$14 = _r$9;
|
||||
_r$10 = elem.Div(new sliceType$5([(x$3 = vecty.Markup(new sliceType$6([vecty.Class(new sliceType$2(["pure-u-4-5"])), vecty.MarkupIf(!p.loaded, new sliceType$6([vecty.Style("visibility", "hidden"), vecty.Style("height", "0px"), vecty.Style("width", "0px")]))])), new x$3.constructor.elem(x$3)), p.webgl])); /* */ $s = 11; case 11: if($c) { $c = false; _r$10 = _r$10.$blk(); } if (_r$10 && _r$10.$blk !== undefined) { break s; }
|
||||
_r$10 = elem.Div(new sliceType$5([_arg$6, _arg$7, _arg$14])); /* */ $s = 11; case 11: if($c) { $c = false; _r$10 = _r$10.$blk(); } if (_r$10 && _r$10.$blk !== undefined) { break s; }
|
||||
_arg$15 = _r$10;
|
||||
_r$11 = elem.Div(new sliceType$5([(x$4 = vecty.Markup(new sliceType$6([vecty.Class(new sliceType$2(["pure-u-4-5"]))])), new x$4.constructor.elem(x$4)), vecty.If(!p.loaded, new sliceType$7([p.loader]))])); /* */ $s = 12; case 12: if($c) { $c = false; _r$11 = _r$11.$blk(); } if (_r$11 && _r$11.$blk !== undefined) { break s; }
|
||||
_r$11 = elem.Div(new sliceType$5([_arg$1, _arg$2, _arg$3, _arg$4, _arg$5, _arg$15])); /* */ $s = 12; case 12: if($c) { $c = false; _r$11 = _r$11.$blk(); } if (_r$11 && _r$11.$blk !== undefined) { break s; }
|
||||
_arg$16 = _r$11;
|
||||
_r$12 = elem.Div(new sliceType$5([_arg, _arg$14, _arg$15, _arg$16])); /* */ $s = 13; case 13: if($c) { $c = false; _r$12 = _r$12.$blk(); } if (_r$12 && _r$12.$blk !== undefined) { break s; }
|
||||
_r$13 = elem.Body(new sliceType$5([_r$12, (x$5 = vecty.Markup(new sliceType$6([event.KeyDown($methodVal(p, "KeyListener")), event.VisibilityChange($methodVal(p, "VisibilityListener"))])), new x$5.constructor.elem(x$5))])); /* */ $s = 14; case 14: if($c) { $c = false; _r$13 = _r$13.$blk(); } if (_r$13 && _r$13.$blk !== undefined) { break s; }
|
||||
$s = -1; return _r$13;
|
||||
/* */ } return; } if ($f === undefined) { $f = { $blk: Page.ptr.prototype.Render }; } $f._arg = _arg; $f._arg$1 = _arg$1; $f._arg$10 = _arg$10; $f._arg$11 = _arg$11; $f._arg$12 = _arg$12; $f._arg$13 = _arg$13; $f._arg$14 = _arg$14; $f._arg$15 = _arg$15; $f._arg$16 = _arg$16; $f._arg$2 = _arg$2; $f._arg$3 = _arg$3; $f._arg$4 = _arg$4; $f._arg$5 = _arg$5; $f._arg$6 = _arg$6; $f._arg$7 = _arg$7; $f._arg$8 = _arg$8; $f._arg$9 = _arg$9; $f._r = _r; $f._r$1 = _r$1; $f._r$10 = _r$10; $f._r$11 = _r$11; $f._r$12 = _r$12; $f._r$13 = _r$13; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._r$4 = _r$4; $f._r$5 = _r$5; $f._r$6 = _r$6; $f._r$7 = _r$7; $f._r$8 = _r$8; $f._r$9 = _r$9; $f.p = p; $f.x = x; $f.x$1 = x$1; $f.x$2 = x$2; $f.x$3 = x$3; $f.x$4 = x$4; $f.x$5 = x$5; $f.$s = $s; $f.$r = $r; return $f;
|
||||
_r$12 = elem.Div(new sliceType$5([(x$5 = vecty.Markup(new sliceType$6([vecty.Class(new sliceType$2(["pure-u-4-5"])), vecty.MarkupIf(!p.loaded, new sliceType$6([vecty.Style("visibility", "hidden"), vecty.Style("height", "0px"), vecty.Style("width", "0px")]))])), new x$5.constructor.elem(x$5)), p.webgl])); /* */ $s = 13; case 13: if($c) { $c = false; _r$12 = _r$12.$blk(); } if (_r$12 && _r$12.$blk !== undefined) { break s; }
|
||||
_arg$17 = _r$12;
|
||||
_r$13 = elem.Div(new sliceType$5([(x$6 = vecty.Markup(new sliceType$6([vecty.Class(new sliceType$2(["pure-u-4-5"]))])), new x$6.constructor.elem(x$6)), vecty.If(!p.loaded, new sliceType$7([p.loader]))])); /* */ $s = 14; case 14: if($c) { $c = false; _r$13 = _r$13.$blk(); } if (_r$13 && _r$13.$blk !== undefined) { break s; }
|
||||
_arg$18 = _r$13;
|
||||
_r$14 = elem.Div(new sliceType$5([_arg, _arg$16, _arg$17, _arg$18])); /* */ $s = 15; case 15: if($c) { $c = false; _r$14 = _r$14.$blk(); } if (_r$14 && _r$14.$blk !== undefined) { break s; }
|
||||
_r$15 = elem.Body(new sliceType$5([_r$14, (x$7 = vecty.Markup(new sliceType$6([event.KeyDown($methodVal(p, "KeyListener")), event.VisibilityChange($methodVal(p, "VisibilityListener"))])), new x$7.constructor.elem(x$7))])); /* */ $s = 16; case 16: if($c) { $c = false; _r$15 = _r$15.$blk(); } if (_r$15 && _r$15.$blk !== undefined) { break s; }
|
||||
$s = -1; return _r$15;
|
||||
/* */ } return; } if ($f === undefined) { $f = { $blk: Page.ptr.prototype.Render }; } $f._arg = _arg; $f._arg$1 = _arg$1; $f._arg$10 = _arg$10; $f._arg$11 = _arg$11; $f._arg$12 = _arg$12; $f._arg$13 = _arg$13; $f._arg$14 = _arg$14; $f._arg$15 = _arg$15; $f._arg$16 = _arg$16; $f._arg$17 = _arg$17; $f._arg$18 = _arg$18; $f._arg$2 = _arg$2; $f._arg$3 = _arg$3; $f._arg$4 = _arg$4; $f._arg$5 = _arg$5; $f._arg$6 = _arg$6; $f._arg$7 = _arg$7; $f._arg$8 = _arg$8; $f._arg$9 = _arg$9; $f._r = _r; $f._r$1 = _r$1; $f._r$10 = _r$10; $f._r$11 = _r$11; $f._r$12 = _r$12; $f._r$13 = _r$13; $f._r$14 = _r$14; $f._r$15 = _r$15; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._r$4 = _r$4; $f._r$5 = _r$5; $f._r$6 = _r$6; $f._r$7 = _r$7; $f._r$8 = _r$8; $f._r$9 = _r$9; $f.p = p; $f.x = x; $f.x$1 = x$1; $f.x$2 = x$2; $f.x$3 = x$3; $f.x$4 = x$4; $f.x$5 = x$5; $f.x$6 = x$6; $f.x$7 = x$7; $f.$s = $s; $f.$r = $r; return $f;
|
||||
};
|
||||
Page.prototype.Render = function() { return this.$val.Render(); };
|
||||
Page.ptr.prototype.updateButton = function() {
|
||||
@ -163379,25 +163406,36 @@ $packages["github.com/status-im/whispervis"] = (function() {
|
||||
};
|
||||
Page.prototype.onNetworkChange = function(network) { return this.$val.onNetworkChange(network); };
|
||||
Page.ptr.prototype.startSimulation = function() {
|
||||
var _r, _r$1, _tuple, backend, err, p, sim, stats$1, $s, $r;
|
||||
/* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; _r = $f._r; _r$1 = $f._r$1; _tuple = $f._tuple; backend = $f.backend; err = $f.err; p = $f.p; sim = $f.sim; stats$1 = $f.stats$1; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
|
||||
p = this;
|
||||
backend = p.simulationWidget.Address();
|
||||
_r = p.runSimulation(backend); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
|
||||
var _r, _r$1, _tuple, backend, err, p, sim, stats$1, $s, $deferred, $r;
|
||||
/* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; _r = $f._r; _r$1 = $f._r$1; _tuple = $f._tuple; backend = $f.backend; err = $f.err; p = $f.p; sim = $f.sim; stats$1 = $f.stats$1; $s = $f.$s; $deferred = $f.$deferred; $r = $f.$r; } var $err = null; try { s: while (true) { switch ($s) { case 0: $deferred = []; $deferred.index = $curGoroutine.deferStack.length; $curGoroutine.deferStack.push($deferred);
|
||||
p = [p];
|
||||
p[0] = this;
|
||||
p[0].isSimulating = true;
|
||||
$r = vecty.Rerender(p[0]); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
|
||||
$deferred.push([(function(p) { return function $b() {
|
||||
var $s, $r;
|
||||
/* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
|
||||
p[0].isSimulating = false;
|
||||
$r = vecty.Rerender(p[0]); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
|
||||
$s = -1; return;
|
||||
/* */ } return; } if ($f === undefined) { $f = { $blk: $b }; } $f.$s = $s; $f.$r = $r; return $f;
|
||||
}; })(p), []]);
|
||||
backend = p[0].simulationWidget.Address();
|
||||
_r = p[0].runSimulation(backend); /* */ $s = 2; case 2: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
|
||||
_tuple = _r;
|
||||
sim = _tuple[0];
|
||||
err = _tuple[1];
|
||||
if (!($interfaceIsEqual(err, $ifaceNil))) {
|
||||
$s = -1; return err;
|
||||
}
|
||||
_r$1 = p.RecalculateStats(sim.plog); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
|
||||
_r$1 = p[0].RecalculateStats(sim.plog); /* */ $s = 3; case 3: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
|
||||
stats$1 = _r$1;
|
||||
$r = p.statsWidget.Update(stats$1); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
|
||||
$r = p[0].statsWidget.Update(stats$1); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
|
||||
sim.stats = stats$1;
|
||||
p.simulation = sim;
|
||||
$r = p.replaySimulation(); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
|
||||
p[0].simulation = sim;
|
||||
$r = p[0].replaySimulation(); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
|
||||
$s = -1; return $ifaceNil;
|
||||
/* */ } return; } if ($f === undefined) { $f = { $blk: Page.ptr.prototype.startSimulation }; } $f._r = _r; $f._r$1 = _r$1; $f._tuple = _tuple; $f.backend = backend; $f.err = err; $f.p = p; $f.sim = sim; $f.stats$1 = stats$1; $f.$s = $s; $f.$r = $r; return $f;
|
||||
/* */ } return; } } catch(err) { $err = err; $s = -1; return $ifaceNil; } finally { $callDeferred($deferred, $err); if($curGoroutine.asleep) { if ($f === undefined) { $f = { $blk: Page.ptr.prototype.startSimulation }; } $f._r = _r; $f._r$1 = _r$1; $f._tuple = _tuple; $f.backend = backend; $f.err = err; $f.p = p; $f.sim = sim; $f.stats$1 = stats$1; $f.$s = $s; $f.$deferred = $deferred; $f.$r = $r; return $f; } }
|
||||
};
|
||||
Page.prototype.startSimulation = function() { return this.$val.startSimulation(); };
|
||||
Page.ptr.prototype.replaySimulation = function() {
|
||||
@ -163687,7 +163725,7 @@ $packages["github.com/status-im/whispervis"] = (function() {
|
||||
NetworkSelector.init("github.com/status-im/whispervis", [{prop: "Core", name: "Core", embedded: true, exported: true, typ: vecty.Core, tag: ""}, {prop: "current", name: "current", embedded: false, exported: false, typ: ptrType$5, tag: ""}, {prop: "isCustom", name: "isCustom", embedded: false, exported: false, typ: $Bool, tag: ""}, {prop: "networks", name: "networks", embedded: false, exported: false, typ: mapType$1, tag: ""}, {prop: "upload", name: "upload", embedded: false, exported: false, typ: ptrType$7, tag: ""}, {prop: "handler", name: "handler", embedded: false, exported: false, typ: funcType$2, tag: ""}]);
|
||||
Mesh.init("", [{prop: "ID", name: "ID", embedded: false, exported: true, typ: $String, tag: ""}, {prop: "Mesh", name: "Mesh", embedded: true, exported: true, typ: ptrType$8, tag: ""}]);
|
||||
Line.init("", [{prop: "From", name: "From", embedded: false, exported: true, typ: $String, tag: ""}, {prop: "To", name: "To", embedded: false, exported: true, typ: $String, tag: ""}, {prop: "Line", name: "Line", embedded: true, exported: true, typ: ptrType$11, tag: ""}]);
|
||||
Page.init("github.com/status-im/whispervis", [{prop: "Core", name: "Core", embedded: true, exported: true, typ: vecty.Core, tag: ""}, {prop: "layout", name: "layout", embedded: false, exported: false, typ: ptrType$17, tag: ""}, {prop: "webgl", name: "webgl", embedded: false, exported: false, typ: ptrType$18, tag: ""}, {prop: "loaded", name: "loaded", embedded: false, exported: false, typ: $Bool, tag: ""}, {prop: "loader", name: "loader", embedded: false, exported: false, typ: ptrType$19, tag: ""}, {prop: "forceEditor", name: "forceEditor", embedded: false, exported: false, typ: ptrType$20, tag: ""}, {prop: "network", name: "network", embedded: false, exported: false, typ: ptrType$21, tag: ""}, {prop: "simulationWidget", name: "simulationWidget", embedded: false, exported: false, typ: ptrType$22, tag: ""}, {prop: "statsWidget", name: "statsWidget", embedded: false, exported: false, typ: ptrType$23, tag: ""}, {prop: "simulation", name: "simulation", embedded: false, exported: false, typ: ptrType$24, tag: ""}]);
|
||||
Page.init("github.com/status-im/whispervis", [{prop: "Core", name: "Core", embedded: true, exported: true, typ: vecty.Core, tag: ""}, {prop: "layout", name: "layout", embedded: false, exported: false, typ: ptrType$17, tag: ""}, {prop: "webgl", name: "webgl", embedded: false, exported: false, typ: ptrType$18, tag: ""}, {prop: "loaded", name: "loaded", embedded: false, exported: false, typ: $Bool, tag: ""}, {prop: "isSimulating", name: "isSimulating", embedded: false, exported: false, typ: $Bool, tag: ""}, {prop: "loader", name: "loader", embedded: false, exported: false, typ: ptrType$19, tag: ""}, {prop: "forceEditor", name: "forceEditor", embedded: false, exported: false, typ: ptrType$20, tag: ""}, {prop: "network", name: "network", embedded: false, exported: false, typ: ptrType$21, tag: ""}, {prop: "simulationWidget", name: "simulationWidget", embedded: false, exported: false, typ: ptrType$22, tag: ""}, {prop: "statsWidget", name: "statsWidget", embedded: false, exported: false, typ: ptrType$23, tag: ""}, {prop: "simulation", name: "simulation", embedded: false, exported: false, typ: ptrType$24, tag: ""}]);
|
||||
WebGLScene.init("github.com/status-im/whispervis", [{prop: "WebGLRenderer", name: "WebGLRenderer", embedded: true, exported: true, typ: ptrType$25, tag: ""}, {prop: "scene", name: "scene", embedded: false, exported: false, typ: ptrType$26, tag: ""}, {prop: "camera", name: "camera", embedded: false, exported: false, typ: three.PerspectiveCamera, tag: ""}, {prop: "renderer", name: "renderer", embedded: false, exported: false, typ: ptrType, tag: ""}, {prop: "graphGroup", name: "graphGroup", embedded: false, exported: false, typ: ptrType$13, tag: ""}, {prop: "nodesGroup", name: "nodesGroup", embedded: false, exported: false, typ: ptrType$13, tag: ""}, {prop: "edgesGroup", name: "edgesGroup", embedded: false, exported: false, typ: ptrType$13, tag: ""}, {prop: "controls", name: "controls", embedded: false, exported: false, typ: TrackBallControl, tag: ""}, {prop: "autoRotate", name: "autoRotate", embedded: false, exported: false, typ: $Bool, tag: ""}, {prop: "wobble", name: "wobble", embedded: false, exported: false, typ: $Bool, tag: ""}, {prop: "wobbling", name: "wobbling", embedded: false, exported: false, typ: ptrType$27, tag: ""}, {prop: "positions", name: "positions", embedded: false, exported: false, typ: mapType$2, tag: ""}, {prop: "nodes", name: "nodes", embedded: false, exported: false, typ: sliceType$10, tag: ""}, {prop: "lines", name: "lines", embedded: false, exported: false, typ: sliceType$11, tag: ""}]);
|
||||
Simulation.init("github.com/status-im/whispervis", [{prop: "plog", name: "plog", embedded: false, exported: false, typ: ptrType$28, tag: ""}, {prop: "stats", name: "stats", embedded: false, exported: false, typ: ptrType$29, tag: ""}]);
|
||||
Wobbling.init("github.com/status-im/whispervis", [{prop: "lastChange", name: "lastChange", embedded: false, exported: false, typ: time.Time, tag: ""}, {prop: "forward", name: "forward", embedded: false, exported: false, typ: $Bool, tag: ""}, {prop: "directions", name: "directions", embedded: false, exported: false, typ: mapType$3, tag: ""}, {prop: "positions", name: "positions", embedded: false, exported: false, typ: mapType$2, tag: ""}]);
|
||||
|
File diff suppressed because one or more lines are too long
@ -17,6 +17,7 @@ type Simulation struct {
|
||||
|
||||
errMsg string
|
||||
hasResults bool
|
||||
inProgress bool
|
||||
}
|
||||
|
||||
// NewSimulation creates new simulation configuration panel. If simulation
|
||||
@ -40,20 +41,29 @@ func (s *Simulation) Render() vecty.ComponentOrHTML {
|
||||
vecty.Markup(
|
||||
vecty.Class("pure-markup-group", "pure-u-1"),
|
||||
),
|
||||
elem.Label(
|
||||
elem.Div(
|
||||
vecty.Markup(
|
||||
vecty.Class("pure-u-1-2"),
|
||||
vecty.MarkupIf(s.inProgress,
|
||||
// disable
|
||||
vecty.Style("pointer-events", "none"),
|
||||
vecty.Style("opacity", "0.4"),
|
||||
),
|
||||
),
|
||||
vecty.Text("Host address:"),
|
||||
),
|
||||
elem.Input(
|
||||
vecty.Markup(
|
||||
prop.Value(s.address),
|
||||
event.Input(s.onEditInput),
|
||||
vecty.Class("pure-input-1-3"),
|
||||
vecty.Style("float", "right"),
|
||||
vecty.Style("margin-right", "10px"),
|
||||
vecty.Style("text-align", "right"),
|
||||
elem.Label(
|
||||
vecty.Markup(
|
||||
vecty.Class("pure-u-1-2"),
|
||||
),
|
||||
vecty.Text("Host address:"),
|
||||
),
|
||||
elem.Input(
|
||||
vecty.Markup(
|
||||
prop.Value(s.address),
|
||||
event.Input(s.onEditInput),
|
||||
vecty.Class("pure-input-1-3"),
|
||||
vecty.Style("float", "right"),
|
||||
vecty.Style("margin-right", "10px"),
|
||||
vecty.Style("text-align", "right"),
|
||||
),
|
||||
),
|
||||
),
|
||||
),
|
||||
@ -63,6 +73,11 @@ func (s *Simulation) Render() vecty.ComponentOrHTML {
|
||||
),
|
||||
elem.Button(
|
||||
vecty.Markup(
|
||||
vecty.MarkupIf(s.inProgress,
|
||||
// disable
|
||||
vecty.Style("pointer-events", "none"),
|
||||
vecty.Style("opacity", "0.4"),
|
||||
),
|
||||
vecty.Class("pure-button"),
|
||||
vecty.Class("pure-u-1-2"),
|
||||
vecty.Style("background", "rgb(28, 184, 65)"),
|
||||
@ -87,6 +102,9 @@ func (s *Simulation) Render() vecty.ComponentOrHTML {
|
||||
),
|
||||
),
|
||||
elem.Break(),
|
||||
vecty.If(s.inProgress, elem.Heading5(
|
||||
vecty.Text("Running simulation..."),
|
||||
)),
|
||||
elem.Div(
|
||||
vecty.If(s.errMsg != "", elem.Paragraph(
|
||||
vecty.Markup(
|
||||
@ -118,6 +136,7 @@ func (s *Simulation) onSimulateClick(e *vecty.Event) {
|
||||
go func() {
|
||||
s.errMsg = ""
|
||||
s.hasResults = false
|
||||
s.inProgress = true
|
||||
vecty.Rerender(s)
|
||||
|
||||
err := s.startSimulation()
|
||||
@ -126,6 +145,7 @@ func (s *Simulation) onSimulateClick(e *vecty.Event) {
|
||||
}
|
||||
|
||||
s.hasResults = err == nil
|
||||
s.inProgress = false
|
||||
vecty.Rerender(s)
|
||||
}()
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user