Abner
20be153209
feat(giffgaff): 更新手动激活SIM卡状态显示(手动激活目前不可用)
2025-10-28 00:28:51 +08:00
Abner
94ece38eab
feat(giffgaff): 添加 x-esim-key 请求头以支持 eSIM 验证流程
...
在调用 giffgaff MFA 验证接口时,新增 `x-esim-key` 请求头,
用于传递 eSIM 访问密钥,确保验证请求的安全性和合法性。
该密钥通过环境变量 `ESIM_ACCESS_KEY` 注入,若未定义则为空字符串。
2025-10-28 00:28:00 +08:00
Abner
8a8f52de95
fix(giffgaff): 调整短信激活区域的 HTML 结构
...
将 `smsInlineSection` 区域内的 `card card-body` 类应用到内部新添加的 div 上,
以确保样式结构更清晰、符合 Bootstrap 规范。
2025-10-28 00:05:01 +08:00
Abner
ebe03039e7
feat(giffgaff): 重构 GraphQL 请求结构并优化 eSIM 流程
...
- 调整 GraphQL 请求体格式,使用 accessToken 和 mfaSignature 字段替代 headers 中的 Authorization
- 移除冗余的 headers 配置,统一请求结构
- 优化 eSIM 预订与交换流程,整合 swapSim 操作逻辑
- 更新 MFA 验证接口调用方式,简化参数传递
- 改进错误处理与状态更新逻辑,提升流程稳定性
2025-10-27 23:54:27 +08:00
Abner
a0167de84c
feat(netlify): 支持解析数组格式的GraphQL请求体
...
当GraphQL请求体为数组时,取第一个元素进行处理;若数组为空,则返回400错误。
同时保持对对象格式请求体的兼容性。
2025-10-27 23:41:43 +08:00
Abner
f1039b6249
feat(giffgaff): 更新 GraphQL 请求格式并添加 Authorization 头
...
- 将 fetch 请求的 body 从对象改为数组形式以支持批量请求
- 添加 Authorization 请求头,使用 Bearer token 格式
- 调整 query 和 mutation 的参数结构,将变量提取到 variables 字段中
- 优化请求逻辑以适配新的 GraphQL API 格式
2025-10-27 23:27:33 +08:00
Abner
31e7e95767
feat(giffgaff): 更新 GraphQL 请求格式以支持数组结构响应
...
将多个 GraphQL 请求的 body 结构从对象更新为数组形式,
并相应地调整了对响应数据的解析逻辑,以兼容新的返回格式。
同时统一添加 Authorization 请求头以支持 Bearer Token 认证。
2025-10-27 23:21:16 +08:00
Abner
dce7ec94e9
feat(giffgaff): 优化 eSIM 卡交换流程以支持二次验证码验证
...
将原先在初始阶段直接执行 swapSim 的逻辑调整为:
- 初始仅获取用于交换的 MFA 引用(swapRef),不立即执行交换
- 在用户输入第二个验证码并通过验证后,再调用 swapSim 接口完成实际交换
- 更新 GraphQL 请求和 Netlify 函数调用,传递 cookie 和新的签名(swapSignature)
- 增强错误处理机制,确保即使 swapSim 失败也能继续轮询 LPA 状态
2025-10-27 23:16:19 +08:00
Abner
cde0da6d89
feat(giffgaff): 添加accessToken和mfaSignature到多个GraphQL请求中
...
在eSIM相关的多个GraphQL请求中添加了accessToken和mfaSignature字段,
包括reserveESim、simSwapMfaChallenge、SwapSim和eSimDownloadToken操作,
以增强身份验证和安全性。
2025-10-27 22:48:58 +08:00
Abner
24710521cf
feat(giffgaff): 更新 MFA 验证方式以绕过 CORS 限制
...
重新将 Giffgaff 的 MFA 验证请求改为通过 Netlify Function 代理调用,
避免浏览器 CORS 策略拦截。同时调整请求头和请求体结构,
支持传递 accessToken 和 cookie 用于后端验证。
2025-10-27 22:26:40 +08:00
Abner
72dfca3688
feat(giffgaff): 更新 MFA 验证流程以支持直接调用 Giffgaff 端点
...
重构了 giffgaff 的 MFA 验证逻辑,不再通过 Netlify 函数代理请求,
而是分两步直接与 Giffgaff API 交互:
1. 先获取 CSRF token;
2. 再携带 token 和验证码发起验证请求。
同时移除了对 Netlify 函数相关参数的依赖,使验证更稳定可靠。
2025-10-27 22:08:06 +08:00
Abner
92680e7f85
feat(giffgaff): 更新 GraphQL 请求格式并优化 eSIM 预订与交换流程
...
- 调整 fetch 请求 body 结构,去除数组包装,直接使用对象
- 优化响应数据解析逻辑,统一从 responseData.data 获取数据
- 修复 GraphQL 查询和变更操作的参数传递问题
- 提高代码可读性和维护性,确保接口调用一致性
2025-10-27 21:53:25 +08:00
Abner
858d92bc23
feat(giffgaff): 更新 eSIM 激活流程中的 GraphQL 接口调用方式
...
- 短信验证码发送接口替换为 GraphQL 接口
- MFA 验证接口更新为新的 Netlify 函数端点
- 所有 GraphQL 请求结构调整为数组形式以支持批量操作
- 增强错误处理与状态提示逻辑
- 优化 eSIM 预订及激活相关字段解析逻辑
2025-10-27 20:28:41 +08:00
Abner
3fe62db649
fix(giffgaff): 移除邮箱验证码选项并修复HTML结构
...
移除了验证码接收方式中的邮箱选项,只保留短信验证方式。同时修复了HTML标签的嵌套结构问题,确保页面元素正确闭合。
2025-10-27 20:07:18 +08:00
Abner
1382463ab1
docs(README): 更新Giffgaff eSIM申请流程文档
...
移除文档中的内存引用链接,简化流程说明
将REFACTORING_COMPLETE.md文件移至docs目录下
2025-10-08 22:27:14 +08:00
Abner
996a60b703
docs(readme): 添加 Giffgaff 使用教程链接
...
新增指向 Giffgaff 使用教程文档的链接,方便用户查阅如何通过 eSIM Tools 网站
完成 giffgaff 的 eSIM 激活流程。
该教程包含从登录、MFA 认证、获取会员信息到最终激活 eSIM 的完整步骤说明,
并配有相关界面截图辅助理解操作流程。
2025-10-07 23:40:17 +08:00
Abner
8057361f63
fix(giffgaff): 更新eSIM激活页面文案和布局
...
调整了"我已完成预定eSIM申请"按钮的描述文案,使其更加准确。同时将"前往激活页面"
链接按钮移动至折叠区域内部,并增加底部边距以优化视觉间距。
2025-10-07 21:38:38 +08:00
Abner
87ac08e234
feat(giffgaff): 添加前往激活页面的链接按钮
...
在手动输入eSIM激活码的切换按钮旁添加了一个新链接,
用户可以点击直接跳转到giffgaff官网的激活页面。
该链接以新标签页形式打开,并设置了适当的样式。
2025-10-07 21:28:22 +08:00
Abner
3f752d7b2a
feat(giffgaff): 更新 eSIM 状态和激活码显示结构
...
将 eSIM 状态和激活码的显示区域拆分为多个 span 元素,
以便更灵活地更新状态信息。同时,调整自动激活按钮的显示逻辑,
默认隐藏自动激活按钮,仅在 Cookie 登录时显示,手动确认按钮保持始终可见。
2025-10-07 21:23:40 +08:00
Abner
e7f776f4b2
Merge pull request #9 from Silentely/copilot/fix-22141172-1030251938-659d410e-b318-4309-ab8f-efdf3a4e71bd
...
Comprehensive Code Quality & Performance Refactoring with Advanced Modules
2025-10-04 13:38:31 +08:00
copilot-swe-agent[bot]
419c80a760
docs: Add comprehensive refactoring completion summary
...
- Add REFACTORING_COMPLETE.md with full overview
- Document all 16 files modified/created
- Include performance metrics, examples, and next steps
- Mark project ready for production deployment
Co-authored-by: Silentely <22141172+Silentely@users.noreply.github.com >
2025-10-04 03:17:58 +00:00
copilot-swe-agent[bot]
978b12f402
docs: Add quick reference and complete changes overview
...
- Add QUICK_REFERENCE.md with cheat sheet and common patterns
- Add CHANGES_OVERVIEW.txt with complete summary
- Include performance metrics visualization
- Document all commands and next steps
Co-authored-by: Silentely <22141172+Silentely@users.noreply.github.com >
2025-10-04 03:15:34 +00:00
copilot-swe-agent[bot]
f9d8fc4baf
docs: Add comprehensive integration guide and improvements summary
...
- Add INTEGRATION_GUIDE.md with real-world examples
- Add IMPROVEMENTS_SUMMARY.md with complete overview
- Include migration checklist and best practices
- Document all performance improvements and metrics
Co-authored-by: Silentely <22141172+Silentely@users.noreply.github.com >
2025-10-04 03:13:23 +00:00
copilot-swe-agent[bot]
9a3171dac4
feat: Add advanced modules for API, performance monitoring, and resource optimization
...
- Add APIService with retry, caching, and request deduplication
- Add PerformanceMonitor for Core Web Vitals tracking
- Add ResourceHintsManager for intelligent preloading
- Add AppConfig for centralized configuration management
- Add comprehensive module documentation
Co-authored-by: Silentely <22141172+Silentely@users.noreply.github.com >
2025-10-04 03:11:00 +00:00
copilot-swe-agent[bot]
bd522e7d7e
Refactor: Improve code quality and performance across scripts and modules
...
- Add parallel processing and caching to image optimization
- Enhance compression with Brotli and intelligent filtering
- Improve Performance module with memory leak prevention
- Optimize webpack config with better chunking and caching
- Add utility library with debounce/throttle/retry functions
- Create validation middleware for Express server
- Add comprehensive architecture documentation
Co-authored-by: Silentely <22141172+Silentely@users.noreply.github.com >
2025-10-04 03:07:23 +00:00
copilot-swe-agent[bot]
f7a2187312
Initial plan
2025-10-04 02:59:10 +00:00
Abner
3a8b89e66b
Merge pull request #6 from Silentely/dependabot/npm_and_yarn/axios-1.12.0
...
build(deps): bump axios from 1.11.0 to 1.12.0
2025-09-19 21:30:59 +08:00
Abner
25ba91e2ef
docs(README): 更新项目文档和使用指南
...
- 优化了 README.md 的结构和内容,使其更加清晰和易于理解
- 添加了详细的使用指南和常见问题解答
- 更新了项目结构和开发流程说明
- 移除了冗余信息,精简了文档内容
2025-09-19 21:27:31 +08:00
dependabot[bot]
4183c1ef69
build(deps): bump axios from 1.11.0 to 1.12.0
...
Bumps [axios](https://github.com/axios/axios ) from 1.11.0 to 1.12.0.
- [Release notes](https://github.com/axios/axios/releases )
- [Changelog](https://github.com/axios/axios/blob/v1.x/CHANGELOG.md )
- [Commits](https://github.com/axios/axios/compare/v1.11.0...v1.12.0 )
---
updated-dependencies:
- dependency-name: axios
dependency-version: 1.12.0
dependency-type: direct:production
...
Signed-off-by: dependabot[bot] <support@github.com >
2025-09-13 17:43:14 +00:00
Abner
576f574d29
feat: 更新品牌标识和版权年份
...
- 将品牌名称从 "eSIM工具集" 修改为 "eSIM Tools"
- 更新 GitHub 仓库地址和相关链接
- 添加自定义应用品牌与年份范围配置功能
- 实现统一版权页脚自动注入
- 优化部分页面结构和样式
2025-08-12 19:17:22 +08:00
Abner
e20fe9a95c
refactor(giffgaff): 优化验证码发送渠道和调试提示
...
- 在 eSIM 激活页面添加验证码发送渠道选择
- 根据选择的验证码渠道显示不同的提示信息
- 在控制台添加 API 调用的日志记录
- 优化 MFA Challenge 请求的处理逻辑
2025-08-12 00:17:46 +08:00
Abner
19e9d58094
feat(giffgaff): 添加 eSIM 交换验证码验证功能
...
- 新增交换 SIM 专用验证码输入区域
- 实现交换验证码的发送和验证逻辑
- 优化 eSIM 激活流程,增加安全性验证步骤
2025-08-11 23:24:28 +08:00
Abner
9d78e48fe3
fix(esim): 优化 eSIM 激活流程中的 swap 操作
...
- 在 swapSim 之前增加 simSwapMfaChallenge 步骤,获取专用的 swap ref
- 更新 swapSim 请求,使用新获取的 swap ref 或回退到旧的 ref
- 优化错误处理,确保流程在遇到问题时能够继续进行
2025-08-11 23:08:52 +08:00
Abner
fc534ab810
feat(security): 添加 MFA 引用到 GraphQL 请求
...
- 在 giffgaff-graphql.js 中添加 mfaRef 到请求头
- 在 giffgaff-sms-activate.js 中向 GraphQL 请求体添加 mfaRef
- 在 giffgaff_complete_esim.html 中向 swapSim mutation 添加 mfaRef
2025-08-11 23:00:31 +08:00
Abner
dd27453c97
feat(qrcode): 更新二维码生成供应商并调整相关配置
...
- 将二维码生成供应商从 api.qrserver.com 更新为 qrcode.show
- 更新了相关文档、代码和测试中的二维码生成 URL
- 调整了内容安全策略(CSP)以允许新的二维码生成 URL
- 更新了 webpack 配置,为新的二维码生成 URL 添加缓存策略
2025-08-11 21:41:54 +08:00
Abner
f23640c0b9
refactor(giffgaff): 优化 eSIM 激活流程和错误处理
...
- 移除自动激活步骤,直接尝试获取 LPA
- 增加轮询机制,提高获取 LPA 成功率
- 添加对 giffgaff 官网 Cookie 的检查和提示
- 提供快捷按钮引导用户进行 Cookie 登录
- 优化错误处理和用户提示信息
2025-08-11 21:19:23 +08:00
Abner
5aa01c9b38
feat(giffgaff): 增加 eSIM 手动激活选项并优化验证流程
...
- 新增手动激活和短信验证码激活两种方式供用户选择
- 改进短信验证码验证流程,支持 token 和 cookie 双通道验证
- 优化用户界面,增加激活方式选择提示和状态显示
- 调整后端 API 调用逻辑,分离验证和激活步骤
2025-08-11 20:40:41 +08:00
Abner
2f8fa43b14
feat(security): 集成 Cloudflare Turnstile 验证
...
- 在 netlify.toml 中添加 Turnstile 相关的 CSP 规则
- 实现 BFF 代理中的 Turnstile token 校验逻辑
- 更新前端页面以支持 Turnstile 验证
- 修改 API 管理器以自动附带 Turnstile token
- 通过环境变量注入 Turnstile site key
2025-08-11 19:34:24 +08:00
Abner
5125c6538b
feat(netlify): 实现 BFF (Backend for Frontend) 架构
...
- 新增 Edge Function 作为前端和后端无服务器函数之间的代理
- 修改前端 API 调用路径,使用 /bff/* 前缀
- 移除前端直接传递 authKey,改为在 Edge Function 中添加
- 优化了请求转发和响应处理
2025-08-11 19:00:28 +08:00
Abner
5d19e0cc72
docs(README): 更新功能说明并添加界面预览
...
- 新增界面预览章节,展示主要页面功能截图
- 添加使用要点与近期变更说明
- 增设常见问题解答章节
- 移除 TODO 列表
- 添加复制控制台代码按钮
2025-08-11 18:45:44 +08:00
Abner
d1d440621e
feat(security): 添加访问控制和身份验证机制
2025-08-11 00:31:51 +08:00
Abner
695bf8acea
refactor(giffgaff): 优化 MFA 验证流程并修复 eSIM 相关问题
...
- 改进 MFA 验证流程,优先使用 Cookie 进行验证
- 添加 XSRF-TOKEN 处理,增强安全性
- 修复 eSIM 状态显示逻辑,确保信息准确展示
- 优化邮箱验证码发送和验证过程,提高用户体验
2025-08-11 00:19:47 +08:00
Abner
106737e7c9
feat(netlify): 优化 Cookie 验证和 MFA 验证流程
...
- 添加 Dashboard 预热步骤,提高 MFA 接口成功率
- 获取并使用 CSRF 令牌,提升 MFA 接口通过率
- 优化 Cookie 合并逻辑,处理 Set-Cookie 覆盖
- 改进 verify-cookie 函数,增加 JWT 检查
- 更新前端界面,支持短信验证码选项
2025-08-11 00:05:20 +08:00
Abner
ecc0e66755
feat(giffgaff): 实现短信验证码一键激活功能
...
- 新增 giffgaff-sms-activate.js 函数,实现短信验证码激活流程
- 在前端集成短信激活功能,支持一键激活并获取 LPA
- 优化登录界面,增加 Cookie 登录方式
- 实现 Cookie 有效性定时检测,提高用户体验
2025-08-10 23:45:19 +08:00
Abner
36a34656fb
feat(giffgaff/simyo): 优化 eSIM 申请流程和用户体验
...
- 新增模式徽标和当前模式状态显示
- 改进步骤指示器,增加已完成步骤的可点击功能
- 优化 LPA 生成后的显示逻辑,不再展示原始 LPA
- 增加"返回上一步"按钮,提升用户操作灵活性
- 调整设备更换流程的展示逻辑,使用类控制显示和隐藏
- 优化提示框位置计算,始终贴近元素下方
2025-08-10 23:24:21 +08:00
Abner
e4004cc4d9
refactor(giffgaff): 优化 eSIM 信息展示和工具提示
...
- 移除 SSN 状态显示,合并到激活码中展示
- 调整 eSIM 信息显示布局,居中对齐
- 优化工具提示显示逻辑,支持持续显示
- 添加委托绑定以支持动态渲染的激活按钮
2025-08-10 22:27:00 +08:00
Abner
d86588ce07
feat(esim): 增加 SSN 显示并优化二维码生成
...
- 在 eSIM 状态区域新增 SSN 显示项
- 优化二维码生成逻辑,支持多个外部服务供应商
- 添加二维码生成失败时的备用方案
- 调整二维码容器样式,提高用户体验
2025-08-10 22:10:29 +08:00
Abner
a656663ba8
feat(giffgaff): 增加手动输入激活码功能并优化相关流程
...
- 新增"我已完成申请(已有激活码/SSN)"快捷入口
- 实现手动输入激活码和SSN功能
- 优化自动激活流程,提高成功率
- 调整请求头参数,提升兼容性
2025-08-10 22:00:24 +08:00
Abner
600a79a395
refactor(giffgaff & simyo): 调整 eSIM tooltip 位置偏移
...
- 将 tooltip 的垂直偏移量从 4 和 8 调整为统一的 2
- 此修改旨在优化 tooltip 的显示位置,防止其超出视窗范围
2025-08-10 21:52:49 +08:00
Abner
b8c524e885
fix(giffgaff/simyo): 还原用户在eSIM流程中的进度和选择
...
- 根据用户状态恢复到正确的步骤
- 显示已获取的激活码或SSN信息
- 若已生成二维码,自动展示二维码界面
- 优化了页面加载后的用户体验和流程连贯性
2025-08-10 21:46:26 +08:00