- Add unit tests (hostname-validator, TLDs, payload-schemas) and integration tests for message handler registry - Refactor native host message router into handler registry (handlers/state, tunnels, ssh, rdp, backup, ca, connections) - Add ESLint config and npm test + lint steps in CI - Dashboard: visibility-based refresh pause, configurable refresh interval (2s/5s/10s/paused) - Accessibility: ARIA on nav and modals, focus trap and restore, prefers-reduced-motion - Empty states: primary action buttons for virtual hosts, servers, service tunnels - Native host rate limiting for backup and CA operations; update SECURITY.md - CONTRIBUTING: "Adding a new dashboard page", dev workflow; add npm run dev script
This commit is contained in:
@@ -33,7 +33,8 @@ function updateSwarmsTable(state) {
|
||||
<div class="empty-state">
|
||||
<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5"><rect x="2" y="3" width="6" height="6" rx="1"/><rect x="16" y="3" width="6" height="6" rx="1"/><rect x="9" y="15" width="6" height="6" rx="1"/><line x1="5" y1="9" x2="12" y2="15"/><line x1="19" y1="9" x2="12" y2="15"/></svg>
|
||||
<div class="empty-state-title">No server tunnels</div>
|
||||
<div class="empty-state-desc">Click "New Server" to expose a local port as an hs:// tunnel</div>
|
||||
<div class="empty-state-desc">Expose a local port to the Holesail network as an hs:// key.</div>
|
||||
<button type="button" class="btn btn-primary empty-state-btn" data-open-modal="modal-startServer">Add your first server tunnel</button>
|
||||
</div>
|
||||
</td></tr>`;
|
||||
_updateServerBulkBar();
|
||||
|
||||
Reference in New Issue
Block a user