Skip to content

Commit

Permalink
Feat: Support Proxy Authentication (#6)
Browse files Browse the repository at this point in the history
* allow config proxy auth info

* add i18n support

* support providing auth info
  • Loading branch information
SYM01 authored May 24, 2024
1 parent d6c5b4e commit 12c03ee
Show file tree
Hide file tree
Showing 19 changed files with 685 additions and 53 deletions.
41 changes: 33 additions & 8 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@ env:

jobs:
build:
name: Build
runs-on: ubuntu-latest
steps:
- name: Checkout
Expand All @@ -40,16 +41,28 @@ jobs:
- name: Output version
run: echo "Current version ${{ env.CRX_VER }}"

- name: Pull i18n files
uses: transifex/cli-action@v2
with:
token: ${{ secrets.TX_TOKEN }}
args: pull -a

- name: Rebuild the dist directory
run: npm run build

- name: Pack artifacts
run: |
mkdir ./release/
cd ./dist/ && zip -r ../release/crx.zip ./
- name: Upload artifact
uses: actions/upload-artifact@v4
with:
name: Proxyverse
path: ./dist/
path: ./release/*

release:
release-github:
name: Publish on Github Release
if: ${{ github.ref_type == 'tag' }}
runs-on: ubuntu-latest
needs:
Expand All @@ -60,21 +73,33 @@ jobs:
uses: actions/download-artifact@v4
with:
name: Proxyverse
path: ./dist/

- name: Pack artifact
run: cd ./dist/ && zip -r ../Proxyverse.zip ./
path: ./release/

- name: Upload to release page
uses: softprops/action-gh-release@v2
with:
files: ./Proxyverse.zip
files: ./release/*


release-edge:
name: Publish on Edge
if: ${{ github.ref_type == 'tag' }}
runs-on: ubuntu-latest
needs:
- build

steps:
- name: Download artifact
uses: actions/download-artifact@v4
with:
name: Proxyverse
path: ./release/

- name: Upload to MS Edge
uses: wdzeng/edge-addon@v1
with:
product-id: 6fa97660-6c21-41e4-87e6-06a88509753f
zip-path: ./Proxyverse.zip
zip-path: ./release/crx.zip
client-id: ${{ secrets.EDGE_CLIENT_ID }}
client-secret: ${{ secrets.EDGE_CLIENT_SECRET }}
access-token-url: ${{ secrets.EDGE_ACCESS_TOKEN_URL }}
12 changes: 12 additions & 0 deletions .tx/config
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
[main]
host = https://app.transifex.com

[o:bytevet:p:proxyverse:r:messagesjson]
file_filter = public/_locales/<lang>/messages.json
source_file = public/_locales/en/messages.json
type = CHROME
minimum_perc = 0
resource_name = messages.json
replace_edited_strings = false
keep_translations = false

10 changes: 7 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,21 +3,25 @@
[![Build Extension](https://github.com/bytevet/proxyverse/actions/workflows/build.yml/badge.svg)](https://github.com/bytevet/proxyverse/actions/workflows/build.yml)
[![Test](https://github.com/bytevet/proxyverse/actions/workflows/test.yml/badge.svg)](https://github.com/bytevet/proxyverse/actions/workflows/test.yml)

Proxyverse is a simple tool to help you switch between different proxy profiles.Proxyverse is an alternative extension to Proxy SwitchyOmega.
Proxyverse is a simple tool to help you switch between different proxy profiles. Proxyverse is an alternative extension to Proxy SwitchyOmega.

Proxyverse is built with the latest dev stack that complies with the latest standard of Chrome web extension.

It's still in the early development stage, and more features are still on the way, including but no limited to

- [x] Basic profile switch support
- [ ] Support proxy authentication
- [x] Support proxy authentication
- [ ] Support auto switch rules
- [ ] Support more languages
- [x] Support more languages
- [ ] Support customized preference
- [ ] Support Safari
- [ ] Support firefox


# How to download?

- [Chrome](https://chromewebstore.google.com/detail/proxyverse/igknmaflmijecdmjpcgollghmipkfbho)


# Making a Contribution

Expand Down
2 changes: 2 additions & 0 deletions manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
"manifest_version": 3,
"name": "Proxyverse",
"version": "<IN_PACKAGE_JSON>",
"version_name": "<IN_PACKAGE_JSON>",
"description": "__MSG_app_desc__",
"default_locale": "en",
"icons": {
Expand All @@ -22,6 +23,7 @@
"permissions": [
"storage",
"proxy",
"webRequest",
"webRequestAuthProvider"
]
}
4 changes: 2 additions & 2 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 1 addition & 0 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@
"scripts": {
"dev": "vite",
"test": "jest",
"i18n:sync": "tx pull -a",
"build:test": "vue-tsc && vite build",
"build": "vue-tsc && vite build",
"dist": "rm -f dist.zip && cd ./dist/ && zip -r ../dist.zip ./",
Expand Down
16 changes: 16 additions & 0 deletions public/_locales/en/messages.json
Original file line number Diff line number Diff line change
Expand Up @@ -67,6 +67,19 @@
"config_section_proxy_server_ftp": {
"message": "FTP"
},
"config_section_proxy_auth_tips": {
"message": "Set username and password if your proxy requires authentication"
},
"config_section_proxy_auth_title": {
"message": "Proxy Authentication"
},
"config_section_proxy_auth_username": {
"message": "Username"
},
"config_section_proxy_auth_password": {
"message": "Password"
},

"config_section_bypass_list": {
"message": "Bypass List"
},
Expand All @@ -92,6 +105,9 @@
"config_action_cancel": {
"message": "Discard Change"
},
"config_action_clear": {
"message": "Clear"
},

"config_feedback_saved": {
"message": "The profile had been saved"
Expand Down
130 changes: 130 additions & 0 deletions public/_locales/pt_BR/messages.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,130 @@
{
"app_desc": {
"message": "Uma ferramenta para ajudar você a gerenciar e alternar seus perfis de proxy"
},


"nav_preference": {
"message": "Preferência"
},
"nav_config": {
"message": "Config"
},
"nav_custome_profiles": {
"message": "Perfis Personalizados"
},


"theme_light_mode": {
"message": "Modo claro"
},
"theme_dark_mode": {
"message": "Modo escuro"
},
"theme_auto_mode": {
"message": "Siga o sistema"
},


"mode_auto_switch": {
"message": "Auto Switch"
},
"mode_direct": {
"message": "Direto"
},
"mode_system": {
"message": "Usar Proxy do Sistema"
},
"mode_profile_create": {
"message": "Criar Novo Perfil"
},


"config_proxy_type": {
"message": "Tipo de Proxy"
},
"config_proxy_type_proxy": {
"message": "Proxy"
},
"config_proxy_type_pac": {
"message": "Script PAC"
},
"config_proxy_type_default": {
"message": "Mesmo como o Padrão"
},
"config_section_proxy_server": {
"message": "Servidor Proxy"
},
"config_section_proxy_server_default": {
"message": "Servidor Padrão"
},
"config_section_proxy_server_http": {
"message": "HTTP"
},
"config_section_proxy_server_https": {
"message": "HTTPS"
},
"config_section_proxy_server_ftp": {
"message": "FTP"
},
"config_section_proxy_auth_tips": {
"message": "Defina nome de usuário e senha se o seu proxy exigir autenticação"
},
"config_section_proxy_auth_title": {
"message": "Autenticação de Proxy"
},
"config_section_proxy_auth_username": {
"message": "Nome de usuário"
},
"config_section_proxy_auth_password": {
"message": "Senha"
},

"config_section_bypass_list": {
"message": "Lista de Bypass"
},
"config_section_advance": {
"message": "Configuração Avançada"
},
"config_reference_bypass_list": {
"message": "Saiba mais sobre a lista de bypass."
},

"config_action_edit": {
"message": "Editar"
},
"config_action_delete": {
"message": "Excluir Perfil"
},
"config_action_delete_double_confirm": {
"message": "Você tem certeza de que deseja excluir o perfil atual"
},
"config_action_save": {
"message": "Salvar"
},
"config_action_cancel": {
"message": "Descartar alteração"
},
"config_action_clear": {
"message": "Claro"
},

"config_feedback_saved": {
"message": "O perfil foi salvo"
},
"config_feedback_deleted": {
"message": "O perfil foi deletado"
},
"config_feedback_error_occured": {
"message": "Ocorreu um erro: $1"
},


"form_is_required": {
"message": "$1 é necessário."
},

"_": {
"message": "<DUMMY>"
}
}
Loading

0 comments on commit 12c03ee

Please sign in to comment.