diff --git a/.idea/.gitignore b/.idea/.gitignore
new file mode 100644
index 0000000..35410ca
--- /dev/null
+++ b/.idea/.gitignore
@@ -0,0 +1,8 @@
+# 默认忽略的文件
+/shelf/
+/workspace.xml
+# 基于编辑器的 HTTP 客户端请求
+/httpRequests/
+# Datasource local storage ignored files
+/dataSources/
+/dataSources.local.xml
diff --git a/.idea/HkList-client.iml b/.idea/HkList-client.iml
new file mode 100644
index 0000000..24643cc
--- /dev/null
+++ b/.idea/HkList-client.iml
@@ -0,0 +1,12 @@
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/codeStyles/Project.xml b/.idea/codeStyles/Project.xml
new file mode 100644
index 0000000..725b674
--- /dev/null
+++ b/.idea/codeStyles/Project.xml
@@ -0,0 +1,61 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/codeStyles/codeStyleConfig.xml b/.idea/codeStyles/codeStyleConfig.xml
new file mode 100644
index 0000000..79ee123
--- /dev/null
+++ b/.idea/codeStyles/codeStyleConfig.xml
@@ -0,0 +1,5 @@
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/discord.xml b/.idea/discord.xml
new file mode 100644
index 0000000..30bab2a
--- /dev/null
+++ b/.idea/discord.xml
@@ -0,0 +1,7 @@
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/inspectionProfiles/Project_Default.xml b/.idea/inspectionProfiles/Project_Default.xml
new file mode 100644
index 0000000..03d9549
--- /dev/null
+++ b/.idea/inspectionProfiles/Project_Default.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/material_theme_project_new.xml b/.idea/material_theme_project_new.xml
new file mode 100644
index 0000000..1447723
--- /dev/null
+++ b/.idea/material_theme_project_new.xml
@@ -0,0 +1,13 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/modules.xml b/.idea/modules.xml
new file mode 100644
index 0000000..f1f8302
--- /dev/null
+++ b/.idea/modules.xml
@@ -0,0 +1,8 @@
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/prettier.xml b/.idea/prettier.xml
new file mode 100644
index 0000000..b0c1c68
--- /dev/null
+++ b/.idea/prettier.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/vcs.xml b/.idea/vcs.xml
new file mode 100644
index 0000000..35eb1dd
--- /dev/null
+++ b/.idea/vcs.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 8f4526a..cc29531 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -2,6 +2,17 @@
## 2025
+### 03-06 v0.0.13
+
+- [+] 新增账号管理界面
+- [+] 新增解析记录界面
+- [*] 修复NotFound页面错误
+
+### 02-28 v0.0.12
+
+- [+] 增加下载完成打开文件
+- [*] 优化文件列表显示图标
+
### 02-28 v0.0.11
- [*] 优化输入框后缀
diff --git a/package.json b/package.json
index f0864ae..9c098f1 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
{
"name": "hklist-client",
- "version": "0.0.11",
+ "version": "0.0.12",
"description": "HkList 客户端程序",
"main": "./out/main/index.js",
"author": "huan_kong",
@@ -16,7 +16,7 @@
"build": "npm run typecheck && electron-vite build",
"postinstall": "electron-builder install-app-deps",
"build:unpack": "npm run build && electron-builder --dir",
- "build:win": "npm run build && electron-builder --win",
+ "build:win": "electron-builder --win",
"build:mac": "npm run build && electron-builder --mac",
"build:linux": "npm run build && electron-builder --linux"
},
@@ -38,12 +38,12 @@
"axios": "^1.7.9",
"bufferutil": "^4.0.9",
"dayjs": "^1.11.13",
- "electron": "^34.2.0",
+ "electron": "^31.0.0",
"electron-builder": "^26.0.8",
"electron-builder-squirrel-windows": "26.0.8",
"electron-context-menu": "^4.0.5",
"electron-updater": "^6.3.9",
- "electron-vite": "^3.0.0",
+ "electron-vite": "^2.0.0",
"electron-window-state": "^5.0.3",
"eslint": "^9.21.0",
"eslint-plugin-vue": "^9.32.0",
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index 47955d4..85bd2e4 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -16,16 +16,16 @@ importers:
version: 3.0.0(eslint@9.21.0)(typescript@5.7.3)
'@electron-toolkit/preload':
specifier: ^3.0.1
- version: 3.0.1(electron@34.2.0)
+ version: 3.0.1(electron@31.0.0)
'@electron-toolkit/tsconfig':
specifier: ^1.0.1
version: 1.0.1(@types/node@22.13.5)
'@electron-toolkit/typed-ipc':
specifier: ^1.0.2
- version: 1.0.2(@electron-toolkit/preload@3.0.1(electron@34.2.0))(electron@34.2.0)
+ version: 1.0.2(@electron-toolkit/preload@3.0.1(electron@31.0.0))(electron@31.0.0)
'@electron-toolkit/utils':
specifier: ^4.0.0
- version: 4.0.0(electron@34.2.0)
+ version: 4.0.0(electron@31.0.0)
'@huan_kong/electron-clipboard-observer':
specifier: ^0.0.2
version: 0.0.2
@@ -60,11 +60,11 @@ importers:
specifier: ^1.11.13
version: 1.11.13
electron:
- specifier: ^34.2.0
- version: 34.2.0
+ specifier: ^31.0.0
+ version: 31.0.0
electron-builder:
specifier: ^26.0.8
- version: 26.0.8(electron-builder-squirrel-windows@26.0.8)
+ version: 26.0.8(electron-builder-squirrel-windows@26.0.8(dmg-builder@26.0.8))
electron-builder-squirrel-windows:
specifier: 26.0.8
version: 26.0.8(dmg-builder@26.0.8)
@@ -75,8 +75,8 @@ importers:
specifier: ^6.3.9
version: 6.3.9
electron-vite:
- specifier: ^3.0.0
- version: 3.0.0(vite@6.2.0(@types/node@22.13.5)(sass-embedded@1.85.1)(tsx@4.19.3))
+ specifier: ^2.0.0
+ version: 2.0.0(vite@6.2.0(@types/node@22.13.5)(sass-embedded@1.85.1)(tsx@4.19.3))
electron-window-state:
specifier: ^5.0.3
version: 5.0.3
@@ -401,9 +401,9 @@ packages:
engines: {node: '>=14.14'}
hasBin: true
- '@esbuild/aix-ppc64@0.24.2':
- resolution: {integrity: sha512-thpVCb/rhxE/BnMLQ7GReQLLN8q9qbHmI55F4489/ByVg2aQaQ6kbcLb6FHkocZzQhxc4gx0sCk0tJkKBFzDhA==}
- engines: {node: '>=18'}
+ '@esbuild/aix-ppc64@0.19.12':
+ resolution: {integrity: sha512-bmoCYyWdEL3wDQIVbcyzRyeKLgk2WtWLTWz1ZIAZF/EGbNOwSA6ew3PftJ1PqMiOOGu0OyFMzG53L0zqIpPeNA==}
+ engines: {node: '>=12'}
cpu: [ppc64]
os: [aix]
@@ -413,9 +413,9 @@ packages:
cpu: [ppc64]
os: [aix]
- '@esbuild/android-arm64@0.24.2':
- resolution: {integrity: sha512-cNLgeqCqV8WxfcTIOeL4OAtSmL8JjcN6m09XIgro1Wi7cF4t/THaWEa7eL5CMoMBdjoHOTh/vwTO/o2TRXIyzg==}
- engines: {node: '>=18'}
+ '@esbuild/android-arm64@0.19.12':
+ resolution: {integrity: sha512-P0UVNGIienjZv3f5zq0DP3Nt2IE/3plFzuaS96vihvD0Hd6H/q4WXUGpCxD/E8YrSXfNyRPbpTq+T8ZQioSuPA==}
+ engines: {node: '>=12'}
cpu: [arm64]
os: [android]
@@ -425,9 +425,9 @@ packages:
cpu: [arm64]
os: [android]
- '@esbuild/android-arm@0.24.2':
- resolution: {integrity: sha512-tmwl4hJkCfNHwFB3nBa8z1Uy3ypZpxqxfTQOcHX+xRByyYgunVbZ9MzUUfb0RxaHIMnbHagwAxuTL+tnNM+1/Q==}
- engines: {node: '>=18'}
+ '@esbuild/android-arm@0.19.12':
+ resolution: {integrity: sha512-qg/Lj1mu3CdQlDEEiWrlC4eaPZ1KztwGJ9B6J+/6G+/4ewxJg7gqj8eVYWvao1bXrqGiW2rsBZFSX3q2lcW05w==}
+ engines: {node: '>=12'}
cpu: [arm]
os: [android]
@@ -437,9 +437,9 @@ packages:
cpu: [arm]
os: [android]
- '@esbuild/android-x64@0.24.2':
- resolution: {integrity: sha512-B6Q0YQDqMx9D7rvIcsXfmJfvUYLoP722bgfBlO5cGvNVb5V/+Y7nhBE3mHV9OpxBf4eAS2S68KZztiPaWq4XYw==}
- engines: {node: '>=18'}
+ '@esbuild/android-x64@0.19.12':
+ resolution: {integrity: sha512-3k7ZoUW6Q6YqhdhIaq/WZ7HwBpnFBlW905Fa4s4qWJyiNOgT1dOqDiVAQFwBH7gBRZr17gLrlFCRzF6jFh7Kew==}
+ engines: {node: '>=12'}
cpu: [x64]
os: [android]
@@ -449,9 +449,9 @@ packages:
cpu: [x64]
os: [android]
- '@esbuild/darwin-arm64@0.24.2':
- resolution: {integrity: sha512-kj3AnYWc+CekmZnS5IPu9D+HWtUI49hbnyqk0FLEJDbzCIQt7hg7ucF1SQAilhtYpIujfaHr6O0UHlzzSPdOeA==}
- engines: {node: '>=18'}
+ '@esbuild/darwin-arm64@0.19.12':
+ resolution: {integrity: sha512-B6IeSgZgtEzGC42jsI+YYu9Z3HKRxp8ZT3cqhvliEHovq8HSX2YX8lNocDn79gCKJXOSaEot9MVYky7AKjCs8g==}
+ engines: {node: '>=12'}
cpu: [arm64]
os: [darwin]
@@ -461,9 +461,9 @@ packages:
cpu: [arm64]
os: [darwin]
- '@esbuild/darwin-x64@0.24.2':
- resolution: {integrity: sha512-WeSrmwwHaPkNR5H3yYfowhZcbriGqooyu3zI/3GGpF8AyUdsrrP0X6KumITGA9WOyiJavnGZUwPGvxvwfWPHIA==}
- engines: {node: '>=18'}
+ '@esbuild/darwin-x64@0.19.12':
+ resolution: {integrity: sha512-hKoVkKzFiToTgn+41qGhsUJXFlIjxI/jSYeZf3ugemDYZldIXIxhvwN6erJGlX4t5h417iFuheZ7l+YVn05N3A==}
+ engines: {node: '>=12'}
cpu: [x64]
os: [darwin]
@@ -473,9 +473,9 @@ packages:
cpu: [x64]
os: [darwin]
- '@esbuild/freebsd-arm64@0.24.2':
- resolution: {integrity: sha512-UN8HXjtJ0k/Mj6a9+5u6+2eZ2ERD7Edt1Q9IZiB5UZAIdPnVKDoG7mdTVGhHJIeEml60JteamR3qhsr1r8gXvg==}
- engines: {node: '>=18'}
+ '@esbuild/freebsd-arm64@0.19.12':
+ resolution: {integrity: sha512-4aRvFIXmwAcDBw9AueDQ2YnGmz5L6obe5kmPT8Vd+/+x/JMVKCgdcRwH6APrbpNXsPz+K653Qg8HB/oXvXVukA==}
+ engines: {node: '>=12'}
cpu: [arm64]
os: [freebsd]
@@ -485,9 +485,9 @@ packages:
cpu: [arm64]
os: [freebsd]
- '@esbuild/freebsd-x64@0.24.2':
- resolution: {integrity: sha512-TvW7wE/89PYW+IevEJXZ5sF6gJRDY/14hyIGFXdIucxCsbRmLUcjseQu1SyTko+2idmCw94TgyaEZi9HUSOe3Q==}
- engines: {node: '>=18'}
+ '@esbuild/freebsd-x64@0.19.12':
+ resolution: {integrity: sha512-EYoXZ4d8xtBoVN7CEwWY2IN4ho76xjYXqSXMNccFSx2lgqOG/1TBPW0yPx1bJZk94qu3tX0fycJeeQsKovA8gg==}
+ engines: {node: '>=12'}
cpu: [x64]
os: [freebsd]
@@ -497,9 +497,9 @@ packages:
cpu: [x64]
os: [freebsd]
- '@esbuild/linux-arm64@0.24.2':
- resolution: {integrity: sha512-7HnAD6074BW43YvvUmE/35Id9/NB7BeX5EoNkK9obndmZBUk8xmJJeU7DwmUeN7tkysslb2eSl6CTrYz6oEMQg==}
- engines: {node: '>=18'}
+ '@esbuild/linux-arm64@0.19.12':
+ resolution: {integrity: sha512-EoTjyYyLuVPfdPLsGVVVC8a0p1BFFvtpQDB/YLEhaXyf/5bczaGeN15QkR+O4S5LeJ92Tqotve7i1jn35qwvdA==}
+ engines: {node: '>=12'}
cpu: [arm64]
os: [linux]
@@ -509,9 +509,9 @@ packages:
cpu: [arm64]
os: [linux]
- '@esbuild/linux-arm@0.24.2':
- resolution: {integrity: sha512-n0WRM/gWIdU29J57hJyUdIsk0WarGd6To0s+Y+LwvlC55wt+GT/OgkwoXCXvIue1i1sSNWblHEig00GBWiJgfA==}
- engines: {node: '>=18'}
+ '@esbuild/linux-arm@0.19.12':
+ resolution: {integrity: sha512-J5jPms//KhSNv+LO1S1TX1UWp1ucM6N6XuL6ITdKWElCu8wXP72l9MM0zDTzzeikVyqFE6U8YAV9/tFyj0ti+w==}
+ engines: {node: '>=12'}
cpu: [arm]
os: [linux]
@@ -521,9 +521,9 @@ packages:
cpu: [arm]
os: [linux]
- '@esbuild/linux-ia32@0.24.2':
- resolution: {integrity: sha512-sfv0tGPQhcZOgTKO3oBE9xpHuUqguHvSo4jl+wjnKwFpapx+vUDcawbwPNuBIAYdRAvIDBfZVvXprIj3HA+Ugw==}
- engines: {node: '>=18'}
+ '@esbuild/linux-ia32@0.19.12':
+ resolution: {integrity: sha512-Thsa42rrP1+UIGaWz47uydHSBOgTUnwBwNq59khgIwktK6x60Hivfbux9iNR0eHCHzOLjLMLfUMLCypBkZXMHA==}
+ engines: {node: '>=12'}
cpu: [ia32]
os: [linux]
@@ -533,9 +533,9 @@ packages:
cpu: [ia32]
os: [linux]
- '@esbuild/linux-loong64@0.24.2':
- resolution: {integrity: sha512-CN9AZr8kEndGooS35ntToZLTQLHEjtVB5n7dl8ZcTZMonJ7CCfStrYhrzF97eAecqVbVJ7APOEe18RPI4KLhwQ==}
- engines: {node: '>=18'}
+ '@esbuild/linux-loong64@0.19.12':
+ resolution: {integrity: sha512-LiXdXA0s3IqRRjm6rV6XaWATScKAXjI4R4LoDlvO7+yQqFdlr1Bax62sRwkVvRIrwXxvtYEHHI4dm50jAXkuAA==}
+ engines: {node: '>=12'}
cpu: [loong64]
os: [linux]
@@ -545,9 +545,9 @@ packages:
cpu: [loong64]
os: [linux]
- '@esbuild/linux-mips64el@0.24.2':
- resolution: {integrity: sha512-iMkk7qr/wl3exJATwkISxI7kTcmHKE+BlymIAbHO8xanq/TjHaaVThFF6ipWzPHryoFsesNQJPE/3wFJw4+huw==}
- engines: {node: '>=18'}
+ '@esbuild/linux-mips64el@0.19.12':
+ resolution: {integrity: sha512-fEnAuj5VGTanfJ07ff0gOA6IPsvrVHLVb6Lyd1g2/ed67oU1eFzL0r9WL7ZzscD+/N6i3dWumGE1Un4f7Amf+w==}
+ engines: {node: '>=12'}
cpu: [mips64el]
os: [linux]
@@ -557,9 +557,9 @@ packages:
cpu: [mips64el]
os: [linux]
- '@esbuild/linux-ppc64@0.24.2':
- resolution: {integrity: sha512-shsVrgCZ57Vr2L8mm39kO5PPIb+843FStGt7sGGoqiiWYconSxwTiuswC1VJZLCjNiMLAMh34jg4VSEQb+iEbw==}
- engines: {node: '>=18'}
+ '@esbuild/linux-ppc64@0.19.12':
+ resolution: {integrity: sha512-nYJA2/QPimDQOh1rKWedNOe3Gfc8PabU7HT3iXWtNUbRzXS9+vgB0Fjaqr//XNbd82mCxHzik2qotuI89cfixg==}
+ engines: {node: '>=12'}
cpu: [ppc64]
os: [linux]
@@ -569,9 +569,9 @@ packages:
cpu: [ppc64]
os: [linux]
- '@esbuild/linux-riscv64@0.24.2':
- resolution: {integrity: sha512-4eSFWnU9Hhd68fW16GD0TINewo1L6dRrB+oLNNbYyMUAeOD2yCK5KXGK1GH4qD/kT+bTEXjsyTCiJGHPZ3eM9Q==}
- engines: {node: '>=18'}
+ '@esbuild/linux-riscv64@0.19.12':
+ resolution: {integrity: sha512-2MueBrlPQCw5dVJJpQdUYgeqIzDQgw3QtiAHUC4RBz9FXPrskyyU3VI1hw7C0BSKB9OduwSJ79FTCqtGMWqJHg==}
+ engines: {node: '>=12'}
cpu: [riscv64]
os: [linux]
@@ -581,9 +581,9 @@ packages:
cpu: [riscv64]
os: [linux]
- '@esbuild/linux-s390x@0.24.2':
- resolution: {integrity: sha512-S0Bh0A53b0YHL2XEXC20bHLuGMOhFDO6GN4b3YjRLK//Ep3ql3erpNcPlEFed93hsQAjAQDNsvcK+hV90FubSw==}
- engines: {node: '>=18'}
+ '@esbuild/linux-s390x@0.19.12':
+ resolution: {integrity: sha512-+Pil1Nv3Umes4m3AZKqA2anfhJiVmNCYkPchwFJNEJN5QxmTs1uzyy4TvmDrCRNT2ApwSari7ZIgrPeUx4UZDg==}
+ engines: {node: '>=12'}
cpu: [s390x]
os: [linux]
@@ -593,9 +593,9 @@ packages:
cpu: [s390x]
os: [linux]
- '@esbuild/linux-x64@0.24.2':
- resolution: {integrity: sha512-8Qi4nQcCTbLnK9WoMjdC9NiTG6/E38RNICU6sUNqK0QFxCYgoARqVqxdFmWkdonVsvGqWhmm7MO0jyTqLqwj0Q==}
- engines: {node: '>=18'}
+ '@esbuild/linux-x64@0.19.12':
+ resolution: {integrity: sha512-B71g1QpxfwBvNrfyJdVDexenDIt1CiDN1TIXLbhOw0KhJzE78KIFGX6OJ9MrtC0oOqMWf+0xop4qEU8JrJTwCg==}
+ engines: {node: '>=12'}
cpu: [x64]
os: [linux]
@@ -605,21 +605,15 @@ packages:
cpu: [x64]
os: [linux]
- '@esbuild/netbsd-arm64@0.24.2':
- resolution: {integrity: sha512-wuLK/VztRRpMt9zyHSazyCVdCXlpHkKm34WUyinD2lzK07FAHTq0KQvZZlXikNWkDGoT6x3TD51jKQ7gMVpopw==}
- engines: {node: '>=18'}
- cpu: [arm64]
- os: [netbsd]
-
'@esbuild/netbsd-arm64@0.25.0':
resolution: {integrity: sha512-RuG4PSMPFfrkH6UwCAqBzauBWTygTvb1nxWasEJooGSJ/NwRw7b2HOwyRTQIU97Hq37l3npXoZGYMy3b3xYvPw==}
engines: {node: '>=18'}
cpu: [arm64]
os: [netbsd]
- '@esbuild/netbsd-x64@0.24.2':
- resolution: {integrity: sha512-VefFaQUc4FMmJuAxmIHgUmfNiLXY438XrL4GDNV1Y1H/RW3qow68xTwjZKfj/+Plp9NANmzbH5R40Meudu8mmw==}
- engines: {node: '>=18'}
+ '@esbuild/netbsd-x64@0.19.12':
+ resolution: {integrity: sha512-3ltjQ7n1owJgFbuC61Oj++XhtzmymoCihNFgT84UAmJnxJfm4sYCiSLTXZtE00VWYpPMYc+ZQmB6xbSdVh0JWA==}
+ engines: {node: '>=12'}
cpu: [x64]
os: [netbsd]
@@ -629,21 +623,15 @@ packages:
cpu: [x64]
os: [netbsd]
- '@esbuild/openbsd-arm64@0.24.2':
- resolution: {integrity: sha512-YQbi46SBct6iKnszhSvdluqDmxCJA+Pu280Av9WICNwQmMxV7nLRHZfjQzwbPs3jeWnuAhE9Jy0NrnJ12Oz+0A==}
- engines: {node: '>=18'}
- cpu: [arm64]
- os: [openbsd]
-
'@esbuild/openbsd-arm64@0.25.0':
resolution: {integrity: sha512-21sUNbq2r84YE+SJDfaQRvdgznTD8Xc0oc3p3iW/a1EVWeNj/SdUCbm5U0itZPQYRuRTW20fPMWMpcrciH2EJw==}
engines: {node: '>=18'}
cpu: [arm64]
os: [openbsd]
- '@esbuild/openbsd-x64@0.24.2':
- resolution: {integrity: sha512-+iDS6zpNM6EnJyWv0bMGLWSWeXGN/HTaF/LXHXHwejGsVi+ooqDfMCCTerNFxEkM3wYVcExkeGXNqshc9iMaOA==}
- engines: {node: '>=18'}
+ '@esbuild/openbsd-x64@0.19.12':
+ resolution: {integrity: sha512-RbrfTB9SWsr0kWmb9srfF+L933uMDdu9BIzdA7os2t0TXhCRjrQyCeOt6wVxr79CKD4c+p+YhCj31HBkYcXebw==}
+ engines: {node: '>=12'}
cpu: [x64]
os: [openbsd]
@@ -653,9 +641,9 @@ packages:
cpu: [x64]
os: [openbsd]
- '@esbuild/sunos-x64@0.24.2':
- resolution: {integrity: sha512-hTdsW27jcktEvpwNHJU4ZwWFGkz2zRJUz8pvddmXPtXDzVKTTINmlmga3ZzwcuMpUvLw7JkLy9QLKyGpD2Yxig==}
- engines: {node: '>=18'}
+ '@esbuild/sunos-x64@0.19.12':
+ resolution: {integrity: sha512-HKjJwRrW8uWtCQnQOz9qcU3mUZhTUQvi56Q8DPTLLB+DawoiQdjsYq+j+D3s9I8VFtDr+F9CjgXKKC4ss89IeA==}
+ engines: {node: '>=12'}
cpu: [x64]
os: [sunos]
@@ -665,9 +653,9 @@ packages:
cpu: [x64]
os: [sunos]
- '@esbuild/win32-arm64@0.24.2':
- resolution: {integrity: sha512-LihEQ2BBKVFLOC9ZItT9iFprsE9tqjDjnbulhHoFxYQtQfai7qfluVODIYxt1PgdoyQkz23+01rzwNwYfutxUQ==}
- engines: {node: '>=18'}
+ '@esbuild/win32-arm64@0.19.12':
+ resolution: {integrity: sha512-URgtR1dJnmGvX864pn1B2YUYNzjmXkuJOIqG2HdU62MVS4EHpU2946OZoTMnRUHklGtJdJZ33QfzdjGACXhn1A==}
+ engines: {node: '>=12'}
cpu: [arm64]
os: [win32]
@@ -677,9 +665,9 @@ packages:
cpu: [arm64]
os: [win32]
- '@esbuild/win32-ia32@0.24.2':
- resolution: {integrity: sha512-q+iGUwfs8tncmFC9pcnD5IvRHAzmbwQ3GPS5/ceCyHdjXubwQWI12MKWSNSMYLJMq23/IUCvJMS76PDqXe1fxA==}
- engines: {node: '>=18'}
+ '@esbuild/win32-ia32@0.19.12':
+ resolution: {integrity: sha512-+ZOE6pUkMOJfmxmBZElNOx72NKpIa/HFOMGzu8fqzQJ5kgf6aTGrcJaFsNiVMH4JKpMipyK+7k0n2UXN7a8YKQ==}
+ engines: {node: '>=12'}
cpu: [ia32]
os: [win32]
@@ -689,9 +677,9 @@ packages:
cpu: [ia32]
os: [win32]
- '@esbuild/win32-x64@0.24.2':
- resolution: {integrity: sha512-7VTgWzgMGvup6aSqDPLiW5zHaxYJGTO4OokMjIlrCtf+VpEL+cXKtCvg723iguPYI5oaUNdS+/V7OU2gvXVWEg==}
- engines: {node: '>=18'}
+ '@esbuild/win32-x64@0.19.12':
+ resolution: {integrity: sha512-T1QyPSDCyMXaO3pzBkF96E8xMkiRYbUEZADd29SyPGabqxMViNoii+NcK7eWJAEoU6RZyEm5lVSIjTmcdoB9HA==}
+ engines: {node: '>=12'}
cpu: [x64]
os: [win32]
@@ -1598,13 +1586,13 @@ packages:
electron-updater@6.3.9:
resolution: {integrity: sha512-2PJNONi+iBidkoC5D1nzT9XqsE8Q1X28Fn6xRQhO3YX8qRRyJ3mkV4F1aQsuRnYPqq6Hw+E51y27W75WgDoofw==}
- electron-vite@3.0.0:
- resolution: {integrity: sha512-Uf8NpF4OB2Juo1Vq8pobkLVp9BZTO70VwkW7fKXSCkod0SRkc7Dkw7ddR6b1fbsgT7lcZ0HD29WRxsCcbkHXUw==}
+ electron-vite@2.0.0:
+ resolution: {integrity: sha512-EQiuPVSwJQRPGbZiVrCsCFMDVfNyNtSpDiyUV4fNwPKNadTjBfYMOudnLUpSeBTocKUZYf58SXSzSCAkNg0GTQ==}
engines: {node: ^18.0.0 || >=20.0.0}
hasBin: true
peerDependencies:
'@swc/core': ^1.0.0
- vite: ^4.0.0 || ^5.0.0 || ^6.0.0
+ vite: ^4.0.0 || ^5.0.0
peerDependenciesMeta:
'@swc/core':
optional: true
@@ -1617,6 +1605,11 @@ packages:
resolution: {integrity: sha512-bO3y10YikuUwUuDUQRM4KfwNkKhnpVO7IPdbsrejwN9/AABJzzTQ4GeHwyzNSrVO+tEH3/Np255a3sVZpZDjvg==}
engines: {node: '>=8.0.0'}
+ electron@31.0.0:
+ resolution: {integrity: sha512-yJMhwu5NVqor7h5mt65uKtBsjSAD7NiRwNCigK8xAlJMaP0X2FKipEzQocOzusy7E0dny4gkTgOTATy+ucDtjw==}
+ engines: {node: '>= 12.20.55'}
+ hasBin: true
+
electron@34.2.0:
resolution: {integrity: sha512-SYwBJNeXBTm1q/ErybQMUBZAYqEreBUqBwTrNkw1rV4YatDZk5Aittpcus3PPeC4UoI/tqmJ946uG8AKHTd6CA==}
engines: {node: '>= 12.20.55'}
@@ -1670,9 +1663,9 @@ packages:
es6-error@4.1.1:
resolution: {integrity: sha512-Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg==}
- esbuild@0.24.2:
- resolution: {integrity: sha512-+9egpBW8I3CD5XPe0n6BfT5fxLzxrlDzqydF3aviG+9ni1lDC/OvMHcxqEFV0+LANZG5R1bFMWfUrjVsdwxJvA==}
- engines: {node: '>=18'}
+ esbuild@0.19.12:
+ resolution: {integrity: sha512-aARqgq8roFBj054KvQr5f1sFu0D65G+miZRCuJyJ0G13Zwx7vRar5Zhn2tkQNzIXcBrNVsv/8stehpj+GAjgbg==}
+ engines: {node: '>=12'}
hasBin: true
esbuild@0.25.0:
@@ -3689,22 +3682,22 @@ snapshots:
transitivePeerDependencies:
- supports-color
- '@electron-toolkit/preload@3.0.1(electron@34.2.0)':
+ '@electron-toolkit/preload@3.0.1(electron@31.0.0)':
dependencies:
- electron: 34.2.0
+ electron: 31.0.0
'@electron-toolkit/tsconfig@1.0.1(@types/node@22.13.5)':
dependencies:
'@types/node': 22.13.5
- '@electron-toolkit/typed-ipc@1.0.2(@electron-toolkit/preload@3.0.1(electron@34.2.0))(electron@34.2.0)':
+ '@electron-toolkit/typed-ipc@1.0.2(@electron-toolkit/preload@3.0.1(electron@31.0.0))(electron@31.0.0)':
dependencies:
- '@electron-toolkit/preload': 3.0.1(electron@34.2.0)
- electron: 34.2.0
+ '@electron-toolkit/preload': 3.0.1(electron@31.0.0)
+ electron: 31.0.0
- '@electron-toolkit/utils@4.0.0(electron@34.2.0)':
+ '@electron-toolkit/utils@4.0.0(electron@31.0.0)':
dependencies:
- electron: 34.2.0
+ electron: 31.0.0
'@electron/asar@3.2.18':
dependencies:
@@ -3816,151 +3809,145 @@ snapshots:
- supports-color
optional: true
- '@esbuild/aix-ppc64@0.24.2':
+ '@esbuild/aix-ppc64@0.19.12':
optional: true
'@esbuild/aix-ppc64@0.25.0':
optional: true
- '@esbuild/android-arm64@0.24.2':
+ '@esbuild/android-arm64@0.19.12':
optional: true
'@esbuild/android-arm64@0.25.0':
optional: true
- '@esbuild/android-arm@0.24.2':
+ '@esbuild/android-arm@0.19.12':
optional: true
'@esbuild/android-arm@0.25.0':
optional: true
- '@esbuild/android-x64@0.24.2':
+ '@esbuild/android-x64@0.19.12':
optional: true
'@esbuild/android-x64@0.25.0':
optional: true
- '@esbuild/darwin-arm64@0.24.2':
+ '@esbuild/darwin-arm64@0.19.12':
optional: true
'@esbuild/darwin-arm64@0.25.0':
optional: true
- '@esbuild/darwin-x64@0.24.2':
+ '@esbuild/darwin-x64@0.19.12':
optional: true
'@esbuild/darwin-x64@0.25.0':
optional: true
- '@esbuild/freebsd-arm64@0.24.2':
+ '@esbuild/freebsd-arm64@0.19.12':
optional: true
'@esbuild/freebsd-arm64@0.25.0':
optional: true
- '@esbuild/freebsd-x64@0.24.2':
+ '@esbuild/freebsd-x64@0.19.12':
optional: true
'@esbuild/freebsd-x64@0.25.0':
optional: true
- '@esbuild/linux-arm64@0.24.2':
+ '@esbuild/linux-arm64@0.19.12':
optional: true
'@esbuild/linux-arm64@0.25.0':
optional: true
- '@esbuild/linux-arm@0.24.2':
+ '@esbuild/linux-arm@0.19.12':
optional: true
'@esbuild/linux-arm@0.25.0':
optional: true
- '@esbuild/linux-ia32@0.24.2':
+ '@esbuild/linux-ia32@0.19.12':
optional: true
'@esbuild/linux-ia32@0.25.0':
optional: true
- '@esbuild/linux-loong64@0.24.2':
+ '@esbuild/linux-loong64@0.19.12':
optional: true
'@esbuild/linux-loong64@0.25.0':
optional: true
- '@esbuild/linux-mips64el@0.24.2':
+ '@esbuild/linux-mips64el@0.19.12':
optional: true
'@esbuild/linux-mips64el@0.25.0':
optional: true
- '@esbuild/linux-ppc64@0.24.2':
+ '@esbuild/linux-ppc64@0.19.12':
optional: true
'@esbuild/linux-ppc64@0.25.0':
optional: true
- '@esbuild/linux-riscv64@0.24.2':
+ '@esbuild/linux-riscv64@0.19.12':
optional: true
'@esbuild/linux-riscv64@0.25.0':
optional: true
- '@esbuild/linux-s390x@0.24.2':
+ '@esbuild/linux-s390x@0.19.12':
optional: true
'@esbuild/linux-s390x@0.25.0':
optional: true
- '@esbuild/linux-x64@0.24.2':
+ '@esbuild/linux-x64@0.19.12':
optional: true
'@esbuild/linux-x64@0.25.0':
optional: true
- '@esbuild/netbsd-arm64@0.24.2':
- optional: true
-
'@esbuild/netbsd-arm64@0.25.0':
optional: true
- '@esbuild/netbsd-x64@0.24.2':
+ '@esbuild/netbsd-x64@0.19.12':
optional: true
'@esbuild/netbsd-x64@0.25.0':
optional: true
- '@esbuild/openbsd-arm64@0.24.2':
- optional: true
-
'@esbuild/openbsd-arm64@0.25.0':
optional: true
- '@esbuild/openbsd-x64@0.24.2':
+ '@esbuild/openbsd-x64@0.19.12':
optional: true
'@esbuild/openbsd-x64@0.25.0':
optional: true
- '@esbuild/sunos-x64@0.24.2':
+ '@esbuild/sunos-x64@0.19.12':
optional: true
'@esbuild/sunos-x64@0.25.0':
optional: true
- '@esbuild/win32-arm64@0.24.2':
+ '@esbuild/win32-arm64@0.19.12':
optional: true
'@esbuild/win32-arm64@0.25.0':
optional: true
- '@esbuild/win32-ia32@0.24.2':
+ '@esbuild/win32-ia32@0.19.12':
optional: true
'@esbuild/win32-ia32@0.25.0':
optional: true
- '@esbuild/win32-x64@0.24.2':
+ '@esbuild/win32-x64@0.19.12':
optional: true
'@esbuild/win32-x64@0.25.0':
@@ -4548,7 +4535,7 @@ snapshots:
app-builder-bin@5.0.0-alpha.12: {}
- app-builder-lib@26.0.8(dmg-builder@26.0.8)(electron-builder-squirrel-windows@26.0.8):
+ app-builder-lib@26.0.8(dmg-builder@26.0.8(electron-builder-squirrel-windows@26.0.8(dmg-builder@26.0.8)))(electron-builder-squirrel-windows@26.0.8(dmg-builder@26.0.8)):
dependencies:
'@develar/schema-utils': 2.6.5
'@electron/asar': 3.2.18
@@ -4565,7 +4552,7 @@ snapshots:
chromium-pickle-js: 0.2.0
config-file-ts: 0.2.8-rc1
debug: 4.4.0
- dmg-builder: 26.0.8(electron-builder-squirrel-windows@26.0.8)
+ dmg-builder: 26.0.8(electron-builder-squirrel-windows@26.0.8(dmg-builder@26.0.8))
dotenv: 16.4.7
dotenv-expand: 11.0.7
ejs: 3.1.10
@@ -4923,9 +4910,9 @@ snapshots:
minimatch: 3.1.2
p-limit: 3.1.0
- dmg-builder@26.0.8(electron-builder-squirrel-windows@26.0.8):
+ dmg-builder@26.0.8(electron-builder-squirrel-windows@26.0.8(dmg-builder@26.0.8)):
dependencies:
- app-builder-lib: 26.0.8(dmg-builder@26.0.8)(electron-builder-squirrel-windows@26.0.8)
+ app-builder-lib: 26.0.8(dmg-builder@26.0.8(electron-builder-squirrel-windows@26.0.8(dmg-builder@26.0.8)))(electron-builder-squirrel-windows@26.0.8(dmg-builder@26.0.8))
builder-util: 26.0.7
builder-util-runtime: 9.3.1
fs-extra: 10.1.0
@@ -4970,7 +4957,7 @@ snapshots:
electron-builder-squirrel-windows@26.0.8(dmg-builder@26.0.8):
dependencies:
- app-builder-lib: 26.0.8(dmg-builder@26.0.8)(electron-builder-squirrel-windows@26.0.8)
+ app-builder-lib: 26.0.8(dmg-builder@26.0.8(electron-builder-squirrel-windows@26.0.8(dmg-builder@26.0.8)))(electron-builder-squirrel-windows@26.0.8(dmg-builder@26.0.8))
builder-util: 26.0.7
electron-winstaller: 5.4.0
transitivePeerDependencies:
@@ -4978,13 +4965,13 @@ snapshots:
- dmg-builder
- supports-color
- electron-builder@26.0.8(electron-builder-squirrel-windows@26.0.8):
+ electron-builder@26.0.8(electron-builder-squirrel-windows@26.0.8(dmg-builder@26.0.8)):
dependencies:
- app-builder-lib: 26.0.8(dmg-builder@26.0.8)(electron-builder-squirrel-windows@26.0.8)
+ app-builder-lib: 26.0.8(dmg-builder@26.0.8(electron-builder-squirrel-windows@26.0.8(dmg-builder@26.0.8)))(electron-builder-squirrel-windows@26.0.8(dmg-builder@26.0.8))
builder-util: 26.0.7
builder-util-runtime: 9.3.1
chalk: 4.1.2
- dmg-builder: 26.0.8(electron-builder-squirrel-windows@26.0.8)
+ dmg-builder: 26.0.8(electron-builder-squirrel-windows@26.0.8(dmg-builder@26.0.8))
fs-extra: 10.1.0
is-ci: 3.0.1
lazy-val: 1.0.5
@@ -5037,12 +5024,12 @@ snapshots:
transitivePeerDependencies:
- supports-color
- electron-vite@3.0.0(vite@6.2.0(@types/node@22.13.5)(sass-embedded@1.85.1)(tsx@4.19.3)):
+ electron-vite@2.0.0(vite@6.2.0(@types/node@22.13.5)(sass-embedded@1.85.1)(tsx@4.19.3)):
dependencies:
'@babel/core': 7.26.9
'@babel/plugin-transform-arrow-functions': 7.25.9(@babel/core@7.26.9)
cac: 6.7.14
- esbuild: 0.24.2
+ esbuild: 0.19.12
magic-string: 0.30.17
picocolors: 1.1.1
vite: 6.2.0(@types/node@22.13.5)(sass-embedded@1.85.1)(tsx@4.19.3)
@@ -5066,6 +5053,14 @@ snapshots:
transitivePeerDependencies:
- supports-color
+ electron@31.0.0:
+ dependencies:
+ '@electron/get': 2.0.3
+ '@types/node': 20.17.19
+ extract-zip: 2.0.1
+ transitivePeerDependencies:
+ - supports-color
+
electron@34.2.0:
dependencies:
'@electron/get': 2.0.3
@@ -5115,33 +5110,31 @@ snapshots:
es6-error@4.1.1:
optional: true
- esbuild@0.24.2:
+ esbuild@0.19.12:
optionalDependencies:
- '@esbuild/aix-ppc64': 0.24.2
- '@esbuild/android-arm': 0.24.2
- '@esbuild/android-arm64': 0.24.2
- '@esbuild/android-x64': 0.24.2
- '@esbuild/darwin-arm64': 0.24.2
- '@esbuild/darwin-x64': 0.24.2
- '@esbuild/freebsd-arm64': 0.24.2
- '@esbuild/freebsd-x64': 0.24.2
- '@esbuild/linux-arm': 0.24.2
- '@esbuild/linux-arm64': 0.24.2
- '@esbuild/linux-ia32': 0.24.2
- '@esbuild/linux-loong64': 0.24.2
- '@esbuild/linux-mips64el': 0.24.2
- '@esbuild/linux-ppc64': 0.24.2
- '@esbuild/linux-riscv64': 0.24.2
- '@esbuild/linux-s390x': 0.24.2
- '@esbuild/linux-x64': 0.24.2
- '@esbuild/netbsd-arm64': 0.24.2
- '@esbuild/netbsd-x64': 0.24.2
- '@esbuild/openbsd-arm64': 0.24.2
- '@esbuild/openbsd-x64': 0.24.2
- '@esbuild/sunos-x64': 0.24.2
- '@esbuild/win32-arm64': 0.24.2
- '@esbuild/win32-ia32': 0.24.2
- '@esbuild/win32-x64': 0.24.2
+ '@esbuild/aix-ppc64': 0.19.12
+ '@esbuild/android-arm': 0.19.12
+ '@esbuild/android-arm64': 0.19.12
+ '@esbuild/android-x64': 0.19.12
+ '@esbuild/darwin-arm64': 0.19.12
+ '@esbuild/darwin-x64': 0.19.12
+ '@esbuild/freebsd-arm64': 0.19.12
+ '@esbuild/freebsd-x64': 0.19.12
+ '@esbuild/linux-arm': 0.19.12
+ '@esbuild/linux-arm64': 0.19.12
+ '@esbuild/linux-ia32': 0.19.12
+ '@esbuild/linux-loong64': 0.19.12
+ '@esbuild/linux-mips64el': 0.19.12
+ '@esbuild/linux-ppc64': 0.19.12
+ '@esbuild/linux-riscv64': 0.19.12
+ '@esbuild/linux-s390x': 0.19.12
+ '@esbuild/linux-x64': 0.19.12
+ '@esbuild/netbsd-x64': 0.19.12
+ '@esbuild/openbsd-x64': 0.19.12
+ '@esbuild/sunos-x64': 0.19.12
+ '@esbuild/win32-arm64': 0.19.12
+ '@esbuild/win32-ia32': 0.19.12
+ '@esbuild/win32-x64': 0.19.12
esbuild@0.25.0:
optionalDependencies:
diff --git a/src/main/ipc/aria2.ts b/src/main/ipc/aria2.ts
index 9b13cc7..274d868 100644
--- a/src/main/ipc/aria2.ts
+++ b/src/main/ipc/aria2.ts
@@ -254,6 +254,13 @@ export default defineLoader(async (ipc) => {
return success()
})
+ ipc.handle('aria2.openTaskFile', async (_, params) => {
+ await startAria2()
+ const task = await aria2.tellStatus(client!, params.gid)
+ shell.openPath(task.files[0].path)
+ return success()
+ })
+
ipc.handle('aria2.getGlobalOption', async () => {
await startAria2()
return success(await aria2.getGlobalOption(client!))
diff --git a/src/main/ipc/type.ts b/src/main/ipc/type.ts
index 3622b5e..b5ebe8e 100644
--- a/src/main/ipc/type.ts
+++ b/src/main/ipc/type.ts
@@ -46,6 +46,7 @@ export type BaseIpcEvents = {
'aria2.removeTask': (params: RemoveTask) => null
'aria2.removeTaskResult': (params: OperateTask) => null
'aria2.openTaskFolder': (params: OpenTaskFolder) => null
+ 'aria2.openTaskFile': (params: OpenTaskFolder) => null
'aria2.getGlobalOption': () => Aria2ClientGlobalOptions
'aria2.changeGlobalOption': (params: Aria2ClientGlobalOptions) => null
diff --git a/src/renderer/components.d.ts b/src/renderer/components.d.ts
index b2e2031..84d5d06 100644
--- a/src/renderer/components.d.ts
+++ b/src/renderer/components.d.ts
@@ -14,12 +14,15 @@ declare module 'vue' {
TAside: typeof import('tdesign-vue-next')['Aside']
TButton: typeof import('tdesign-vue-next')['Button']
TCard: typeof import('tdesign-vue-next')['Card']
+ TCheckbox: typeof import('tdesign-vue-next')['Checkbox']
TContent: typeof import('tdesign-vue-next')['Content']
+ TCopy: typeof import('tdesign-vue-next')['Copy']
TDialog: typeof import('tdesign-vue-next')['Dialog']
TEmpty: typeof import('tdesign-vue-next')['Empty']
TForm: typeof import('tdesign-vue-next')['Form']
TFormItem: typeof import('tdesign-vue-next')['FormItem']
THeader: typeof import('tdesign-vue-next')['Header']
+ TIcon: typeof import('tdesign-vue-next')['Icon']
TInput: typeof import('tdesign-vue-next')['Input']
TInputAdornment: typeof import('tdesign-vue-next')['InputAdornment']
TInputNumber: typeof import('tdesign-vue-next')['InputNumber']
diff --git a/src/renderer/src/views/Account/index.vue b/src/renderer/src/views/Account/index.vue
index fe087d9..c2993fa 100644
--- a/src/renderer/src/views/Account/index.vue
+++ b/src/renderer/src/views/Account/index.vue
@@ -1,7 +1,290 @@
- template Account
+
+
+
+
+
+
+ 批量下载 ({{ selectedFiles.length }})
+
+
+
+
+
+
+
+
+ {{ formatBytes(row && row.size !== undefined ? row.size : 0) }}
+
+
+ {{ formatDateToString(row && row.modified !== undefined ? row.modified : '') }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 登录
+
+
+
+
-
+
diff --git a/src/renderer/src/views/NotFound.vue b/src/renderer/src/views/NotFound.vue
index fade0cc..5a383c0 100644
--- a/src/renderer/src/views/NotFound.vue
+++ b/src/renderer/src/views/NotFound.vue
@@ -36,7 +36,7 @@ const complete = ref(0)
const timer = ref(0)
function process(): void {
- complete.value += Math.floor(Math.random() * 1)
+ complete.value += Math.floor(Math.random() * 10)
if (complete.value >= 100) {
complete.value = 100
router.push('/')
diff --git a/src/renderer/src/views/Parse/FileList.vue b/src/renderer/src/views/Parse/FileList.vue
index 42467ef..ad7f49c 100644
--- a/src/renderer/src/views/Parse/FileList.vue
+++ b/src/renderer/src/views/Parse/FileList.vue
@@ -114,6 +114,7 @@ const getDir = async (event: PointerEvent, path: string, category: number): Prom
height: 30px;
margin-right: 15px;
background-size: contain;
+ background-repeat: no-repeat;
}
.filename {
diff --git a/src/renderer/src/views/Record/index.vue b/src/renderer/src/views/Record/index.vue
index 57a8b29..61989a9 100644
--- a/src/renderer/src/views/Record/index.vue
+++ b/src/renderer/src/views/Record/index.vue
@@ -1,7 +1,210 @@
- template Record
+
+
+
+
+
+
+
+
+
+
+
+ 第 {{ index + 1 }} 条
+ 复制
+
+ {{ url }}
+
+
+
+
+
+
+
+
-
+
+
+
+
+
+ .t-table__row:hover {
+ background-color: #f5f5f5;
+ }
+ }
+ }
+}
+
diff --git a/src/renderer/src/views/Task/TaskList/TaskItem.vue b/src/renderer/src/views/Task/TaskList/TaskItem.vue
index 530e7b8..28808d4 100644
--- a/src/renderer/src/views/Task/TaskList/TaskItem.vue
+++ b/src/renderer/src/views/Task/TaskList/TaskItem.vue
@@ -21,6 +21,9 @@
暂停
开始
+
+ 打开文件
+
删除任务
@@ -91,6 +94,10 @@ const openTaskFolder = async (): Promise => {
const selectRadio = (): void => {
selectedRows.value[task.gid] = selectedRows.value[task.gid] === undefined ? task : undefined
}
+
+const openTaskFile = async (): Promise => {
+ await invoke('aria2.openTaskFile', { gid: task.gid })
+}