Compare commits

...
8 Commits
Author SHA1 Message Date
liwei 82d316af83 ci: fix go version env 2023-10-08 16:42:33 +08:00
liwei 150953a033 chore: upgrade go version to 1.20 2023-10-08 16:40:53 +08:00
liwei f30ad6641f ci: fix xgo version 2023-10-08 16:04:24 +08:00
liwei 7019f18635 release: v1.3.13 2023-10-08 15:36:13 +08:00
Levi c0338c3d8e feat: auto recognize magnet uri (#230) 2023-10-08 15:29:19 +08:00
Levi fe55f1bd54 feat: adapts to Android 14 (#229) 2023-10-06 11:51:12 +08:00
liwei 48f8c60672 ci: disable auto translate 2023-09-22 15:34:45 +08:00
Elliot cc97cedf0f feat: improve zh-TW translate (#224) 2023-09-21 22:08:19 +08:00
11 changed files with 56 additions and 35 deletions

No files matched your search

+2 -3
View File
@@ -4,7 +4,7 @@ on:
workflow_dispatch: workflow_dispatch:
env: env:
GO_VERSION: 1.19 GO_VERSION: "1.20"
FLUTTER_VERSION: 3.10.6 FLUTTER_VERSION: 3.10.6
permissions: permissions:
@@ -133,9 +133,8 @@ jobs:
go-version: ${{ env.GO_VERSION }} go-version: ${{ env.GO_VERSION }}
- name: Build - name: Build
run: | run: |
docker pull techknowlogick/xgo:go-1.19.x
go install src.techknowlogick.com/xgo@latest go install src.techknowlogick.com/xgo@latest
xgo --targets=darwin/arm64 -tags="nosqlite" -ldflags="-w -s" -buildmode=c-shared -pkg=bind/desktop -out=libgopeed . xgo -go go-$GO_VERSION.x --targets=darwin/arm64 -tags="nosqlite" -ldflags="-w -s" -buildmode=c-shared -pkg=bind/desktop -out=libgopeed .
mv libgopeed-*.dylib libgopeed.dylib mv libgopeed-*.dylib libgopeed.dylib
- uses: actions/upload-artifact@v3 - uses: actions/upload-artifact@v3
with: with:
+1 -1
View File
@@ -17,7 +17,7 @@ on:
- "Dockerfile" - "Dockerfile"
env: env:
GO_VERSION: 1.19 GO_VERSION: "1.20"
permissions: permissions:
contents: write contents: write
+1 -1
View File
@@ -27,7 +27,7 @@ on:
- "go.sum" - "go.sum"
env: env:
GO_VERSION: 1.19 GO_VERSION: "1.20"
FLUTTER_VERSION: 3.10.6 FLUTTER_VERSION: 3.10.6
jobs: jobs:
File renamed without changes.
+4 -4
View File
@@ -1,6 +1,6 @@
module github.com/GopeedLab/gopeed module github.com/GopeedLab/gopeed
go 1.19 go 1.20
require ( require (
github.com/anacrolix/missinggo/v2 v2.7.2-0.20230527121029-a582b4f397b9 github.com/anacrolix/missinggo/v2 v2.7.2-0.20230527121029-a582b4f397b9
@@ -9,8 +9,8 @@ require (
github.com/gorilla/mux v1.8.0 github.com/gorilla/mux v1.8.0
github.com/matoous/go-nanoid/v2 v2.0.0 github.com/matoous/go-nanoid/v2 v2.0.0
github.com/virtuald/go-paniclog v0.0.0-20190812204905-43a7fa316459 github.com/virtuald/go-paniclog v0.0.0-20190812204905-43a7fa316459
go.etcd.io/bbolt v1.3.6 go.etcd.io/bbolt v1.3.7-0.20231005155708-db45d0d6b1f6
golang.org/x/sync v0.0.0-20220819030929-7fc1605a5dde golang.org/x/sync v0.3.0
) )
require ( require (
@@ -74,6 +74,6 @@ require (
golang.org/x/crypto v0.5.0 // indirect golang.org/x/crypto v0.5.0 // indirect
golang.org/x/exp v0.0.0-20220613132600-b0d781184e0d // indirect golang.org/x/exp v0.0.0-20220613132600-b0d781184e0d // indirect
golang.org/x/net v0.7.0 // indirect golang.org/x/net v0.7.0 // indirect
golang.org/x/sys v0.5.0 // indirect golang.org/x/sys v0.13.0 // indirect
golang.org/x/time v0.0.0-20220609170525-579cf78fd858 // indirect golang.org/x/time v0.0.0-20220609170525-579cf78fd858 // indirect
) )
+7 -7
View File
@@ -324,8 +324,8 @@ github.com/stretchr/testify v1.6.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/
github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg=
github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg=
github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU= github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU=
github.com/stretchr/testify v1.8.1 h1:w7B6lhMri9wdJUVmEZPGGhZzrYTPvgJArz7wNPgYKsk=
github.com/stretchr/testify v1.8.1/go.mod h1:w2LPCIKwWwSfY2zedu0+kehJoqGctiVI29o6fzry7u4= github.com/stretchr/testify v1.8.1/go.mod h1:w2LPCIKwWwSfY2zedu0+kehJoqGctiVI29o6fzry7u4=
github.com/stretchr/testify v1.8.4 h1:CcVxjf3Q8PM0mHUKJCdn+eZZtm5yQwehR5yeSVQQcUk=
github.com/tidwall/btree v1.6.0 h1:LDZfKfQIBHGHWSwckhXI0RPSXzlo+KYdjK7FWSqOzzg= github.com/tidwall/btree v1.6.0 h1:LDZfKfQIBHGHWSwckhXI0RPSXzlo+KYdjK7FWSqOzzg=
github.com/tidwall/btree v1.6.0/go.mod h1:twD9XRA5jj9VUQGELzDO4HPQTNJsoWWfYEL+EUQ2cKY= github.com/tidwall/btree v1.6.0/go.mod h1:twD9XRA5jj9VUQGELzDO4HPQTNJsoWWfYEL+EUQ2cKY=
github.com/tinylib/msgp v1.0.2/go.mod h1:+d+yLhGm8mzTaHzB+wgMYrodPfmZrzkirds8fDWklFE= github.com/tinylib/msgp v1.0.2/go.mod h1:+d+yLhGm8mzTaHzB+wgMYrodPfmZrzkirds8fDWklFE=
@@ -337,8 +337,8 @@ github.com/willf/bitset v1.1.9/go.mod h1:RjeCKbqT1RxIR/KWY6phxZiaY1IyutSBfGjNPyS
github.com/willf/bitset v1.1.10/go.mod h1:RjeCKbqT1RxIR/KWY6phxZiaY1IyutSBfGjNPySAYV4= github.com/willf/bitset v1.1.10/go.mod h1:RjeCKbqT1RxIR/KWY6phxZiaY1IyutSBfGjNPySAYV4=
github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74=
github.com/yuin/goldmark v1.4.13/go.mod h1:6yULJ656Px+3vBD8DxQVa3kxgyrAnzto9xy5taEt/CY= github.com/yuin/goldmark v1.4.13/go.mod h1:6yULJ656Px+3vBD8DxQVa3kxgyrAnzto9xy5taEt/CY=
go.etcd.io/bbolt v1.3.6 h1:/ecaJf0sk1l4l6V4awd65v2C3ILy7MSj+s/x1ADCIMU= go.etcd.io/bbolt v1.3.7-0.20231005155708-db45d0d6b1f6 h1:NkHVT1GBVV9hUj1iWglFxAuNlvLHELFn71U2H7aOIog=
go.etcd.io/bbolt v1.3.6/go.mod h1:qXsaaIqmgQH0T+OPdb99Bf+PKfBBQVAdyD6TY9G8XM4= go.etcd.io/bbolt v1.3.7-0.20231005155708-db45d0d6b1f6/go.mod h1:tDI2vlr15+D9cyN3odhFrZJi3oJj8HlHaOEFPrUiGSY=
go.opencensus.io v0.20.1/go.mod h1:6WKK9ahsWS3RSO+PY9ZHZUfv2irvY6gN279GOPZjmmk= go.opencensus.io v0.20.1/go.mod h1:6WKK9ahsWS3RSO+PY9ZHZUfv2irvY6gN279GOPZjmmk=
go.opencensus.io v0.20.2/go.mod h1:6WKK9ahsWS3RSO+PY9ZHZUfv2irvY6gN279GOPZjmmk= go.opencensus.io v0.20.2/go.mod h1:6WKK9ahsWS3RSO+PY9ZHZUfv2irvY6gN279GOPZjmmk=
go.opencensus.io v0.22.3/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw= go.opencensus.io v0.22.3/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw=
@@ -403,8 +403,8 @@ golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJ
golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.0.0-20220819030929-7fc1605a5dde h1:ejfdSekXMDxDLbRrJMwUk6KnSLZ2McaUCVcIKM+N6jc= golang.org/x/sync v0.3.0 h1:ftCYgMx6zT/asHUrPw8BLLscYtGznsLAnjq5RH9P66E=
golang.org/x/sync v0.0.0-20220819030929-7fc1605a5dde/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.3.0/go.mod h1:FU7BRWz2tNW+3quACPkgCx/L+uEAv1htQ0V83Z9Rj+Y=
golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
golang.org/x/sys v0.0.0-20180905080454-ebe1bf3edb33/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20180905080454-ebe1bf3edb33/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
golang.org/x/sys v0.0.0-20180909124046-d0be0721c37e/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20180909124046-d0be0721c37e/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
@@ -421,7 +421,6 @@ golang.org/x/sys v0.0.0-20200106162015-b016eb3dc98e/go.mod h1:h1NjWce9XRLGQEsW7w
golang.org/x/sys v0.0.0-20200122134326-e047566fdf82/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200122134326-e047566fdf82/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20200323222414-85ca7c5b95cd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200323222414-85ca7c5b95cd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20200413165638-669c56c373c4/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200413165638-669c56c373c4/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20200923182605-d9f96fdee20d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20210112080510-489259a85091/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210112080510-489259a85091/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
@@ -434,8 +433,9 @@ golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f/go.mod h1:oPkhp1MJrh7nUepCBc
golang.org/x/sys v0.1.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.1.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.2.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.2.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.4.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.4.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.5.0 h1:MUK/U/4lj1t1oPg0HfuXDN/Z1wv31ZJ/YcPiGccS4DU=
golang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.13.0 h1:Af8nKPmuFypiUBjVoU9V20FiaFXOcuZI21p0ycVYYGE=
golang.org/x/sys v0.13.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8=
golang.org/x/term v0.1.0/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= golang.org/x/term v0.1.0/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8=
+9 -9
View File
@@ -1,5 +1,5 @@
{ {
"label": "中文(正體)", "label": "中文 (正體) ",
"error": "錯誤", "error": "錯誤",
"tip": "提示", "tip": "提示",
"confirm": "確定", "confirm": "確定",
@@ -11,7 +11,7 @@
"setting": "設定", "setting": "設定",
"donate": "斗內", "donate": "斗內",
"exit": "離開", "exit": "離開",
"create": "新建任務", "create": "新增任務",
"advancedOptions": "進階選項", "advancedOptions": "進階選項",
"downloadLink": "下載鏈接", "downloadLink": "下載鏈接",
"downloadLinkValid": "請輸入下載鏈接", "downloadLinkValid": "請輸入下載鏈接",
@@ -24,28 +24,28 @@
"rename": "重命名", "rename": "重命名",
"basic": "基礎", "basic": "基礎",
"advanced": "進階", "advanced": "進階",
"general": "一般", "general": "通用設定",
"downloadDir": "下載目録", "downloadDir": "下載目録",
"downloadDirValid": "請選擇下載目録", "downloadDirValid": "請選擇下載目録",
"connections": "同時連接數量", "connections": "同時連接數量",
"maxRunning": "最大同時下載數", "maxRunning": "最大同時下載數",
"items": "@count 項", "items": "@count 項",
"subscribeTracker": "訂閲 Tracker", "subscribeTracker": "已訂閲的 Tracker",
"subscribeFail": "訂閲失敗", "subscribeFail": "訂閲失敗",
"update": "更新", "update": "更新",
"updateDaily": "每日自動更新", "updateDaily": "每日自動更新",
"lastUpdate": "上次更新:@time", "lastUpdate": "上次更新時間: @time",
"addTracker": "新增 Tracker", "addTracker": "增加新的 Tracker",
"addTrackerHit": "請輸入 Tracker 服務器地址,每行一條", "addTrackerHit": "請輸入 Tracker 服務器地址,每行一條",
"ui": "UI", "ui": "介面",
"theme": "佈景主題", "theme": "佈景主題",
"themeSystem": "跟隨系統", "themeSystem": "跟隨系統",
"themeLight": "亮色主題", "themeLight": "亮色主題",
"themeDark": "暗色主題", "themeDark": "暗色主題",
"locale": "語言", "locale": "語言",
"about": "關於", "about": "關於",
"homepage": "首頁", "homepage": "訪問主頁",
"version": "版本", "version": "版本資訊",
"protocol": "通訊協定", "protocol": "通訊協定",
"port": "端口", "port": "端口",
"apiToken": "接口 Token", "apiToken": "接口 Token",
@@ -13,6 +13,7 @@ class CreateController extends GetxController
final isResolving = false.obs; final isResolving = false.obs;
final showAdvanced = false.obs; final showAdvanced = false.obs;
late TabController advancedTabController; late TabController advancedTabController;
final oldUrl = "".obs;
final fileDataUri = "".obs; final fileDataUri = "".obs;
@override @override
@@ -55,7 +55,10 @@ class CreateView extends GetView<CreateController> {
_urlController.text = value!.text!; _urlController.text = value!.text!;
_urlController.selection = TextSelection.fromPosition( _urlController.selection = TextSelection.fromPosition(
TextPosition(offset: _urlController.text.length)); TextPosition(offset: _urlController.text.length));
return;
} }
recognizeMagnetUri(value!.text!);
} }
}); });
} }
@@ -117,6 +120,10 @@ class CreateView extends GetView<CreateController> {
}, },
onChanged: (v) async { onChanged: (v) async {
controller.clearFileDataUri(); controller.clearFileDataUri();
if (controller.oldUrl.value.isEmpty) {
recognizeMagnetUri(v);
}
controller.oldUrl.value = v;
}, },
), ),
), ),
@@ -237,6 +244,20 @@ class CreateView extends GetView<CreateController> {
); );
} }
// recognize magnet uri, if length == 40, auto add magnet prefix
recognizeMagnetUri(String text) {
if (text.length != 40) {
return;
}
final exp = RegExp(r"[0-9a-fA-F]+");
if (exp.hasMatch(text)) {
final uri = "magnet:?xt=urn:btih:$text";
_urlController.text = uri;
_urlController.selection = TextSelection.fromPosition(
TextPosition(offset: _urlController.text.length));
}
}
Future<void> _doResolve() async { Future<void> _doResolve() async {
if (controller.isResolving.value) { if (controller.isResolving.value) {
return; return;
+9 -9
View File
@@ -391,7 +391,7 @@ class Locales {
'newVersionLater': '稍后再说', 'newVersionLater': '稍后再说',
}; };
static const zh_TW = { static const zh_TW = {
'label': '中文(正體)', 'label': '中文 (正體) ',
'error': '錯誤', 'error': '錯誤',
'tip': '提示', 'tip': '提示',
'confirm': '確定', 'confirm': '確定',
@@ -403,7 +403,7 @@ class Locales {
'setting': '設定', 'setting': '設定',
'donate': '斗內', 'donate': '斗內',
'exit': '離開', 'exit': '離開',
'create': '新建任務', 'create': '新增任務',
'advancedOptions': '進階選項', 'advancedOptions': '進階選項',
'downloadLink': '下載鏈接', 'downloadLink': '下載鏈接',
'downloadLinkValid': '請輸入下載鏈接', 'downloadLinkValid': '請輸入下載鏈接',
@@ -416,28 +416,28 @@ class Locales {
'rename': '重命名', 'rename': '重命名',
'basic': '基礎', 'basic': '基礎',
'advanced': '進階', 'advanced': '進階',
'general': '一般', 'general': '通用設定',
'downloadDir': '下載目録', 'downloadDir': '下載目録',
'downloadDirValid': '請選擇下載目録', 'downloadDirValid': '請選擇下載目録',
'connections': '同時連接數量', 'connections': '同時連接數量',
'maxRunning': '最大同時下載數', 'maxRunning': '最大同時下載數',
'items': '@count 項', 'items': '@count 項',
'subscribeTracker': '訂閲 Tracker', 'subscribeTracker': '已訂閲的 Tracker',
'subscribeFail': '訂閲失敗', 'subscribeFail': '訂閲失敗',
'update': '更新', 'update': '更新',
'updateDaily': '每日自動更新', 'updateDaily': '每日自動更新',
'lastUpdate': '上次更新:@time', 'lastUpdate': '上次更新時間: @time',
'addTracker': '新增 Tracker', 'addTracker': '增加新的 Tracker',
'addTrackerHit': '請輸入 Tracker 服務器地址,每行一條', 'addTrackerHit': '請輸入 Tracker 服務器地址,每行一條',
'ui': 'UI', 'ui': '介面',
'theme': '佈景主題', 'theme': '佈景主題',
'themeSystem': '跟隨系統', 'themeSystem': '跟隨系統',
'themeLight': '亮色主題', 'themeLight': '亮色主題',
'themeDark': '暗色主題', 'themeDark': '暗色主題',
'locale': '語言', 'locale': '語言',
'about': '關於', 'about': '關於',
'homepage': '首頁', 'homepage': '訪問主頁',
'version': '版本', 'version': '版本資訊',
'protocol': '通訊協定', 'protocol': '通訊協定',
'port': '端口', 'port': '端口',
'apiToken': '接口 Token', 'apiToken': '接口 Token',
+1 -1
View File
@@ -15,7 +15,7 @@ publish_to: "none" # Remove this line if you wish to publish to pub.dev
# In iOS, build-name is used as CFBundleShortVersionString while build-number used as CFBundleVersion. # In iOS, build-name is used as CFBundleShortVersionString while build-number used as CFBundleVersion.
# Read more about iOS versioning at # Read more about iOS versioning at
# https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html # https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html
version: 1.3.12+1 version: 1.3.13+1
environment: environment:
sdk: '>=3.0.0 <4.0.0' sdk: '>=3.0.0 <4.0.0'