Add visual feedback (loading spinner) in DataMigration.vue when importing non-encrypted backup files to improve user experience."

This commit is contained in:
nap0o committed 2026-02-20 16:56:25 +08:00
1 parent 1c5dd21c42
commit 8815195e36
4 files changed
+5 -28

No files matched your search

+1
View File
@@ -15,4 +15,5 @@ backend/package-lock.json
frontend/.vscode
frontend/node_modules
frontend/dist
frontend/package-lock.json
+2 -2
View File
@@ -5,7 +5,7 @@
它允许你完全掌控自己的 2FA 数据,支持多端同步、WebDAV 备份、加密导出,并且完全免费部署在 Cloudflare 的边缘网络上。
> **免责声明**
> 本项目代码 `100%` 由 `Gemini 3.5 Pro` 生成,作者不对任何数据丢失负责。
> 本项目代码 `100%` 由 `Gemini 3 Pro` 生成,作者不对任何数据丢失负责。
## ✨ 功能特性
@@ -47,7 +47,7 @@
2. 填写信息:
- **Application Name**: 2FAuth (或任意名称)
- **Homepage URL**: `https://你的Worker子域名.workers.dev` (部署后可修改为Worker绑定的自定义域名)
- **Authorization callback URL**: `https://你的Worker子域名.workers.dev/api/oauth/callback` (部署后可修改为Worker绑定的自定义域名)
- **Authorization callback URL**: `https://你的Worker子域名.workers.dev/oauth/callback` (部署后可修改为Worker绑定的自定义域名)
3. 创建后,保存 `Client ID` 并生成一个新的 `Client Secret`。
### 4. 配置 GitHub Secrets
-24
View File
@@ -1,24 +0,0 @@
# Logs
logs
*.log
npm-debug.log*
yarn-debug.log*
yarn-error.log*
pnpm-debug.log*
lerna-debug.log*
node_modules
dist
dist-ssr
*.local
# Editor directories and files
.vscode/*
!.vscode/extensions.json
.idea
.DS_Store
*.suo
*.ntvs*
*.njsproj
*.sln
*.sw?
+2 -2
View File
@@ -22,7 +22,7 @@
<template #header>
<div class="card-header"><el-icon><Download /></el-icon> <span>数据导入</span></div>
</template>
<div class="card-body">
<div class="card-body" v-loading="isImporting && !showDecryptDialog" :element-loading-text="loadingText">
<p class="desc">支持从各类 2FA 软件或本系统的备份文件中恢复数据。导入时会自动跳过已存在的重复账号。</p>
<div class="import-options">
<el-button plain @click="triggerImport('encrypted', '.json')">🔒 本系统加密备份 (.json)</el-button>
@@ -174,7 +174,7 @@ const submitImportData = async () => {
return ElMessage.warning('请输入解密密码')
}
loadingText.value = '正在解密并导入数据...'
loadingText.value = currentImportType.value === 'encrypted' ? '正在解密并导入数据...' : '正在导入数据...'
isImporting.value = true
try {
const data = await request('/api/accounts/import', {