mirror of
https://github.com/bolucat/Archive.git
synced 2025-09-27 04:30:12 +08:00
Update On Wed Jul 9 20:40:03 CEST 2025
This commit is contained in:
1
.github/update.log
vendored
1
.github/update.log
vendored
@@ -1052,3 +1052,4 @@ Update On Sat Jul 5 20:35:56 CEST 2025
|
|||||||
Update On Sun Jul 6 20:36:31 CEST 2025
|
Update On Sun Jul 6 20:36:31 CEST 2025
|
||||||
Update On Mon Jul 7 20:39:12 CEST 2025
|
Update On Mon Jul 7 20:39:12 CEST 2025
|
||||||
Update On Tue Jul 8 20:39:34 CEST 2025
|
Update On Tue Jul 8 20:39:34 CEST 2025
|
||||||
|
Update On Wed Jul 9 20:39:55 CEST 2025
|
||||||
|
@@ -32,7 +32,7 @@
|
|||||||
"country-emoji": "1.5.6",
|
"country-emoji": "1.5.6",
|
||||||
"dayjs": "1.11.13",
|
"dayjs": "1.11.13",
|
||||||
"framer-motion": "12.16.0",
|
"framer-motion": "12.16.0",
|
||||||
"i18next": "25.3.1",
|
"i18next": "25.3.2",
|
||||||
"jotai": "2.12.5",
|
"jotai": "2.12.5",
|
||||||
"json-schema": "0.4.0",
|
"json-schema": "0.4.0",
|
||||||
"material-react-table": "3.2.1",
|
"material-react-table": "3.2.1",
|
||||||
@@ -87,11 +87,11 @@
|
|||||||
"unplugin-auto-import": "19.3.0",
|
"unplugin-auto-import": "19.3.0",
|
||||||
"unplugin-icons": "22.1.0",
|
"unplugin-icons": "22.1.0",
|
||||||
"validator": "13.15.15",
|
"validator": "13.15.15",
|
||||||
"vite": "7.0.2",
|
"vite": "7.0.3",
|
||||||
"vite-plugin-html": "3.2.2",
|
"vite-plugin-html": "3.2.2",
|
||||||
"vite-plugin-sass-dts": "1.3.31",
|
"vite-plugin-sass-dts": "1.3.31",
|
||||||
"vite-plugin-svgr": "4.3.0",
|
"vite-plugin-svgr": "4.3.0",
|
||||||
"vite-tsconfig-paths": "5.1.4",
|
"vite-tsconfig-paths": "5.1.4",
|
||||||
"zod": "3.25.75"
|
"zod": "3.25.76"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -30,7 +30,7 @@
|
|||||||
"react-i18next": "15.6.0",
|
"react-i18next": "15.6.0",
|
||||||
"react-use": "17.6.0",
|
"react-use": "17.6.0",
|
||||||
"tailwindcss": "4.1.11",
|
"tailwindcss": "4.1.11",
|
||||||
"vite": "7.0.2",
|
"vite": "7.0.3",
|
||||||
"vite-tsconfig-paths": "5.1.4"
|
"vite-tsconfig-paths": "5.1.4"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
|
@@ -2,10 +2,10 @@
|
|||||||
"manifest_version": 1,
|
"manifest_version": 1,
|
||||||
"latest": {
|
"latest": {
|
||||||
"mihomo": "v1.19.11",
|
"mihomo": "v1.19.11",
|
||||||
"mihomo_alpha": "alpha-2b84dd3",
|
"mihomo_alpha": "alpha-ce2675a",
|
||||||
"clash_rs": "v0.8.1",
|
"clash_rs": "v0.8.1",
|
||||||
"clash_premium": "2023-09-05-gdcc8d87",
|
"clash_premium": "2023-09-05-gdcc8d87",
|
||||||
"clash_rs_alpha": "0.8.1-alpha+sha.874c62e"
|
"clash_rs_alpha": "0.8.1-alpha+sha.86171e1"
|
||||||
},
|
},
|
||||||
"arch_template": {
|
"arch_template": {
|
||||||
"mihomo": {
|
"mihomo": {
|
||||||
@@ -69,5 +69,5 @@
|
|||||||
"linux-armv7hf": "clash-armv7-unknown-linux-gnueabihf"
|
"linux-armv7hf": "clash-armv7-unknown-linux-gnueabihf"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"updated_at": "2025-07-07T22:21:30.028Z"
|
"updated_at": "2025-07-08T22:21:31.499Z"
|
||||||
}
|
}
|
||||||
|
@@ -108,7 +108,7 @@
|
|||||||
"typescript": "5.8.3",
|
"typescript": "5.8.3",
|
||||||
"typescript-eslint": "8.36.0"
|
"typescript-eslint": "8.36.0"
|
||||||
},
|
},
|
||||||
"packageManager": "pnpm@10.12.4",
|
"packageManager": "pnpm@10.13.1",
|
||||||
"engines": {
|
"engines": {
|
||||||
"node": "22.17.0"
|
"node": "22.17.0"
|
||||||
},
|
},
|
||||||
|
114
clash-nyanpasu/pnpm-lock.yaml
generated
114
clash-nyanpasu/pnpm-lock.yaml
generated
@@ -247,7 +247,7 @@ importers:
|
|||||||
version: 4.1.11
|
version: 4.1.11
|
||||||
'@tanstack/router-zod-adapter':
|
'@tanstack/router-zod-adapter':
|
||||||
specifier: 1.81.5
|
specifier: 1.81.5
|
||||||
version: 1.81.5(@tanstack/react-router@1.125.6(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(zod@3.25.75)
|
version: 1.81.5(@tanstack/react-router@1.125.6(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(zod@3.25.76)
|
||||||
'@tauri-apps/api':
|
'@tauri-apps/api':
|
||||||
specifier: 2.5.0
|
specifier: 2.5.0
|
||||||
version: 2.5.0
|
version: 2.5.0
|
||||||
@@ -273,8 +273,8 @@ importers:
|
|||||||
specifier: 12.16.0
|
specifier: 12.16.0
|
||||||
version: 12.16.0(@emotion/is-prop-valid@1.3.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
|
version: 12.16.0(@emotion/is-prop-valid@1.3.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
|
||||||
i18next:
|
i18next:
|
||||||
specifier: 25.3.1
|
specifier: 25.3.2
|
||||||
version: 25.3.1(typescript@5.8.3)
|
version: 25.3.2(typescript@5.8.3)
|
||||||
jotai:
|
jotai:
|
||||||
specifier: 2.12.5
|
specifier: 2.12.5
|
||||||
version: 2.12.5(@types/react@19.1.8)(react@19.1.0)
|
version: 2.12.5(@types/react@19.1.8)(react@19.1.0)
|
||||||
@@ -307,7 +307,7 @@ importers:
|
|||||||
version: 7.6.2(a582b6f7a523f1e20a2297e7a0fb44e0)
|
version: 7.6.2(a582b6f7a523f1e20a2297e7a0fb44e0)
|
||||||
react-i18next:
|
react-i18next:
|
||||||
specifier: 15.6.0
|
specifier: 15.6.0
|
||||||
version: 15.6.0(i18next@25.3.1(typescript@5.8.3))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.8.3)
|
version: 15.6.0(i18next@25.3.2(typescript@5.8.3))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.8.3)
|
||||||
react-markdown:
|
react-markdown:
|
||||||
specifier: 10.1.0
|
specifier: 10.1.0
|
||||||
version: 10.1.0(@types/react@19.1.8)(react@19.1.0)
|
version: 10.1.0(@types/react@19.1.8)(react@19.1.0)
|
||||||
@@ -353,7 +353,7 @@ importers:
|
|||||||
version: 1.125.6(@tanstack/react-router@1.125.6(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(@tanstack/router-core@1.125.4)(csstype@3.1.3)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(solid-js@1.9.5)(tiny-invariant@1.3.3)
|
version: 1.125.6(@tanstack/react-router@1.125.6(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(@tanstack/router-core@1.125.4)(csstype@3.1.3)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(solid-js@1.9.5)(tiny-invariant@1.3.3)
|
||||||
'@tanstack/router-plugin':
|
'@tanstack/router-plugin':
|
||||||
specifier: 1.125.6
|
specifier: 1.125.6
|
||||||
version: 1.125.6(@tanstack/react-router@1.125.6(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(vite@7.0.2(@types/node@22.15.33)(jiti@2.4.2)(less@4.2.0)(lightningcss@1.30.1)(sass-embedded@1.89.2)(sass@1.83.0)(stylus@0.62.0)(terser@5.36.0)(tsx@4.20.3)(yaml@2.8.0))
|
version: 1.125.6(@tanstack/react-router@1.125.6(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(vite@7.0.3(@types/node@22.15.33)(jiti@2.4.2)(less@4.2.0)(lightningcss@1.30.1)(sass-embedded@1.89.2)(sass@1.83.0)(stylus@0.62.0)(terser@5.36.0)(tsx@4.20.3)(yaml@2.8.0))
|
||||||
'@tauri-apps/plugin-clipboard-manager':
|
'@tauri-apps/plugin-clipboard-manager':
|
||||||
specifier: 2.2.2
|
specifier: 2.2.2
|
||||||
version: 2.2.2
|
version: 2.2.2
|
||||||
@@ -389,13 +389,13 @@ importers:
|
|||||||
version: 13.15.2
|
version: 13.15.2
|
||||||
'@vitejs/plugin-legacy':
|
'@vitejs/plugin-legacy':
|
||||||
specifier: 7.0.0
|
specifier: 7.0.0
|
||||||
version: 7.0.0(terser@5.36.0)(vite@7.0.2(@types/node@22.15.33)(jiti@2.4.2)(less@4.2.0)(lightningcss@1.30.1)(sass-embedded@1.89.2)(sass@1.83.0)(stylus@0.62.0)(terser@5.36.0)(tsx@4.20.3)(yaml@2.8.0))
|
version: 7.0.0(terser@5.36.0)(vite@7.0.3(@types/node@22.15.33)(jiti@2.4.2)(less@4.2.0)(lightningcss@1.30.1)(sass-embedded@1.89.2)(sass@1.83.0)(stylus@0.62.0)(terser@5.36.0)(tsx@4.20.3)(yaml@2.8.0))
|
||||||
'@vitejs/plugin-react':
|
'@vitejs/plugin-react':
|
||||||
specifier: 4.6.0
|
specifier: 4.6.0
|
||||||
version: 4.6.0(vite@7.0.2(@types/node@22.15.33)(jiti@2.4.2)(less@4.2.0)(lightningcss@1.30.1)(sass-embedded@1.89.2)(sass@1.83.0)(stylus@0.62.0)(terser@5.36.0)(tsx@4.20.3)(yaml@2.8.0))
|
version: 4.6.0(vite@7.0.3(@types/node@22.15.33)(jiti@2.4.2)(less@4.2.0)(lightningcss@1.30.1)(sass-embedded@1.89.2)(sass@1.83.0)(stylus@0.62.0)(terser@5.36.0)(tsx@4.20.3)(yaml@2.8.0))
|
||||||
'@vitejs/plugin-react-swc':
|
'@vitejs/plugin-react-swc':
|
||||||
specifier: 3.10.2
|
specifier: 3.10.2
|
||||||
version: 3.10.2(vite@7.0.2(@types/node@22.15.33)(jiti@2.4.2)(less@4.2.0)(lightningcss@1.30.1)(sass-embedded@1.89.2)(sass@1.83.0)(stylus@0.62.0)(terser@5.36.0)(tsx@4.20.3)(yaml@2.8.0))
|
version: 3.10.2(vite@7.0.3(@types/node@22.15.33)(jiti@2.4.2)(less@4.2.0)(lightningcss@1.30.1)(sass-embedded@1.89.2)(sass@1.83.0)(stylus@0.62.0)(terser@5.36.0)(tsx@4.20.3)(yaml@2.8.0))
|
||||||
change-case:
|
change-case:
|
||||||
specifier: 5.4.4
|
specifier: 5.4.4
|
||||||
version: 5.4.4
|
version: 5.4.4
|
||||||
@@ -433,23 +433,23 @@ importers:
|
|||||||
specifier: 13.15.15
|
specifier: 13.15.15
|
||||||
version: 13.15.15
|
version: 13.15.15
|
||||||
vite:
|
vite:
|
||||||
specifier: 7.0.2
|
specifier: 7.0.3
|
||||||
version: 7.0.2(@types/node@22.15.33)(jiti@2.4.2)(less@4.2.0)(lightningcss@1.30.1)(sass-embedded@1.89.2)(sass@1.83.0)(stylus@0.62.0)(terser@5.36.0)(tsx@4.20.3)(yaml@2.8.0)
|
version: 7.0.3(@types/node@22.15.33)(jiti@2.4.2)(less@4.2.0)(lightningcss@1.30.1)(sass-embedded@1.89.2)(sass@1.83.0)(stylus@0.62.0)(terser@5.36.0)(tsx@4.20.3)(yaml@2.8.0)
|
||||||
vite-plugin-html:
|
vite-plugin-html:
|
||||||
specifier: 3.2.2
|
specifier: 3.2.2
|
||||||
version: 3.2.2(vite@7.0.2(@types/node@22.15.33)(jiti@2.4.2)(less@4.2.0)(lightningcss@1.30.1)(sass-embedded@1.89.2)(sass@1.83.0)(stylus@0.62.0)(terser@5.36.0)(tsx@4.20.3)(yaml@2.8.0))
|
version: 3.2.2(vite@7.0.3(@types/node@22.15.33)(jiti@2.4.2)(less@4.2.0)(lightningcss@1.30.1)(sass-embedded@1.89.2)(sass@1.83.0)(stylus@0.62.0)(terser@5.36.0)(tsx@4.20.3)(yaml@2.8.0))
|
||||||
vite-plugin-sass-dts:
|
vite-plugin-sass-dts:
|
||||||
specifier: 1.3.31
|
specifier: 1.3.31
|
||||||
version: 1.3.31(postcss@8.5.6)(prettier@3.6.2)(sass-embedded@1.89.2)(vite@7.0.2(@types/node@22.15.33)(jiti@2.4.2)(less@4.2.0)(lightningcss@1.30.1)(sass-embedded@1.89.2)(sass@1.83.0)(stylus@0.62.0)(terser@5.36.0)(tsx@4.20.3)(yaml@2.8.0))
|
version: 1.3.31(postcss@8.5.6)(prettier@3.6.2)(sass-embedded@1.89.2)(vite@7.0.3(@types/node@22.15.33)(jiti@2.4.2)(less@4.2.0)(lightningcss@1.30.1)(sass-embedded@1.89.2)(sass@1.83.0)(stylus@0.62.0)(terser@5.36.0)(tsx@4.20.3)(yaml@2.8.0))
|
||||||
vite-plugin-svgr:
|
vite-plugin-svgr:
|
||||||
specifier: 4.3.0
|
specifier: 4.3.0
|
||||||
version: 4.3.0(rollup@4.40.0)(typescript@5.8.3)(vite@7.0.2(@types/node@22.15.33)(jiti@2.4.2)(less@4.2.0)(lightningcss@1.30.1)(sass-embedded@1.89.2)(sass@1.83.0)(stylus@0.62.0)(terser@5.36.0)(tsx@4.20.3)(yaml@2.8.0))
|
version: 4.3.0(rollup@4.40.0)(typescript@5.8.3)(vite@7.0.3(@types/node@22.15.33)(jiti@2.4.2)(less@4.2.0)(lightningcss@1.30.1)(sass-embedded@1.89.2)(sass@1.83.0)(stylus@0.62.0)(terser@5.36.0)(tsx@4.20.3)(yaml@2.8.0))
|
||||||
vite-tsconfig-paths:
|
vite-tsconfig-paths:
|
||||||
specifier: 5.1.4
|
specifier: 5.1.4
|
||||||
version: 5.1.4(typescript@5.8.3)(vite@7.0.2(@types/node@22.15.33)(jiti@2.4.2)(less@4.2.0)(lightningcss@1.30.1)(sass-embedded@1.89.2)(sass@1.83.0)(stylus@0.62.0)(terser@5.36.0)(tsx@4.20.3)(yaml@2.8.0))
|
version: 5.1.4(typescript@5.8.3)(vite@7.0.3(@types/node@22.15.33)(jiti@2.4.2)(less@4.2.0)(lightningcss@1.30.1)(sass-embedded@1.89.2)(sass@1.83.0)(stylus@0.62.0)(terser@5.36.0)(tsx@4.20.3)(yaml@2.8.0))
|
||||||
zod:
|
zod:
|
||||||
specifier: 3.25.75
|
specifier: 3.25.76
|
||||||
version: 3.25.75
|
version: 3.25.76
|
||||||
|
|
||||||
frontend/ui:
|
frontend/ui:
|
||||||
dependencies:
|
dependencies:
|
||||||
@@ -482,7 +482,7 @@ importers:
|
|||||||
version: 19.1.8
|
version: 19.1.8
|
||||||
'@vitejs/plugin-react':
|
'@vitejs/plugin-react':
|
||||||
specifier: 4.6.0
|
specifier: 4.6.0
|
||||||
version: 4.6.0(vite@7.0.2(@types/node@22.15.33)(jiti@2.4.2)(less@4.2.0)(lightningcss@1.30.1)(sass-embedded@1.89.2)(sass@1.83.0)(stylus@0.62.0)(terser@5.36.0)(tsx@4.20.3)(yaml@2.8.0))
|
version: 4.6.0(vite@7.0.3(@types/node@22.15.33)(jiti@2.4.2)(less@4.2.0)(lightningcss@1.30.1)(sass-embedded@1.89.2)(sass@1.83.0)(stylus@0.62.0)(terser@5.36.0)(tsx@4.20.3)(yaml@2.8.0))
|
||||||
ahooks:
|
ahooks:
|
||||||
specifier: 3.9.0
|
specifier: 3.9.0
|
||||||
version: 3.9.0(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
|
version: 3.9.0(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
|
||||||
@@ -503,7 +503,7 @@ importers:
|
|||||||
version: 6.0.0(react@19.1.0)
|
version: 6.0.0(react@19.1.0)
|
||||||
react-i18next:
|
react-i18next:
|
||||||
specifier: 15.6.0
|
specifier: 15.6.0
|
||||||
version: 15.6.0(i18next@25.3.1(typescript@5.8.3))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.8.3)
|
version: 15.6.0(i18next@25.3.2(typescript@5.8.3))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.8.3)
|
||||||
react-use:
|
react-use:
|
||||||
specifier: 17.6.0
|
specifier: 17.6.0
|
||||||
version: 17.6.0(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
|
version: 17.6.0(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
|
||||||
@@ -511,11 +511,11 @@ importers:
|
|||||||
specifier: 4.1.11
|
specifier: 4.1.11
|
||||||
version: 4.1.11
|
version: 4.1.11
|
||||||
vite:
|
vite:
|
||||||
specifier: 7.0.2
|
specifier: 7.0.3
|
||||||
version: 7.0.2(@types/node@22.15.33)(jiti@2.4.2)(less@4.2.0)(lightningcss@1.30.1)(sass-embedded@1.89.2)(sass@1.83.0)(stylus@0.62.0)(terser@5.36.0)(tsx@4.20.3)(yaml@2.8.0)
|
version: 7.0.3(@types/node@22.15.33)(jiti@2.4.2)(less@4.2.0)(lightningcss@1.30.1)(sass-embedded@1.89.2)(sass@1.83.0)(stylus@0.62.0)(terser@5.36.0)(tsx@4.20.3)(yaml@2.8.0)
|
||||||
vite-tsconfig-paths:
|
vite-tsconfig-paths:
|
||||||
specifier: 5.1.4
|
specifier: 5.1.4
|
||||||
version: 5.1.4(typescript@5.8.3)(vite@7.0.2(@types/node@22.15.33)(jiti@2.4.2)(less@4.2.0)(lightningcss@1.30.1)(sass-embedded@1.89.2)(sass@1.83.0)(stylus@0.62.0)(terser@5.36.0)(tsx@4.20.3)(yaml@2.8.0))
|
version: 5.1.4(typescript@5.8.3)(vite@7.0.3(@types/node@22.15.33)(jiti@2.4.2)(less@4.2.0)(lightningcss@1.30.1)(sass-embedded@1.89.2)(sass@1.83.0)(stylus@0.62.0)(terser@5.36.0)(tsx@4.20.3)(yaml@2.8.0))
|
||||||
devDependencies:
|
devDependencies:
|
||||||
'@emotion/react':
|
'@emotion/react':
|
||||||
specifier: 11.14.0
|
specifier: 11.14.0
|
||||||
@@ -540,7 +540,7 @@ importers:
|
|||||||
version: 5.1.0(typescript@5.8.3)
|
version: 5.1.0(typescript@5.8.3)
|
||||||
vite-plugin-dts:
|
vite-plugin-dts:
|
||||||
specifier: 4.5.4
|
specifier: 4.5.4
|
||||||
version: 4.5.4(@types/node@22.15.33)(rollup@4.40.0)(typescript@5.8.3)(vite@7.0.2(@types/node@22.15.33)(jiti@2.4.2)(less@4.2.0)(lightningcss@1.30.1)(sass-embedded@1.89.2)(sass@1.83.0)(stylus@0.62.0)(terser@5.36.0)(tsx@4.20.3)(yaml@2.8.0))
|
version: 4.5.4(@types/node@22.15.33)(rollup@4.40.0)(typescript@5.8.3)(vite@7.0.3(@types/node@22.15.33)(jiti@2.4.2)(less@4.2.0)(lightningcss@1.30.1)(sass-embedded@1.89.2)(sass@1.83.0)(stylus@0.62.0)(terser@5.36.0)(tsx@4.20.3)(yaml@2.8.0))
|
||||||
|
|
||||||
scripts:
|
scripts:
|
||||||
dependencies:
|
dependencies:
|
||||||
@@ -566,8 +566,8 @@ importers:
|
|||||||
specifier: 7.7.2
|
specifier: 7.7.2
|
||||||
version: 7.7.2
|
version: 7.7.2
|
||||||
zod:
|
zod:
|
||||||
specifier: 3.25.75
|
specifier: 3.25.76
|
||||||
version: 3.25.75
|
version: 3.25.76
|
||||||
devDependencies:
|
devDependencies:
|
||||||
'@octokit/types':
|
'@octokit/types':
|
||||||
specifier: 14.1.0
|
specifier: 14.1.0
|
||||||
@@ -5476,8 +5476,8 @@ packages:
|
|||||||
hyphenate-style-name@1.1.0:
|
hyphenate-style-name@1.1.0:
|
||||||
resolution: {integrity: sha512-WDC/ui2VVRrz3jOVi+XtjqkDjiVjTtFaAGiW37k6b+ohyQ5wYDOGkvCZa8+H0nx3gyvv0+BST9xuOgIyGQ00gw==}
|
resolution: {integrity: sha512-WDC/ui2VVRrz3jOVi+XtjqkDjiVjTtFaAGiW37k6b+ohyQ5wYDOGkvCZa8+H0nx3gyvv0+BST9xuOgIyGQ00gw==}
|
||||||
|
|
||||||
i18next@25.3.1:
|
i18next@25.3.2:
|
||||||
resolution: {integrity: sha512-S4CPAx8LfMOnURnnJa8jFWvur+UX/LWcl6+61p9VV7SK2m0445JeBJ6tLD0D5SR0H29G4PYfWkEhivKG5p4RDg==}
|
resolution: {integrity: sha512-JSnbZDxRVbphc5jiptxr3o2zocy5dEqpVm9qCGdJwRNO+9saUJS0/u4LnM/13C23fUEWxAylPqKU/NpMV/IjqA==}
|
||||||
peerDependencies:
|
peerDependencies:
|
||||||
typescript: ^5
|
typescript: ^5
|
||||||
peerDependenciesMeta:
|
peerDependenciesMeta:
|
||||||
@@ -8324,8 +8324,8 @@ packages:
|
|||||||
vite:
|
vite:
|
||||||
optional: true
|
optional: true
|
||||||
|
|
||||||
vite@7.0.2:
|
vite@7.0.3:
|
||||||
resolution: {integrity: sha512-hxdyZDY1CM6SNpKI4w4lcUc3Mtkd9ej4ECWVHSMrOdSinVc2zYOAppHeGc/hzmRo3pxM5blMzkuWHOJA/3NiFw==}
|
resolution: {integrity: sha512-y2L5oJZF7bj4c0jgGYgBNSdIu+5HF+m68rn2cQXFbGoShdhV1phX9rbnxy9YXj82aS8MMsCLAAFkRxZeWdldrQ==}
|
||||||
engines: {node: ^20.19.0 || >=22.12.0}
|
engines: {node: ^20.19.0 || >=22.12.0}
|
||||||
hasBin: true
|
hasBin: true
|
||||||
peerDependencies:
|
peerDependencies:
|
||||||
@@ -8564,8 +8564,8 @@ packages:
|
|||||||
zod@3.25.67:
|
zod@3.25.67:
|
||||||
resolution: {integrity: sha512-idA2YXwpCdqUSKRCACDE6ItZD9TZzy3OZMtpfLoh6oPR47lipysRrJfjzMqFxQ3uJuUPyUeWe1r9vLH33xO/Qw==}
|
resolution: {integrity: sha512-idA2YXwpCdqUSKRCACDE6ItZD9TZzy3OZMtpfLoh6oPR47lipysRrJfjzMqFxQ3uJuUPyUeWe1r9vLH33xO/Qw==}
|
||||||
|
|
||||||
zod@3.25.75:
|
zod@3.25.76:
|
||||||
resolution: {integrity: sha512-OhpzAmVzabPOL6C3A3gpAifqr9MqihV/Msx3gor2b2kviCgcb+HM9SEOpMWwwNp9MRunWnhtAKUoo0AHhjyPPg==}
|
resolution: {integrity: sha512-gzUt/qt81nXsFGKIFcC3YnfEAx5NkunCfnDlvuBSSFS02bcXu4Lmea0AFIUwbLWxWPx3d9p8S5QoaujKcNQxcQ==}
|
||||||
|
|
||||||
zwitch@2.0.4:
|
zwitch@2.0.4:
|
||||||
resolution: {integrity: sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==}
|
resolution: {integrity: sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==}
|
||||||
@@ -11201,11 +11201,11 @@ snapshots:
|
|||||||
recast: 0.23.11
|
recast: 0.23.11
|
||||||
source-map: 0.7.4
|
source-map: 0.7.4
|
||||||
tsx: 4.20.3
|
tsx: 4.20.3
|
||||||
zod: 3.25.75
|
zod: 3.25.76
|
||||||
transitivePeerDependencies:
|
transitivePeerDependencies:
|
||||||
- supports-color
|
- supports-color
|
||||||
|
|
||||||
'@tanstack/router-plugin@1.125.6(@tanstack/react-router@1.125.6(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(vite@7.0.2(@types/node@22.15.33)(jiti@2.4.2)(less@4.2.0)(lightningcss@1.30.1)(sass-embedded@1.89.2)(sass@1.83.0)(stylus@0.62.0)(terser@5.36.0)(tsx@4.20.3)(yaml@2.8.0))':
|
'@tanstack/router-plugin@1.125.6(@tanstack/react-router@1.125.6(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(vite@7.0.3(@types/node@22.15.33)(jiti@2.4.2)(less@4.2.0)(lightningcss@1.30.1)(sass-embedded@1.89.2)(sass@1.83.0)(stylus@0.62.0)(terser@5.36.0)(tsx@4.20.3)(yaml@2.8.0))':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@babel/core': 7.27.7
|
'@babel/core': 7.27.7
|
||||||
'@babel/plugin-syntax-jsx': 7.27.1(@babel/core@7.27.7)
|
'@babel/plugin-syntax-jsx': 7.27.1(@babel/core@7.27.7)
|
||||||
@@ -11220,10 +11220,10 @@ snapshots:
|
|||||||
babel-dead-code-elimination: 1.0.10
|
babel-dead-code-elimination: 1.0.10
|
||||||
chokidar: 3.6.0
|
chokidar: 3.6.0
|
||||||
unplugin: 2.3.5
|
unplugin: 2.3.5
|
||||||
zod: 3.25.75
|
zod: 3.25.76
|
||||||
optionalDependencies:
|
optionalDependencies:
|
||||||
'@tanstack/react-router': 1.125.6(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
|
'@tanstack/react-router': 1.125.6(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
|
||||||
vite: 7.0.2(@types/node@22.15.33)(jiti@2.4.2)(less@4.2.0)(lightningcss@1.30.1)(sass-embedded@1.89.2)(sass@1.83.0)(stylus@0.62.0)(terser@5.36.0)(tsx@4.20.3)(yaml@2.8.0)
|
vite: 7.0.3(@types/node@22.15.33)(jiti@2.4.2)(less@4.2.0)(lightningcss@1.30.1)(sass-embedded@1.89.2)(sass@1.83.0)(stylus@0.62.0)(terser@5.36.0)(tsx@4.20.3)(yaml@2.8.0)
|
||||||
transitivePeerDependencies:
|
transitivePeerDependencies:
|
||||||
- supports-color
|
- supports-color
|
||||||
|
|
||||||
@@ -11238,10 +11238,10 @@ snapshots:
|
|||||||
transitivePeerDependencies:
|
transitivePeerDependencies:
|
||||||
- supports-color
|
- supports-color
|
||||||
|
|
||||||
'@tanstack/router-zod-adapter@1.81.5(@tanstack/react-router@1.125.6(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(zod@3.25.75)':
|
'@tanstack/router-zod-adapter@1.81.5(@tanstack/react-router@1.125.6(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(zod@3.25.76)':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@tanstack/react-router': 1.125.6(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
|
'@tanstack/react-router': 1.125.6(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
|
||||||
zod: 3.25.75
|
zod: 3.25.76
|
||||||
|
|
||||||
'@tanstack/store@0.7.0': {}
|
'@tanstack/store@0.7.0': {}
|
||||||
|
|
||||||
@@ -11828,7 +11828,7 @@ snapshots:
|
|||||||
'@unrs/resolver-binding-win32-x64-msvc@1.10.1':
|
'@unrs/resolver-binding-win32-x64-msvc@1.10.1':
|
||||||
optional: true
|
optional: true
|
||||||
|
|
||||||
'@vitejs/plugin-legacy@7.0.0(terser@5.36.0)(vite@7.0.2(@types/node@22.15.33)(jiti@2.4.2)(less@4.2.0)(lightningcss@1.30.1)(sass-embedded@1.89.2)(sass@1.83.0)(stylus@0.62.0)(terser@5.36.0)(tsx@4.20.3)(yaml@2.8.0))':
|
'@vitejs/plugin-legacy@7.0.0(terser@5.36.0)(vite@7.0.3(@types/node@22.15.33)(jiti@2.4.2)(less@4.2.0)(lightningcss@1.30.1)(sass-embedded@1.89.2)(sass@1.83.0)(stylus@0.62.0)(terser@5.36.0)(tsx@4.20.3)(yaml@2.8.0))':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@babel/core': 7.27.4
|
'@babel/core': 7.27.4
|
||||||
'@babel/preset-env': 7.27.2(@babel/core@7.27.4)
|
'@babel/preset-env': 7.27.2(@babel/core@7.27.4)
|
||||||
@@ -11839,19 +11839,19 @@ snapshots:
|
|||||||
regenerator-runtime: 0.14.1
|
regenerator-runtime: 0.14.1
|
||||||
systemjs: 6.15.1
|
systemjs: 6.15.1
|
||||||
terser: 5.36.0
|
terser: 5.36.0
|
||||||
vite: 7.0.2(@types/node@22.15.33)(jiti@2.4.2)(less@4.2.0)(lightningcss@1.30.1)(sass-embedded@1.89.2)(sass@1.83.0)(stylus@0.62.0)(terser@5.36.0)(tsx@4.20.3)(yaml@2.8.0)
|
vite: 7.0.3(@types/node@22.15.33)(jiti@2.4.2)(less@4.2.0)(lightningcss@1.30.1)(sass-embedded@1.89.2)(sass@1.83.0)(stylus@0.62.0)(terser@5.36.0)(tsx@4.20.3)(yaml@2.8.0)
|
||||||
transitivePeerDependencies:
|
transitivePeerDependencies:
|
||||||
- supports-color
|
- supports-color
|
||||||
|
|
||||||
'@vitejs/plugin-react-swc@3.10.2(vite@7.0.2(@types/node@22.15.33)(jiti@2.4.2)(less@4.2.0)(lightningcss@1.30.1)(sass-embedded@1.89.2)(sass@1.83.0)(stylus@0.62.0)(terser@5.36.0)(tsx@4.20.3)(yaml@2.8.0))':
|
'@vitejs/plugin-react-swc@3.10.2(vite@7.0.3(@types/node@22.15.33)(jiti@2.4.2)(less@4.2.0)(lightningcss@1.30.1)(sass-embedded@1.89.2)(sass@1.83.0)(stylus@0.62.0)(terser@5.36.0)(tsx@4.20.3)(yaml@2.8.0))':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@rolldown/pluginutils': 1.0.0-beta.11
|
'@rolldown/pluginutils': 1.0.0-beta.11
|
||||||
'@swc/core': 1.12.1
|
'@swc/core': 1.12.1
|
||||||
vite: 7.0.2(@types/node@22.15.33)(jiti@2.4.2)(less@4.2.0)(lightningcss@1.30.1)(sass-embedded@1.89.2)(sass@1.83.0)(stylus@0.62.0)(terser@5.36.0)(tsx@4.20.3)(yaml@2.8.0)
|
vite: 7.0.3(@types/node@22.15.33)(jiti@2.4.2)(less@4.2.0)(lightningcss@1.30.1)(sass-embedded@1.89.2)(sass@1.83.0)(stylus@0.62.0)(terser@5.36.0)(tsx@4.20.3)(yaml@2.8.0)
|
||||||
transitivePeerDependencies:
|
transitivePeerDependencies:
|
||||||
- '@swc/helpers'
|
- '@swc/helpers'
|
||||||
|
|
||||||
'@vitejs/plugin-react@4.6.0(vite@7.0.2(@types/node@22.15.33)(jiti@2.4.2)(less@4.2.0)(lightningcss@1.30.1)(sass-embedded@1.89.2)(sass@1.83.0)(stylus@0.62.0)(terser@5.36.0)(tsx@4.20.3)(yaml@2.8.0))':
|
'@vitejs/plugin-react@4.6.0(vite@7.0.3(@types/node@22.15.33)(jiti@2.4.2)(less@4.2.0)(lightningcss@1.30.1)(sass-embedded@1.89.2)(sass@1.83.0)(stylus@0.62.0)(terser@5.36.0)(tsx@4.20.3)(yaml@2.8.0))':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@babel/core': 7.27.4
|
'@babel/core': 7.27.4
|
||||||
'@babel/plugin-transform-react-jsx-self': 7.27.1(@babel/core@7.27.4)
|
'@babel/plugin-transform-react-jsx-self': 7.27.1(@babel/core@7.27.4)
|
||||||
@@ -11859,7 +11859,7 @@ snapshots:
|
|||||||
'@rolldown/pluginutils': 1.0.0-beta.19
|
'@rolldown/pluginutils': 1.0.0-beta.19
|
||||||
'@types/babel__core': 7.20.5
|
'@types/babel__core': 7.20.5
|
||||||
react-refresh: 0.17.0
|
react-refresh: 0.17.0
|
||||||
vite: 7.0.2(@types/node@22.15.33)(jiti@2.4.2)(less@4.2.0)(lightningcss@1.30.1)(sass-embedded@1.89.2)(sass@1.83.0)(stylus@0.62.0)(terser@5.36.0)(tsx@4.20.3)(yaml@2.8.0)
|
vite: 7.0.3(@types/node@22.15.33)(jiti@2.4.2)(less@4.2.0)(lightningcss@1.30.1)(sass-embedded@1.89.2)(sass@1.83.0)(stylus@0.62.0)(terser@5.36.0)(tsx@4.20.3)(yaml@2.8.0)
|
||||||
transitivePeerDependencies:
|
transitivePeerDependencies:
|
||||||
- supports-color
|
- supports-color
|
||||||
|
|
||||||
@@ -14175,7 +14175,7 @@ snapshots:
|
|||||||
|
|
||||||
hyphenate-style-name@1.1.0: {}
|
hyphenate-style-name@1.1.0: {}
|
||||||
|
|
||||||
i18next@25.3.1(typescript@5.8.3):
|
i18next@25.3.2(typescript@5.8.3):
|
||||||
dependencies:
|
dependencies:
|
||||||
'@babel/runtime': 7.27.6
|
'@babel/runtime': 7.27.6
|
||||||
optionalDependencies:
|
optionalDependencies:
|
||||||
@@ -15779,11 +15779,11 @@ snapshots:
|
|||||||
dependencies:
|
dependencies:
|
||||||
react: 19.1.0
|
react: 19.1.0
|
||||||
|
|
||||||
react-i18next@15.6.0(i18next@25.3.1(typescript@5.8.3))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.8.3):
|
react-i18next@15.6.0(i18next@25.3.2(typescript@5.8.3))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.8.3):
|
||||||
dependencies:
|
dependencies:
|
||||||
'@babel/runtime': 7.27.6
|
'@babel/runtime': 7.27.6
|
||||||
html-parse-stringify: 3.0.1
|
html-parse-stringify: 3.0.1
|
||||||
i18next: 25.3.1(typescript@5.8.3)
|
i18next: 25.3.2(typescript@5.8.3)
|
||||||
react: 19.1.0
|
react: 19.1.0
|
||||||
optionalDependencies:
|
optionalDependencies:
|
||||||
react-dom: 19.1.0(react@19.1.0)
|
react-dom: 19.1.0(react@19.1.0)
|
||||||
@@ -17196,7 +17196,7 @@ snapshots:
|
|||||||
- rollup
|
- rollup
|
||||||
- supports-color
|
- supports-color
|
||||||
|
|
||||||
vite-plugin-dts@4.5.4(@types/node@22.15.33)(rollup@4.40.0)(typescript@5.8.3)(vite@7.0.2(@types/node@22.15.33)(jiti@2.4.2)(less@4.2.0)(lightningcss@1.30.1)(sass-embedded@1.89.2)(sass@1.83.0)(stylus@0.62.0)(terser@5.36.0)(tsx@4.20.3)(yaml@2.8.0)):
|
vite-plugin-dts@4.5.4(@types/node@22.15.33)(rollup@4.40.0)(typescript@5.8.3)(vite@7.0.3(@types/node@22.15.33)(jiti@2.4.2)(less@4.2.0)(lightningcss@1.30.1)(sass-embedded@1.89.2)(sass@1.83.0)(stylus@0.62.0)(terser@5.36.0)(tsx@4.20.3)(yaml@2.8.0)):
|
||||||
dependencies:
|
dependencies:
|
||||||
'@microsoft/api-extractor': 7.51.0(@types/node@22.15.33)
|
'@microsoft/api-extractor': 7.51.0(@types/node@22.15.33)
|
||||||
'@rollup/pluginutils': 5.1.4(rollup@4.40.0)
|
'@rollup/pluginutils': 5.1.4(rollup@4.40.0)
|
||||||
@@ -17209,13 +17209,13 @@ snapshots:
|
|||||||
magic-string: 0.30.17
|
magic-string: 0.30.17
|
||||||
typescript: 5.8.3
|
typescript: 5.8.3
|
||||||
optionalDependencies:
|
optionalDependencies:
|
||||||
vite: 7.0.2(@types/node@22.15.33)(jiti@2.4.2)(less@4.2.0)(lightningcss@1.30.1)(sass-embedded@1.89.2)(sass@1.83.0)(stylus@0.62.0)(terser@5.36.0)(tsx@4.20.3)(yaml@2.8.0)
|
vite: 7.0.3(@types/node@22.15.33)(jiti@2.4.2)(less@4.2.0)(lightningcss@1.30.1)(sass-embedded@1.89.2)(sass@1.83.0)(stylus@0.62.0)(terser@5.36.0)(tsx@4.20.3)(yaml@2.8.0)
|
||||||
transitivePeerDependencies:
|
transitivePeerDependencies:
|
||||||
- '@types/node'
|
- '@types/node'
|
||||||
- rollup
|
- rollup
|
||||||
- supports-color
|
- supports-color
|
||||||
|
|
||||||
vite-plugin-html@3.2.2(vite@7.0.2(@types/node@22.15.33)(jiti@2.4.2)(less@4.2.0)(lightningcss@1.30.1)(sass-embedded@1.89.2)(sass@1.83.0)(stylus@0.62.0)(terser@5.36.0)(tsx@4.20.3)(yaml@2.8.0)):
|
vite-plugin-html@3.2.2(vite@7.0.3(@types/node@22.15.33)(jiti@2.4.2)(less@4.2.0)(lightningcss@1.30.1)(sass-embedded@1.89.2)(sass@1.83.0)(stylus@0.62.0)(terser@5.36.0)(tsx@4.20.3)(yaml@2.8.0)):
|
||||||
dependencies:
|
dependencies:
|
||||||
'@rollup/pluginutils': 4.2.1
|
'@rollup/pluginutils': 4.2.1
|
||||||
colorette: 2.0.20
|
colorette: 2.0.20
|
||||||
@@ -17229,39 +17229,39 @@ snapshots:
|
|||||||
html-minifier-terser: 6.1.0
|
html-minifier-terser: 6.1.0
|
||||||
node-html-parser: 5.4.2
|
node-html-parser: 5.4.2
|
||||||
pathe: 0.2.0
|
pathe: 0.2.0
|
||||||
vite: 7.0.2(@types/node@22.15.33)(jiti@2.4.2)(less@4.2.0)(lightningcss@1.30.1)(sass-embedded@1.89.2)(sass@1.83.0)(stylus@0.62.0)(terser@5.36.0)(tsx@4.20.3)(yaml@2.8.0)
|
vite: 7.0.3(@types/node@22.15.33)(jiti@2.4.2)(less@4.2.0)(lightningcss@1.30.1)(sass-embedded@1.89.2)(sass@1.83.0)(stylus@0.62.0)(terser@5.36.0)(tsx@4.20.3)(yaml@2.8.0)
|
||||||
|
|
||||||
vite-plugin-sass-dts@1.3.31(postcss@8.5.6)(prettier@3.6.2)(sass-embedded@1.89.2)(vite@7.0.2(@types/node@22.15.33)(jiti@2.4.2)(less@4.2.0)(lightningcss@1.30.1)(sass-embedded@1.89.2)(sass@1.83.0)(stylus@0.62.0)(terser@5.36.0)(tsx@4.20.3)(yaml@2.8.0)):
|
vite-plugin-sass-dts@1.3.31(postcss@8.5.6)(prettier@3.6.2)(sass-embedded@1.89.2)(vite@7.0.3(@types/node@22.15.33)(jiti@2.4.2)(less@4.2.0)(lightningcss@1.30.1)(sass-embedded@1.89.2)(sass@1.83.0)(stylus@0.62.0)(terser@5.36.0)(tsx@4.20.3)(yaml@2.8.0)):
|
||||||
dependencies:
|
dependencies:
|
||||||
postcss: 8.5.6
|
postcss: 8.5.6
|
||||||
postcss-js: 4.0.1(postcss@8.5.6)
|
postcss-js: 4.0.1(postcss@8.5.6)
|
||||||
prettier: 3.6.2
|
prettier: 3.6.2
|
||||||
sass-embedded: 1.89.2
|
sass-embedded: 1.89.2
|
||||||
vite: 7.0.2(@types/node@22.15.33)(jiti@2.4.2)(less@4.2.0)(lightningcss@1.30.1)(sass-embedded@1.89.2)(sass@1.83.0)(stylus@0.62.0)(terser@5.36.0)(tsx@4.20.3)(yaml@2.8.0)
|
vite: 7.0.3(@types/node@22.15.33)(jiti@2.4.2)(less@4.2.0)(lightningcss@1.30.1)(sass-embedded@1.89.2)(sass@1.83.0)(stylus@0.62.0)(terser@5.36.0)(tsx@4.20.3)(yaml@2.8.0)
|
||||||
|
|
||||||
vite-plugin-svgr@4.3.0(rollup@4.40.0)(typescript@5.8.3)(vite@7.0.2(@types/node@22.15.33)(jiti@2.4.2)(less@4.2.0)(lightningcss@1.30.1)(sass-embedded@1.89.2)(sass@1.83.0)(stylus@0.62.0)(terser@5.36.0)(tsx@4.20.3)(yaml@2.8.0)):
|
vite-plugin-svgr@4.3.0(rollup@4.40.0)(typescript@5.8.3)(vite@7.0.3(@types/node@22.15.33)(jiti@2.4.2)(less@4.2.0)(lightningcss@1.30.1)(sass-embedded@1.89.2)(sass@1.83.0)(stylus@0.62.0)(terser@5.36.0)(tsx@4.20.3)(yaml@2.8.0)):
|
||||||
dependencies:
|
dependencies:
|
||||||
'@rollup/pluginutils': 5.1.3(rollup@4.40.0)
|
'@rollup/pluginutils': 5.1.3(rollup@4.40.0)
|
||||||
'@svgr/core': 8.1.0(typescript@5.8.3)
|
'@svgr/core': 8.1.0(typescript@5.8.3)
|
||||||
'@svgr/plugin-jsx': 8.1.0(@svgr/core@8.1.0(typescript@5.8.3))
|
'@svgr/plugin-jsx': 8.1.0(@svgr/core@8.1.0(typescript@5.8.3))
|
||||||
vite: 7.0.2(@types/node@22.15.33)(jiti@2.4.2)(less@4.2.0)(lightningcss@1.30.1)(sass-embedded@1.89.2)(sass@1.83.0)(stylus@0.62.0)(terser@5.36.0)(tsx@4.20.3)(yaml@2.8.0)
|
vite: 7.0.3(@types/node@22.15.33)(jiti@2.4.2)(less@4.2.0)(lightningcss@1.30.1)(sass-embedded@1.89.2)(sass@1.83.0)(stylus@0.62.0)(terser@5.36.0)(tsx@4.20.3)(yaml@2.8.0)
|
||||||
transitivePeerDependencies:
|
transitivePeerDependencies:
|
||||||
- rollup
|
- rollup
|
||||||
- supports-color
|
- supports-color
|
||||||
- typescript
|
- typescript
|
||||||
|
|
||||||
vite-tsconfig-paths@5.1.4(typescript@5.8.3)(vite@7.0.2(@types/node@22.15.33)(jiti@2.4.2)(less@4.2.0)(lightningcss@1.30.1)(sass-embedded@1.89.2)(sass@1.83.0)(stylus@0.62.0)(terser@5.36.0)(tsx@4.20.3)(yaml@2.8.0)):
|
vite-tsconfig-paths@5.1.4(typescript@5.8.3)(vite@7.0.3(@types/node@22.15.33)(jiti@2.4.2)(less@4.2.0)(lightningcss@1.30.1)(sass-embedded@1.89.2)(sass@1.83.0)(stylus@0.62.0)(terser@5.36.0)(tsx@4.20.3)(yaml@2.8.0)):
|
||||||
dependencies:
|
dependencies:
|
||||||
debug: 4.3.7
|
debug: 4.3.7
|
||||||
globrex: 0.1.2
|
globrex: 0.1.2
|
||||||
tsconfck: 3.0.3(typescript@5.8.3)
|
tsconfck: 3.0.3(typescript@5.8.3)
|
||||||
optionalDependencies:
|
optionalDependencies:
|
||||||
vite: 7.0.2(@types/node@22.15.33)(jiti@2.4.2)(less@4.2.0)(lightningcss@1.30.1)(sass-embedded@1.89.2)(sass@1.83.0)(stylus@0.62.0)(terser@5.36.0)(tsx@4.20.3)(yaml@2.8.0)
|
vite: 7.0.3(@types/node@22.15.33)(jiti@2.4.2)(less@4.2.0)(lightningcss@1.30.1)(sass-embedded@1.89.2)(sass@1.83.0)(stylus@0.62.0)(terser@5.36.0)(tsx@4.20.3)(yaml@2.8.0)
|
||||||
transitivePeerDependencies:
|
transitivePeerDependencies:
|
||||||
- supports-color
|
- supports-color
|
||||||
- typescript
|
- typescript
|
||||||
|
|
||||||
vite@7.0.2(@types/node@22.15.33)(jiti@2.4.2)(less@4.2.0)(lightningcss@1.30.1)(sass-embedded@1.89.2)(sass@1.83.0)(stylus@0.62.0)(terser@5.36.0)(tsx@4.20.3)(yaml@2.8.0):
|
vite@7.0.3(@types/node@22.15.33)(jiti@2.4.2)(less@4.2.0)(lightningcss@1.30.1)(sass-embedded@1.89.2)(sass@1.83.0)(stylus@0.62.0)(terser@5.36.0)(tsx@4.20.3)(yaml@2.8.0):
|
||||||
dependencies:
|
dependencies:
|
||||||
esbuild: 0.25.0
|
esbuild: 0.25.0
|
||||||
fdir: 6.4.6(picomatch@4.0.2)
|
fdir: 6.4.6(picomatch@4.0.2)
|
||||||
@@ -17504,6 +17504,6 @@ snapshots:
|
|||||||
|
|
||||||
zod@3.25.67: {}
|
zod@3.25.67: {}
|
||||||
|
|
||||||
zod@3.25.75: {}
|
zod@3.25.76: {}
|
||||||
|
|
||||||
zwitch@2.0.4: {}
|
zwitch@2.0.4: {}
|
||||||
|
@@ -10,7 +10,7 @@
|
|||||||
"filesize": "10.1.6",
|
"filesize": "10.1.6",
|
||||||
"p-retry": "6.2.1",
|
"p-retry": "6.2.1",
|
||||||
"semver": "7.7.2",
|
"semver": "7.7.2",
|
||||||
"zod": "3.25.75"
|
"zod": "3.25.76"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@octokit/types": "14.1.0",
|
"@octokit/types": "14.1.0",
|
||||||
|
@@ -70,7 +70,7 @@ caldata_extract_reverse() {
|
|||||||
local caldata
|
local caldata
|
||||||
|
|
||||||
mtd=$(find_mtd_chardev "$part")
|
mtd=$(find_mtd_chardev "$part")
|
||||||
reversed=$(hexdump -v -s $offset -n $count -e '/1 "%02x "' $mtd)
|
reversed=$(hexdump -v -s $offset -n $count -e '1/1 "%02x "' $mtd)
|
||||||
|
|
||||||
for byte in $reversed; do
|
for byte in $reversed; do
|
||||||
caldata="\x${byte}${caldata}"
|
caldata="\x${byte}${caldata}"
|
||||||
@@ -122,49 +122,43 @@ caldata_valid() {
|
|||||||
return $?
|
return $?
|
||||||
}
|
}
|
||||||
|
|
||||||
caldata_patch_chksum() {
|
caldata_patch_data() {
|
||||||
local mac=$1
|
local data=$1
|
||||||
local mac_offset=$(($2))
|
local data_count=$((${#1} / 2))
|
||||||
local chksum_offset=$(($3))
|
[ -n "$2" ] && local data_offset=$(($2))
|
||||||
|
[ -n "$3" ] && local chksum_offset=$(($3))
|
||||||
local target=$4
|
local target=$4
|
||||||
local xor_mac
|
local fw_data
|
||||||
local xor_fw_mac
|
local fw_chksum
|
||||||
local xor_fw_chksum
|
|
||||||
|
|
||||||
xor_mac=${mac//:/}
|
[ -z "$data" -o -z "$data_offset" ] && return
|
||||||
xor_mac="${xor_mac:0:4} ${xor_mac:4:4} ${xor_mac:8:4}"
|
|
||||||
|
|
||||||
xor_fw_mac=$(hexdump -v -n 6 -s $mac_offset -e '/1 "%02x"' /lib/firmware/$FIRMWARE)
|
|
||||||
xor_fw_mac="${xor_fw_mac:0:4} ${xor_fw_mac:4:4} ${xor_fw_mac:8:4}"
|
|
||||||
|
|
||||||
xor_fw_chksum=$(hexdump -v -n 2 -s $chksum_offset -e '/1 "%02x"' /lib/firmware/$FIRMWARE)
|
|
||||||
xor_fw_chksum=$(xor $xor_fw_chksum $xor_fw_mac $xor_mac)
|
|
||||||
|
|
||||||
printf "%b" "\x${xor_fw_chksum:0:2}\x${xor_fw_chksum:2:2}" | \
|
|
||||||
dd of=$target conv=notrunc bs=1 seek=$chksum_offset count=2
|
|
||||||
}
|
|
||||||
|
|
||||||
caldata_patch_mac() {
|
|
||||||
local mac=$1
|
|
||||||
local mac_offset=$(($2))
|
|
||||||
local chksum_offset=$3
|
|
||||||
local target=$4
|
|
||||||
|
|
||||||
[ -z "$mac" -o -z "$mac_offset" ] && return
|
|
||||||
|
|
||||||
[ -n "$target" ] || target=/lib/firmware/$FIRMWARE
|
[ -n "$target" ] || target=/lib/firmware/$FIRMWARE
|
||||||
|
|
||||||
[ -n "$chksum_offset" ] && caldata_patch_chksum "$mac" "$mac_offset" "$chksum_offset" "$target"
|
fw_data=$(hexdump -v -n $data_count -s $data_offset -e '1/1 "%02x"' $target)
|
||||||
|
|
||||||
macaddr_2bin $mac | dd of=$target conv=notrunc oflag=seek_bytes bs=6 seek=$mac_offset count=1 || \
|
if [ "$data" != "$fw_data" ]; then
|
||||||
caldata_die "failed to write MAC address to eeprom file"
|
|
||||||
|
if [ -n "$chksum_offset" ]; then
|
||||||
|
fw_chksum=$(hexdump -v -n 2 -s $chksum_offset -e '1/1 "%02x"' $target)
|
||||||
|
fw_chksum=$(xor $fw_chksum $(data_2xor_val $fw_data) $(data_2xor_val $data))
|
||||||
|
|
||||||
|
data_2bin $fw_chksum | \
|
||||||
|
dd of=$target conv=notrunc bs=1 seek=$chksum_offset count=2 || \
|
||||||
|
caldata_die "failed to write chksum to eeprom file"
|
||||||
|
fi
|
||||||
|
|
||||||
|
data_2bin $data | \
|
||||||
|
dd of=$target conv=notrunc bs=1 seek=$data_offset count=$data_count || \
|
||||||
|
caldata_die "failed to write data to eeprom file"
|
||||||
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
ath9k_patch_mac() {
|
ath9k_patch_mac() {
|
||||||
local mac=$1
|
local mac=$1
|
||||||
local target=$2
|
local target=$2
|
||||||
|
|
||||||
caldata_patch_mac "$mac" 0x2 "" "$target"
|
caldata_patch_data "${mac//:/}" 0x2 "" "$target"
|
||||||
}
|
}
|
||||||
|
|
||||||
ath9k_patch_mac_crc() {
|
ath9k_patch_mac_crc() {
|
||||||
@@ -173,12 +167,52 @@ ath9k_patch_mac_crc() {
|
|||||||
local chksum_offset=$((mac_offset - 10))
|
local chksum_offset=$((mac_offset - 10))
|
||||||
local target=$4
|
local target=$4
|
||||||
|
|
||||||
caldata_patch_mac "$mac" "$mac_offset" "$chksum_offset" "$target"
|
caldata_patch_data "${mac//:/}" "$mac_offset" "$chksum_offset" "$target"
|
||||||
}
|
}
|
||||||
|
|
||||||
ath10k_patch_mac() {
|
ath10k_patch_mac() {
|
||||||
local mac=$1
|
local mac=$1
|
||||||
local target=$2
|
local target=$2
|
||||||
|
|
||||||
caldata_patch_mac "$mac" 0x6 0x2 "$target"
|
caldata_patch_data "${mac//:/}" 0x6 0x2 "$target"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
ath11k_patch_mac() {
|
||||||
|
local mac=$1
|
||||||
|
# mac_id from 0 to 5
|
||||||
|
local mac_id=$2
|
||||||
|
local target=$3
|
||||||
|
|
||||||
|
[ -z "$mac_id" ] && return
|
||||||
|
|
||||||
|
caldata_patch_data "${mac//:/}" $(printf "0x%x" $(($mac_id * 0x6 + 0xe))) 0xa "$target"
|
||||||
|
}
|
||||||
|
|
||||||
|
ath10k_remove_regdomain() {
|
||||||
|
local target=$1
|
||||||
|
|
||||||
|
caldata_patch_data "0000" 0xc 0x2 "$target"
|
||||||
|
}
|
||||||
|
|
||||||
|
ath11k_remove_regdomain() {
|
||||||
|
local target=$1
|
||||||
|
local regdomain
|
||||||
|
local regdomain_data
|
||||||
|
|
||||||
|
regdomain=$(hexdump -v -n 2 -s 0x34 -e '1/1 "%02x"' $target)
|
||||||
|
caldata_patch_data "0000" 0x34 0xa "$target"
|
||||||
|
|
||||||
|
for offset in 0x450 0x458 0x500 0x5a8; do
|
||||||
|
regdomain_data=$(hexdump -v -n 2 -s $offset -e '1/1 "%02x"' $target)
|
||||||
|
|
||||||
|
if [ "$regdomain" == "$regdomain_data" ]; then
|
||||||
|
caldata_patch_data "0000" $offset 0xa "$target"
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
}
|
||||||
|
|
||||||
|
ath11k_set_macflag() {
|
||||||
|
local target=$1
|
||||||
|
|
||||||
|
caldata_patch_data "0100" 0x3e 0xa "$target"
|
||||||
|
}
|
||||||
|
@@ -66,7 +66,7 @@ get_mac_ascii() {
|
|||||||
local key="$2"
|
local key="$2"
|
||||||
local mac_dirty
|
local mac_dirty
|
||||||
|
|
||||||
mac_dirty=$(strings "$part" | sed -n 's/^'"$key"'=//p')
|
mac_dirty=$(strings "$part" | sed -n "s/^$key\\(=\\?\)//p")
|
||||||
|
|
||||||
# "canonicalize" mac
|
# "canonicalize" mac
|
||||||
[ -n "$mac_dirty" ] && macaddr_canonicalize "$mac_dirty"
|
[ -n "$mac_dirty" ] && macaddr_canonicalize "$mac_dirty"
|
||||||
@@ -275,16 +275,10 @@ macaddr_unsetbit_mc() {
|
|||||||
|
|
||||||
macaddr_random() {
|
macaddr_random() {
|
||||||
local randsrc=$(get_mac_binary /dev/urandom 0)
|
local randsrc=$(get_mac_binary /dev/urandom 0)
|
||||||
|
|
||||||
echo "$(macaddr_unsetbit_mc "$(macaddr_setbit_la "${randsrc}")")"
|
echo "$(macaddr_unsetbit_mc "$(macaddr_setbit_la "${randsrc}")")"
|
||||||
}
|
}
|
||||||
|
|
||||||
macaddr_2bin() {
|
|
||||||
local mac=$1
|
|
||||||
|
|
||||||
echo -ne \\x${mac//:/\\x}
|
|
||||||
}
|
|
||||||
|
|
||||||
macaddr_canonicalize() {
|
macaddr_canonicalize() {
|
||||||
local mac="$1"
|
local mac="$1"
|
||||||
local canon=""
|
local canon=""
|
||||||
|
@@ -69,7 +69,7 @@ ipq807x_setup_macs()
|
|||||||
|
|
||||||
case "$board" in
|
case "$board" in
|
||||||
aliyun,ap8220)
|
aliyun,ap8220)
|
||||||
wan_mac=$(cat $(find_mtd_part product_info) | awk -F '\t' '/product.mac/{print $2}')
|
wan_mac=$(mtd_get_mac_ascii product_info product.mac)
|
||||||
lan_mac=$(macaddr_add "$wan_mac" 1)
|
lan_mac=$(macaddr_add "$wan_mac" 1)
|
||||||
label_mac="$wan_mac"
|
label_mac="$wan_mac"
|
||||||
;;
|
;;
|
||||||
|
@@ -11,7 +11,7 @@ board=$(board_name)
|
|||||||
|
|
||||||
case "$board" in
|
case "$board" in
|
||||||
aliyun,ap8220)
|
aliyun,ap8220)
|
||||||
label_mac=$(cat $(find_mtd_part product_info) | awk -F '\t' '/product.mac/{print $2}')
|
label_mac=$(mtd_get_mac_ascii product_info product.mac)
|
||||||
[ "$PHYNBR" = "0" ] && macaddr_add $label_mac 2 > /sys${DEVPATH}/macaddress
|
[ "$PHYNBR" = "0" ] && macaddr_add $label_mac 2 > /sys${DEVPATH}/macaddress
|
||||||
[ "$PHYNBR" = "1" ] && macaddr_add $label_mac 3 > /sys${DEVPATH}/macaddress
|
[ "$PHYNBR" = "1" ] && macaddr_add $label_mac 3 > /sys${DEVPATH}/macaddress
|
||||||
;;
|
;;
|
||||||
|
@@ -5,12 +5,12 @@
|
|||||||
include $(TOPDIR)/rules.mk
|
include $(TOPDIR)/rules.mk
|
||||||
|
|
||||||
PKG_NAME:=filebrowser
|
PKG_NAME:=filebrowser
|
||||||
PKG_VERSION:=2.36.3
|
PKG_VERSION:=2.37.0
|
||||||
PKG_RELEASE:=1
|
PKG_RELEASE:=1
|
||||||
|
|
||||||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
|
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
|
||||||
PKG_SOURCE_URL:=https://codeload.github.com/filebrowser/filebrowser/tar.gz/v${PKG_VERSION}?
|
PKG_SOURCE_URL:=https://codeload.github.com/filebrowser/filebrowser/tar.gz/v${PKG_VERSION}?
|
||||||
PKG_HASH:=7eae13f16a21a1d6f964f57356408eb11fc5fc4f0fd0ccce1b62877d876e0451
|
PKG_HASH:=d4a67f6c531098b4c6c0a07e0ee9fc7607aab1467052747d9468aeda1c1b98f3
|
||||||
|
|
||||||
PKG_LICENSE:=Apache-2.0
|
PKG_LICENSE:=Apache-2.0
|
||||||
PKG_LICENSE_FILES:=LICENSE
|
PKG_LICENSE_FILES:=LICENSE
|
||||||
|
@@ -9,6 +9,7 @@ local fs = api.fs
|
|||||||
local http = require "luci.http"
|
local http = require "luci.http"
|
||||||
local util = require "luci.util"
|
local util = require "luci.util"
|
||||||
local i18n = require "luci.i18n"
|
local i18n = require "luci.i18n"
|
||||||
|
local jsonStringify = luci.jsonc.stringify
|
||||||
|
|
||||||
function index()
|
function index()
|
||||||
if not nixio.fs.access("/etc/config/passwall") then
|
if not nixio.fs.access("/etc/config/passwall") then
|
||||||
@@ -106,7 +107,7 @@ end
|
|||||||
|
|
||||||
local function http_write_json(content)
|
local function http_write_json(content)
|
||||||
http.prepare_content("application/json")
|
http.prepare_content("application/json")
|
||||||
http.write_json(content or {code = 1})
|
http.write(jsonStringify(content or {code = 1}))
|
||||||
end
|
end
|
||||||
|
|
||||||
function reset_config()
|
function reset_config()
|
||||||
@@ -357,7 +358,7 @@ function connect_status()
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
luci.http.prepare_content("application/json")
|
luci.http.prepare_content("application/json")
|
||||||
luci.http.write_json(e)
|
http.write(jsonStringify(e))
|
||||||
end
|
end
|
||||||
|
|
||||||
function ping_node()
|
function ping_node()
|
||||||
@@ -616,21 +617,20 @@ function create_backup()
|
|||||||
end
|
end
|
||||||
|
|
||||||
function restore_backup()
|
function restore_backup()
|
||||||
http.prepare_content("application/json")
|
|
||||||
local ok, err = pcall(function()
|
local ok, err = pcall(function()
|
||||||
local filename = http.formvalue("filename")
|
local filename = http.formvalue("filename")
|
||||||
local chunk = http.formvalue("chunk")
|
local chunk = http.formvalue("chunk")
|
||||||
local chunk_index = tonumber(http.formvalue("chunk_index") or "-1")
|
local chunk_index = tonumber(http.formvalue("chunk_index") or "-1")
|
||||||
local total_chunks = tonumber(http.formvalue("total_chunks") or "-1")
|
local total_chunks = tonumber(http.formvalue("total_chunks") or "-1")
|
||||||
if not filename or not chunk then
|
if not filename or not chunk then
|
||||||
http.write_json({ status = "error", message = "Missing filename or chunk" })
|
http_write_json({ status = "error", message = "Missing filename or chunk" })
|
||||||
return
|
return
|
||||||
end
|
end
|
||||||
local file_path = "/tmp/" .. filename
|
local file_path = "/tmp/" .. filename
|
||||||
local decoded = nixio.bin.b64decode(chunk)
|
local decoded = nixio.bin.b64decode(chunk)
|
||||||
local fp = io.open(file_path, "a+")
|
local fp = io.open(file_path, "a+")
|
||||||
if not fp then
|
if not fp then
|
||||||
http.write_json({ status = "error", message = "Failed to open file for writing: " .. file_path })
|
http_write_json({ status = "error", message = "Failed to open file for writing: " .. file_path })
|
||||||
return
|
return
|
||||||
end
|
end
|
||||||
fp:write(decoded)
|
fp:write(decoded)
|
||||||
@@ -656,13 +656,13 @@ function restore_backup()
|
|||||||
end
|
end
|
||||||
api.sys.call("rm -rf " .. temp_dir)
|
api.sys.call("rm -rf " .. temp_dir)
|
||||||
fs.remove(file_path)
|
fs.remove(file_path)
|
||||||
http.write_json({ status = "success", message = "Upload completed", path = file_path })
|
http_write_json({ status = "success", message = "Upload completed", path = file_path })
|
||||||
else
|
else
|
||||||
http.write_json({ status = "success", message = "Chunk received" })
|
http_write_json({ status = "success", message = "Chunk received" })
|
||||||
end
|
end
|
||||||
end)
|
end)
|
||||||
if not ok then
|
if not ok then
|
||||||
http.write_json({ status = "error", message = tostring(err) })
|
http_write_json({ status = "error", message = tostring(err) })
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@@ -39,7 +39,7 @@ local api = require "luci.passwall.api"
|
|||||||
<h3><%:Restore Backup File%></h3>
|
<h3><%:Restore Backup File%></h3>
|
||||||
<div class="cbi-value" id="_upload_div">
|
<div class="cbi-value" id="_upload_div">
|
||||||
<div class="up-cbi-value-field">
|
<div class="up-cbi-value-field">
|
||||||
<input class="cbi-input-file" type="file" id="ulfile" name="ulfile" accept=".tar.gz" required />
|
<input class="cbi-input-file" type="file" id="ulfile" accept=".tar.gz" />
|
||||||
<br />
|
<br />
|
||||||
<div class="up-button-container">
|
<div class="up-button-container">
|
||||||
<input class="btn cbi-button cbi-button-apply" type="button" id="upload-btn" onclick="do_upload()" value="<%:UL Restore%>" />
|
<input class="btn cbi-button cbi-button-apply" type="button" id="upload-btn" onclick="do_upload()" value="<%:UL Restore%>" />
|
||||||
@@ -94,6 +94,7 @@ local api = require "luci.passwall.api"
|
|||||||
}
|
}
|
||||||
|
|
||||||
function close_upload_win(btn) {
|
function close_upload_win(btn) {
|
||||||
|
document.getElementById("ulfile").value = "";
|
||||||
document.getElementById("upload-modal").style.display = "none";
|
document.getElementById("upload-modal").style.display = "none";
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -151,11 +152,13 @@ local api = require "luci.passwall.api"
|
|||||||
}
|
}
|
||||||
if (!file.name.endsWith(".tar.gz")) {
|
if (!file.name.endsWith(".tar.gz")) {
|
||||||
alert("<%:Invalid file type. Please upload a .tar.gz file.%>");
|
alert("<%:Invalid file type. Please upload a .tar.gz file.%>");
|
||||||
|
fileInput.value = "";
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
const maxSize = 10 * 1024 * 1024; // 10MB
|
const maxSize = 10 * 1024 * 1024; // 10MB
|
||||||
if (file.size > maxSize) {
|
if (file.size > maxSize) {
|
||||||
alert("<%:File size exceeds 10MB limit.%>");
|
alert("<%:File size exceeds 10MB limit.%>");
|
||||||
|
fileInput.value = "";
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -123,7 +123,7 @@ function getRuntimeLog(name, filename) {
|
|||||||
|
|
||||||
let log_textarea = E('div', { 'id': 'log_textarea' },
|
let log_textarea = E('div', { 'id': 'log_textarea' },
|
||||||
E('img', {
|
E('img', {
|
||||||
'src': L.resource('icons/loading.gif'),
|
'src': L.resource('icons/loading.svg'),
|
||||||
'alt': _('Loading'),
|
'alt': _('Loading'),
|
||||||
'style': 'vertical-align:middle'
|
'style': 'vertical-align:middle'
|
||||||
}, _('Collecting data...'))
|
}, _('Collecting data...'))
|
||||||
|
@@ -1,5 +1,8 @@
|
|||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
|
|
||||||
|
[ -f "/www/luci-static/resources/icons/loading.gif" ] && \
|
||||||
|
sed -i "s,/loading.svg,/loading.gif,g" "/www/luci-static/resources/view/homeproxy/status.js"
|
||||||
|
|
||||||
uci -q batch <<-EOF >"/dev/null"
|
uci -q batch <<-EOF >"/dev/null"
|
||||||
delete firewall.homeproxy_pre
|
delete firewall.homeproxy_pre
|
||||||
|
|
||||||
|
@@ -9,6 +9,7 @@ local fs = api.fs
|
|||||||
local http = require "luci.http"
|
local http = require "luci.http"
|
||||||
local util = require "luci.util"
|
local util = require "luci.util"
|
||||||
local i18n = require "luci.i18n"
|
local i18n = require "luci.i18n"
|
||||||
|
local jsonStringify = luci.jsonc.stringify
|
||||||
|
|
||||||
function index()
|
function index()
|
||||||
if not nixio.fs.access("/etc/config/passwall") then
|
if not nixio.fs.access("/etc/config/passwall") then
|
||||||
@@ -106,7 +107,7 @@ end
|
|||||||
|
|
||||||
local function http_write_json(content)
|
local function http_write_json(content)
|
||||||
http.prepare_content("application/json")
|
http.prepare_content("application/json")
|
||||||
http.write_json(content or {code = 1})
|
http.write(jsonStringify(content or {code = 1}))
|
||||||
end
|
end
|
||||||
|
|
||||||
function reset_config()
|
function reset_config()
|
||||||
@@ -357,7 +358,7 @@ function connect_status()
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
luci.http.prepare_content("application/json")
|
luci.http.prepare_content("application/json")
|
||||||
luci.http.write_json(e)
|
http.write(jsonStringify(e))
|
||||||
end
|
end
|
||||||
|
|
||||||
function ping_node()
|
function ping_node()
|
||||||
@@ -616,21 +617,20 @@ function create_backup()
|
|||||||
end
|
end
|
||||||
|
|
||||||
function restore_backup()
|
function restore_backup()
|
||||||
http.prepare_content("application/json")
|
|
||||||
local ok, err = pcall(function()
|
local ok, err = pcall(function()
|
||||||
local filename = http.formvalue("filename")
|
local filename = http.formvalue("filename")
|
||||||
local chunk = http.formvalue("chunk")
|
local chunk = http.formvalue("chunk")
|
||||||
local chunk_index = tonumber(http.formvalue("chunk_index") or "-1")
|
local chunk_index = tonumber(http.formvalue("chunk_index") or "-1")
|
||||||
local total_chunks = tonumber(http.formvalue("total_chunks") or "-1")
|
local total_chunks = tonumber(http.formvalue("total_chunks") or "-1")
|
||||||
if not filename or not chunk then
|
if not filename or not chunk then
|
||||||
http.write_json({ status = "error", message = "Missing filename or chunk" })
|
http_write_json({ status = "error", message = "Missing filename or chunk" })
|
||||||
return
|
return
|
||||||
end
|
end
|
||||||
local file_path = "/tmp/" .. filename
|
local file_path = "/tmp/" .. filename
|
||||||
local decoded = nixio.bin.b64decode(chunk)
|
local decoded = nixio.bin.b64decode(chunk)
|
||||||
local fp = io.open(file_path, "a+")
|
local fp = io.open(file_path, "a+")
|
||||||
if not fp then
|
if not fp then
|
||||||
http.write_json({ status = "error", message = "Failed to open file for writing: " .. file_path })
|
http_write_json({ status = "error", message = "Failed to open file for writing: " .. file_path })
|
||||||
return
|
return
|
||||||
end
|
end
|
||||||
fp:write(decoded)
|
fp:write(decoded)
|
||||||
@@ -656,13 +656,13 @@ function restore_backup()
|
|||||||
end
|
end
|
||||||
api.sys.call("rm -rf " .. temp_dir)
|
api.sys.call("rm -rf " .. temp_dir)
|
||||||
fs.remove(file_path)
|
fs.remove(file_path)
|
||||||
http.write_json({ status = "success", message = "Upload completed", path = file_path })
|
http_write_json({ status = "success", message = "Upload completed", path = file_path })
|
||||||
else
|
else
|
||||||
http.write_json({ status = "success", message = "Chunk received" })
|
http_write_json({ status = "success", message = "Chunk received" })
|
||||||
end
|
end
|
||||||
end)
|
end)
|
||||||
if not ok then
|
if not ok then
|
||||||
http.write_json({ status = "error", message = tostring(err) })
|
http_write_json({ status = "error", message = tostring(err) })
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@@ -39,7 +39,7 @@ local api = require "luci.passwall.api"
|
|||||||
<h3><%:Restore Backup File%></h3>
|
<h3><%:Restore Backup File%></h3>
|
||||||
<div class="cbi-value" id="_upload_div">
|
<div class="cbi-value" id="_upload_div">
|
||||||
<div class="up-cbi-value-field">
|
<div class="up-cbi-value-field">
|
||||||
<input class="cbi-input-file" type="file" id="ulfile" name="ulfile" accept=".tar.gz" required />
|
<input class="cbi-input-file" type="file" id="ulfile" accept=".tar.gz" />
|
||||||
<br />
|
<br />
|
||||||
<div class="up-button-container">
|
<div class="up-button-container">
|
||||||
<input class="btn cbi-button cbi-button-apply" type="button" id="upload-btn" onclick="do_upload()" value="<%:UL Restore%>" />
|
<input class="btn cbi-button cbi-button-apply" type="button" id="upload-btn" onclick="do_upload()" value="<%:UL Restore%>" />
|
||||||
@@ -94,6 +94,7 @@ local api = require "luci.passwall.api"
|
|||||||
}
|
}
|
||||||
|
|
||||||
function close_upload_win(btn) {
|
function close_upload_win(btn) {
|
||||||
|
document.getElementById("ulfile").value = "";
|
||||||
document.getElementById("upload-modal").style.display = "none";
|
document.getElementById("upload-modal").style.display = "none";
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -151,11 +152,13 @@ local api = require "luci.passwall.api"
|
|||||||
}
|
}
|
||||||
if (!file.name.endsWith(".tar.gz")) {
|
if (!file.name.endsWith(".tar.gz")) {
|
||||||
alert("<%:Invalid file type. Please upload a .tar.gz file.%>");
|
alert("<%:Invalid file type. Please upload a .tar.gz file.%>");
|
||||||
|
fileInput.value = "";
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
const maxSize = 10 * 1024 * 1024; // 10MB
|
const maxSize = 10 * 1024 * 1024; // 10MB
|
||||||
if (file.size > maxSize) {
|
if (file.size > maxSize) {
|
||||||
alert("<%:File size exceeds 10MB limit.%>");
|
alert("<%:File size exceeds 10MB limit.%>");
|
||||||
|
fileInput.value = "";
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -14,5 +14,6 @@ public enum ECoreType
|
|||||||
hysteria2 = 26,
|
hysteria2 = 26,
|
||||||
brook = 27,
|
brook = 27,
|
||||||
overtls = 28,
|
overtls = 28,
|
||||||
|
shadowquic = 29,
|
||||||
v2rayN = 99
|
v2rayN = 99
|
||||||
}
|
}
|
||||||
|
@@ -507,6 +507,7 @@ public class Global
|
|||||||
{ ECoreType.juicity, "juicity/juicity" },
|
{ ECoreType.juicity, "juicity/juicity" },
|
||||||
{ ECoreType.brook, "txthinking/brook" },
|
{ ECoreType.brook, "txthinking/brook" },
|
||||||
{ ECoreType.overtls, "ShadowsocksR-Live/overtls" },
|
{ ECoreType.overtls, "ShadowsocksR-Live/overtls" },
|
||||||
|
{ ECoreType.shadowquic, "spongebob888/shadowquic" },
|
||||||
{ ECoreType.v2rayN, "2dust/v2rayN" },
|
{ ECoreType.v2rayN, "2dust/v2rayN" },
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@@ -200,6 +200,15 @@ public sealed class CoreInfoHandler
|
|||||||
Arguments = "-r client -c {0}",
|
Arguments = "-r client -c {0}",
|
||||||
Url = GetCoreUrl(ECoreType.overtls),
|
Url = GetCoreUrl(ECoreType.overtls),
|
||||||
AbsolutePath = false,
|
AbsolutePath = false,
|
||||||
|
},
|
||||||
|
|
||||||
|
new CoreInfo
|
||||||
|
{
|
||||||
|
CoreType = ECoreType.shadowquic,
|
||||||
|
CoreExes = [ "shadowquic", "shadowquic"],
|
||||||
|
Arguments = "-c {0}",
|
||||||
|
Url = GetCoreUrl(ECoreType.shadowquic),
|
||||||
|
AbsolutePath = false,
|
||||||
}
|
}
|
||||||
|
|
||||||
];
|
];
|
||||||
|
@@ -7,4 +7,4 @@ X-GNOME-Autostart-enabled=true
|
|||||||
Name[en_US]=v2rayN
|
Name[en_US]=v2rayN
|
||||||
Name=v2rayN
|
Name=v2rayN
|
||||||
Comment[en_US]=v2rayN
|
Comment[en_US]=v2rayN
|
||||||
Comment=v2rayN
|
Comment=v2rayN
|
||||||
|
@@ -29,9 +29,6 @@ set_gnome_proxy() {
|
|||||||
echo "Ignored Hosts: $IGNORE_HOSTS"
|
echo "Ignored Hosts: $IGNORE_HOSTS"
|
||||||
elif [ "$MODE" == "none" ]; then
|
elif [ "$MODE" == "none" ]; then
|
||||||
echo "GNOME: Proxy disabled."
|
echo "GNOME: Proxy disabled."
|
||||||
else
|
|
||||||
echo "GNOME: Invalid mode. Use 'none' or 'manual'."
|
|
||||||
exit 1
|
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -69,9 +66,6 @@ set_kde_proxy() {
|
|||||||
# Disable proxy
|
# Disable proxy
|
||||||
$KWRITECONFIG --file kioslaverc --group "Proxy Settings" --key ProxyType 0
|
$KWRITECONFIG --file kioslaverc --group "Proxy Settings" --key ProxyType 0
|
||||||
echo "KDE: Proxy disabled."
|
echo "KDE: Proxy disabled."
|
||||||
else
|
|
||||||
echo "KDE: Invalid mode. Use 'none' or 'manual'."
|
|
||||||
exit 1
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Apply changes by restarting KDE's network settings
|
# Apply changes by restarting KDE's network settings
|
||||||
@@ -84,7 +78,7 @@ detect_desktop_environment() {
|
|||||||
echo "gnome"
|
echo "gnome"
|
||||||
return
|
return
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [[ "$XDG_CURRENT_DESKTOP" == *"XFCE"* ]] || [[ "$XDG_SESSION_DESKTOP" == *"XFCE"* ]]; then
|
if [[ "$XDG_CURRENT_DESKTOP" == *"XFCE"* ]] || [[ "$XDG_SESSION_DESKTOP" == *"XFCE"* ]]; then
|
||||||
echo "gnome"
|
echo "gnome"
|
||||||
return
|
return
|
||||||
@@ -94,7 +88,7 @@ detect_desktop_environment() {
|
|||||||
echo "gnome"
|
echo "gnome"
|
||||||
return
|
return
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [[ "$XDG_CURRENT_DESKTOP" == *"UKUI"* ]] || [[ "$XDG_SESSION_DESKTOP" == *"ukui"* ]]; then
|
if [[ "$XDG_CURRENT_DESKTOP" == *"UKUI"* ]] || [[ "$XDG_SESSION_DESKTOP" == *"ukui"* ]]; then
|
||||||
echo "gnome"
|
echo "gnome"
|
||||||
return
|
return
|
||||||
@@ -117,6 +111,15 @@ detect_desktop_environment() {
|
|||||||
return
|
return
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
|
|
||||||
|
# Fallback to GNOME method if CLI utility is available. This solves the
|
||||||
|
# proxy configuration issues on minimal installation systems, like setups
|
||||||
|
# with only window managers, that borrow some parts from big DEs.
|
||||||
|
if command -v gsettings >/dev/null 2>&1; then
|
||||||
|
echo "gnome"
|
||||||
|
return
|
||||||
|
fi
|
||||||
|
|
||||||
echo "unsupported"
|
echo "unsupported"
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -134,6 +137,11 @@ PROXY_IP=$2
|
|||||||
PROXY_PORT=$3
|
PROXY_PORT=$3
|
||||||
IGNORE_HOSTS=$4
|
IGNORE_HOSTS=$4
|
||||||
|
|
||||||
|
if ! [[ "$MODE" =~ ^(manual|none)$ ]]; then
|
||||||
|
echo "Invalid mode. Use 'none' or 'manual'." >&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
# Detect desktop environment
|
# Detect desktop environment
|
||||||
DE=$(detect_desktop_environment)
|
DE=$(detect_desktop_environment)
|
||||||
|
|
||||||
@@ -144,6 +152,6 @@ elif [ "$DE" == "kde" ]; then
|
|||||||
set_gnome_proxy "$MODE" "$PROXY_IP" "$PROXY_PORT" "$IGNORE_HOSTS"
|
set_gnome_proxy "$MODE" "$PROXY_IP" "$PROXY_PORT" "$IGNORE_HOSTS"
|
||||||
set_kde_proxy "$MODE" "$PROXY_IP" "$PROXY_PORT" "$IGNORE_HOSTS"
|
set_kde_proxy "$MODE" "$PROXY_IP" "$PROXY_PORT" "$IGNORE_HOSTS"
|
||||||
else
|
else
|
||||||
echo "Unsupported desktop environment: $DE"
|
echo "Unsupported desktop environment: $DE" >&2
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
@@ -34,6 +34,8 @@ public class StatusBarViewModel : MyReactiveObject
|
|||||||
public ReactiveCommand<Unit, Unit> SubUpdateViaProxyCmd { get; }
|
public ReactiveCommand<Unit, Unit> SubUpdateViaProxyCmd { get; }
|
||||||
public ReactiveCommand<Unit, Unit> CopyProxyCmdToClipboardCmd { get; }
|
public ReactiveCommand<Unit, Unit> CopyProxyCmdToClipboardCmd { get; }
|
||||||
public ReactiveCommand<Unit, Unit> NotifyLeftClickCmd { get; }
|
public ReactiveCommand<Unit, Unit> NotifyLeftClickCmd { get; }
|
||||||
|
public ReactiveCommand<Unit, Unit> ShowWindowCmd { get; }
|
||||||
|
public ReactiveCommand<Unit, Unit> HideWindowCmd { get; }
|
||||||
|
|
||||||
#region System Proxy
|
#region System Proxy
|
||||||
|
|
||||||
@@ -91,6 +93,9 @@ public class StatusBarViewModel : MyReactiveObject
|
|||||||
[Reactive]
|
[Reactive]
|
||||||
public bool EnableTun { get; set; }
|
public bool EnableTun { get; set; }
|
||||||
|
|
||||||
|
[Reactive]
|
||||||
|
public bool BlIsNonWindows { get; set; }
|
||||||
|
|
||||||
#endregion UI
|
#endregion UI
|
||||||
|
|
||||||
public StatusBarViewModel(Func<EViewAction, object?, Task<bool>>? updateView)
|
public StatusBarViewModel(Func<EViewAction, object?, Task<bool>>? updateView)
|
||||||
@@ -100,6 +105,7 @@ public class StatusBarViewModel : MyReactiveObject
|
|||||||
SelectedServer = new();
|
SelectedServer = new();
|
||||||
RunningServerToolTipText = "-";
|
RunningServerToolTipText = "-";
|
||||||
BlSystemProxyPacVisible = Utils.IsWindows();
|
BlSystemProxyPacVisible = Utils.IsWindows();
|
||||||
|
BlIsNonWindows = Utils.IsNonWindows();
|
||||||
|
|
||||||
if (_config.TunModeItem.EnableTun && AllowEnableTun())
|
if (_config.TunModeItem.EnableTun && AllowEnableTun())
|
||||||
{
|
{
|
||||||
@@ -143,11 +149,21 @@ public class StatusBarViewModel : MyReactiveObject
|
|||||||
Locator.Current.GetService<MainWindowViewModel>()?.ShowHideWindow(null);
|
Locator.Current.GetService<MainWindowViewModel>()?.ShowHideWindow(null);
|
||||||
await Task.CompletedTask;
|
await Task.CompletedTask;
|
||||||
});
|
});
|
||||||
|
ShowWindowCmd = ReactiveCommand.CreateFromTask(async () =>
|
||||||
|
{
|
||||||
|
Locator.Current.GetService<MainWindowViewModel>()?.ShowHideWindow(true);
|
||||||
|
await Task.CompletedTask;
|
||||||
|
});
|
||||||
|
HideWindowCmd = ReactiveCommand.CreateFromTask(async () =>
|
||||||
|
{
|
||||||
|
Locator.Current.GetService<MainWindowViewModel>()?.ShowHideWindow(false);
|
||||||
|
await Task.CompletedTask;
|
||||||
|
});
|
||||||
|
|
||||||
AddServerViaClipboardCmd = ReactiveCommand.CreateFromTask(async () =>
|
AddServerViaClipboardCmd = ReactiveCommand.CreateFromTask(async () =>
|
||||||
{
|
{
|
||||||
await AddServerViaClipboard();
|
await AddServerViaClipboard();
|
||||||
});
|
});
|
||||||
AddServerViaScanCmd = ReactiveCommand.CreateFromTask(async () =>
|
AddServerViaScanCmd = ReactiveCommand.CreateFromTask(async () =>
|
||||||
{
|
{
|
||||||
await AddServerViaScan();
|
await AddServerViaScan();
|
||||||
|
@@ -32,7 +32,15 @@
|
|||||||
ToolTipText="{Binding RunningServerToolTipText}">
|
ToolTipText="{Binding RunningServerToolTipText}">
|
||||||
<TrayIcon.Menu>
|
<TrayIcon.Menu>
|
||||||
<NativeMenu>
|
<NativeMenu>
|
||||||
<NativeMenuItem Command="{Binding NotifyLeftClickCmd}" Header="{x:Static resx:ResUI.menuShowOrHideMainWindow}" />
|
<NativeMenuItem
|
||||||
|
Command="{Binding ShowWindowCmd}"
|
||||||
|
Header="{x:Static resx:ResUI.TbDisplayGUI}"
|
||||||
|
IsVisible="{Binding BlIsNonWindows}" />
|
||||||
|
<NativeMenuItem
|
||||||
|
Command="{Binding NotifyLeftClickCmd}"
|
||||||
|
Header="{x:Static resx:ResUI.menuShowOrHideMainWindow}"
|
||||||
|
IsVisible="{Binding BlIsNonWindows}" />
|
||||||
|
<NativeMenuItem Command="{Binding CopyProxyCmdToClipboardCmd}" Header="{x:Static resx:ResUI.menuCopyProxyCmdToClipboard}" />
|
||||||
<NativeMenuItemSeparator />
|
<NativeMenuItemSeparator />
|
||||||
<NativeMenuItem
|
<NativeMenuItem
|
||||||
Command="{Binding SystemProxyClearCmd}"
|
Command="{Binding SystemProxyClearCmd}"
|
||||||
@@ -60,8 +68,6 @@
|
|||||||
<NativeMenuItem Command="{Binding SubUpdateCmd}" Header="{x:Static resx:ResUI.menuSubUpdate}" />
|
<NativeMenuItem Command="{Binding SubUpdateCmd}" Header="{x:Static resx:ResUI.menuSubUpdate}" />
|
||||||
<NativeMenuItem Command="{Binding SubUpdateViaProxyCmd}" Header="{x:Static resx:ResUI.menuSubUpdateViaProxy}" />
|
<NativeMenuItem Command="{Binding SubUpdateViaProxyCmd}" Header="{x:Static resx:ResUI.menuSubUpdateViaProxy}" />
|
||||||
<NativeMenuItemSeparator />
|
<NativeMenuItemSeparator />
|
||||||
<NativeMenuItem Command="{Binding CopyProxyCmdToClipboardCmd}" Header="{x:Static resx:ResUI.menuCopyProxyCmdToClipboard}" />
|
|
||||||
<NativeMenuItemSeparator />
|
|
||||||
<NativeMenuItem Click="MenuExit_Click" Header="{x:Static resx:ResUI.menuExit}" />
|
<NativeMenuItem Click="MenuExit_Click" Header="{x:Static resx:ResUI.menuExit}" />
|
||||||
</NativeMenu>
|
</NativeMenu>
|
||||||
</TrayIcon.Menu>
|
</TrayIcon.Menu>
|
||||||
|
@@ -159,13 +159,13 @@
|
|||||||
<item>گوم زیڌن</item>
|
<item>گوم زیڌن</item>
|
||||||
</string-array>
|
</string-array>
|
||||||
|
|
||||||
<string name="title_pref_speed_enabled">ر وندن نشۉݩ داڌن سورعت</string>
|
<string name="title_pref_speed_enabled">ر وندن نشووݩ داڌن سورعت</string>
|
||||||
<string name="summary_pref_speed_enabled">نشۉݩ داڌن سورعت هیم سکویی من وارسۊویا. نماڌ وارسۊوی و ری و کار گرؽڌن آلشت ابۊ.</string>
|
<string name="summary_pref_speed_enabled">نشووݩ داڌن سورعت هیم سکویی من وارسۊویا. نماڌ وارسۊوی و ری و کار گرؽڌن آلشت ابۊ.</string>
|
||||||
|
|
||||||
<string name="title_pref_sniffing_enabled">ر وندن Sniffing</string>
|
<string name="title_pref_sniffing_enabled">ر وندن Sniffing</string>
|
||||||
<string name="summary_pref_sniffing_enabled">دامنه sniff ن ز کتن امتهۉݩ کۊنین (پؽش فرز رۊشن)</string>
|
<string name="summary_pref_sniffing_enabled">دامنه sniff ن ز کتن امتهووݩ کۊنین (پؽش فرز رۊشن)</string>
|
||||||
<string name="title_pref_route_only_enabled">ر وندن routeOnly</string>
|
<string name="title_pref_route_only_enabled">ر وندن routeOnly</string>
|
||||||
<string name="summary_pref_route_only_enabled">ز نوم دامنه sniffed تینا سی تور جوستن استفاڌه کۊنین وو نشۊوی مۉرد نزرن و عونوان نشۊوی IP ووردارین.</string>
|
<string name="summary_pref_route_only_enabled">ز نوم دامنه sniffed تینا سی تور جوستن استفاڌه کۊنین وو نشۊوی موورد نزرن و عونوان نشۊوی IP ووردارین.</string>
|
||||||
|
|
||||||
<string name="title_pref_local_dns_enabled">ر وندن DNS مهلی</string>
|
<string name="title_pref_local_dns_enabled">ر وندن DNS مهلی</string>
|
||||||
<string name="summary_pref_local_dns_enabled">درخاستا DNS و هسته و من ایان وو و دست ماژول DNS پردازشت ابۊن (پؽشنهاڌ ابۊ ٱر لنگ تور جوستن سی دور زیڌن نشۊویا LAN وو وولات ٱسلی هڌین فعال بۊ)</string>
|
<string name="summary_pref_local_dns_enabled">درخاستا DNS و هسته و من ایان وو و دست ماژول DNS پردازشت ابۊن (پؽشنهاڌ ابۊ ٱر لنگ تور جوستن سی دور زیڌن نشۊویا LAN وو وولات ٱسلی هڌین فعال بۊ)</string>
|
||||||
@@ -176,18 +176,18 @@
|
|||||||
<string name="title_pref_prefer_ipv6">ترجی IPv6</string>
|
<string name="title_pref_prefer_ipv6">ترجی IPv6</string>
|
||||||
<string name="summary_pref_prefer_ipv6">تورا IPv6 ن فعال کۊنین وو نشۊویا IPv6 ن ترجی بڌین</string>
|
<string name="summary_pref_prefer_ipv6">تورا IPv6 ن فعال کۊنین وو نشۊویا IPv6 ن ترجی بڌین</string>
|
||||||
|
|
||||||
<string name="title_pref_remote_dns">ز ر دیر (اختیاری) DNS (udp/tcp/https/quic) (اختیاری)</string>
|
<string name="title_pref_remote_dns">DNS ز ر دیر (اختیاری) (udp/tcp/https/quic) (اختیاری)</string>
|
||||||
<string name="summary_pref_remote_dns">DNS</string>
|
<string name="summary_pref_remote_dns">DNS</string>
|
||||||
|
|
||||||
<string name="title_pref_vpn_dns">VPN DNS (تینا IPv4/v6)</string>
|
<string name="title_pref_vpn_dns">VPN DNS (تینا IPv4/v6)</string>
|
||||||
<string name="title_pref_vpn_bypass_lan">ز شبکه مهلی اگوڌرته؟ VPN</string>
|
<string name="title_pref_vpn_bypass_lan">VPN ز شبکه مهلی اگوڌرته؟</string>
|
||||||
|
|
||||||
<string name="title_pref_vpn_interface_address">نشۊوی رابت VPN</string>
|
<string name="title_pref_vpn_interface_address">نشۊوی رابت VPN</string>
|
||||||
|
|
||||||
<string name="title_pref_domestic_dns">منی (اختیاری) DNS</string>
|
<string name="title_pref_domestic_dns">DNS منی (اختیاری)</string>
|
||||||
<string name="summary_pref_domestic_dns">DNS</string>
|
<string name="summary_pref_domestic_dns">DNS</string>
|
||||||
|
|
||||||
<string name="title_pref_dns_hosts">هاست موستقیم (قالوو: دامنه: نشۊوی،...) DNS</string>
|
<string name="title_pref_dns_hosts">DNS هاست موستقیم (قالوو: دامنه: نشۊوی،...)</string>
|
||||||
<string name="summary_pref_dns_hosts">دامنه:نشۊوی،...</string>
|
<string name="summary_pref_dns_hosts">دامنه:نشۊوی،...</string>
|
||||||
|
|
||||||
<string name="title_pref_delay_test_url">نشۊوی اینترنتی آزمایش تئخیر واقعی (http/https)</string>
|
<string name="title_pref_delay_test_url">نشۊوی اینترنتی آزمایش تئخیر واقعی (http/https)</string>
|
||||||
@@ -215,8 +215,8 @@
|
|||||||
<string name="title_pref_append_http_proxy">پروکسی HTTP ن و VPN ازاف کۊنین</string>
|
<string name="title_pref_append_http_proxy">پروکسی HTTP ن و VPN ازاف کۊنین</string>
|
||||||
<string name="summary_pref_append_http_proxy">پروکسی HTTP ن موسقیمن ز (مۊرۊرگر/ی قرد ز برنومه یل لادراری بیڌه)، بؽ استفاڌه ز دسگا NIC مجازی (Android 10+) استفاڌه ابۊ.</string>
|
<string name="summary_pref_append_http_proxy">پروکسی HTTP ن موسقیمن ز (مۊرۊرگر/ی قرد ز برنومه یل لادراری بیڌه)، بؽ استفاڌه ز دسگا NIC مجازی (Android 10+) استفاڌه ابۊ.</string>
|
||||||
|
|
||||||
<string name="title_pref_double_column_display">ر وندن نشۉݩ داڌن دو سۊتۊنی</string>
|
<string name="title_pref_double_column_display">ر وندن نشووݩ داڌن دو سۊتۊنی</string>
|
||||||
<string name="summary_pref_double_column_display">نومگه نمایه یل من دو سۊتۊن نشۉݩ داڌه ابۊن وو چینۉ ترین موئتوا بیشتری ن سیل کۊنین. سی ر وستن، وا برنومه ن ز نۊ ر ونین.</string>
|
<string name="summary_pref_double_column_display">نومگه نمایه یل من دو سۊتۊن نشووݩ داڌه ابۊن وو چینۉ ترین موئتوا بیشتری ن سیل کۊنین. سی ر وستن، وا برنومه ن ز نۊ ر ونین.</string>
|
||||||
|
|
||||||
<!-- AboutActivity -->
|
<!-- AboutActivity -->
|
||||||
<string name="title_pref_feedback">فشناڌن منشڌ</string>
|
<string name="title_pref_feedback">فشناڌن منشڌ</string>
|
||||||
@@ -244,7 +244,7 @@
|
|||||||
<string name="title_outbound_domain_resolve_method">بارت پؽش هل دامنه دری</string>
|
<string name="title_outbound_domain_resolve_method">بارت پؽش هل دامنه دری</string>
|
||||||
<string name="title_mode">هالت</string>
|
<string name="title_mode">هالت</string>
|
||||||
<string name="title_mode_help">سی دووسمندیا وو هیاری بیشتر، ری ای هؽل بزݩ</string>
|
<string name="title_mode_help">سی دووسمندیا وو هیاری بیشتر، ری ای هؽل بزݩ</string>
|
||||||
<string name="title_language">زۉݩ</string>
|
<string name="title_language">زووݩ</string>
|
||||||
<string name="title_ui_settings">سامووا رابت منتوری</string>
|
<string name="title_ui_settings">سامووا رابت منتوری</string>
|
||||||
<string name="title_pref_ui_mode_night">سامووا هالت رابت منتوری</string>
|
<string name="title_pref_ui_mode_night">سامووا هالت رابت منتوری</string>
|
||||||
|
|
||||||
@@ -269,7 +269,7 @@
|
|||||||
<string name="title_sub_update">ورۊ کردن اشتراک جرگه سکویی</string>
|
<string name="title_sub_update">ورۊ کردن اشتراک جرگه سکویی</string>
|
||||||
<string name="title_ping_all_server">Tcping کانفیگا جرگه سکویی</string>
|
<string name="title_ping_all_server">Tcping کانفیگا جرگه سکویی</string>
|
||||||
<string name="title_real_ping_all_server">تئخیر واقعی کانفیگا جرگه سکویی</string>
|
<string name="title_real_ping_all_server">تئخیر واقعی کانفیگا جرگه سکویی</string>
|
||||||
<string name="title_create_intelligent_selection_all_server">Creating Intelligent Selection Current Group Configuration</string>
|
<string name="title_create_intelligent_selection_all_server">وورکل پسند هۊشمند کانفیگ جرگه سکویی</string>
|
||||||
<string name="title_user_asset_setting">فایلا بونچک جوقرافیایی</string>
|
<string name="title_user_asset_setting">فایلا بونچک جوقرافیایی</string>
|
||||||
<string name="title_sort_by_test_results">ترتیب و ری نتیجه یل آزمایش</string>
|
<string name="title_sort_by_test_results">ترتیب و ری نتیجه یل آزمایش</string>
|
||||||
<string name="title_filter_config">فیلتر کردن کانفیگا</string>
|
<string name="title_filter_config">فیلتر کردن کانفیگا</string>
|
||||||
@@ -379,12 +379,12 @@
|
|||||||
<item>هل وو ٱووردن و میزبووݩ یل دامنه DNS</item>
|
<item>هل وو ٱووردن و میزبووݩ یل دامنه DNS</item>
|
||||||
<item>هل وو جایونی دامنه</item>
|
<item>هل وو جایونی دامنه</item>
|
||||||
</string-array>
|
</string-array>
|
||||||
<string name="intelligent_selection">Intelligent Selection</string>
|
<string name="intelligent_selection">پسند هۊشمند</string>
|
||||||
<string name="sub_setting_intelligent_selection_filter">Remarks Intelligent Selection regular filter</string>
|
<string name="sub_setting_intelligent_selection_filter">گوڌنا دیاری پسند هۊشمند فیلتر مئمۊلی</string>
|
||||||
<string name="title_intelligent_selection_method">Intelligent Selection Method</string>
|
<string name="title_intelligent_selection_method">بارت پسند هۊشمند</string>
|
||||||
<string-array name="intelligent_selection_method">
|
<string-array name="intelligent_selection_method">
|
||||||
<item>Least Ping</item>
|
<item>بلم ترین پینگ</item>
|
||||||
<item>Least Load</item>
|
<item>هدقل بار</item>
|
||||||
</string-array>
|
</string-array>
|
||||||
|
|
||||||
</resources>
|
</resources>
|
||||||
|
@@ -268,7 +268,7 @@
|
|||||||
<string name="title_sub_update">Обновить подписку группы</string>
|
<string name="title_sub_update">Обновить подписку группы</string>
|
||||||
<string name="title_ping_all_server">Проверить профили группы</string>
|
<string name="title_ping_all_server">Проверить профили группы</string>
|
||||||
<string name="title_real_ping_all_server">Время отклика профилей группы</string>
|
<string name="title_real_ping_all_server">Время отклика профилей группы</string>
|
||||||
<string name="title_create_intelligent_selection_all_server">Creating Intelligent Selection Current Group Configuration</string>
|
<string name="title_create_intelligent_selection_all_server">Создать конфигурацию умного выбора</string>
|
||||||
<string name="title_user_asset_setting">Файлы ресурсов</string>
|
<string name="title_user_asset_setting">Файлы ресурсов</string>
|
||||||
<string name="title_sort_by_test_results">Сортировать по результатам теста</string>
|
<string name="title_sort_by_test_results">Сортировать по результатам теста</string>
|
||||||
<string name="title_filter_config">Фильтр групп</string>
|
<string name="title_filter_config">Фильтр групп</string>
|
||||||
@@ -378,12 +378,12 @@
|
|||||||
<item>Определять и добавлять к узлам DNS</item>
|
<item>Определять и добавлять к узлам DNS</item>
|
||||||
<item>Определять и заменять домен</item>
|
<item>Определять и заменять домен</item>
|
||||||
</string-array>
|
</string-array>
|
||||||
<string name="intelligent_selection">Intelligent Selection</string>
|
<string name="intelligent_selection">Умный выбор</string>
|
||||||
<string name="sub_setting_intelligent_selection_filter">Remarks Intelligent Selection regular filter</string>
|
<string name="sub_setting_intelligent_selection_filter">Название фильтра умного выбора</string>
|
||||||
<string name="title_intelligent_selection_method">Intelligent Selection Method</string>
|
<string name="title_intelligent_selection_method">Принцип умного выбора</string>
|
||||||
<string-array name="intelligent_selection_method">
|
<string-array name="intelligent_selection_method">
|
||||||
<item>Least Ping</item>
|
<item>Наименьшая задержка</item>
|
||||||
<item>Least Load</item>
|
<item>Наименьшая нагрузка</item>
|
||||||
</string-array>
|
</string-array>
|
||||||
|
|
||||||
</resources>
|
</resources>
|
||||||
|
@@ -3273,6 +3273,10 @@ class YoutubeIE(YoutubeBaseInfoExtractor):
|
|||||||
# web_creator may work around age-verification for all videos but requires PO token
|
# web_creator may work around age-verification for all videos but requires PO token
|
||||||
append_client('tv_embedded', 'web_creator')
|
append_client('tv_embedded', 'web_creator')
|
||||||
|
|
||||||
|
status = traverse_obj(pr, ('playabilityStatus', 'status', {str}))
|
||||||
|
if status not in ('OK', 'LIVE_STREAM_OFFLINE', 'AGE_CHECK_REQUIRED', 'AGE_VERIFICATION_REQUIRED'):
|
||||||
|
self.write_debug(f'{video_id}: {client} player response playability status: {status}')
|
||||||
|
|
||||||
prs.extend(deprioritized_prs)
|
prs.extend(deprioritized_prs)
|
||||||
|
|
||||||
if skipped_clients:
|
if skipped_clients:
|
||||||
|
Reference in New Issue
Block a user