shell-mirror 1.5.78 → 1.5.80

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "shell-mirror",
3
- "version": "1.5.78",
3
+ "version": "1.5.80",
4
4
  "description": "Access your Mac shell from any device securely. Perfect for mobile coding with Claude Code CLI, Gemini CLI, and any shell tool.",
5
5
  "main": "server.js",
6
6
  "bin": {
@@ -58,8 +58,10 @@
58
58
  <header class="dashboard-header">
59
59
  <div class="header-content">
60
60
  <div class="logo">
61
- <h1>Shell Mirror</h1>
62
- <span class="subtitle">Dashboard</span>
61
+ <a href="/" style="text-decoration: none; color: inherit;">
62
+ <h1>Shell Mirror</h1>
63
+ <span class="subtitle">Dashboard</span>
64
+ </a>
63
65
  </div>
64
66
  <div class="header-right">
65
67
  <div class="user-section" id="user-section">
@@ -46,6 +46,7 @@ class ShellMirrorDashboard {
46
46
  this.user = authStatus.user;
47
47
  await this.loadDashboardData();
48
48
  this.renderAuthenticatedDashboard();
49
+ this.updateLastRefreshTime();
49
50
  this.enableHttpOnlyMode(); // Use HTTP-only mode (no persistent WebSocket)
50
51
  this.startAutoRefresh(); // Start auto-refresh for authenticated users
51
52
  } else {
@@ -99,7 +100,7 @@ class ShellMirrorDashboard {
99
100
  this.lastRefresh = Date.now();
100
101
  const refreshStatus = document.getElementById('refresh-status');
101
102
  if (refreshStatus) {
102
- refreshStatus.textContent = `Last updated: ${new Date(this.lastRefresh).toLocaleTimeString()}`;
103
+ refreshStatus.textContent = `Agents updated: ${new Date(this.lastRefresh).toLocaleTimeString()}`;
103
104
  }
104
105
  }
105
106
 
@@ -400,7 +401,7 @@ class ShellMirrorDashboard {
400
401
  const data = await response.json();
401
402
 
402
403
  if (data.success && data.data && data.data.authenticated) {
403
- return { isAuthenticated: true, user: data.data };
404
+ return { isAuthenticated: true, user: data.data.user };
404
405
  }
405
406
  } catch (error) {
406
407
  console.log('Auth check failed:', error);
@@ -502,13 +503,13 @@ class ShellMirrorDashboard {
502
503
  document.getElementById('user-section').innerHTML = `
503
504
  <div class="dashboard-controls">
504
505
  <span id="connection-status" class="connection-status" style="display: none;"></span>
505
- <span id="refresh-status" class="refresh-status">Initializing...</span>
506
+ <span id="refresh-status" class="refresh-status">Loading...</span>
506
507
  </div>
507
508
  <button class="help-button" onclick="dashboard.showAgentInstructions()" title="How to Use">
508
509
  📖 How to Use
509
510
  </button>
510
511
  <div class="user-info">
511
- <span class="user-name">${this.user.name || this.user.email}</span>
512
+ <span class="user-name">${this.user?.name || this.user?.email || 'User'}</span>
512
513
  <div class="user-dropdown">
513
514
  <button class="dropdown-btn">⚙️</button>
514
515
  <div class="dropdown-content">
@@ -395,7 +395,7 @@
395
395
  }
396
396
 
397
397
  .help-section p {
398
- color: #666;
398
+ color: #333;
399
399
  line-height: 1.6;
400
400
  margin-bottom: 8px;
401
401
  }
@@ -408,7 +408,7 @@
408
408
 
409
409
  .help-section li {
410
410
  padding: 4px 0;
411
- color: #666;
411
+ color: #333;
412
412
  line-height: 1.6;
413
413
  }
414
414