@shawnowen/comet-mcp 2.3.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.
- package/LICENSE +21 -0
- package/README.md +196 -0
- package/dist/cdp-client.d.ts +118 -0
- package/dist/cdp-client.d.ts.map +1 -0
- package/dist/cdp-client.js +867 -0
- package/dist/cdp-client.js.map +1 -0
- package/dist/comet-ai.d.ts +35 -0
- package/dist/comet-ai.d.ts.map +1 -0
- package/dist/comet-ai.js +396 -0
- package/dist/comet-ai.js.map +1 -0
- package/dist/http-server.d.ts +3 -0
- package/dist/http-server.d.ts.map +1 -0
- package/dist/http-server.js +463 -0
- package/dist/http-server.js.map +1 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +1174 -0
- package/dist/index.js.map +1 -0
- package/dist/tab-group-archive.d.ts +13 -0
- package/dist/tab-group-archive.d.ts.map +1 -0
- package/dist/tab-group-archive.js +128 -0
- package/dist/tab-group-archive.js.map +1 -0
- package/dist/tab-groups.d.ts +86 -0
- package/dist/tab-groups.d.ts.map +1 -0
- package/dist/tab-groups.js +250 -0
- package/dist/tab-groups.js.map +1 -0
- package/dist/types.d.ts +70 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +3 -0
- package/dist/types.js.map +1 -0
- package/extension/background.js +1094 -0
- package/extension/manifest.json +22 -0
- package/extension/sidepanel.css +1068 -0
- package/extension/sidepanel.html +145 -0
- package/extension/sidepanel.js +1186 -0
- package/package.json +59 -0
|
@@ -0,0 +1,145 @@
|
|
|
1
|
+
<!DOCTYPE html>
|
|
2
|
+
<html lang="en">
|
|
3
|
+
|
|
4
|
+
<head>
|
|
5
|
+
<meta charset="UTF-8">
|
|
6
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
7
|
+
<title>Comet Session Manager</title>
|
|
8
|
+
<link rel="stylesheet" href="sidepanel.css">
|
|
9
|
+
</head>
|
|
10
|
+
|
|
11
|
+
<body>
|
|
12
|
+
<!-- Search Bar -->
|
|
13
|
+
<div class="search-container">
|
|
14
|
+
<div class="search-wrapper">
|
|
15
|
+
<svg class="search-icon" viewBox="0 0 16 16" width="14" height="14">
|
|
16
|
+
<path fill="currentColor"
|
|
17
|
+
d="M11.742 10.344a6.5 6.5 0 1 0-1.397 1.398h-.001l3.85 3.85a1 1 0 0 0 1.415-1.414l-3.85-3.85zm-5.598.856a5 5 0 1 1 0-10 5 5 0 0 1 0 10z" />
|
|
18
|
+
</svg>
|
|
19
|
+
<input type="text" id="search-input" class="search-input" placeholder="Search tabs, groups, URLs…"
|
|
20
|
+
autocomplete="off" spellcheck="false">
|
|
21
|
+
<button id="search-clear" class="search-clear hidden" title="Clear search">×</button>
|
|
22
|
+
</div>
|
|
23
|
+
</div>
|
|
24
|
+
|
|
25
|
+
<!-- Toolbar -->
|
|
26
|
+
<div class="toolbar">
|
|
27
|
+
<button id="btn-save-all" class="toolbar-btn toolbar-btn-primary" title="Save all open tabs to archive">
|
|
28
|
+
<svg viewBox="0 0 16 16" width="14" height="14">
|
|
29
|
+
<path fill="currentColor"
|
|
30
|
+
d="M2 2.5a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 .354.854L8.354 8.354a.5.5 0 0 1-.708 0L2.146 2.854A.5.5 0 0 1 2 2.5zm0 4a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 .354.854L8.354 12.354a.5.5 0 0 1-.708 0L2.146 6.854A.5.5 0 0 1 2 6.5z" />
|
|
31
|
+
</svg>
|
|
32
|
+
Save All
|
|
33
|
+
</button>
|
|
34
|
+
<button id="btn-import" class="toolbar-btn" title="Import from OneTab">
|
|
35
|
+
<svg viewBox="0 0 16 16" width="14" height="14">
|
|
36
|
+
<path fill="currentColor"
|
|
37
|
+
d="M8 1a.5.5 0 0 1 .5.5v6.793l2.146-2.147a.5.5 0 0 1 .708.708l-3 3a.5.5 0 0 1-.708 0l-3-3a.5.5 0 0 1 .708-.708L7.5 8.293V1.5A.5.5 0 0 1 8 1zM2 12.5a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5z" />
|
|
38
|
+
</svg>
|
|
39
|
+
Import
|
|
40
|
+
</button>
|
|
41
|
+
<button id="btn-export" class="toolbar-btn" title="Export all sessions">
|
|
42
|
+
<svg viewBox="0 0 16 16" width="14" height="14">
|
|
43
|
+
<path fill="currentColor"
|
|
44
|
+
d="M8 15a.5.5 0 0 1-.5-.5V7.707L5.354 9.854a.5.5 0 1 1-.708-.708l3-3a.5.5 0 0 1 .708 0l3 3a.5.5 0 0 1-.708.708L8.5 7.707V14.5A.5.5 0 0 1 8 15zM2 3.5a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5z" />
|
|
45
|
+
</svg>
|
|
46
|
+
Export
|
|
47
|
+
</button>
|
|
48
|
+
</div>
|
|
49
|
+
|
|
50
|
+
<!-- Main Content Sections -->
|
|
51
|
+
<div class="sections-container" id="sections-container">
|
|
52
|
+
|
|
53
|
+
<!-- Live Sessions Section -->
|
|
54
|
+
<section class="section" id="section-live">
|
|
55
|
+
<div class="section-header" data-section="live">
|
|
56
|
+
<span class="section-chevron">▸</span>
|
|
57
|
+
<span class="section-title">Live Sessions</span>
|
|
58
|
+
<span class="section-count" id="live-count">0</span>
|
|
59
|
+
</div>
|
|
60
|
+
<div class="section-content" id="live-content">
|
|
61
|
+
<div class="empty-state" id="live-empty">
|
|
62
|
+
<span class="empty-icon">🪟</span>
|
|
63
|
+
<span>No tab groups open</span>
|
|
64
|
+
</div>
|
|
65
|
+
<!-- Tab group tree renders here -->
|
|
66
|
+
</div>
|
|
67
|
+
</section>
|
|
68
|
+
|
|
69
|
+
<!-- Archived Sessions Section -->
|
|
70
|
+
<section class="section" id="section-archived">
|
|
71
|
+
<div class="section-header" data-section="archived">
|
|
72
|
+
<span class="section-chevron">▸</span>
|
|
73
|
+
<span class="section-title">Archived Sessions</span>
|
|
74
|
+
<span class="section-count" id="archived-count">0</span>
|
|
75
|
+
</div>
|
|
76
|
+
<div class="section-content collapsed" id="archived-content">
|
|
77
|
+
<div class="empty-state" id="archived-empty">
|
|
78
|
+
<span class="empty-icon">📦</span>
|
|
79
|
+
<span>No archived sessions</span>
|
|
80
|
+
</div>
|
|
81
|
+
<!-- Archived groups render here -->
|
|
82
|
+
</div>
|
|
83
|
+
</section>
|
|
84
|
+
|
|
85
|
+
<!-- Recently Closed Section -->
|
|
86
|
+
<section class="section" id="section-recent">
|
|
87
|
+
<div class="section-header" data-section="recent">
|
|
88
|
+
<span class="section-chevron">▸</span>
|
|
89
|
+
<span class="section-title">Recently Closed</span>
|
|
90
|
+
<span class="section-count" id="recent-count">0</span>
|
|
91
|
+
</div>
|
|
92
|
+
<div class="section-content collapsed" id="recent-content">
|
|
93
|
+
<div class="empty-state" id="recent-empty">
|
|
94
|
+
<span class="empty-icon">🕐</span>
|
|
95
|
+
<span>No recently closed tabs</span>
|
|
96
|
+
</div>
|
|
97
|
+
<!-- Recently closed items render here -->
|
|
98
|
+
</div>
|
|
99
|
+
</section>
|
|
100
|
+
|
|
101
|
+
</div>
|
|
102
|
+
|
|
103
|
+
<!-- Import Dialog (Modal) -->
|
|
104
|
+
<div class="modal-overlay hidden" id="import-overlay">
|
|
105
|
+
<div class="modal" id="import-modal">
|
|
106
|
+
<div class="modal-header">
|
|
107
|
+
<h3>Import from OneTab</h3>
|
|
108
|
+
<button class="modal-close" id="import-close">×</button>
|
|
109
|
+
</div>
|
|
110
|
+
<div class="modal-body">
|
|
111
|
+
<p class="modal-description">Paste your OneTab export below. Groups are separated by blank lines.</p>
|
|
112
|
+
<textarea id="import-textarea" class="import-textarea"
|
|
113
|
+
placeholder="https://example.com | Page Title https://another.com | Another Page https://group2.com | Group 2 Tab"
|
|
114
|
+
rows="8"></textarea>
|
|
115
|
+
<div id="import-preview" class="import-preview hidden">
|
|
116
|
+
<!-- Parsed preview renders here -->
|
|
117
|
+
</div>
|
|
118
|
+
<div id="import-duplicates" class="import-warning hidden">
|
|
119
|
+
<svg viewBox="0 0 16 16" width="14" height="14">
|
|
120
|
+
<path fill="currentColor"
|
|
121
|
+
d="M8 1a7 7 0 1 0 0 14A7 7 0 0 0 8 1zm0 10.5a.75.75 0 1 1 0-1.5.75.75 0 0 1 0 1.5zM8.75 8a.75.75 0 0 1-1.5 0V4.5a.75.75 0 0 1 1.5 0V8z" />
|
|
122
|
+
</svg>
|
|
123
|
+
<span id="import-duplicate-text"></span>
|
|
124
|
+
</div>
|
|
125
|
+
</div>
|
|
126
|
+
<div class="modal-footer">
|
|
127
|
+
<button id="import-cancel" class="btn btn-secondary">Cancel</button>
|
|
128
|
+
<button id="import-confirm" class="btn btn-primary" disabled>Import</button>
|
|
129
|
+
</div>
|
|
130
|
+
</div>
|
|
131
|
+
</div>
|
|
132
|
+
|
|
133
|
+
<!-- Connection Status Footer -->
|
|
134
|
+
<footer class="status-bar" id="status-bar">
|
|
135
|
+
<div class="status-indicator">
|
|
136
|
+
<span class="status-dot" id="status-dot"></span>
|
|
137
|
+
<span class="status-text" id="status-text">Connecting…</span>
|
|
138
|
+
</div>
|
|
139
|
+
<button class="reconnect-btn hidden" id="btn-reconnect" title="Reconnect to CDP bridge">Reconnect</button>
|
|
140
|
+
</footer>
|
|
141
|
+
|
|
142
|
+
<script src="sidepanel.js"></script>
|
|
143
|
+
</body>
|
|
144
|
+
|
|
145
|
+
</html>
|