mirror of
https://github.com/meshcore-dev/map.meshcore.dev.git
synced 2026-04-20 22:13:50 +00:00
loader, node nick colors, node emoji icons, fresh indicator
This commit is contained in:
parent
21103bf4fa
commit
06dfdd0469
5 changed files with 511 additions and 171 deletions
106
index.html
106
index.html
|
|
@ -13,38 +13,11 @@
|
|||
<title>MeshCore Node Map</title>
|
||||
</head>
|
||||
<body class="light">
|
||||
|
||||
<div class="container">
|
||||
<div id="map"></div>
|
||||
<div id="app" v-if="app.nodes" v-cloak>
|
||||
<dialog class="add-dialog background no-round" ref="dialogAddNode">
|
||||
<h6>Add node / Replace node</h6>
|
||||
<div>
|
||||
<div class="tabs">
|
||||
<a class="active" data-ui="#add-self" tabindex="0">Your Node</a>
|
||||
<a data-ui="#add-contact" tabindex="0">From Contacts</a>
|
||||
</div>
|
||||
<div class="page active" id="add-self">
|
||||
<img src="./img/button_self.jpg">
|
||||
<img src="./img/share_self.jpg">
|
||||
</div>
|
||||
<div class="page" id="add-contact">
|
||||
<img src="./img/button_contact.jpg">
|
||||
<img src="./img/share_contact.jpg">
|
||||
</div>
|
||||
</div>
|
||||
<div class="small-space"></div>
|
||||
<div>
|
||||
Please paste your meshcore link.<br>
|
||||
If you use link with same public key as node already on the map, it will get replaced.
|
||||
</div>
|
||||
<div class="field border"><input placeholder="meshcore:// link" v-model="app.link"></div>
|
||||
<nav class="right-align">
|
||||
<button class="transparent link" @click="dialogAddNode.close()">Cancel</button>
|
||||
<button class="transparent link" @click="addNode">Submit</button>
|
||||
</nav>
|
||||
</dialog>
|
||||
<button class="manual-add square round light-blue extra" title="add node from meshcore:// link" @click="dialogAddNode.showModal()"><i class="extra">add</i></button>
|
||||
<div id="app" v-cloak>
|
||||
<div class="loading" v-if="app.loading"></div>
|
||||
<a class="manual-add square round light-blue extra" title="Add node to map" target="_blank" href="https://github.com/meshcore-dev/MeshCore/blob/main/docs/faq.md#512-q-how-do-i-add-a-node-to-the-meshcore-map"><i class="extra">add</i></a>
|
||||
<div class="stats">
|
||||
<span title="Stats">
|
||||
<i>monitoring</i>
|
||||
|
|
@ -57,33 +30,58 @@
|
|||
</a>
|
||||
</div>
|
||||
<form class="search no-margin" action="javascript:;">
|
||||
<menu class="left no-wrap" id="node-filter" data-ui="#node-filter">
|
||||
<li>
|
||||
<label class="checkbox">
|
||||
<input type="checkbox" value="1" v-model="app.nodeFilter"><span>Clients</span>
|
||||
</label>
|
||||
</li>
|
||||
<li>
|
||||
<label class="checkbox">
|
||||
<input type="checkbox" value="2" v-model="app.nodeFilter"><span>Repeaters</span>
|
||||
</label>
|
||||
</li>
|
||||
<li>
|
||||
<label class="checkbox">
|
||||
<input type="checkbox" value="3" v-model="app.nodeFilter"><span>Room Servers</span>
|
||||
</label>
|
||||
</li>
|
||||
<li>
|
||||
<label class="checkbox">
|
||||
<input type="checkbox" value="4" v-model="app.nodeFilter"><span>Sensors</span>
|
||||
</label>
|
||||
</li>
|
||||
<!--li v-if="app.presets.length > 0">
|
||||
<label class="select">
|
||||
<select v-model="app.presetIndex">
|
||||
<option v-for="(preset, i) of app.presets" :value="i">{{ preset.name }}</option>
|
||||
</select>
|
||||
</label>
|
||||
</li-->
|
||||
<li class="padding">
|
||||
<div class="field label prefix fill small">
|
||||
<i>today</i>
|
||||
<input type="date" v-model="app.fromDate" placeholder=" ">
|
||||
<label>Last updated</label>
|
||||
</div>
|
||||
</li>
|
||||
<li style="flex-direction:column;gap:0">
|
||||
<span>Clustering zoom level</span>
|
||||
<label class="slider tiny">
|
||||
<input min="10" max="17" type="range" v-model="app.clusteringZoom">
|
||||
<span></span>
|
||||
</label>
|
||||
</li>
|
||||
<li v-if="filtersActive">
|
||||
<button class="small max" @click="clearFilters">Clear filters</button>
|
||||
</li>
|
||||
</menu>
|
||||
<div class="field border no-margin">
|
||||
<input type="text" class="background" list="nodes" v-model="app.search" placeholder="Search Nodes">
|
||||
<!--button class="filter circle transparent" data-ui="#node-filter">
|
||||
<input type="text" class="background" list="nodes" v-model="app.search" placeholder="Search Nodes" v-if="app.nodes">
|
||||
<button type="button" class="filter" :class="{ circle: !filtersActive, transparent: !filtersActive, 'error-container': filtersActive }" data-ui="#node-filter">
|
||||
<i>filter_alt</i>
|
||||
<span v-if="filtersActive">Filters active</span>
|
||||
</button>
|
||||
<menu class="left no-wrap" id="node-filter" data-ui="#node-filter">
|
||||
<li>
|
||||
<label class="checkbox">
|
||||
<input type="checkbox" value="1" v-model="app.nodeFilter"><span>Clients</span>
|
||||
</label>
|
||||
</li>
|
||||
<li>
|
||||
<label class="checkbox">
|
||||
<input type="checkbox" value="2" v-model="app.nodeFilter"><span>Repeaters</span>
|
||||
</label>
|
||||
</li>
|
||||
<li>
|
||||
<label class="checkbox">
|
||||
<input type="checkbox" value="3" v-model="app.nodeFilter"><span>Room Servers</span>
|
||||
</label>
|
||||
</li>
|
||||
<li>
|
||||
<label class="checkbox">
|
||||
<input type="checkbox" value="3" v-model="app.nodeFilter"><span>Sensors</span>
|
||||
</label>
|
||||
</li>
|
||||
</menu-->
|
||||
</div>
|
||||
<article class="search-results no-margin no-padding" v-if="searchResults?.length > 0">
|
||||
<ul class="list no-space border">
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue