NodesScreen constructor

NodesScreen(
  1. AppContext ctx
)

Builds the screen and kicks off a load.

Implementation

NodesScreen(this.ctx) {
  _body = div(classes: 'list');
  _refresh = button('Refresh', onClick: ctx.nodes.refresh);

  element = el(
    'div',
    classes: 'stack',
    children: [
      el(
        'div',
        classes: 'toolbar',
        children: [
          el('h1', text: 'Nodes'),
          el('div', classes: 'grow'),
          _refresh,
        ],
      ),
      _body,
    ],
  );

  _sub = ctx.nodes.state.stream.listen(_render);
  _render(ctx.nodes.state.value);
  unawaited(ctx.nodes.load());
}