-
-
-
-
- Current tip Hash: |
- @this.ChainIndexer.Tip.HashBlock |
-
-
-
+
+
+
+
+
+
+
@this.ChainIndexer.Tip.Height
+
+
+
+
+
Block Height
-
-
-
-
-
-
Peers
-
-
-
+
+
+
+
+
+
Peers
+
+
+
+
+ IP ADDRESS |
+ CONNECTION |
+ AGENT |
+ VERSION |
+
+
+
+ @foreach (var peer in this.ConnectionManager.ConnectedPeers)
+ {
- IP ADDRESS |
- CONNECTION |
- AGENT |
- VERSION |
+ @peer.RemoteSocketEndpoint.ToString() |
+ @(peer.Inbound ? "Inbound" : "Outbound") |
+ @peer.PeerVersion?.UserAgent |
+ @peer.PeerVersion?.Version |
-
-
- @foreach (var peer in this.ConnectionManager.ConnectedPeers)
- {
-
- @peer.RemoteSocketEndpoint.ToString() |
- @(peer.Inbound ? "Inbound" : "Outbound") |
- @peer.PeerVersion?.UserAgent |
- @peer.PeerVersion?.Version |
-
- }
-
-
-
+ }
+
+
-
+
}
@code
{
@@ -185,4 +160,4 @@
{
ModalService.Show("Add Node", typeof(Modal.ModalAddNode));
}
-}
+}
\ No newline at end of file
diff --git a/src/Features/Blockcore.Features.NodeHost/UI/Pages/_Host.cshtml b/src/Features/Blockcore.Features.NodeHost/UI/Pages/_Host.cshtml
index c6b3a61cd..d85163493 100644
--- a/src/Features/Blockcore.Features.NodeHost/UI/Pages/_Host.cshtml
+++ b/src/Features/Blockcore.Features.NodeHost/UI/Pages/_Host.cshtml
@@ -12,7 +12,7 @@
-
Dashboard
+
@this.Network.CoinTicker Dashboard
diff --git a/src/Features/Blockcore.Features.NodeHost/UI/Shared/Dropdown.razor b/src/Features/Blockcore.Features.NodeHost/UI/Shared/Dropdown.razor
new file mode 100644
index 000000000..1593c4bea
--- /dev/null
+++ b/src/Features/Blockcore.Features.NodeHost/UI/Shared/Dropdown.razor
@@ -0,0 +1,33 @@
+@typeparam TItem
+
+
+
+
+
+
+
+@code {
+ [Parameter]
+ public RenderFragment InitialTip{get;set;}
+ [Parameter]
+ public RenderFragment ChildContent{get;set;}
+ [Parameter]
+ public EventCallback
OnSelected {get;set;}
+
+ private bool show = false;
+ private RenderFragment Tip ;
+
+ protected override void OnInitialized(){ this.Tip = InitialTip; }
+ public async Task HandleSelect(TItem item, RenderFragment contentFragment)
+ {
+ this.Tip= contentFragment.Invoke(item);
+ this.show=false;
+ StateHasChanged();
+ await this.OnSelected.InvokeAsync(item);
+ }
+}
\ No newline at end of file
diff --git a/src/Features/Blockcore.Features.NodeHost/UI/Shared/DropdownListItem.razor b/src/Features/Blockcore.Features.NodeHost/UI/Shared/DropdownListItem.razor
new file mode 100644
index 000000000..0979f10a3
--- /dev/null
+++ b/src/Features/Blockcore.Features.NodeHost/UI/Shared/DropdownListItem.razor
@@ -0,0 +1,12 @@
+@typeparam TItem
+ Dropdown.HandleSelect(Item, ChildContent)" >@ChildContent(Item)
+
+@code {
+ [CascadingParameter(Name="Dropdown")]
+ public Dropdown Dropdown {get;set;}
+
+ [Parameter]
+ public TItem Item{get;set;}
+ [Parameter]
+ public RenderFragment ChildContent {get;set;}
+}
\ No newline at end of file
diff --git a/src/Features/Blockcore.Features.NodeHost/UI/Shared/NavMenu.razor b/src/Features/Blockcore.Features.NodeHost/UI/Shared/NavMenu.razor
index 0743a305d..397100ce6 100644
--- a/src/Features/Blockcore.Features.NodeHost/UI/Shared/NavMenu.razor
+++ b/src/Features/Blockcore.Features.NodeHost/UI/Shared/NavMenu.razor
@@ -4,7 +4,12 @@
@inject IFullNode fullnode