feat: 按域名授权、iframe 多帧填充、自动提交限流修正,并补齐工程规范与文档
安全与权限: - 站点访问权限改为 optional_host_permissions,保存配置时逐域名授权;移除 host_permissions 与 tabs,安装提示不再出现全站数据访问与浏览记录 - 主口令不再写入 storage.session,改用 IndexedDB 中不可导出的 CryptoKey 句柄恢复解锁,锁定即丢弃 - content script 注入范围只注册已授权域名,并随权限变化即时收敛 自动登录: - 支持 iframe 内的登录表单:脚本注入所有帧,逐帧按自身地址匹配配置 - 手动填充改为逐帧探测,定向发送到真正含密码框的帧 - 限流修正:只在真正触发提交后计数;判定登录成功后立即清零;达到上限时页面给出可见提示;重置判断只看启用中的配置 - SPA 重试改为 DOM 变更门控 + 退避,并单独监听已发现的 Shadow Root 工程化与文档: - 引入 ESLint(扁平配置)与 Prettier,CI 增加 lint 与 format:check - 信息类日志改为 debugLog(默认静默,chrome.storage.local.debugLog 开关) - 测试 123 → 128 用例(新增权限、iframe、限流相关用例) - README / PRIVACY / CHANGELOG 同步
This commit is contained in:
+10
-1
@@ -5,6 +5,10 @@
|
||||
"private": true,
|
||||
"scripts": {
|
||||
"typecheck": "tsc --noEmit",
|
||||
"lint": "eslint src tests scripts",
|
||||
"lint:fix": "eslint src tests scripts --fix",
|
||||
"format": "prettier --write \"src/**/*.ts\" \"scripts/**/*.mjs\" \"tests/**/*.js\"",
|
||||
"format:check": "prettier --check \"src/**/*.ts\" \"scripts/**/*.mjs\" \"tests/**/*.js\"",
|
||||
"build": "node scripts/build.mjs",
|
||||
"build:release": "node scripts/build.mjs --release",
|
||||
"watch": "node scripts/build.mjs --watch",
|
||||
@@ -14,9 +18,14 @@
|
||||
"test:only": "node --test tests/*.test.js"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@eslint/js": "^10.0.1",
|
||||
"@types/chrome": "^0.0.287",
|
||||
"esbuild": "^0.28.2",
|
||||
"eslint": "^10.10.0",
|
||||
"globals": "^17.12.0",
|
||||
"jsdom": "^29.1.1",
|
||||
"typescript": "^5.6.0"
|
||||
"prettier": "^3.9.7",
|
||||
"typescript": "^5.6.0",
|
||||
"typescript-eslint": "^8.70.0"
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user