chore: 准备开源发布 - 只保留源代码
移除所有非源代码文件: - 删除 docs/ 目录(所有内部文档) - 删除 tests/ 目录(所有测试文件) - 删除 .github/ 目录(CI/CD 配置) - 删除 .kiro/ 目录(IDE 配置) - 删除 CONTRIBUTING.md, SECURITY.md 更新项目文件: - 重写 README.md,简洁清晰(从 1600+ 行压缩到 237 行) - 更新 .gitignore,忽略所有非源代码文件 - 使用 ASCII art 展示界面布局 - 添加 Shields.io 徽章美化项目 保留的文件: - 源代码:outlook_web/, static/, templates/ - 入口文件:web_outlook_app.py, start.py, outlook_mail_reader.py - 配置文件:requirements.txt, Dockerfile, .dockerignore, .env.example - 项目文档:README.md, LICENSE, .gitignore Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
1 parent
39854520e6
commit
ba83ca3bf6
134 files changed
+200
-32083
No files matched your search
@@ -25,7 +25,7 @@
|
||||
const folderTabs = document.getElementById('folderTabs');
|
||||
if (folderTabs) {
|
||||
folderTabs.style.display = 'flex';
|
||||
document.querySelectorAll('.folder-tab').forEach(tab => {
|
||||
document.querySelectorAll('.email-tab').forEach(tab => {
|
||||
tab.classList.toggle('active', tab.dataset.folder === 'inbox');
|
||||
});
|
||||
}
|
||||
|
||||
@@ -32,7 +32,7 @@
|
||||
|
||||
// 禁用按钮
|
||||
const refreshBtn = document.querySelector('.refresh-btn');
|
||||
const folderTabs = document.querySelectorAll('.folder-tab');
|
||||
const folderTabs = document.querySelectorAll('.email-tab');
|
||||
if (refreshBtn) {
|
||||
refreshBtn.disabled = true;
|
||||
refreshBtn.textContent = '获取中...';
|
||||
|
||||
@@ -32,6 +32,12 @@
|
||||
loadAccountsByGroup(currentGroupId, true);
|
||||
}
|
||||
}
|
||||
} else {
|
||||
// 首次进入:自动选中第一个非临时邮箱分组
|
||||
const firstNormalGroup = groups.find(g => g.name !== '临时邮箱');
|
||||
if (firstNormalGroup) {
|
||||
selectGroup(firstNormalGroup.id);
|
||||
}
|
||||
}
|
||||
}
|
||||
} catch (error) {
|
||||
@@ -87,6 +93,21 @@
|
||||
searchInput.value = '';
|
||||
}
|
||||
|
||||
// 重置右侧邮件列 UI(清除上一个分组的残留状态)
|
||||
currentAccount = null;
|
||||
const accountBar = document.getElementById('currentAccountBar');
|
||||
if (accountBar) accountBar.style.display = 'none';
|
||||
const emailListEl = document.getElementById('emailList');
|
||||
if (emailListEl) emailListEl.innerHTML = '<div class="empty-state"><span class="empty-icon">📬</span><p>请从左侧选择一个邮箱账号</p></div>';
|
||||
const detailSection = document.getElementById('emailDetailSection');
|
||||
if (detailSection) detailSection.style.display = 'none';
|
||||
const folderTabs = document.getElementById('folderTabs');
|
||||
if (folderTabs) folderTabs.style.display = 'none';
|
||||
const emailCount = document.getElementById('emailCount');
|
||||
if (emailCount) emailCount.textContent = '';
|
||||
const methodTag = document.getElementById('methodTag');
|
||||
if (methodTag) methodTag.style.display = 'none';
|
||||
|
||||
// 检查是否是临时邮箱分组
|
||||
const group = groups.find(g => g.id === groupId);
|
||||
isTempEmailGroup = group && group.name === '临时邮箱';
|
||||
|
||||
@@ -1,5 +1,13 @@
|
||||
// ==================== 临时邮箱相关 ====================
|
||||
|
||||
// 复制临时邮箱页面顶栏当前邮箱地址
|
||||
function copyTempEmailCurrent() {
|
||||
const el = document.getElementById('tempEmailCurrentName');
|
||||
if (el && el.textContent && el.textContent !== '选择一个临时邮箱') {
|
||||
copyEmail(el.textContent.trim());
|
||||
}
|
||||
}
|
||||
|
||||
// 加载临时邮箱列表
|
||||
async function loadTempEmails(forceRefresh = false) {
|
||||
const container = document.getElementById('accountList');
|
||||
|
||||
+9
-3
@@ -66,7 +66,13 @@
|
||||
closeSidebar();
|
||||
// Load page data
|
||||
if (page === 'dashboard') loadDashboard();
|
||||
if (page === 'mailbox' && groups.length === 0) loadGroups();
|
||||
if (page === 'mailbox') {
|
||||
if (groups.length === 0) {
|
||||
loadGroups();
|
||||
} else if (currentGroupId) {
|
||||
loadAccountsByGroup(currentGroupId);
|
||||
}
|
||||
}
|
||||
if (page === 'temp-emails' && typeof loadTempEmails === 'function') loadTempEmails(true);
|
||||
if (page === 'settings') loadSettings();
|
||||
if (page === 'refresh-log') loadRefreshLogPage();
|
||||
@@ -429,7 +435,7 @@
|
||||
|
||||
// 禁用按钮
|
||||
const refreshBtn = document.querySelector('.refresh-btn');
|
||||
const folderTabs = document.querySelectorAll('.folder-tab');
|
||||
const folderTabs = document.querySelectorAll('.email-tab');
|
||||
if (refreshBtn) {
|
||||
refreshBtn.disabled = true;
|
||||
}
|
||||
@@ -494,7 +500,7 @@
|
||||
currentFolder = folder;
|
||||
|
||||
// 更新按钮状态
|
||||
document.querySelectorAll('.folder-tab').forEach(tab => {
|
||||
document.querySelectorAll('.email-tab').forEach(tab => {
|
||||
tab.classList.toggle('active', tab.dataset.folder === folder);
|
||||
});
|
||||
|
||||
|
||||
Reference in new issue
Block a user