{{title item.Node}}
<DataLoader as |api|>

  <BlockSlot @name="data">
    <EventSource @src={{sessions}} />
    <EventSource @src={{tomography}} />
    <EventSource @src={{item}} @onerror={{queue (action api.dispatchError)}} />
  </BlockSlot>

  <BlockSlot @name="error">
    <AppError @error={{api.error}} />
  </BlockSlot>

  <BlockSlot @name="disconnected" as |Notification|>
    {{#if (eq api.error.status "404")}}
      <Notification @sticky={{true}}>
        <p data-notification role="alert" class="warning notification-update">
          <strong>Warning!</strong>
          This node no longer exists in the catalog.
        </p>
      </Notification>
    {{else}}
      <Notification @sticky={{true}}>
        <p data-notification role="alert" class="warning notification-update">
          <strong>Warning!</strong>
          An error was returned whilst loading this data, refresh to try again.
        </p>
      </Notification>
    {{/if}}
  </BlockSlot>

  <BlockSlot @name="loaded">
    <AppView @class="node show">
        <BlockSlot @name="notification" as |status type|>
          {{!TODO: Move sessions to its own folder within nodes }}
          {{partial 'dc/nodes/notifications'}}
        </BlockSlot>
        <BlockSlot @name="breadcrumbs">
            <ol>
                <li><a data-test-back href={{href-to 'dc.nodes'}}>All Nodes</a></li>
            </ol>
        </BlockSlot>
        <BlockSlot @name="header">
            <h1>
              {{ item.Node }}
            </h1>
            <label for="toolbar-toggle"></label>
        </BlockSlot>
        <BlockSlot @name="nav">
            <TabNav @items={{
              compact
                  (array
                              (hash label="Health Checks" href=(href-to "dc.nodes.show.healthchecks") selected=(is-href "dc.nodes.show.healthchecks"))
                              (hash label="Service Instances" href=(href-to "dc.nodes.show.services") selected=(is-href "dc.nodes.show.services"))
    (if tomography.distances  (hash label="Round Trip Time" href=(href-to "dc.nodes.show.rtt") selected=(is-href "dc.nodes.show.rtt")) '')
                              (hash label="Lock Sessions" href=(href-to "dc.nodes.show.sessions") selected=(is-href "dc.nodes.show.sessions"))
                              (hash label="Metadata" href=(href-to "dc.nodes.show.metadata") selected=(is-href "dc.nodes.show.metadata"))
                  )
            }}/>
        </BlockSlot>
        <BlockSlot @name="actions">
          <CopyButton @value={{item.Address}} @name="Address">{{item.Address}}</CopyButton>
        </BlockSlot>
        <BlockSlot @name="content">
          {{outlet}}
        </BlockSlot>
    </AppView>

  </BlockSlot>
</DataLoader>
