codedash-app 1.0.0

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.
@@ -0,0 +1,113 @@
1
+ <!DOCTYPE html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="UTF-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>codedash</title>
7
+ <style>{{STYLES}}</style>
8
+ </head>
9
+ <body>
10
+
11
+ <div class="sidebar">
12
+ <div class="sidebar-brand">
13
+ <svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M12 2L2 7l10 5 10-5-10-5z"/><path d="M2 17l10 5 10-5"/><path d="M2 12l10 5 10-5"/></svg>
14
+ codedash
15
+ </div>
16
+ <div class="sidebar-item active" data-view="sessions">
17
+ <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><rect x="3" y="3" width="7" height="7" rx="1"/><rect x="14" y="3" width="7" height="7" rx="1"/><rect x="3" y="14" width="7" height="7" rx="1"/><rect x="14" y="14" width="7" height="7" rx="1"/></svg>
18
+ All Sessions
19
+ </div>
20
+ <div class="sidebar-item" data-view="projects">
21
+ <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M22 19a2 2 0 01-2 2H4a2 2 0 01-2-2V5a2 2 0 012-2h5l2 3h9a2 2 0 012 2z"/></svg>
22
+ Projects
23
+ </div>
24
+ <div class="sidebar-item" data-view="timeline">
25
+ <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><circle cx="12" cy="12" r="10"/><polyline points="12 6 12 12 16 14"/></svg>
26
+ Timeline
27
+ </div>
28
+ <div class="sidebar-item" data-view="activity">
29
+ <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><rect x="3" y="3" width="18" height="18" rx="2"/><rect x="7" y="7" width="3" height="3"/><rect x="14" y="7" width="3" height="3"/><rect x="7" y="14" width="3" height="3"/><rect x="14" y="14" width="3" height="3"/></svg>
30
+ Activity
31
+ </div>
32
+ <div class="sidebar-item" data-view="starred">
33
+ <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><polygon points="12 2 15.09 8.26 22 9.27 17 14.14 18.18 21.02 12 17.77 5.82 21.02 7 14.14 2 9.27 8.91 8.26 12 2"/></svg>
34
+ Starred
35
+ </div>
36
+ <div class="sidebar-divider"></div>
37
+ <div class="sidebar-section">Tools</div>
38
+ <div class="sidebar-item" data-view="claude-only">
39
+ <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M21 15a2 2 0 01-2 2H7l-4 4V5a2 2 0 012-2h14a2 2 0 012 2z"/></svg>
40
+ Claude Code
41
+ </div>
42
+ <div class="sidebar-item" data-view="codex-only">
43
+ <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><polyline points="16 18 22 12 16 6"/><polyline points="8 6 2 12 8 18"/></svg>
44
+ Codex
45
+ </div>
46
+ <div class="sidebar-settings">
47
+ <label>Terminal</label>
48
+ <select id="terminalSelect" onchange="saveTerminalPref(this.value)">
49
+ <option value="">Loading...</option>
50
+ </select>
51
+ <label>Theme</label>
52
+ <select id="themeSelect" onchange="saveThemePref(this.value)">
53
+ <option value="dark">Dark</option>
54
+ <option value="light">Light</option>
55
+ <option value="system">System</option>
56
+ </select>
57
+ </div>
58
+ </div>
59
+
60
+ <div class="main">
61
+ <div class="toolbar">
62
+ <input type="text" class="search-box" placeholder="Search sessions, projects... (press /)" oninput="onSearch(this.value)">
63
+ <select id="tagFilter" class="toolbar-btn" onchange="onTagFilter(this.value)">
64
+ <option value="">All Tags</option>
65
+ <option value="bug">bug</option>
66
+ <option value="feature">feature</option>
67
+ <option value="research">research</option>
68
+ <option value="infra">infra</option>
69
+ <option value="deploy">deploy</option>
70
+ <option value="review">review</option>
71
+ </select>
72
+ <input type="date" class="date-input" id="dateFrom" onchange="onDateFilter()" title="From date">
73
+ <input type="date" class="date-input" id="dateTo" onchange="onDateFilter()" title="To date">
74
+ <button class="toolbar-btn" onclick="toggleGroup()" id="groupBtn">Group</button>
75
+ <button class="toolbar-btn" onclick="toggleSelectMode()" id="selectBtn">Select</button>
76
+ <button class="toolbar-btn" onclick="refreshData()">Refresh</button>
77
+ <span class="stats" id="stats"></span>
78
+ </div>
79
+ <div class="content" id="content"></div>
80
+ </div>
81
+
82
+ <div class="overlay" id="overlay" onclick="closeDetail()"></div>
83
+ <div class="detail-panel" id="detailPanel">
84
+ <div class="detail-header">
85
+ <strong id="detailTitle">Session Detail</strong>
86
+ <button class="detail-close" onclick="closeDetail()">&times;</button>
87
+ </div>
88
+ <div class="detail-body" id="detailBody"></div>
89
+ </div>
90
+
91
+ <div class="confirm-overlay" id="confirmOverlay">
92
+ <div class="confirm-box">
93
+ <h3 id="confirmTitle">Delete Session?</h3>
94
+ <p id="confirmText">This will permanently delete the session file and remove it from history.</p>
95
+ <div class="confirm-id" id="confirmId"></div>
96
+ <div class="confirm-btns">
97
+ <button class="btn-cancel" onclick="closeConfirm()">Cancel</button>
98
+ <button class="btn-delete" id="confirmAction" onclick="confirmDelete()">Delete</button>
99
+ </div>
100
+ </div>
101
+ </div>
102
+
103
+ <div class="bulk-bar" id="bulkBar" style="display:none">
104
+ <span id="bulkCount">0 selected</span>
105
+ <button class="launch-btn btn-delete" onclick="bulkDelete()">Delete Selected</button>
106
+ <button class="launch-btn btn-secondary" onclick="clearSelection()">Cancel</button>
107
+ </div>
108
+
109
+ <div class="toast" id="toast"></div>
110
+
111
+ <script>{{SCRIPT}}</script>
112
+ </body>
113
+ </html>