mirror of
https://github.com/yaklang/yaklang-chrome-extension.git
synced 2026-09-22 03:10:43 +08:00
Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
62cb22d2ab | ||
|
|
2c88e8764a | ||
|
|
70c33af717 | ||
|
|
74c5d4ae2b | ||
|
|
462648a71f | ||
|
|
6b45661fe3 | ||
|
|
fd275d5e7d | ||
|
|
b08a806ce7 | ||
|
|
5104c5b620 | ||
|
|
f3d41a3c6c | ||
|
|
598314a111 | ||
|
|
bb822b2d5b | ||
|
|
3e99ba57ac | ||
|
|
8e2af7a869 | ||
|
|
47ccb37a26 | ||
|
|
5cb1d1fa22 | ||
|
|
391f7292e7 | ||
|
|
5dc3c4c248 | ||
|
|
19c5b6e2ba |
@@ -3,8 +3,9 @@ name: Build and Release
|
||||
on: workflow_dispatch
|
||||
|
||||
jobs:
|
||||
build-and-publish:
|
||||
build-and-release:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- name: Checkout code
|
||||
uses: actions/checkout@v4
|
||||
@@ -21,18 +22,17 @@ jobs:
|
||||
- name: Build project
|
||||
run: yarn build
|
||||
|
||||
- name: Get version
|
||||
id: version
|
||||
run: |
|
||||
VERSION=$(jq -r '.version' build/manifest.json)
|
||||
echo "version=${VERSION}" >> $GITHUB_OUTPUT
|
||||
echo "build_time=$(date +'%Y-%m-%d %H:%M:%S')" >> $GITHUB_OUTPUT
|
||||
|
||||
- name: Zip build artifacts
|
||||
run: |
|
||||
cd build
|
||||
zip -r ../extension.zip .
|
||||
|
||||
- name: Generate version number
|
||||
id: version
|
||||
run: |
|
||||
echo "version=1.0.${{ github.run_number }}" >> $GITHUB_OUTPUT
|
||||
echo "build_time=$(date +'%Y-%m-%d %H:%M:%S')" >> $GITHUB_OUTPUT
|
||||
|
||||
- name: Create Release
|
||||
id: create_release
|
||||
uses: actions/create-release@v1
|
||||
@@ -57,27 +57,3 @@ jobs:
|
||||
asset_path: ./extension.zip
|
||||
asset_name: yakit-chrome-extension-v${{ steps.version.outputs.version }}.zip
|
||||
asset_content_type: application/zip
|
||||
|
||||
- name: Upload Extension To OSS
|
||||
uses: tvrcgo/upload-to-oss@master
|
||||
with:
|
||||
key-id: ${{ secrets.OSS_KEY_ID }}
|
||||
key-secret: ${{ secrets.OSS_KEY_SECRET }}
|
||||
region: oss-accelerate
|
||||
bucket: yaklang
|
||||
assets: |
|
||||
extension.zip:/chrome-extension/yakit-chrome-extension-v${{ steps.version.outputs.version }}.zip
|
||||
|
||||
- name: Update OSS latest version file
|
||||
run: echo ${{ steps.version.outputs.version }} > ./extension-version.txt
|
||||
|
||||
- name: Upload Version File to OSS
|
||||
uses: tvrcgo/upload-to-oss@master
|
||||
with:
|
||||
key-id: ${{ secrets.OSS_KEY_ID }}
|
||||
key-secret: ${{ secrets.OSS_KEY_SECRET }}
|
||||
region: oss-accelerate
|
||||
bucket: yaklang
|
||||
assets: |
|
||||
./extension-version.txt:/chrome-extension/latest-version.txt
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"manifest_version": 3,
|
||||
"name": "Yakit Chrome Endpoint",
|
||||
"version": "0.0.7",
|
||||
"version": "1.0",
|
||||
"description": "A Endpoint for Yakit MITM or more",
|
||||
"options_ui": {
|
||||
"page": "proxy/options.html",
|
||||
@@ -24,7 +24,7 @@
|
||||
},
|
||||
"content_scripts": [
|
||||
{
|
||||
"matches": ["<all_urls>","http://mitm/"],
|
||||
"matches": ["http://mitm/"],
|
||||
"run_at": "document_start",
|
||||
"js": ["proxy/content.js"]
|
||||
}
|
||||
|
||||
+6
-13
@@ -290,16 +290,6 @@ async function checkAndSetInitialProxy() {
|
||||
// 确保默认配置存在
|
||||
await ProxySettings.setDefaultConfigs();
|
||||
|
||||
// 获取上次保存的代理配置
|
||||
const lastProxy = await proxyStore.getCurrentProxy();
|
||||
|
||||
if (lastProxy) {
|
||||
// 如果有上次的配置,恢复它
|
||||
console.log('Restoring last proxy configuration:', lastProxy);
|
||||
await handleSetProxyConfig(lastProxy, () => {});
|
||||
return;
|
||||
}
|
||||
|
||||
// 获取当前的代理设置
|
||||
const settings = await getProxySettings();
|
||||
console.log('Current proxy settings:', settings);
|
||||
@@ -348,7 +338,7 @@ async function checkAndSetInitialProxy() {
|
||||
}
|
||||
}
|
||||
|
||||
// 如果没有之前的配置也没有检测到代理,才设置为系统代理
|
||||
// 如果没有检测到代理或已存在配置,则设置为系统代理
|
||||
await handleSetProxyConfig({
|
||||
id: 'system',
|
||||
name: '[系统代理]',
|
||||
@@ -356,6 +346,9 @@ async function checkAndSetInitialProxy() {
|
||||
enabled: true
|
||||
}, () => {});
|
||||
|
||||
// 设置认证监听
|
||||
await ProxyAuth.setupAuthListener();
|
||||
|
||||
} catch (error) {
|
||||
console.error('Error during initialization:', error);
|
||||
}
|
||||
@@ -363,10 +356,10 @@ async function checkAndSetInitialProxy() {
|
||||
|
||||
// 修改 setupProxyHandlers 函数
|
||||
export function setupProxyHandlers() {
|
||||
// 设置代理错误处理
|
||||
// 设置代理错误处理和认证
|
||||
ProxyAuth.setupErrorHandler();
|
||||
// 设置认证监听
|
||||
ProxyAuth.setupAuthListener();
|
||||
|
||||
// 设置代理请求监听器
|
||||
setupProxyRequestListener();
|
||||
|
||||
|
||||
+606
-881
File diff suppressed because it is too large
Load Diff
@@ -43,9 +43,9 @@ export class ProxySettings {
|
||||
]);
|
||||
}
|
||||
// 确保日志存储已初始化
|
||||
const logs = await proxyStore.getLogs();
|
||||
const logs = await proxyStore.getLogs(); // 使用 getLogs 而不是 getProxyLogs
|
||||
if (!logs || logs.length === 0) {
|
||||
await proxyStore.clearLogs();
|
||||
await proxyStore.clearLogs(); // 初始化日志存储
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -237,25 +237,21 @@ export const ProxySwitch: React.FC<ProxySwitchProps> = () => {
|
||||
const menuItems: MenuProps['items'] = [
|
||||
...FIXED_MODES.map(mode => ({
|
||||
key: mode.key,
|
||||
icon: <span className="menu-icon" style={{
|
||||
color: currentMode === mode.key ? 'var(--yakit-primary)' : mode.color
|
||||
}}>{mode.icon}</span>,
|
||||
label: `${mode.name}${currentMode === mode.key ? ' ✅' : ''}`,
|
||||
icon: <span className="menu-icon" style={{ color: mode.color }}>{mode.icon}</span>,
|
||||
label: mode.name,
|
||||
className: `${currentMode === mode.key ? 'menu-item-selected' : ''} ${isLoading ? 'menu-item-loading' : ''}`,
|
||||
title: mode.name.replace(/[\[\]]/g, '')
|
||||
})),
|
||||
{ type: 'divider' },
|
||||
...customProxies.map(proxy => ({
|
||||
key: proxy.key,
|
||||
icon: <span className="menu-icon" style={{
|
||||
color: currentMode === proxy.key ? 'var(--yakit-primary)' : proxy.color
|
||||
}}>
|
||||
icon: <span className="menu-icon" style={{ color: proxy.color }}>
|
||||
{proxy.config.proxyType === 'pac_script' ? '📜' : <GlobalOutlined />}
|
||||
</span>,
|
||||
label: <span style={{
|
||||
color: currentMode === proxy.key ? 'var(--yakit-primary)' : 'inherit',
|
||||
opacity: isLoading ? 0.7 : 1
|
||||
}}>{proxy.name}{currentMode === proxy.key ? ' ✅' : ''}</span>,
|
||||
}}>{proxy.name}</span>,
|
||||
className: `${currentMode === proxy.key ? 'menu-item-selected' : ''} ${isLoading ? 'menu-item-loading' : ''}`,
|
||||
title: proxy.config.scheme
|
||||
? `${proxy.config.scheme.toUpperCase()} ${proxy.config.host}:${proxy.config.port}`
|
||||
|
||||
@@ -107,7 +107,7 @@ export const ProxySettings: React.FC<ProxySettingsProps> = ({
|
||||
// 处理固定代理服务器模式
|
||||
const bypassList = values.bypassList
|
||||
? values.bypassList.split('\n').map(line => line.trim()).filter(line => line.length > 0)
|
||||
: [""];
|
||||
: ["localhost", "127.0.0.1"];
|
||||
|
||||
updatedConfig = {
|
||||
id: editingConfig.id,
|
||||
|
||||
Reference in New Issue
Block a user