Update On Thu Sep 5 20:35:34 CEST 2024

This commit is contained in:
github-action[bot]
2024-09-05 20:35:34 +02:00
parent baff38e419
commit d6a419be50
42 changed files with 673 additions and 536 deletions

1
.github/update.log vendored
View File

@@ -754,3 +754,4 @@ Update On Sun Sep 1 20:30:49 CEST 2024
Update On Mon Sep 2 20:34:00 CEST 2024 Update On Mon Sep 2 20:34:00 CEST 2024
Update On Tue Sep 3 20:32:43 CEST 2024 Update On Tue Sep 3 20:32:43 CEST 2024
Update On Wed Sep 4 20:31:01 CEST 2024 Update On Wed Sep 4 20:31:01 CEST 2024
Update On Thu Sep 5 20:35:23 CEST 2024

View File

@@ -1074,9 +1074,9 @@ dependencies = [
[[package]] [[package]]
name = "cc" name = "cc"
version = "1.1.15" version = "1.1.16"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "57b6a275aa2903740dc87da01c62040406b8812552e97129a63ea8850a17c6e6" checksum = "e9d013ecb737093c0e86b151a7b837993cf9ec6c502946cfb44bedc392421e0b"
dependencies = [ dependencies = [
"jobserver", "jobserver",
"libc", "libc",
@@ -1184,9 +1184,9 @@ dependencies = [
[[package]] [[package]]
name = "clap" name = "clap"
version = "4.5.16" version = "4.5.17"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ed6719fffa43d0d87e5fd8caeab59be1554fb028cd30edc88fc4369b17971019" checksum = "3e5a21b8495e732f1b3c364c9949b201ca7bae518c502c80256c96ad79eaf6ac"
dependencies = [ dependencies = [
"clap_builder", "clap_builder",
"clap_derive", "clap_derive",
@@ -1194,9 +1194,9 @@ dependencies = [
[[package]] [[package]]
name = "clap_builder" name = "clap_builder"
version = "4.5.15" version = "4.5.17"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "216aec2b177652e3846684cbfe25c9964d18ec45234f0f5da5157b207ed1aab6" checksum = "8cf2dd12af7a047ad9d6da2b6b249759a22a7abc0f474c1dae1777afa4b21a73"
dependencies = [ dependencies = [
"anstream", "anstream",
"anstyle", "anstyle",
@@ -2048,7 +2048,7 @@ dependencies = [
[[package]] [[package]]
name = "dirs-utils" name = "dirs-utils"
version = "0.1.0" version = "0.1.0"
source = "git+https://github.com/LibNyanpasu/nyanpasu-utils.git#26c9286a77dfb31027ab69b9164fe2c13a15ab6c" source = "git+https://github.com/LibNyanpasu/nyanpasu-utils.git#42a2e1a2b8768d3cad47344baa152964c5e9a6b4"
dependencies = [ dependencies = [
"dirs-next", "dirs-next",
"thiserror", "thiserror",
@@ -3263,9 +3263,9 @@ dependencies = [
[[package]] [[package]]
name = "hyper-rustls" name = "hyper-rustls"
version = "0.27.2" version = "0.27.3"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5ee4be2c948921a1a5320b629c4193916ed787a7f7f293fd3f7f5a6c9de74155" checksum = "08afdbb5c31130e3034af566421053ab03787c640246a446327f550d11bcb333"
dependencies = [ dependencies = [
"futures-util", "futures-util",
"http 1.1.0", "http 1.1.0",
@@ -4801,7 +4801,7 @@ dependencies = [
[[package]] [[package]]
name = "nyanpasu-utils" name = "nyanpasu-utils"
version = "0.1.0" version = "0.1.0"
source = "git+https://github.com/LibNyanpasu/nyanpasu-utils.git#26c9286a77dfb31027ab69b9164fe2c13a15ab6c" source = "git+https://github.com/LibNyanpasu/nyanpasu-utils.git#42a2e1a2b8768d3cad47344baa152964c5e9a6b4"
dependencies = [ dependencies = [
"constcat", "constcat",
"derive_builder", "derive_builder",
@@ -5035,9 +5035,9 @@ checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf"
[[package]] [[package]]
name = "openssl-src" name = "openssl-src"
version = "300.3.1+3.3.1" version = "300.3.2+3.3.2"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "7259953d42a81bf137fbbd73bd30a8e1914d6dce43c2b90ed575783a22608b91" checksum = "a211a18d945ef7e648cc6e0058f4c548ee46aab922ea203e0d30e966ea23647b"
dependencies = [ dependencies = [
"cc", "cc",
] ]
@@ -5083,7 +5083,7 @@ dependencies = [
[[package]] [[package]]
name = "os-utils" name = "os-utils"
version = "0.1.0" version = "0.1.0"
source = "git+https://github.com/LibNyanpasu/nyanpasu-utils.git#26c9286a77dfb31027ab69b9164fe2c13a15ab6c" source = "git+https://github.com/LibNyanpasu/nyanpasu-utils.git#42a2e1a2b8768d3cad47344baa152964c5e9a6b4"
dependencies = [ dependencies = [
"nix 0.29.0", "nix 0.29.0",
"shared_child", "shared_child",
@@ -5811,18 +5811,18 @@ dependencies = [
[[package]] [[package]]
name = "quick-xml" name = "quick-xml"
version = "0.34.0" version = "0.36.1"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6f24d770aeca0eacb81ac29dfbc55ebcc09312fdd1f8bbecdc7e4a84e000e3b4" checksum = "96a05e2e8efddfa51a84ca47cec303fac86c8541b686d37cac5efc0e094417bc"
dependencies = [ dependencies = [
"memchr", "memchr",
] ]
[[package]] [[package]]
name = "quinn" name = "quinn"
version = "0.11.4" version = "0.11.5"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a2d2fb862b7ba45e615c1429def928f2e15f815bdf933b27a2d3824e224c1f46" checksum = "8c7c5fdde3cdae7203427dc4f0a68fe0ed09833edc525a03456b153b79828684"
dependencies = [ dependencies = [
"bytes", "bytes",
"pin-project-lite", "pin-project-lite",
@@ -5838,9 +5838,9 @@ dependencies = [
[[package]] [[package]]
name = "quinn-proto" name = "quinn-proto"
version = "0.11.7" version = "0.11.8"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ea0a9b3a42929fad8a7c3de7f86ce0814cfa893328157672680e9fb1145549c5" checksum = "fadfaed2cd7f389d0161bb73eeb07b7b78f8691047a6f3e73caaeae55310a4a6"
dependencies = [ dependencies = [
"bytes", "bytes",
"rand 0.8.5", "rand 0.8.5",
@@ -5855,15 +5855,15 @@ dependencies = [
[[package]] [[package]]
name = "quinn-udp" name = "quinn-udp"
version = "0.5.4" version = "0.5.5"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8bffec3605b73c6f1754535084a85229fa8a30f86014e6c81aeec4abb68b0285" checksum = "4fe68c2e9e1a1234e218683dbdf9f9dfcb094113c5ac2b938dfcb9bab4c4140b"
dependencies = [ dependencies = [
"libc", "libc",
"once_cell", "once_cell",
"socket2 0.5.7", "socket2 0.5.7",
"tracing", "tracing",
"windows-sys 0.52.0", "windows-sys 0.59.0",
] ]
[[package]] [[package]]
@@ -6647,9 +6647,9 @@ dependencies = [
[[package]] [[package]]
name = "serde_json" name = "serde_json"
version = "1.0.127" version = "1.0.128"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8043c06d9f82bd7271361ed64f415fe5e12a77fdb52e573e7f06a516dea329ad" checksum = "6ff5456707a1de34e7e37f2a6fd3d3f808c318259cbd01ab6377795054b483d8"
dependencies = [ dependencies = [
"indexmap 2.5.0", "indexmap 2.5.0",
"itoa 1.0.11", "itoa 1.0.11",
@@ -7929,9 +7929,9 @@ dependencies = [
[[package]] [[package]]
name = "tokio-util" name = "tokio-util"
version = "0.7.11" version = "0.7.12"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9cf6b47b3771c49ac75ad09a6162f53ad4b8088b76ac60e8ec1455b31a189fe1" checksum = "61e7c3654c13bcd040d4a03abee2c75b1d14a37b423cf5a813ceae1cc903ec6a"
dependencies = [ dependencies = [
"bytes", "bytes",
"futures-core", "futures-core",
@@ -8554,9 +8554,9 @@ dependencies = [
[[package]] [[package]]
name = "wayland-backend" name = "wayland-backend"
version = "0.3.6" version = "0.3.7"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f90e11ce2ca99c97b940ee83edbae9da2d56a08f9ea8158550fd77fa31722993" checksum = "056535ced7a150d45159d3a8dc30f91a2e2d588ca0b23f70e56033622b8016f6"
dependencies = [ dependencies = [
"cc", "cc",
"downcast-rs", "downcast-rs",
@@ -8568,9 +8568,9 @@ dependencies = [
[[package]] [[package]]
name = "wayland-client" name = "wayland-client"
version = "0.31.5" version = "0.31.6"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "7e321577a0a165911bdcfb39cf029302479d7527b517ee58ab0f6ad09edf0943" checksum = "e3f45d1222915ef1fd2057220c1d9d9624b7654443ea35c3877f7a52bd0a5a2d"
dependencies = [ dependencies = [
"bitflags 2.6.0", "bitflags 2.6.0",
"rustix 0.38.35", "rustix 0.38.35",
@@ -8591,9 +8591,9 @@ dependencies = [
[[package]] [[package]]
name = "wayland-cursor" name = "wayland-cursor"
version = "0.31.5" version = "0.31.6"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6ef9489a8df197ebf3a8ce8a7a7f0a2320035c3743f3c1bd0bdbccf07ce64f95" checksum = "3a94697e66e76c85923b0d28a0c251e8f0666f58fc47d316c0f4da6da75d37cb"
dependencies = [ dependencies = [
"rustix 0.38.35", "rustix 0.38.35",
"wayland-client", "wayland-client",
@@ -8627,20 +8627,20 @@ dependencies = [
[[package]] [[package]]
name = "wayland-scanner" name = "wayland-scanner"
version = "0.31.4" version = "0.31.5"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d7b56f89937f1cf2ee1f1259cf2936a17a1f45d8f0aa1019fae6d470d304cfa6" checksum = "597f2001b2e5fc1121e3d5b9791d3e78f05ba6bfa4641053846248e3a13661c3"
dependencies = [ dependencies = [
"proc-macro2", "proc-macro2",
"quick-xml 0.34.0", "quick-xml 0.36.1",
"quote", "quote",
] ]
[[package]] [[package]]
name = "wayland-sys" name = "wayland-sys"
version = "0.31.4" version = "0.31.5"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "43676fe2daf68754ecf1d72026e4e6c15483198b5d24e888b74d3f22f887a148" checksum = "efa8ac0d8e8ed3e3b5c9fc92c7881406a268e11555abe36493efabe649a29e09"
dependencies = [ dependencies = [
"dlib", "dlib",
"log", "log",

View File

@@ -29,7 +29,7 @@
"framer-motion": "12.0.0-alpha.0", "framer-motion": "12.0.0-alpha.0",
"i18next": "23.14.0", "i18next": "23.14.0",
"jotai": "2.9.3", "jotai": "2.9.3",
"material-react-table": "2.13.2", "material-react-table": "2.13.3",
"monaco-editor": "0.51.0", "monaco-editor": "0.51.0",
"mui-color-input": "4.0.0", "mui-color-input": "4.0.0",
"react": "18.3.1", "react": "18.3.1",
@@ -56,10 +56,10 @@
"@vitejs/plugin-react-swc": "3.7.0", "@vitejs/plugin-react-swc": "3.7.0",
"clsx": "2.1.1", "clsx": "2.1.1",
"sass": "1.78.0", "sass": "1.78.0",
"shiki": "1.16.1", "shiki": "1.16.2",
"tailwindcss-textshadow": "2.1.3", "tailwindcss-textshadow": "2.1.3",
"unplugin-auto-import": "0.18.2", "unplugin-auto-import": "0.18.2",
"unplugin-icons": "0.19.2", "unplugin-icons": "0.19.3",
"vite": "5.4.3", "vite": "5.4.3",
"vite-plugin-monaco-editor": "1.1.3", "vite-plugin-monaco-editor": "1.1.3",
"vite-plugin-sass-dts": "1.3.25", "vite-plugin-sass-dts": "1.3.25",

View File

@@ -10,8 +10,7 @@ export async function getShikiSingleton() {
if (!shiki) { if (!shiki) {
shiki = (await getSingletonHighlighterCore({ shiki = (await getSingletonHighlighterCore({
themes: [nord, minLight], themes: [nord, minLight],
langs: [], langs: [() => import("shiki/langs/shell.mjs")],
loadWasm: getWasm, loadWasm: getWasm,
})) as Highlighter; })) as Highlighter;
} }

View File

@@ -62,7 +62,7 @@
"@tauri-apps/cli": "1.6.1", "@tauri-apps/cli": "1.6.1",
"@types/fs-extra": "11.0.4", "@types/fs-extra": "11.0.4",
"@types/lodash-es": "4.17.12", "@types/lodash-es": "4.17.12",
"@types/node": "22.5.3", "@types/node": "22.5.4",
"@typescript-eslint/eslint-plugin": "8.3.0", "@typescript-eslint/eslint-plugin": "8.3.0",
"@typescript-eslint/parser": "8.3.0", "@typescript-eslint/parser": "8.3.0",
"autoprefixer": "10.4.20", "autoprefixer": "10.4.20",

View File

@@ -24,7 +24,7 @@ importers:
devDependencies: devDependencies:
'@commitlint/cli': '@commitlint/cli':
specifier: 19.4.1 specifier: 19.4.1
version: 19.4.1(@types/node@22.5.3)(typescript@5.5.4) version: 19.4.1(@types/node@22.5.4)(typescript@5.5.4)
'@commitlint/config-conventional': '@commitlint/config-conventional':
specifier: 19.4.1 specifier: 19.4.1
version: 19.4.1 version: 19.4.1
@@ -41,8 +41,8 @@ importers:
specifier: 4.17.12 specifier: 4.17.12
version: 4.17.12 version: 4.17.12
'@types/node': '@types/node':
specifier: 22.5.3 specifier: 22.5.4
version: 22.5.3 version: 22.5.4
'@typescript-eslint/eslint-plugin': '@typescript-eslint/eslint-plugin':
specifier: 8.3.0 specifier: 8.3.0
version: 8.3.0(@typescript-eslint/parser@8.3.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(typescript@5.5.4) version: 8.3.0(@typescript-eslint/parser@8.3.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(typescript@5.5.4)
@@ -99,7 +99,7 @@ importers:
version: 4.6.2(eslint@8.57.0) version: 4.6.2(eslint@8.57.0)
knip: knip:
specifier: 5.29.2 specifier: 5.29.2
version: 5.29.2(@types/node@22.5.3)(typescript@5.5.4) version: 5.29.2(@types/node@22.5.4)(typescript@5.5.4)
lint-staged: lint-staged:
specifier: 15.2.9 specifier: 15.2.9
version: 15.2.9 version: 15.2.9
@@ -199,7 +199,7 @@ importers:
version: 11.13.0(@emotion/react@11.13.3(react@19.0.0-rc-e948a5ac-20240807)(types-react@19.0.0-rc.1))(react@19.0.0-rc-e948a5ac-20240807)(types-react@19.0.0-rc.1) version: 11.13.0(@emotion/react@11.13.3(react@19.0.0-rc-e948a5ac-20240807)(types-react@19.0.0-rc.1))(react@19.0.0-rc-e948a5ac-20240807)(types-react@19.0.0-rc.1)
'@generouted/react-router': '@generouted/react-router':
specifier: 1.19.6 specifier: 1.19.6
version: 1.19.6(react-router-dom@6.26.1(react-dom@19.0.0-rc-e948a5ac-20240807(react@19.0.0-rc-e948a5ac-20240807))(react@19.0.0-rc-e948a5ac-20240807))(react@19.0.0-rc-e948a5ac-20240807)(vite@5.4.3(@types/node@22.5.3)(less@4.2.0)(sass@1.78.0)(stylus@0.62.0)) version: 1.19.6(react-router-dom@6.26.1(react-dom@19.0.0-rc-e948a5ac-20240807(react@19.0.0-rc-e948a5ac-20240807))(react@19.0.0-rc-e948a5ac-20240807))(react@19.0.0-rc-e948a5ac-20240807)(vite@5.4.3(@types/node@22.5.4)(less@4.2.0)(sass@1.78.0)(stylus@0.62.0))
'@juggle/resize-observer': '@juggle/resize-observer':
specifier: 3.4.0 specifier: 3.4.0
version: 3.4.0 version: 3.4.0
@@ -246,8 +246,8 @@ importers:
specifier: 2.9.3 specifier: 2.9.3
version: 2.9.3(react@19.0.0-rc-e948a5ac-20240807)(types-react@19.0.0-rc.1) version: 2.9.3(react@19.0.0-rc-e948a5ac-20240807)(types-react@19.0.0-rc.1)
material-react-table: material-react-table:
specifier: 2.13.2 specifier: 2.13.3
version: 2.13.2(px6672jbssk23ndlae6ak2yfga) version: 2.13.3(px6672jbssk23ndlae6ak2yfga)
monaco-editor: monaco-editor:
specifier: 0.51.0 specifier: 0.51.0
version: 0.51.0 version: 0.51.0
@@ -311,10 +311,10 @@ importers:
version: types-react-dom@19.0.0-rc.1 version: types-react-dom@19.0.0-rc.1
'@vitejs/plugin-react': '@vitejs/plugin-react':
specifier: 4.3.1 specifier: 4.3.1
version: 4.3.1(vite@5.4.3(@types/node@22.5.3)(less@4.2.0)(sass@1.78.0)(stylus@0.62.0)) version: 4.3.1(vite@5.4.3(@types/node@22.5.4)(less@4.2.0)(sass@1.78.0)(stylus@0.62.0))
'@vitejs/plugin-react-swc': '@vitejs/plugin-react-swc':
specifier: 3.7.0 specifier: 3.7.0
version: 3.7.0(vite@5.4.3(@types/node@22.5.3)(less@4.2.0)(sass@1.78.0)(stylus@0.62.0)) version: 3.7.0(vite@5.4.3(@types/node@22.5.4)(less@4.2.0)(sass@1.78.0)(stylus@0.62.0))
clsx: clsx:
specifier: 2.1.1 specifier: 2.1.1
version: 2.1.1 version: 2.1.1
@@ -322,8 +322,8 @@ importers:
specifier: 1.78.0 specifier: 1.78.0
version: 1.78.0 version: 1.78.0
shiki: shiki:
specifier: 1.16.1 specifier: 1.16.2
version: 1.16.1 version: 1.16.2
tailwindcss-textshadow: tailwindcss-textshadow:
specifier: 2.1.3 specifier: 2.1.3
version: 2.1.3 version: 2.1.3
@@ -331,23 +331,23 @@ importers:
specifier: 0.18.2 specifier: 0.18.2
version: 0.18.2(rollup@4.21.0) version: 0.18.2(rollup@4.21.0)
unplugin-icons: unplugin-icons:
specifier: 0.19.2 specifier: 0.19.3
version: 0.19.2(@svgr/core@8.1.0(typescript@5.5.4)) version: 0.19.3(@svgr/core@8.1.0(typescript@5.5.4))
vite: vite:
specifier: 5.4.3 specifier: 5.4.3
version: 5.4.3(@types/node@22.5.3)(less@4.2.0)(sass@1.78.0)(stylus@0.62.0) version: 5.4.3(@types/node@22.5.4)(less@4.2.0)(sass@1.78.0)(stylus@0.62.0)
vite-plugin-monaco-editor: vite-plugin-monaco-editor:
specifier: npm:vite-plugin-monaco-editor-new@1.1.3 specifier: npm:vite-plugin-monaco-editor-new@1.1.3
version: vite-plugin-monaco-editor-new@1.1.3(monaco-editor@0.51.0) version: vite-plugin-monaco-editor-new@1.1.3(monaco-editor@0.51.0)
vite-plugin-sass-dts: vite-plugin-sass-dts:
specifier: 1.3.25 specifier: 1.3.25
version: 1.3.25(postcss@8.4.45)(prettier@3.3.3)(sass@1.78.0)(vite@5.4.3(@types/node@22.5.3)(less@4.2.0)(sass@1.78.0)(stylus@0.62.0)) version: 1.3.25(postcss@8.4.45)(prettier@3.3.3)(sass@1.78.0)(vite@5.4.3(@types/node@22.5.4)(less@4.2.0)(sass@1.78.0)(stylus@0.62.0))
vite-plugin-svgr: vite-plugin-svgr:
specifier: 4.2.0 specifier: 4.2.0
version: 4.2.0(rollup@4.21.0)(typescript@5.5.4)(vite@5.4.3(@types/node@22.5.3)(less@4.2.0)(sass@1.78.0)(stylus@0.62.0)) version: 4.2.0(rollup@4.21.0)(typescript@5.5.4)(vite@5.4.3(@types/node@22.5.4)(less@4.2.0)(sass@1.78.0)(stylus@0.62.0))
vite-tsconfig-paths: vite-tsconfig-paths:
specifier: 5.0.1 specifier: 5.0.1
version: 5.0.1(typescript@5.5.4)(vite@5.4.3(@types/node@22.5.3)(less@4.2.0)(sass@1.78.0)(stylus@0.62.0)) version: 5.0.1(typescript@5.5.4)(vite@5.4.3(@types/node@22.5.4)(less@4.2.0)(sass@1.78.0)(stylus@0.62.0))
frontend/ui: frontend/ui:
dependencies: dependencies:
@@ -380,7 +380,7 @@ importers:
version: types-react@19.0.0-rc.1 version: types-react@19.0.0-rc.1
'@vitejs/plugin-react': '@vitejs/plugin-react':
specifier: 4.3.1 specifier: 4.3.1
version: 4.3.1(vite@5.4.3(@types/node@22.5.3)(less@4.2.0)(sass@1.78.0)(stylus@0.62.0)) version: 4.3.1(vite@5.4.3(@types/node@22.5.4)(less@4.2.0)(sass@1.78.0)(stylus@0.62.0))
ahooks: ahooks:
specifier: 3.8.1 specifier: 3.8.1
version: 3.8.1(react@19.0.0-rc-e948a5ac-20240807) version: 3.8.1(react@19.0.0-rc-e948a5ac-20240807)
@@ -404,10 +404,10 @@ importers:
version: 17.5.1(react-dom@19.0.0-rc-e948a5ac-20240807(react@19.0.0-rc-e948a5ac-20240807))(react@19.0.0-rc-e948a5ac-20240807) version: 17.5.1(react-dom@19.0.0-rc-e948a5ac-20240807(react@19.0.0-rc-e948a5ac-20240807))(react@19.0.0-rc-e948a5ac-20240807)
vite: vite:
specifier: 5.4.3 specifier: 5.4.3
version: 5.4.3(@types/node@22.5.3)(less@4.2.0)(sass@1.78.0)(stylus@0.62.0) version: 5.4.3(@types/node@22.5.4)(less@4.2.0)(sass@1.78.0)(stylus@0.62.0)
vite-tsconfig-paths: vite-tsconfig-paths:
specifier: 5.0.1 specifier: 5.0.1
version: 5.0.1(typescript@5.5.4)(vite@5.4.3(@types/node@22.5.3)(less@4.2.0)(sass@1.78.0)(stylus@0.62.0)) version: 5.0.1(typescript@5.5.4)(vite@5.4.3(@types/node@22.5.4)(less@4.2.0)(sass@1.78.0)(stylus@0.62.0))
devDependencies: devDependencies:
'@emotion/react': '@emotion/react':
specifier: 11.13.3 specifier: 11.13.3
@@ -432,7 +432,7 @@ importers:
version: 5.1.0(typescript@5.5.4) version: 5.1.0(typescript@5.5.4)
vite-plugin-dts: vite-plugin-dts:
specifier: 4.1.0 specifier: 4.1.0
version: 4.1.0(@types/node@22.5.3)(rollup@4.21.0)(typescript@5.5.4)(vite@5.4.3(@types/node@22.5.3)(less@4.2.0)(sass@1.78.0)(stylus@0.62.0)) version: 4.1.0(@types/node@22.5.4)(rollup@4.21.0)(typescript@5.5.4)(vite@5.4.3(@types/node@22.5.4)(less@4.2.0)(sass@1.78.0)(stylus@0.62.0))
scripts: scripts:
dependencies: dependencies:
@@ -508,8 +508,8 @@ packages:
'@antfu/install-pkg@0.1.1': '@antfu/install-pkg@0.1.1':
resolution: {integrity: sha512-LyB/8+bSfa0DFGC06zpCEfs89/XoWZwws5ygEa5D+Xsm3OfI+aXQ86VgVG7Acyef+rSZ5HE7J8rrxzrQeM3PjQ==} resolution: {integrity: sha512-LyB/8+bSfa0DFGC06zpCEfs89/XoWZwws5ygEa5D+Xsm3OfI+aXQ86VgVG7Acyef+rSZ5HE7J8rrxzrQeM3PjQ==}
'@antfu/install-pkg@0.3.3': '@antfu/install-pkg@0.4.1':
resolution: {integrity: sha512-nHHsk3NXQ6xkCfiRRC8Nfrg8pU5kkr3P3Y9s9dKqiuRmBD0Yap7fymNDjGFKeWhZQHqqbCS5CfeMy9wtExM24w==} resolution: {integrity: sha512-T7yB5QNG29afhWVkVq7XeIMBa5U/vs9mX69YqayXypPRmYzUmzwnYltplHmPtZ4HPCn+sQKeXW8I47wCbuBOjw==}
'@antfu/utils@0.7.10': '@antfu/utils@0.7.10':
resolution: {integrity: sha512-+562v9k4aI80m1+VuMHehNJWLOFjBnXn3tdOitzD0il5b7smkSBal4+a3oKiQTbrwMmN/TBUMDvbdoWDehgOww==} resolution: {integrity: sha512-+562v9k4aI80m1+VuMHehNJWLOFjBnXn3tdOitzD0il5b7smkSBal4+a3oKiQTbrwMmN/TBUMDvbdoWDehgOww==}
@@ -1424,10 +1424,6 @@ packages:
'@jridgewell/trace-mapping@0.3.25': '@jridgewell/trace-mapping@0.3.25':
resolution: {integrity: sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==} resolution: {integrity: sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==}
'@jsdevtools/ez-spawn@3.0.4':
resolution: {integrity: sha512-f5DRIOZf7wxogefH03RjMPMdBF7ADTWUMoOs9kaJo06EfwF+aFhMZMDZxHg/Xe12hptN9xoZjGso2fdjapBRIA==}
engines: {node: '>=10'}
'@juggle/resize-observer@3.4.0': '@juggle/resize-observer@3.4.0':
resolution: {integrity: sha512-dfLbk+PwWvFzSxwk3n5ySL0hfBog779o8h68wK/7/APo/7cgyWp5jcXockbxdk5kFRkbeXWm4Fbi9FrdN381sA==} resolution: {integrity: sha512-dfLbk+PwWvFzSxwk3n5ySL0hfBog779o8h68wK/7/APo/7cgyWp5jcXockbxdk5kFRkbeXWm4Fbi9FrdN381sA==}
@@ -2048,8 +2044,8 @@ packages:
'@rushstack/ts-command-line@4.22.3': '@rushstack/ts-command-line@4.22.3':
resolution: {integrity: sha512-edMpWB3QhFFZ4KtSzS8WNjBgR4PXPPOVrOHMbb7kNpmQ1UFS9HdVtjCXg1H5fG+xYAbeE+TMPcVPUyX2p84STA==} resolution: {integrity: sha512-edMpWB3QhFFZ4KtSzS8WNjBgR4PXPPOVrOHMbb7kNpmQ1UFS9HdVtjCXg1H5fG+xYAbeE+TMPcVPUyX2p84STA==}
'@shikijs/core@1.16.1': '@shikijs/core@1.16.2':
resolution: {integrity: sha512-aI0hBtw+a6KsJp2jcD4YuQqKpeCbURMZbhHVozDknJpm+KJqeMRkEnfBC8BaKE/5XC+uofPgCLsa/TkTk0Ba0w==} resolution: {integrity: sha512-XSVH5OZCvE4WLMgdoBqfPMYmGHGmCC3OgZhw0S7KcSi2XKZ+5oHGe71GFnTljgdOxvxx5WrRks6QoTLKrl1eAA==}
'@shikijs/vscode-textmate@9.2.0': '@shikijs/vscode-textmate@9.2.0':
resolution: {integrity: sha512-5FinaOp6Vdh/dl4/yaOTh0ZeKch+rYS8DUb38V3GMKYVkdqzxw53lViRKUYkVILRiVQT7dcPC7VvAKOR73zVtQ==} resolution: {integrity: sha512-5FinaOp6Vdh/dl4/yaOTh0ZeKch+rYS8DUb38V3GMKYVkdqzxw53lViRKUYkVILRiVQT7dcPC7VvAKOR73zVtQ==}
@@ -2495,8 +2491,8 @@ packages:
'@types/node@22.5.0': '@types/node@22.5.0':
resolution: {integrity: sha512-DkFrJOe+rfdHTqqMg0bSNlGlQ85hSoh2TPzZyhHsXnMtligRWpxUySiyw8FY14ITt24HVCiQPWxS3KO/QlGmWg==} resolution: {integrity: sha512-DkFrJOe+rfdHTqqMg0bSNlGlQ85hSoh2TPzZyhHsXnMtligRWpxUySiyw8FY14ITt24HVCiQPWxS3KO/QlGmWg==}
'@types/node@22.5.3': '@types/node@22.5.4':
resolution: {integrity: sha512-njripolh85IA9SQGTAqbmnNZTdxv7X/4OYGPz8tgy5JDr8MP+uDBa921GpYEoDDnwm0Hmn5ZPeJgiiSTPoOzkQ==} resolution: {integrity: sha512-FDuKUJQm/ju9fT/SeX/6+gBzoPzlVCzfzmGkwKvRHQVxi4BntVbyIwf6a4Xn62mrvndLiml6z/UBXIdEVjQLXg==}
'@types/parse-json@4.0.2': '@types/parse-json@4.0.2':
resolution: {integrity: sha512-dISoDXWWQwUquiKsyZ4Ng+HX2KsPL7LyHKHQwgGFEA3IaKac4Obd+h2a/a6waisAoepJlBcx9paWqjA8/HVjCw==} resolution: {integrity: sha512-dISoDXWWQwUquiKsyZ4Ng+HX2KsPL7LyHKHQwgGFEA3IaKac4Obd+h2a/a6waisAoepJlBcx9paWqjA8/HVjCw==}
@@ -2906,9 +2902,6 @@ packages:
resolution: {integrity: sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==} resolution: {integrity: sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==}
engines: {node: '>= 0.4'} engines: {node: '>= 0.4'}
call-me-maybe@1.0.2:
resolution: {integrity: sha512-HpX65o1Hnr9HH25ojC1YGs7HCQLq0GCOibSaWER0eNpgJ/Z1MZv2mTc7+xh6WOPxbRVcmgbv4hGU+uSQ/2xFZQ==}
callsites@3.1.0: callsites@3.1.0:
resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==}
engines: {node: '>=6'} engines: {node: '>=6'}
@@ -4781,8 +4774,8 @@ packages:
resolution: {integrity: sha512-OkeDaAZ/bQCxeFAozM55PKcKU0yJMPGifLwV4Qgjitu+5MoAfSQN4lsLJeXZ1b8w0x+/Emda6MZgXS1jvsapng==} resolution: {integrity: sha512-OkeDaAZ/bQCxeFAozM55PKcKU0yJMPGifLwV4Qgjitu+5MoAfSQN4lsLJeXZ1b8w0x+/Emda6MZgXS1jvsapng==}
engines: {node: '>=10'} engines: {node: '>=10'}
material-react-table@2.13.2: material-react-table@2.13.3:
resolution: {integrity: sha512-8q2Jq723rqCNNxZ9yKZOBU9A2EzcdjT/6IQIXoigRZO2IUROEhcv5bvg8Sqojz+Au5bNQJ8f7RNzSP1UOzirNA==} resolution: {integrity: sha512-xeyAEG6UYG3qgBIo17epAP5zsWT1pH0uCEkaUxvhki9sGcP35OqfOMSZJNhISvmqEqXKYHdqKbZI6iOwsg1sYA==}
engines: {node: '>=16'} engines: {node: '>=16'}
peerDependencies: peerDependencies:
'@emotion/react': '>=11.11' '@emotion/react': '>=11.11'
@@ -5207,6 +5200,9 @@ packages:
resolution: {integrity: sha512-q/R5GrMek0vzgoomq6rm9OX+3PQve8sLwTirmK30YB3Cu0Bbt9OX9M/SIUnroN5BGJkzwGsFwDaRGD9EwBOlCA==} resolution: {integrity: sha512-q/R5GrMek0vzgoomq6rm9OX+3PQve8sLwTirmK30YB3Cu0Bbt9OX9M/SIUnroN5BGJkzwGsFwDaRGD9EwBOlCA==}
engines: {node: '>=4'} engines: {node: '>=4'}
package-manager-detector@0.2.0:
resolution: {integrity: sha512-E385OSk9qDcXhcM9LNSe4sdhx8a9mAPrZ4sMLW+tmxl5ZuGtPUcdFu+MPP2jbgiWAZ6Pfe5soGFMd+0Db5Vrog==}
pako@2.1.0: pako@2.1.0:
resolution: {integrity: sha512-w+eufiZ1WuJYgPXbV/PO3NCMEc3xqylkKHzp8bxp1uW4qaSNQUkwmLLEc3kKsfz8lpV1F8Ht3U1Cm+9Srog2ug==} resolution: {integrity: sha512-w+eufiZ1WuJYgPXbV/PO3NCMEc3xqylkKHzp8bxp1uW4qaSNQUkwmLLEc3kKsfz8lpV1F8Ht3U1Cm+9Srog2ug==}
@@ -5934,8 +5930,8 @@ packages:
shell-quote@1.8.1: shell-quote@1.8.1:
resolution: {integrity: sha512-6j1W9l1iAs/4xYBI1SYOVZyFcCis9b4KCLQ8fgAGG07QvzaRLVVRQvAy85yNmmZSjYjg4MWh4gNvlPujU/5LpA==} resolution: {integrity: sha512-6j1W9l1iAs/4xYBI1SYOVZyFcCis9b4KCLQ8fgAGG07QvzaRLVVRQvAy85yNmmZSjYjg4MWh4gNvlPujU/5LpA==}
shiki@1.16.1: shiki@1.16.2:
resolution: {integrity: sha512-tCJIMaxDVB1mEIJ5TvfZU7kCPB5eo9fli5+21Olc/bmyv+w8kye3JOp+LZRmGkAyT71hrkefQhTiY+o9mBikRQ==} resolution: {integrity: sha512-gSym0hZf5a1U0iDPsdoOAZbvoi+e0c6c3NKAi03FoSLTm7oG20tum29+gk0wzzivOasn3loxfGUPT+jZXIUbWg==}
side-channel@1.0.6: side-channel@1.0.6:
resolution: {integrity: sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==} resolution: {integrity: sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==}
@@ -6290,6 +6286,9 @@ packages:
resolution: {integrity: sha512-G7r3AhovYtr5YKOWQkta8RKAPb+J9IsO4uVmzjl8AZwfhs8UcUwTiD6gcJYSgOtzyjvQKrKYn41syHbUWMkafA==} resolution: {integrity: sha512-G7r3AhovYtr5YKOWQkta8RKAPb+J9IsO4uVmzjl8AZwfhs8UcUwTiD6gcJYSgOtzyjvQKrKYn41syHbUWMkafA==}
engines: {node: '>=0.10.0'} engines: {node: '>=0.10.0'}
tinyexec@0.3.0:
resolution: {integrity: sha512-tVGE0mVJPGb0chKhqmsoosjsS+qUnJVGJpZgsHYQcGoPlG3B51R3PouqTgEGH2Dc9jjFyOqOpix6ZHNMXp1FZg==}
to-fast-properties@2.0.0: to-fast-properties@2.0.0:
resolution: {integrity: sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==} resolution: {integrity: sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==}
engines: {node: '>=4'} engines: {node: '>=4'}
@@ -6356,10 +6355,6 @@ packages:
resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==} resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==}
engines: {node: '>= 0.8.0'} engines: {node: '>= 0.8.0'}
type-detect@4.1.0:
resolution: {integrity: sha512-Acylog8/luQ8L7il+geoSxhEkazvkslg7PSNKOX59mbB9cOveP5aq9h74Y7YU8yDpJwetzQQrfIwtf4Wp4LKcw==}
engines: {node: '>=4'}
type-fest@0.13.1: type-fest@0.13.1:
resolution: {integrity: sha512-34R7HTnG0XIJcBSn5XhDd7nNFPRcXYRZrBB2O2jdKqYODldSzBAqzsWoZYYvduky73toYS/ESqxPvkDf/F0XMg==} resolution: {integrity: sha512-34R7HTnG0XIJcBSn5XhDd7nNFPRcXYRZrBB2O2jdKqYODldSzBAqzsWoZYYvduky73toYS/ESqxPvkDf/F0XMg==}
engines: {node: '>=10'} engines: {node: '>=10'}
@@ -6489,8 +6484,8 @@ packages:
'@vueuse/core': '@vueuse/core':
optional: true optional: true
unplugin-icons@0.19.2: unplugin-icons@0.19.3:
resolution: {integrity: sha512-QkQJ/Iz3PFr/EoiOvFUQYvqbbJZ7Vs3hObKAFHh5eywTU1PQagSNeXKGRD+JpzXSTnUNLtG0u/xEA5Ec2OeANQ==} resolution: {integrity: sha512-EUegRmsAI6+rrYr0vXjFlIP+lg4fSC4zb62zAZKx8FGXlWAGgEGBCa3JDe27aRAXhistObLPbBPhwa/0jYLFkQ==}
peerDependencies: peerDependencies:
'@svgr/core': '>=7.0.0' '@svgr/core': '>=7.0.0'
'@svgx/core': ^1.0.1 '@svgx/core': ^1.0.1
@@ -6849,9 +6844,10 @@ snapshots:
execa: 5.1.1 execa: 5.1.1
find-up: 5.0.0 find-up: 5.0.0
'@antfu/install-pkg@0.3.3': '@antfu/install-pkg@0.4.1':
dependencies: dependencies:
'@jsdevtools/ez-spawn': 3.0.4 package-manager-detector: 0.2.0
tinyexec: 0.3.0
'@antfu/utils@0.7.10': {} '@antfu/utils@0.7.10': {}
@@ -7133,11 +7129,11 @@ snapshots:
'@babel/helper-validator-identifier': 7.24.7 '@babel/helper-validator-identifier': 7.24.7
to-fast-properties: 2.0.0 to-fast-properties: 2.0.0
'@commitlint/cli@19.4.1(@types/node@22.5.3)(typescript@5.5.4)': '@commitlint/cli@19.4.1(@types/node@22.5.4)(typescript@5.5.4)':
dependencies: dependencies:
'@commitlint/format': 19.3.0 '@commitlint/format': 19.3.0
'@commitlint/lint': 19.4.1 '@commitlint/lint': 19.4.1
'@commitlint/load': 19.4.0(@types/node@22.5.3)(typescript@5.5.4) '@commitlint/load': 19.4.0(@types/node@22.5.4)(typescript@5.5.4)
'@commitlint/read': 19.4.0 '@commitlint/read': 19.4.0
'@commitlint/types': 19.0.3 '@commitlint/types': 19.0.3
execa: 8.0.1 execa: 8.0.1
@@ -7184,7 +7180,7 @@ snapshots:
'@commitlint/rules': 19.4.1 '@commitlint/rules': 19.4.1
'@commitlint/types': 19.0.3 '@commitlint/types': 19.0.3
'@commitlint/load@19.4.0(@types/node@22.5.3)(typescript@5.5.4)': '@commitlint/load@19.4.0(@types/node@22.5.4)(typescript@5.5.4)':
dependencies: dependencies:
'@commitlint/config-validator': 19.0.3 '@commitlint/config-validator': 19.0.3
'@commitlint/execute-rule': 19.0.0 '@commitlint/execute-rule': 19.0.0
@@ -7192,7 +7188,7 @@ snapshots:
'@commitlint/types': 19.0.3 '@commitlint/types': 19.0.3
chalk: 5.3.0 chalk: 5.3.0
cosmiconfig: 9.0.0(typescript@5.5.4) cosmiconfig: 9.0.0(typescript@5.5.4)
cosmiconfig-typescript-loader: 5.0.0(@types/node@22.5.3)(cosmiconfig@9.0.0(typescript@5.5.4))(typescript@5.5.4) cosmiconfig-typescript-loader: 5.0.0(@types/node@22.5.4)(cosmiconfig@9.0.0(typescript@5.5.4))(typescript@5.5.4)
lodash.isplainobject: 4.0.6 lodash.isplainobject: 4.0.6
lodash.merge: 4.6.2 lodash.merge: 4.6.2
lodash.uniq: 4.5.0 lodash.uniq: 4.5.0
@@ -7650,13 +7646,13 @@ snapshots:
postcss: 7.0.32 postcss: 7.0.32
purgecss: 2.3.0 purgecss: 2.3.0
'@generouted/react-router@1.19.6(react-router-dom@6.26.1(react-dom@19.0.0-rc-e948a5ac-20240807(react@19.0.0-rc-e948a5ac-20240807))(react@19.0.0-rc-e948a5ac-20240807))(react@19.0.0-rc-e948a5ac-20240807)(vite@5.4.3(@types/node@22.5.3)(less@4.2.0)(sass@1.78.0)(stylus@0.62.0))': '@generouted/react-router@1.19.6(react-router-dom@6.26.1(react-dom@19.0.0-rc-e948a5ac-20240807(react@19.0.0-rc-e948a5ac-20240807))(react@19.0.0-rc-e948a5ac-20240807))(react@19.0.0-rc-e948a5ac-20240807)(vite@5.4.3(@types/node@22.5.4)(less@4.2.0)(sass@1.78.0)(stylus@0.62.0))':
dependencies: dependencies:
fast-glob: 3.3.2 fast-glob: 3.3.2
generouted: 1.19.6(vite@5.4.3(@types/node@22.5.3)(less@4.2.0)(sass@1.78.0)(stylus@0.62.0)) generouted: 1.19.6(vite@5.4.3(@types/node@22.5.4)(less@4.2.0)(sass@1.78.0)(stylus@0.62.0))
react: 19.0.0-rc-e948a5ac-20240807 react: 19.0.0-rc-e948a5ac-20240807
react-router-dom: 6.26.1(react-dom@19.0.0-rc-e948a5ac-20240807(react@19.0.0-rc-e948a5ac-20240807))(react@19.0.0-rc-e948a5ac-20240807) react-router-dom: 6.26.1(react-dom@19.0.0-rc-e948a5ac-20240807(react@19.0.0-rc-e948a5ac-20240807))(react@19.0.0-rc-e948a5ac-20240807)
vite: 5.4.3(@types/node@22.5.3)(less@4.2.0)(sass@1.78.0)(stylus@0.62.0) vite: 5.4.3(@types/node@22.5.4)(less@4.2.0)(sass@1.78.0)(stylus@0.62.0)
'@humanwhocodes/config-array@0.11.14': '@humanwhocodes/config-array@0.11.14':
dependencies: dependencies:
@@ -7731,34 +7727,27 @@ snapshots:
'@jridgewell/resolve-uri': 3.1.2 '@jridgewell/resolve-uri': 3.1.2
'@jridgewell/sourcemap-codec': 1.5.0 '@jridgewell/sourcemap-codec': 1.5.0
'@jsdevtools/ez-spawn@3.0.4':
dependencies:
call-me-maybe: 1.0.2
cross-spawn: 7.0.3
string-argv: 0.3.2
type-detect: 4.1.0
'@juggle/resize-observer@3.4.0': {} '@juggle/resize-observer@3.4.0': {}
'@material/material-color-utilities@0.3.0': {} '@material/material-color-utilities@0.3.0': {}
'@microsoft/api-extractor-model@7.29.4(@types/node@22.5.3)': '@microsoft/api-extractor-model@7.29.4(@types/node@22.5.4)':
dependencies: dependencies:
'@microsoft/tsdoc': 0.15.0 '@microsoft/tsdoc': 0.15.0
'@microsoft/tsdoc-config': 0.17.0 '@microsoft/tsdoc-config': 0.17.0
'@rushstack/node-core-library': 5.5.1(@types/node@22.5.3) '@rushstack/node-core-library': 5.5.1(@types/node@22.5.4)
transitivePeerDependencies: transitivePeerDependencies:
- '@types/node' - '@types/node'
'@microsoft/api-extractor@7.47.4(@types/node@22.5.3)': '@microsoft/api-extractor@7.47.4(@types/node@22.5.4)':
dependencies: dependencies:
'@microsoft/api-extractor-model': 7.29.4(@types/node@22.5.3) '@microsoft/api-extractor-model': 7.29.4(@types/node@22.5.4)
'@microsoft/tsdoc': 0.15.0 '@microsoft/tsdoc': 0.15.0
'@microsoft/tsdoc-config': 0.17.0 '@microsoft/tsdoc-config': 0.17.0
'@rushstack/node-core-library': 5.5.1(@types/node@22.5.3) '@rushstack/node-core-library': 5.5.1(@types/node@22.5.4)
'@rushstack/rig-package': 0.5.3 '@rushstack/rig-package': 0.5.3
'@rushstack/terminal': 0.13.3(@types/node@22.5.3) '@rushstack/terminal': 0.13.3(@types/node@22.5.4)
'@rushstack/ts-command-line': 4.22.3(@types/node@22.5.3) '@rushstack/ts-command-line': 4.22.3(@types/node@22.5.4)
lodash: 4.17.21 lodash: 4.17.21
minimatch: 3.0.8 minimatch: 3.0.8
resolve: 1.22.8 resolve: 1.22.8
@@ -8314,7 +8303,7 @@ snapshots:
'@rollup/rollup-win32-x64-msvc@4.21.0': '@rollup/rollup-win32-x64-msvc@4.21.0':
optional: true optional: true
'@rushstack/node-core-library@5.5.1(@types/node@22.5.3)': '@rushstack/node-core-library@5.5.1(@types/node@22.5.4)':
dependencies: dependencies:
ajv: 8.13.0 ajv: 8.13.0
ajv-draft-04: 1.0.0(ajv@8.13.0) ajv-draft-04: 1.0.0(ajv@8.13.0)
@@ -8325,30 +8314,30 @@ snapshots:
resolve: 1.22.8 resolve: 1.22.8
semver: 7.5.4 semver: 7.5.4
optionalDependencies: optionalDependencies:
'@types/node': 22.5.3 '@types/node': 22.5.4
'@rushstack/rig-package@0.5.3': '@rushstack/rig-package@0.5.3':
dependencies: dependencies:
resolve: 1.22.8 resolve: 1.22.8
strip-json-comments: 3.1.1 strip-json-comments: 3.1.1
'@rushstack/terminal@0.13.3(@types/node@22.5.3)': '@rushstack/terminal@0.13.3(@types/node@22.5.4)':
dependencies: dependencies:
'@rushstack/node-core-library': 5.5.1(@types/node@22.5.3) '@rushstack/node-core-library': 5.5.1(@types/node@22.5.4)
supports-color: 8.1.1 supports-color: 8.1.1
optionalDependencies: optionalDependencies:
'@types/node': 22.5.3 '@types/node': 22.5.4
'@rushstack/ts-command-line@4.22.3(@types/node@22.5.3)': '@rushstack/ts-command-line@4.22.3(@types/node@22.5.4)':
dependencies: dependencies:
'@rushstack/terminal': 0.13.3(@types/node@22.5.3) '@rushstack/terminal': 0.13.3(@types/node@22.5.4)
'@types/argparse': 1.0.38 '@types/argparse': 1.0.38
argparse: 1.0.10 argparse: 1.0.10
string-argv: 0.3.2 string-argv: 0.3.2
transitivePeerDependencies: transitivePeerDependencies:
- '@types/node' - '@types/node'
'@shikijs/core@1.16.1': '@shikijs/core@1.16.2':
dependencies: dependencies:
'@shikijs/vscode-textmate': 9.2.0 '@shikijs/vscode-textmate': 9.2.0
'@types/hast': 3.0.4 '@types/hast': 3.0.4
@@ -8606,12 +8595,12 @@ snapshots:
dependencies: dependencies:
'@types/http-cache-semantics': 4.0.4 '@types/http-cache-semantics': 4.0.4
'@types/keyv': 3.1.4 '@types/keyv': 3.1.4
'@types/node': 22.5.3 '@types/node': 22.5.4
'@types/responselike': 1.0.3 '@types/responselike': 1.0.3
'@types/conventional-commits-parser@5.0.0': '@types/conventional-commits-parser@5.0.0':
dependencies: dependencies:
'@types/node': 22.5.3 '@types/node': 22.5.4
'@types/d3-array@3.2.1': {} '@types/d3-array@3.2.1': {}
@@ -8747,7 +8736,7 @@ snapshots:
'@types/fs-extra@11.0.4': '@types/fs-extra@11.0.4':
dependencies: dependencies:
'@types/jsonfile': 6.1.4 '@types/jsonfile': 6.1.4
'@types/node': 22.5.3 '@types/node': 22.5.4
'@types/geojson@7946.0.14': {} '@types/geojson@7946.0.14': {}
@@ -8763,11 +8752,11 @@ snapshots:
'@types/jsonfile@6.1.4': '@types/jsonfile@6.1.4':
dependencies: dependencies:
'@types/node': 22.5.3 '@types/node': 22.5.4
'@types/keyv@3.1.4': '@types/keyv@3.1.4':
dependencies: dependencies:
'@types/node': 22.5.3 '@types/node': 22.5.4
'@types/lodash-es@4.17.12': '@types/lodash-es@4.17.12':
dependencies: dependencies:
@@ -8787,7 +8776,7 @@ snapshots:
dependencies: dependencies:
undici-types: 6.19.6 undici-types: 6.19.6
'@types/node@22.5.3': '@types/node@22.5.4':
dependencies: dependencies:
undici-types: 6.19.6 undici-types: 6.19.6
@@ -8809,7 +8798,7 @@ snapshots:
'@types/responselike@1.0.3': '@types/responselike@1.0.3':
dependencies: dependencies:
'@types/node': 22.5.3 '@types/node': 22.5.4
'@types/unist@2.0.10': {} '@types/unist@2.0.10': {}
@@ -8817,7 +8806,7 @@ snapshots:
'@types/yauzl@2.10.3': '@types/yauzl@2.10.3':
dependencies: dependencies:
'@types/node': 22.5.3 '@types/node': 22.5.4
optional: true optional: true
'@typescript-eslint/eslint-plugin@8.3.0(@typescript-eslint/parser@8.3.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(typescript@5.5.4)': '@typescript-eslint/eslint-plugin@8.3.0(@typescript-eslint/parser@8.3.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(typescript@5.5.4)':
@@ -8903,21 +8892,21 @@ snapshots:
'@ungap/structured-clone@1.2.0': {} '@ungap/structured-clone@1.2.0': {}
'@vitejs/plugin-react-swc@3.7.0(vite@5.4.3(@types/node@22.5.3)(less@4.2.0)(sass@1.78.0)(stylus@0.62.0))': '@vitejs/plugin-react-swc@3.7.0(vite@5.4.3(@types/node@22.5.4)(less@4.2.0)(sass@1.78.0)(stylus@0.62.0))':
dependencies: dependencies:
'@swc/core': 1.6.1 '@swc/core': 1.6.1
vite: 5.4.3(@types/node@22.5.3)(less@4.2.0)(sass@1.78.0)(stylus@0.62.0) vite: 5.4.3(@types/node@22.5.4)(less@4.2.0)(sass@1.78.0)(stylus@0.62.0)
transitivePeerDependencies: transitivePeerDependencies:
- '@swc/helpers' - '@swc/helpers'
'@vitejs/plugin-react@4.3.1(vite@5.4.3(@types/node@22.5.3)(less@4.2.0)(sass@1.78.0)(stylus@0.62.0))': '@vitejs/plugin-react@4.3.1(vite@5.4.3(@types/node@22.5.4)(less@4.2.0)(sass@1.78.0)(stylus@0.62.0))':
dependencies: dependencies:
'@babel/core': 7.24.5 '@babel/core': 7.24.5
'@babel/plugin-transform-react-jsx-self': 7.24.5(@babel/core@7.24.5) '@babel/plugin-transform-react-jsx-self': 7.24.5(@babel/core@7.24.5)
'@babel/plugin-transform-react-jsx-source': 7.24.1(@babel/core@7.24.5) '@babel/plugin-transform-react-jsx-source': 7.24.1(@babel/core@7.24.5)
'@types/babel__core': 7.20.5 '@types/babel__core': 7.20.5
react-refresh: 0.14.2 react-refresh: 0.14.2
vite: 5.4.3(@types/node@22.5.3)(less@4.2.0)(sass@1.78.0)(stylus@0.62.0) vite: 5.4.3(@types/node@22.5.4)(less@4.2.0)(sass@1.78.0)(stylus@0.62.0)
transitivePeerDependencies: transitivePeerDependencies:
- supports-color - supports-color
@@ -9297,8 +9286,6 @@ snapshots:
get-intrinsic: 1.2.4 get-intrinsic: 1.2.4
set-function-length: 1.2.2 set-function-length: 1.2.2
call-me-maybe@1.0.2: {}
callsites@3.1.0: {} callsites@3.1.0: {}
camelcase-css@2.0.1: {} camelcase-css@2.0.1: {}
@@ -9481,9 +9468,9 @@ snapshots:
dependencies: dependencies:
toggle-selection: 1.0.6 toggle-selection: 1.0.6
cosmiconfig-typescript-loader@5.0.0(@types/node@22.5.3)(cosmiconfig@9.0.0(typescript@5.5.4))(typescript@5.5.4): cosmiconfig-typescript-loader@5.0.0(@types/node@22.5.4)(cosmiconfig@9.0.0(typescript@5.5.4))(typescript@5.5.4):
dependencies: dependencies:
'@types/node': 22.5.3 '@types/node': 22.5.4
cosmiconfig: 9.0.0(typescript@5.5.4) cosmiconfig: 9.0.0(typescript@5.5.4)
jiti: 1.21.6 jiti: 1.21.6
typescript: 5.5.4 typescript: 5.5.4
@@ -10566,9 +10553,9 @@ snapshots:
functions-have-names@1.2.3: {} functions-have-names@1.2.3: {}
generouted@1.19.6(vite@5.4.3(@types/node@22.5.3)(less@4.2.0)(sass@1.78.0)(stylus@0.62.0)): generouted@1.19.6(vite@5.4.3(@types/node@22.5.4)(less@4.2.0)(sass@1.78.0)(stylus@0.62.0)):
dependencies: dependencies:
vite: 5.4.3(@types/node@22.5.3)(less@4.2.0)(sass@1.78.0)(stylus@0.62.0) vite: 5.4.3(@types/node@22.5.4)(less@4.2.0)(sass@1.78.0)(stylus@0.62.0)
gensync@1.0.0-beta.2: {} gensync@1.0.0-beta.2: {}
@@ -11179,11 +11166,11 @@ snapshots:
kind-of@6.0.3: {} kind-of@6.0.3: {}
knip@5.29.2(@types/node@22.5.3)(typescript@5.5.4): knip@5.29.2(@types/node@22.5.4)(typescript@5.5.4):
dependencies: dependencies:
'@nodelib/fs.walk': 1.2.8 '@nodelib/fs.walk': 1.2.8
'@snyk/github-codeowners': 1.1.0 '@snyk/github-codeowners': 1.1.0
'@types/node': 22.5.3 '@types/node': 22.5.4
easy-table: 1.2.0 easy-table: 1.2.0
enhanced-resolve: 5.17.1 enhanced-resolve: 5.17.1
fast-glob: 3.3.2 fast-glob: 3.3.2
@@ -11356,7 +11343,7 @@ snapshots:
escape-string-regexp: 4.0.0 escape-string-regexp: 4.0.0
optional: true optional: true
material-react-table@2.13.2(px6672jbssk23ndlae6ak2yfga): material-react-table@2.13.3(px6672jbssk23ndlae6ak2yfga):
dependencies: dependencies:
'@emotion/react': 11.13.3(react@19.0.0-rc-e948a5ac-20240807)(types-react@19.0.0-rc.1) '@emotion/react': 11.13.3(react@19.0.0-rc-e948a5ac-20240807)(types-react@19.0.0-rc.1)
'@emotion/styled': 11.13.0(@emotion/react@11.13.3(react@19.0.0-rc-e948a5ac-20240807)(types-react@19.0.0-rc.1))(react@19.0.0-rc-e948a5ac-20240807)(types-react@19.0.0-rc.1) '@emotion/styled': 11.13.0(@emotion/react@11.13.3(react@19.0.0-rc-e948a5ac-20240807)(types-react@19.0.0-rc.1))(react@19.0.0-rc-e948a5ac-20240807)(types-react@19.0.0-rc.1)
@@ -11907,6 +11894,8 @@ snapshots:
registry-url: 3.1.0 registry-url: 3.1.0
semver: 5.7.2 semver: 5.7.2
package-manager-detector@0.2.0: {}
pako@2.1.0: {} pako@2.1.0: {}
parent-module@1.0.1: parent-module@1.0.1:
@@ -12599,9 +12588,9 @@ snapshots:
shell-quote@1.8.1: {} shell-quote@1.8.1: {}
shiki@1.16.1: shiki@1.16.2:
dependencies: dependencies:
'@shikijs/core': 1.16.1 '@shikijs/core': 1.16.2
'@shikijs/vscode-textmate': 9.2.0 '@shikijs/vscode-textmate': 9.2.0
'@types/hast': 3.0.4 '@types/hast': 3.0.4
@@ -13072,6 +13061,8 @@ snapshots:
timed-out@4.0.1: {} timed-out@4.0.1: {}
tinyexec@0.3.0: {}
to-fast-properties@2.0.0: {} to-fast-properties@2.0.0: {}
to-regex-range@5.0.1: to-regex-range@5.0.1:
@@ -13126,8 +13117,6 @@ snapshots:
dependencies: dependencies:
prelude-ls: 1.2.1 prelude-ls: 1.2.1
type-detect@4.1.0: {}
type-fest@0.13.1: type-fest@0.13.1:
optional: true optional: true
@@ -13308,9 +13297,9 @@ snapshots:
transitivePeerDependencies: transitivePeerDependencies:
- rollup - rollup
unplugin-icons@0.19.2(@svgr/core@8.1.0(typescript@5.5.4)): unplugin-icons@0.19.3(@svgr/core@8.1.0(typescript@5.5.4)):
dependencies: dependencies:
'@antfu/install-pkg': 0.3.3 '@antfu/install-pkg': 0.4.1
'@antfu/utils': 0.7.10 '@antfu/utils': 0.7.10
'@iconify/utils': 2.1.29 '@iconify/utils': 2.1.29
debug: 4.3.6 debug: 4.3.6
@@ -13396,9 +13385,9 @@ snapshots:
react: 19.0.0-rc-e948a5ac-20240807 react: 19.0.0-rc-e948a5ac-20240807
react-dom: 19.0.0-rc-e948a5ac-20240807(react@19.0.0-rc-e948a5ac-20240807) react-dom: 19.0.0-rc-e948a5ac-20240807(react@19.0.0-rc-e948a5ac-20240807)
vite-plugin-dts@4.1.0(@types/node@22.5.3)(rollup@4.21.0)(typescript@5.5.4)(vite@5.4.3(@types/node@22.5.3)(less@4.2.0)(sass@1.78.0)(stylus@0.62.0)): vite-plugin-dts@4.1.0(@types/node@22.5.4)(rollup@4.21.0)(typescript@5.5.4)(vite@5.4.3(@types/node@22.5.4)(less@4.2.0)(sass@1.78.0)(stylus@0.62.0)):
dependencies: dependencies:
'@microsoft/api-extractor': 7.47.4(@types/node@22.5.3) '@microsoft/api-extractor': 7.47.4(@types/node@22.5.4)
'@rollup/pluginutils': 5.1.0(rollup@4.21.0) '@rollup/pluginutils': 5.1.0(rollup@4.21.0)
'@volar/typescript': 2.4.0 '@volar/typescript': 2.4.0
'@vue/language-core': 2.0.29(typescript@5.5.4) '@vue/language-core': 2.0.29(typescript@5.5.4)
@@ -13410,7 +13399,7 @@ snapshots:
typescript: 5.5.4 typescript: 5.5.4
vue-tsc: 2.0.29(typescript@5.5.4) vue-tsc: 2.0.29(typescript@5.5.4)
optionalDependencies: optionalDependencies:
vite: 5.4.3(@types/node@22.5.3)(less@4.2.0)(sass@1.78.0)(stylus@0.62.0) vite: 5.4.3(@types/node@22.5.4)(less@4.2.0)(sass@1.78.0)(stylus@0.62.0)
transitivePeerDependencies: transitivePeerDependencies:
- '@types/node' - '@types/node'
- rollup - rollup
@@ -13421,43 +13410,43 @@ snapshots:
esbuild: 0.19.12 esbuild: 0.19.12
monaco-editor: 0.51.0 monaco-editor: 0.51.0
vite-plugin-sass-dts@1.3.25(postcss@8.4.45)(prettier@3.3.3)(sass@1.78.0)(vite@5.4.3(@types/node@22.5.3)(less@4.2.0)(sass@1.78.0)(stylus@0.62.0)): vite-plugin-sass-dts@1.3.25(postcss@8.4.45)(prettier@3.3.3)(sass@1.78.0)(vite@5.4.3(@types/node@22.5.4)(less@4.2.0)(sass@1.78.0)(stylus@0.62.0)):
dependencies: dependencies:
postcss: 8.4.45 postcss: 8.4.45
postcss-js: 4.0.1(postcss@8.4.45) postcss-js: 4.0.1(postcss@8.4.45)
prettier: 3.3.3 prettier: 3.3.3
sass: 1.78.0 sass: 1.78.0
vite: 5.4.3(@types/node@22.5.3)(less@4.2.0)(sass@1.78.0)(stylus@0.62.0) vite: 5.4.3(@types/node@22.5.4)(less@4.2.0)(sass@1.78.0)(stylus@0.62.0)
vite-plugin-svgr@4.2.0(rollup@4.21.0)(typescript@5.5.4)(vite@5.4.3(@types/node@22.5.3)(less@4.2.0)(sass@1.78.0)(stylus@0.62.0)): vite-plugin-svgr@4.2.0(rollup@4.21.0)(typescript@5.5.4)(vite@5.4.3(@types/node@22.5.4)(less@4.2.0)(sass@1.78.0)(stylus@0.62.0)):
dependencies: dependencies:
'@rollup/pluginutils': 5.1.0(rollup@4.21.0) '@rollup/pluginutils': 5.1.0(rollup@4.21.0)
'@svgr/core': 8.1.0(typescript@5.5.4) '@svgr/core': 8.1.0(typescript@5.5.4)
'@svgr/plugin-jsx': 8.1.0(@svgr/core@8.1.0(typescript@5.5.4)) '@svgr/plugin-jsx': 8.1.0(@svgr/core@8.1.0(typescript@5.5.4))
vite: 5.4.3(@types/node@22.5.3)(less@4.2.0)(sass@1.78.0)(stylus@0.62.0) vite: 5.4.3(@types/node@22.5.4)(less@4.2.0)(sass@1.78.0)(stylus@0.62.0)
transitivePeerDependencies: transitivePeerDependencies:
- rollup - rollup
- supports-color - supports-color
- typescript - typescript
vite-tsconfig-paths@5.0.1(typescript@5.5.4)(vite@5.4.3(@types/node@22.5.3)(less@4.2.0)(sass@1.78.0)(stylus@0.62.0)): vite-tsconfig-paths@5.0.1(typescript@5.5.4)(vite@5.4.3(@types/node@22.5.4)(less@4.2.0)(sass@1.78.0)(stylus@0.62.0)):
dependencies: dependencies:
debug: 4.3.6 debug: 4.3.6
globrex: 0.1.2 globrex: 0.1.2
tsconfck: 3.0.3(typescript@5.5.4) tsconfck: 3.0.3(typescript@5.5.4)
optionalDependencies: optionalDependencies:
vite: 5.4.3(@types/node@22.5.3)(less@4.2.0)(sass@1.78.0)(stylus@0.62.0) vite: 5.4.3(@types/node@22.5.4)(less@4.2.0)(sass@1.78.0)(stylus@0.62.0)
transitivePeerDependencies: transitivePeerDependencies:
- supports-color - supports-color
- typescript - typescript
vite@5.4.3(@types/node@22.5.3)(less@4.2.0)(sass@1.78.0)(stylus@0.62.0): vite@5.4.3(@types/node@22.5.4)(less@4.2.0)(sass@1.78.0)(stylus@0.62.0):
dependencies: dependencies:
esbuild: 0.21.5 esbuild: 0.21.5
postcss: 8.4.44 postcss: 8.4.44
rollup: 4.21.0 rollup: 4.21.0
optionalDependencies: optionalDependencies:
'@types/node': 22.5.3 '@types/node': 22.5.4
fsevents: 2.3.3 fsevents: 2.3.3
less: 4.2.0 less: 4.2.0
sass: 1.78.0 sass: 1.78.0

View File

@@ -24,7 +24,6 @@ PKG_CONFIG_DEPENDS:= CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_binary
define Package/luci-app-adguardhome/conffiles define Package/luci-app-adguardhome/conffiles
/usr/share/AdGuardHome/links.txt /usr/share/AdGuardHome/links.txt
/etc/config/AdGuardHome /etc/config/AdGuardHome
/etc/AdGuardHome.yaml
endef endef
define Package/luci-app-adguardhome/postinst define Package/luci-app-adguardhome/postinst

View File

@@ -796,7 +796,7 @@ add_firewall_rule() {
# 过滤所有节点IP # 过滤所有节点IP
filter_vpsip > /dev/null 2>&1 & filter_vpsip > /dev/null 2>&1 &
filter_haproxy > /dev/null 2>&1 & # filter_haproxy > /dev/null 2>&1 &
accept_icmp=$(config_t_get global_forwarding accept_icmp 0) accept_icmp=$(config_t_get global_forwarding accept_icmp 0)
accept_icmpv6=$(config_t_get global_forwarding accept_icmpv6 0) accept_icmpv6=$(config_t_get global_forwarding accept_icmpv6 0)

View File

@@ -858,7 +858,7 @@ add_firewall_rule() {
# 过滤所有节点IP # 过滤所有节点IP
filter_vpsip > /dev/null 2>&1 & filter_vpsip > /dev/null 2>&1 &
filter_haproxy > /dev/null 2>&1 & # filter_haproxy > /dev/null 2>&1 &
# Prevent some conditions # Prevent some conditions
filter_vps_addr $(config_n_get $TCP_NODE address) $(config_n_get $UDP_NODE address) > /dev/null 2>&1 & filter_vps_addr $(config_n_get $TCP_NODE address) $(config_n_get $UDP_NODE address) > /dev/null 2>&1 &

File diff suppressed because it is too large Load Diff

View File

@@ -161,7 +161,7 @@ tokio-rustls = { version = "0.26", optional = true, default-features = false, fe
"tls12", "tls12",
"ring", "ring",
] } ] }
rustls-native-certs = { version = "0.7", optional = true } rustls-native-certs = { version = "0.8", optional = true }
async-trait = "0.1" async-trait = "0.1"
socket2 = { version = "0.5", features = ["all"] } socket2 = { version = "0.5", features = ["all"] }
@@ -186,7 +186,7 @@ flate2 = { version = "1.0", optional = true }
brotli = { version = "6.0", optional = true } brotli = { version = "6.0", optional = true }
zstd = { version = "0.13", optional = true } zstd = { version = "0.13", optional = true }
tun2 = { version = "2.0.8", optional = true, default-features = false, features = [ tun2 = { version = "3.1.0", optional = true, default-features = false, features = [
"async", "async",
] } ] }
etherparse = { version = "0.15", optional = true } etherparse = { version = "0.15", optional = true }

View File

@@ -62,6 +62,7 @@ impl ProxyHttpStream {
pub async fn connect_https(stream: AutoProxyClientStream, domain: &str) -> io::Result<ProxyHttpStream> { pub async fn connect_https(stream: AutoProxyClientStream, domain: &str) -> io::Result<ProxyHttpStream> {
use log::warn; use log::warn;
use once_cell::sync::Lazy; use once_cell::sync::Lazy;
use rustls_native_certs::CertificateResult;
use std::sync::Arc; use std::sync::Arc;
use tokio_rustls::{ use tokio_rustls::{
rustls::{pki_types::ServerName, ClientConfig, RootCertStore}, rustls::{pki_types::ServerName, ClientConfig, RootCertStore},
@@ -75,13 +76,18 @@ impl ProxyHttpStream {
let mut store = RootCertStore::empty(); let mut store = RootCertStore::empty();
store.extend(webpki_roots::TLS_SERVER_ROOTS.iter().cloned()); store.extend(webpki_roots::TLS_SERVER_ROOTS.iter().cloned());
if let Ok(certs) = rustls_native_certs::load_native_certs() { let CertificateResult { certs, errors, .. } = rustls_native_certs::load_native_certs();
if !errors.is_empty() {
for error in errors {
warn!("failed to load cert (native), error: {}", error);
}
}
for cert in certs { for cert in certs {
if let Err(err) = store.add(cert) { if let Err(err) = store.add(cert) {
warn!("failed to add cert (native), error: {}", err); warn!("failed to add cert (native), error: {}", err);
} }
} }
}
store store
}) })

View File

@@ -3,6 +3,7 @@
use std::{ use std::{
io::{self, Read, Write}, io::{self, Read, Write},
net::IpAddr, net::IpAddr,
ops::{Deref, DerefMut},
pin::Pin, pin::Pin,
task::{Context, Poll}, task::{Context, Poll},
}; };
@@ -118,6 +119,20 @@ impl AsMut<FakeDevice> for AsyncDevice {
} }
} }
impl Deref for AsyncDevice {
type Target = FakeDevice;
fn deref(&self) -> &Self::Target {
&self.0
}
}
impl DerefMut for AsyncDevice {
fn deref_mut(&mut self) -> &mut Self::Target {
&mut self.0
}
}
impl AsyncRead for AsyncDevice { impl AsyncRead for AsyncDevice {
fn poll_read(self: Pin<&mut Self>, _cx: &mut Context<'_>, _buf: &mut ReadBuf<'_>) -> Poll<io::Result<()>> { fn poll_read(self: Pin<&mut Self>, _cx: &mut Context<'_>, _buf: &mut ReadBuf<'_>) -> Poll<io::Result<()>> {
Err(io::Error::new(io::ErrorKind::Other, "not implemented")).into() Err(io::Error::new(io::ErrorKind::Other, "not implemented")).into()

View File

@@ -128,11 +128,7 @@ impl TunBuilder {
self.udp_capacity, self.udp_capacity,
); );
let tcp = TcpTun::new( let tcp = TcpTun::new(self.context, self.balancer, device.mtu().unwrap_or(1500) as u32);
self.context,
self.balancer,
device.as_ref().mtu().unwrap_or(1500) as u32,
);
Ok(Tun { Ok(Tun {
device, device,
@@ -160,15 +156,11 @@ impl Tun {
pub async fn run(mut self) -> io::Result<()> { pub async fn run(mut self) -> io::Result<()> {
info!( info!(
"shadowsocks tun device {}, mode {}", "shadowsocks tun device {}, mode {}",
self.device self.device.tun_name().or_else(|r| Ok::<_, ()>(r.to_string())).unwrap(),
.as_ref()
.tun_name()
.or_else(|r| Ok::<_, ()>(r.to_string()))
.unwrap(),
self.mode, self.mode,
); );
let address = match self.device.as_ref().address() { let address = match self.device.address() {
Ok(a) => a, Ok(a) => a,
Err(err) => { Err(err) => {
error!("[TUN] failed to get device address, error: {}", err); error!("[TUN] failed to get device address, error: {}", err);
@@ -176,7 +168,7 @@ impl Tun {
} }
}; };
let netmask = match self.device.as_ref().netmask() { let netmask = match self.device.netmask() {
Ok(n) => n, Ok(n) => n,
Err(err) => { Err(err) => {
error!("[TUN] failed to get device netmask, error: {}", err); error!("[TUN] failed to get device netmask, error: {}", err);

View File

@@ -796,7 +796,7 @@ add_firewall_rule() {
# 过滤所有节点IP # 过滤所有节点IP
filter_vpsip > /dev/null 2>&1 & filter_vpsip > /dev/null 2>&1 &
filter_haproxy > /dev/null 2>&1 & # filter_haproxy > /dev/null 2>&1 &
accept_icmp=$(config_t_get global_forwarding accept_icmp 0) accept_icmp=$(config_t_get global_forwarding accept_icmp 0)
accept_icmpv6=$(config_t_get global_forwarding accept_icmpv6 0) accept_icmpv6=$(config_t_get global_forwarding accept_icmpv6 0)

View File

@@ -858,7 +858,7 @@ add_firewall_rule() {
# 过滤所有节点IP # 过滤所有节点IP
filter_vpsip > /dev/null 2>&1 & filter_vpsip > /dev/null 2>&1 &
filter_haproxy > /dev/null 2>&1 & # filter_haproxy > /dev/null 2>&1 &
# Prevent some conditions # Prevent some conditions
filter_vps_addr $(config_n_get $TCP_NODE address) $(config_n_get $UDP_NODE address) > /dev/null 2>&1 & filter_vps_addr $(config_n_get $TCP_NODE address) $(config_n_get $UDP_NODE address) > /dev/null 2>&1 &

View File

@@ -12,22 +12,22 @@ PKG_MAINTAINER:=Tianling Shen <cnsztl@immortalwrt.org>
include $(INCLUDE_DIR)/package.mk include $(INCLUDE_DIR)/package.mk
GEOIP_VER:=202408310351 GEOIP_VER:=202409050049
GEOIP_FILE:=geoip.dat.$(GEOIP_VER) GEOIP_FILE:=geoip.dat.$(GEOIP_VER)
define Download/geoip define Download/geoip
URL:=https://github.com/v2fly/geoip/releases/download/$(GEOIP_VER)/ URL:=https://github.com/v2fly/geoip/releases/download/$(GEOIP_VER)/
URL_FILE:=geoip.dat URL_FILE:=geoip.dat
FILE:=$(GEOIP_FILE) FILE:=$(GEOIP_FILE)
HASH:=3b95b24108334c0a9f1f6480159437e7ce128bf45483469b534eea484ad7de8e HASH:=944465ad5f3a3cccebf2930624f528cae3ca054f69295979cf4c4e002a575e90
endef endef
GEOSITE_VER:=20240903080831 GEOSITE_VER:=20240905094227
GEOSITE_FILE:=dlc.dat.$(GEOSITE_VER) GEOSITE_FILE:=dlc.dat.$(GEOSITE_VER)
define Download/geosite define Download/geosite
URL:=https://github.com/v2fly/domain-list-community/releases/download/$(GEOSITE_VER)/ URL:=https://github.com/v2fly/domain-list-community/releases/download/$(GEOSITE_VER)/
URL_FILE:=dlc.dat URL_FILE:=dlc.dat
FILE:=$(GEOSITE_FILE) FILE:=$(GEOSITE_FILE)
HASH:=6a6a39a121a59efaf6bb7a3dd304266df0b4f8b470a84fc9614299f228ff4c2a HASH:=8edb9186aea5ef40b310f29b89bcf2be67ea65b04c010b4cdb9ddb02408557f0
endef endef
GEOSITE_IRAN_VER:=202409020032 GEOSITE_IRAN_VER:=202409020032

View File

@@ -1250,7 +1250,7 @@ namespace ServiceLib.Handler.CoreConfig
private int GenExperimental(SingboxConfig singboxConfig) private int GenExperimental(SingboxConfig singboxConfig)
{ {
if (_config.guiItem.enableStatistics) //if (_config.guiItem.enableStatistics)
{ {
singboxConfig.experimental ??= new Experimental4Sbox(); singboxConfig.experimental ??= new Experimental4Sbox();
singboxConfig.experimental.clash_api = new Clash_Api4Sbox() singboxConfig.experimental.clash_api = new Clash_Api4Sbox()

View File

@@ -22,13 +22,13 @@ namespace ServiceLib.Handler
MessageBus.Current.SendMessage(content, Global.CommandSendMsgView); MessageBus.Current.SendMessage(content, Global.CommandSendMsgView);
} }
public void SendMessage(string? content, bool time) public void SendMessageEx(string? content )
{ {
if (content.IsNullOrEmpty()) if (content.IsNullOrEmpty())
{ {
return; return;
} }
content = $"{DateTime.Now.ToString("yyyy/MM/dd HH:mm:ss")} {content}"; content = $"{DateTime.Now:yyyy/MM/dd HH:mm:ss} {content}";
SendMessage(content); SendMessage(content);
} }

View File

@@ -61,7 +61,7 @@
{ {
if ((dtNow - autoUpdateGeoTime).Hours % config.guiItem.autoUpdateInterval == 0) if ((dtNow - autoUpdateGeoTime).Hours % config.guiItem.autoUpdateInterval == 0)
{ {
updateHandle.UpdateGeoFileAll(config, (bool success, string msg) => await updateHandle.UpdateGeoFileAll(config, (bool success, string msg) =>
{ {
update(false, msg); update(false, msg);
}); });

View File

@@ -135,7 +135,7 @@ namespace ServiceLib.ViewModels
private void UpdateHandler(bool notify, string msg) private void UpdateHandler(bool notify, string msg)
{ {
_noticeHandler?.SendMessage(msg, true); _noticeHandler?.SendMessageEx(msg);
} }
public void ProxiesReload() public void ProxiesReload()

View File

@@ -71,13 +71,6 @@ namespace ServiceLib.ViewModels
public ReactiveCommand<Unit, Unit> ClearServerStatisticsCmd { get; } public ReactiveCommand<Unit, Unit> ClearServerStatisticsCmd { get; }
public ReactiveCommand<Unit, Unit> OpenTheFileLocationCmd { get; } public ReactiveCommand<Unit, Unit> OpenTheFileLocationCmd { get; }
//CheckUpdate
public ReactiveCommand<Unit, Unit> CheckUpdateNCmd { get; }
public ReactiveCommand<Unit, Unit> CheckUpdateXrayCoreCmd { get; }
public ReactiveCommand<Unit, Unit> CheckUpdateClashMetaCoreCmd { get; }
public ReactiveCommand<Unit, Unit> CheckUpdateSingBoxCoreCmd { get; }
public ReactiveCommand<Unit, Unit> CheckUpdateGeoCmd { get; }
public ReactiveCommand<Unit, Unit> ReloadCmd { get; } public ReactiveCommand<Unit, Unit> ReloadCmd { get; }
[Reactive] [Reactive]
@@ -295,28 +288,6 @@ namespace ServiceLib.ViewModels
Utils.ProcessStart("Explorer", $"/select,{Utils.GetConfigPath()}"); Utils.ProcessStart("Explorer", $"/select,{Utils.GetConfigPath()}");
}); });
//CheckUpdate
CheckUpdateNCmd = ReactiveCommand.Create(() =>
{
CheckUpdateN();
});
CheckUpdateXrayCoreCmd = ReactiveCommand.Create(() =>
{
CheckUpdateCore(ECoreType.Xray, null);
});
CheckUpdateClashMetaCoreCmd = ReactiveCommand.Create(() =>
{
CheckUpdateCore(ECoreType.mihomo, false);
});
CheckUpdateSingBoxCoreCmd = ReactiveCommand.Create(() =>
{
CheckUpdateCore(ECoreType.sing_box, null);
});
CheckUpdateGeoCmd = ReactiveCommand.Create(() =>
{
CheckUpdateGeo();
});
ReloadCmd = ReactiveCommand.Create(() => ReloadCmd = ReactiveCommand.Create(() =>
{ {
Reload(); Reload();
@@ -391,7 +362,7 @@ namespace ServiceLib.ViewModels
private void UpdateTaskHandler(bool success, string msg) private void UpdateTaskHandler(bool success, string msg)
{ {
_noticeHandler?.SendMessage(msg); _noticeHandler?.SendMessageEx(msg);
if (success) if (success)
{ {
var indexIdOld = _config.indexId; var indexIdOld = _config.indexId;
@@ -631,7 +602,7 @@ namespace ServiceLib.ViewModels
} }
(new UpdateHandler()).RunAvailabilityCheck(async (bool success, string msg) => (new UpdateHandler()).RunAvailabilityCheck(async (bool success, string msg) =>
{ {
_noticeHandler?.SendMessage(msg, true); _noticeHandler?.SendMessageEx(msg);
if (!_config.uiItem.showInTaskbar) if (!_config.uiItem.showInTaskbar)
{ {
@@ -718,99 +689,6 @@ namespace ServiceLib.ViewModels
#endregion Setting #endregion Setting
#region CheckUpdate
private void CheckUpdateN()
{
//Check for standalone windows .Net version
if (Utils.IsWindows()
&& File.Exists(Path.Combine(Utils.StartupPath(), "wpfgfx_cor3.dll"))
&& File.Exists(Path.Combine(Utils.StartupPath(), "D3DCompiler_47_cor3.dll"))
)
{
_noticeHandler?.SendMessageAndEnqueue(ResUI.UpdateStandalonePackageTip);
return;
}
void _updateUI(bool success, string msg)
{
_noticeHandler?.SendMessage(msg);
if (success)
{
try
{
var fileName = msg;
Process process = new()
{
StartInfo = new ProcessStartInfo
{
FileName = "v2rayUpgrade",
Arguments = fileName.AppendQuotes(),
WorkingDirectory = Utils.StartupPath()
}
};
process.Start();
if (process.Id > 0)
{
MyAppExitAsync(false);
}
}
catch (Exception ex)
{
_noticeHandler?.SendMessage(ex.Message);
}
}
}
(new UpdateHandler()).CheckUpdateGuiN(_config, _updateUI, _config.guiItem.checkPreReleaseUpdate);
}
private void CheckUpdateCore(ECoreType type, bool? preRelease)
{
void _updateUI(bool success, string msg)
{
_noticeHandler?.SendMessage(msg);
if (success)
{
CloseCore();
string fileName = Utils.GetTempPath(Utils.GetDownloadFileName(msg));
string toPath = Utils.GetBinPath("", type.ToString());
if (fileName.Contains(".tar.gz"))
{
//It's too complicated to unzip. TODO
}
else if (fileName.Contains(".gz"))
{
FileManager.UncompressedFile(fileName, toPath, type.ToString());
}
else
{
FileManager.ZipExtractToFile(fileName, toPath, _config.guiItem.ignoreGeoUpdateCore ? "geo" : "");
}
_noticeHandler?.SendMessage(ResUI.MsgUpdateV2rayCoreSuccessfullyMore);
Reload();
_noticeHandler?.SendMessage(ResUI.MsgUpdateV2rayCoreSuccessfully);
if (File.Exists(fileName))
{
File.Delete(fileName);
}
}
}
(new UpdateHandler()).CheckUpdateCore(type, _config, _updateUI, preRelease ?? _config.guiItem.checkPreReleaseUpdate);
}
private void CheckUpdateGeo()
{
(new UpdateHandler()).UpdateGeoFileAll(_config, UpdateTaskHandler);
}
#endregion CheckUpdate
#region core job #region core job
public void Reload() public void Reload()
@@ -881,7 +759,7 @@ namespace ServiceLib.ViewModels
private async Task ChangeSystemProxyStatusAsync(ESysProxyType type, bool blChange) private async Task ChangeSystemProxyStatusAsync(ESysProxyType type, bool blChange)
{ {
await _updateView?.Invoke(EViewAction.UpdateSysProxy, _config.tunModeItem.enableTun ? true : false); await _updateView?.Invoke(EViewAction.UpdateSysProxy, _config.tunModeItem.enableTun ? true : false);
_noticeHandler?.SendMessage($"{ResUI.TipChangeSystemProxy} - {_config.systemProxyItem.sysProxyType.ToString()}", true); _noticeHandler?.SendMessageEx($"{ResUI.TipChangeSystemProxy} - {_config.systemProxyItem.sysProxyType.ToString()}");
BlSystemProxyClear = (type == ESysProxyType.ForcedClear); BlSystemProxyClear = (type == ESysProxyType.ForcedClear);
BlSystemProxySet = (type == ESysProxyType.ForcedChange); BlSystemProxySet = (type == ESysProxyType.ForcedChange);
@@ -941,7 +819,7 @@ namespace ServiceLib.ViewModels
if (ConfigHandler.SetDefaultRouting(_config, item) == 0) if (ConfigHandler.SetDefaultRouting(_config, item) == 0)
{ {
_noticeHandler?.SendMessage(ResUI.TipChangeRouting, true); _noticeHandler?.SendMessageEx(ResUI.TipChangeRouting);
Reload(); Reload();
await _updateView?.Invoke(EViewAction.DispatcherRefreshIcon, null); await _updateView?.Invoke(EViewAction.DispatcherRefreshIcon, null);
} }

View File

@@ -258,7 +258,7 @@ namespace ServiceLib.ViewModels
{ {
if (Utils.IsNullOrEmpty(result.IndexId)) if (Utils.IsNullOrEmpty(result.IndexId))
{ {
_noticeHandler?.SendMessage(result.Delay, true); _noticeHandler?.SendMessageEx(result.Delay);
_noticeHandler?.Enqueue(result.Delay); _noticeHandler?.Enqueue(result.Delay);
return; return;
} }

View File

@@ -0,0 +1,96 @@
<UserControl
x:Class="v2rayN.Desktop.Views.CheckUpdateView"
xmlns="https://github.com/avaloniaui"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:resx="clr-namespace:ServiceLib.Resx;assembly=ServiceLib"
xmlns:vms="clr-namespace:ServiceLib.ViewModels;assembly=ServiceLib"
d:DesignHeight="450"
d:DesignWidth="800"
x:DataType="vms:CheckUpdateViewModel"
mc:Ignorable="d">
<Button Classes="Tertiary">
<Button.Content>
<TextBlock Text="{x:Static resx:ResUI.menuCheckUpdate}" />
</Button.Content>
<Button.Flyout>
<Flyout Placement="RightEdgeAlignedTop">
<DockPanel Margin="16">
<StackPanel
HorizontalAlignment="Right"
Classes="Margin8"
DockPanel.Dock="Bottom"
Orientation="Horizontal">
<TextBlock
HorizontalAlignment="Left"
VerticalAlignment="Center"
Classes="Margin8"
Text="{x:Static resx:ResUI.TbSettingsEnableCheckPreReleaseUpdate}" />
<ToggleSwitch
x:Name="togEnableCheckPreReleaseUpdate"
HorizontalAlignment="Left"
Classes="Margin8" />
<Button
x:Name="btnCheckUpdate"
Width="100"
Classes="Margin8"
Content="{x:Static resx:ResUI.menuCheckUpdate}" />
</StackPanel>
<StackPanel>
<ListBox
x:Name="lstCheckUpdates"
BorderThickness="1"
ItemsSource="{Binding CheckUpdateItems}">
<ItemsControl.ItemsPanel>
<ItemsPanelTemplate>
<StackPanel Orientation="Vertical" />
</ItemsPanelTemplate>
</ItemsControl.ItemsPanel>
<ItemsControl.ItemTemplate>
<DataTemplate>
<Border
Width="500"
Height="80"
Margin="0"
VerticalAlignment="Center"
Theme="{StaticResource CardBorder}">
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="1*" />
<ColumnDefinition Width="1*" />
<ColumnDefinition Width="3*" />
</Grid.ColumnDefinitions>
<ToggleSwitch
x:Name="togAutoRefresh"
Grid.Column="0"
Margin="8"
HorizontalAlignment="Left"
VerticalAlignment="Center"
IsChecked="{Binding isSelected}" />
<TextBlock
Grid.Column="1"
VerticalAlignment="Center"
Text="{Binding coreType}" />
<TextBlock
Grid.Column="2"
VerticalAlignment="Center"
Text="{Binding remarks}"
TextWrapping="WrapWithOverflow" />
</Grid>
</Border>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ListBox>
</StackPanel>
</DockPanel>
</Flyout>
</Button.Flyout>
</Button>
</UserControl>

View File

@@ -0,0 +1,48 @@
using Avalonia.ReactiveUI;
using Avalonia.Threading;
using ReactiveUI;
using System.Reactive.Disposables;
namespace v2rayN.Desktop.Views
{
public partial class CheckUpdateView : ReactiveUserControl<CheckUpdateViewModel>
{
public CheckUpdateView()
{
InitializeComponent();
ViewModel = new CheckUpdateViewModel(UpdateViewHandler);
this.WhenActivated(disposables =>
{
this.OneWayBind(ViewModel, vm => vm.CheckUpdateItems, v => v.lstCheckUpdates.ItemsSource).DisposeWith(disposables);
this.Bind(ViewModel, vm => vm.EnableCheckPreReleaseUpdate, v => v.togEnableCheckPreReleaseUpdate.IsChecked).DisposeWith(disposables);
this.BindCommand(ViewModel, vm => vm.CheckUpdateCmd, v => v.btnCheckUpdate).DisposeWith(disposables);
this.OneWayBind(ViewModel, vm => vm.IsCheckUpdate, v => v.btnCheckUpdate.IsEnabled).DisposeWith(disposables);
});
}
private async Task<bool> UpdateViewHandler(EViewAction action, object? obj)
{
switch (action)
{
case EViewAction.DispatcherCheckUpdate:
if (obj is null) return false;
Dispatcher.UIThread.Post(() =>
ViewModel?.UpdateViewResult((CheckUpdateItem)obj),
DispatcherPriority.Default);
break;
case EViewAction.DispatcherCheckUpdateFinished:
if (obj is null) return false;
Dispatcher.UIThread.Post(() =>
ViewModel?.UpdateFinishedResult((bool)obj),
DispatcherPriority.Default);
break;
}
return await Task.FromResult(true);
}
}
}

View File

@@ -104,7 +104,7 @@
<DataTemplate> <DataTemplate>
<Border <Border
Width="160" Width="160"
Margin="4,0" Margin="0"
Padding="0" Padding="0"
Theme="{StaticResource CardBorder}"> Theme="{StaticResource CardBorder}">
<DockPanel> <DockPanel>

View File

@@ -87,16 +87,8 @@
<MenuItem Padding="8,0"> <MenuItem Padding="8,0">
<MenuItem.Header> <MenuItem.Header>
<StackPanel Orientation="Horizontal"> <ContentControl x:Name="conCheckUpdate" />
<TextBlock Text="{x:Static resx:ResUI.menuCheckUpdate}" />
</StackPanel>
</MenuItem.Header> </MenuItem.Header>
<MenuItem x:Name="menuCheckUpdateN" Header="V2rayN" />
<MenuItem x:Name="menuCheckUpdateXrayCore" Header="Xray Core" />
<MenuItem x:Name="menuCheckUpdateMihomoCore" Header="Mihomo Core" />
<MenuItem x:Name="menuCheckUpdateSingBoxCore" Header="Sing-box Core" />
<Separator />
<MenuItem x:Name="menuCheckUpdateGeo" Header="Geo files" />
</MenuItem> </MenuItem>
<MenuItem x:Name="menuHelp" Padding="8,0"> <MenuItem x:Name="menuHelp" Padding="8,0">

View File

@@ -72,12 +72,6 @@ namespace v2rayN.Desktop.Views
this.BindCommand(ViewModel, vm => vm.ClearServerStatisticsCmd, v => v.menuClearServerStatistics).DisposeWith(disposables); this.BindCommand(ViewModel, vm => vm.ClearServerStatisticsCmd, v => v.menuClearServerStatistics).DisposeWith(disposables);
this.BindCommand(ViewModel, vm => vm.OpenTheFileLocationCmd, v => v.menuOpenTheFileLocation).DisposeWith(disposables); this.BindCommand(ViewModel, vm => vm.OpenTheFileLocationCmd, v => v.menuOpenTheFileLocation).DisposeWith(disposables);
//check update
this.BindCommand(ViewModel, vm => vm.CheckUpdateNCmd, v => v.menuCheckUpdateN).DisposeWith(disposables);
this.BindCommand(ViewModel, vm => vm.CheckUpdateXrayCoreCmd, v => v.menuCheckUpdateXrayCore).DisposeWith(disposables);
this.BindCommand(ViewModel, vm => vm.CheckUpdateClashMetaCoreCmd, v => v.menuCheckUpdateMihomoCore).DisposeWith(disposables);
this.BindCommand(ViewModel, vm => vm.CheckUpdateSingBoxCoreCmd, v => v.menuCheckUpdateSingBoxCore).DisposeWith(disposables);
this.BindCommand(ViewModel, vm => vm.CheckUpdateGeoCmd, v => v.menuCheckUpdateGeo).DisposeWith(disposables);
this.BindCommand(ViewModel, vm => vm.ReloadCmd, v => v.menuReload).DisposeWith(disposables); this.BindCommand(ViewModel, vm => vm.ReloadCmd, v => v.menuReload).DisposeWith(disposables);
this.OneWayBind(ViewModel, vm => vm.BlReloadEnabled, v => v.menuReload.IsEnabled).DisposeWith(disposables); this.OneWayBind(ViewModel, vm => vm.BlReloadEnabled, v => v.menuReload.IsEnabled).DisposeWith(disposables);
@@ -172,6 +166,7 @@ namespace v2rayN.Desktop.Views
tabClashConnections2.Content ??= new ClashConnectionsView(); tabClashConnections2.Content ??= new ClashConnectionsView();
} }
conTheme.Content ??= new ThemeSettingView(); conTheme.Content ??= new ThemeSettingView();
conCheckUpdate.Content ??= new CheckUpdateView();
RestoreUI(); RestoreUI();
AddHelpMenuItem(); AddHelpMenuItem();

View File

@@ -22,32 +22,25 @@
Orientation="Horizontal"> Orientation="Horizontal">
<TextBlock <TextBlock
Grid.Row="9"
Grid.Column="0"
Margin="{StaticResource SettingItemMargin}" Margin="{StaticResource SettingItemMargin}"
VerticalAlignment="Center" VerticalAlignment="Center"
Style="{StaticResource ToolbarTextBlock}" Style="{StaticResource ToolbarTextBlock}"
Text="{x:Static resx:ResUI.TbSettingsEnableCheckPreReleaseUpdate}" /> Text="{x:Static resx:ResUI.TbSettingsEnableCheckPreReleaseUpdate}" />
<ToggleButton <ToggleButton
x:Name="togEnableCheckPreReleaseUpdate" x:Name="togEnableCheckPreReleaseUpdate"
Grid.Row="9"
Grid.Column="1"
Margin="{StaticResource SettingItemMargin}" Margin="{StaticResource SettingItemMargin}"
HorizontalAlignment="Left" /> HorizontalAlignment="Left" />
<Button <Button
x:Name="btnCheckUpdate" x:Name="btnCheckUpdate"
Grid.Row="2"
Width="100" Width="100"
Margin="8" Margin="8"
Command="{x:Static materialDesign:DialogHost.CloseDialogCommand}"
Content="{x:Static resx:ResUI.menuCheckUpdate}" Content="{x:Static resx:ResUI.menuCheckUpdate}"
IsCancel="True" IsCancel="True"
IsDefault="True" IsDefault="True"
Style="{StaticResource MaterialDesignFlatButton}" /> Style="{StaticResource MaterialDesignFlatButton}" />
<Button <Button
Grid.Row="2"
Width="100" Width="100"
Margin="8" Margin="8"
HorizontalAlignment="Right" HorizontalAlignment="Right"

View File

@@ -71,14 +71,6 @@ namespace v2rayN.Views
this.BindCommand(ViewModel, vm => vm.RebootAsAdminCmd, v => v.menuRebootAsAdmin).DisposeWith(disposables); this.BindCommand(ViewModel, vm => vm.RebootAsAdminCmd, v => v.menuRebootAsAdmin).DisposeWith(disposables);
this.BindCommand(ViewModel, vm => vm.ClearServerStatisticsCmd, v => v.menuClearServerStatistics).DisposeWith(disposables); this.BindCommand(ViewModel, vm => vm.ClearServerStatisticsCmd, v => v.menuClearServerStatistics).DisposeWith(disposables);
this.BindCommand(ViewModel, vm => vm.OpenTheFileLocationCmd, v => v.menuOpenTheFileLocation).DisposeWith(disposables); this.BindCommand(ViewModel, vm => vm.OpenTheFileLocationCmd, v => v.menuOpenTheFileLocation).DisposeWith(disposables);
//this.BindCommand(ViewModel, vm => vm.ImportOldGuiConfigCmd, v => v.menuImportOldGuiConfig).DisposeWith(disposables);
//check update
//this.BindCommand(ViewModel, vm => vm.CheckUpdateNCmd, v => v.menuCheckUpdateN).DisposeWith(disposables);
//this.BindCommand(ViewModel, vm => vm.CheckUpdateXrayCoreCmd, v => v.menuCheckUpdateXrayCore).DisposeWith(disposables);
//this.BindCommand(ViewModel, vm => vm.CheckUpdateClashMetaCoreCmd, v => v.menuCheckUpdateMihomoCore).DisposeWith(disposables);
//this.BindCommand(ViewModel, vm => vm.CheckUpdateSingBoxCoreCmd, v => v.menuCheckUpdateSingBoxCore).DisposeWith(disposables);
//this.BindCommand(ViewModel, vm => vm.CheckUpdateGeoCmd, v => v.menuCheckUpdateGeo).DisposeWith(disposables);
this.BindCommand(ViewModel, vm => vm.ReloadCmd, v => v.menuReload).DisposeWith(disposables); this.BindCommand(ViewModel, vm => vm.ReloadCmd, v => v.menuReload).DisposeWith(disposables);
this.OneWayBind(ViewModel, vm => vm.BlReloadEnabled, v => v.menuReload.IsEnabled).DisposeWith(disposables); this.OneWayBind(ViewModel, vm => vm.BlReloadEnabled, v => v.menuReload.IsEnabled).DisposeWith(disposables);

View File

@@ -6,7 +6,7 @@ cd $PWD/..
DEFAULT_TARGET=$(rustc -vV | sed -n 's|host: ||p') DEFAULT_TARGET=$(rustc -vV | sed -n 's|host: ||p')
RUST_VER=1.80.0 RUST_VER=1.80.1
CARGO_VER=0.81.0 CARGO_VER=0.81.0
# https://github.com/Homebrew/homebrew-core/blob/master/Formula/r/rust.rb # https://github.com/Homebrew/homebrew-core/blob/master/Formula/r/rust.rb

View File

@@ -14,8 +14,8 @@ fi
echo "Adding rustup toolchain..." echo "Adding rustup toolchain..."
rustup toolchain install 1.80.0 rustup toolchain install 1.80.1
rustup default 1.80.0 rustup default 1.80.1
echo "Adding rustup toolchain...done" echo "Adding rustup toolchain...done"

View File

@@ -9,8 +9,8 @@ fi
echo "Adding rustup toolchain..." echo "Adding rustup toolchain..."
rustup toolchain install 1.80.0 rustup toolchain install 1.80.1
rustup default 1.80.0 rustup default 1.80.1
echo "Adding rustup toolchain...done" echo "Adding rustup toolchain...done"

View File

@@ -80,5 +80,8 @@ body:
- type: markdown - type: markdown
attributes: attributes:
value: | value: |
### NOTE: Due to a recent increase in malicious spam activity, this issue will be automatically locked until it is triaged by a maintainer. > [!CAUTION]
### If you receive any replies asking you download a file, do NOT follow the download links! > ### GitHub is experiencing a high volume of malicious spam comments.
> ### If you receive any replies asking you download a file, do NOT follow the download links!
>
> Note that this issue may be temporarily locked as an anti-spam measure after it is opened.

View File

@@ -92,5 +92,8 @@ body:
- type: markdown - type: markdown
attributes: attributes:
value: | value: |
### NOTE: Due to a recent increase in malicious spam activity, this issue will be automatically locked until it is triaged by a maintainer. > [!CAUTION]
### If you receive any replies asking you download a file, do NOT follow the download links! > ### GitHub is experiencing a high volume of malicious spam comments.
> ### If you receive any replies asking you download a file, do NOT follow the download links!
>
> Note that this issue may be temporarily locked as an anti-spam measure after it is opened.

View File

@@ -88,5 +88,8 @@ body:
- type: markdown - type: markdown
attributes: attributes:
value: | value: |
### NOTE: Due to a recent increase in malicious spam activity, this issue will be automatically locked until it is triaged by a maintainer. > [!CAUTION]
### If you receive any replies asking you download a file, do NOT follow the download links! > ### GitHub is experiencing a high volume of malicious spam comments.
> ### If you receive any replies asking you download a file, do NOT follow the download links!
>
> Note that this issue may be temporarily locked as an anti-spam measure after it is opened.

View File

@@ -73,5 +73,8 @@ body:
- type: markdown - type: markdown
attributes: attributes:
value: | value: |
### NOTE: Due to a recent increase in malicious spam activity, this issue will be automatically locked until it is triaged by a maintainer. > [!CAUTION]
### If you receive any replies asking you download a file, do NOT follow the download links! > ### GitHub is experiencing a high volume of malicious spam comments.
> ### If you receive any replies asking you download a file, do NOT follow the download links!
>
> Note that this issue may be temporarily locked as an anti-spam measure after it is opened.

View File

@@ -67,5 +67,8 @@ body:
- type: markdown - type: markdown
attributes: attributes:
value: | value: |
### NOTE: Due to a recent increase in malicious spam activity, this issue will be automatically locked until it is triaged by a maintainer. > [!CAUTION]
### If you receive any replies asking you download a file, do NOT follow the download links! > ### GitHub is experiencing a high volume of malicious spam comments.
> ### If you receive any replies asking you download a file, do NOT follow the download links!
>
> Note that this issue may be temporarily locked as an anti-spam measure after it is opened.

View File

@@ -73,5 +73,8 @@ body:
- type: markdown - type: markdown
attributes: attributes:
value: | value: |
### NOTE: Due to a recent increase in malicious spam activity, this issue will be automatically locked until it is triaged by a maintainer. > [!CAUTION]
### If you receive any replies asking you download a file, do NOT follow the download links! > ### GitHub is experiencing a high volume of malicious spam comments.
> ### If you receive any replies asking you download a file, do NOT follow the download links!
>
> Note that this issue may be temporarily locked as an anti-spam measure after it is opened.

View File

@@ -1,4 +1,4 @@
name: Anti-Spam name: Issue Lockdown
on: on:
issues: issues:
types: [opened] types: [opened]
@@ -9,6 +9,7 @@ permissions:
jobs: jobs:
lockdown: lockdown:
name: Issue Lockdown name: Issue Lockdown
if: vars.ISSUE_LOCKDOWN
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- name: "Lock new issue" - name: "Lock new issue"
@@ -17,4 +18,4 @@ jobs:
ISSUE_NUMBER: ${{ github.event.issue.number }} ISSUE_NUMBER: ${{ github.event.issue.number }}
REPOSITORY: ${{ github.repository }} REPOSITORY: ${{ github.repository }}
run: | run: |
gh issue lock "${ISSUE_NUMBER}" -r too_heated -R "${REPOSITORY}" gh issue lock "${ISSUE_NUMBER}" -R "${REPOSITORY}"

View File

@@ -0,0 +1,17 @@
name: Sanitize comment
on:
issue_comment:
types: [created, edited]
permissions:
issues: write
jobs:
sanitize-comment:
name: Sanitize comment
if: vars.SANITIZE_COMMENT && !github.event.issue.pull_request
runs-on: ubuntu-latest
steps:
- name: Sanitize comment
uses: yt-dlp/sanitize-comment@v1

View File

@@ -49,8 +49,11 @@ VERBOSE_TMPL = '''
- type: markdown - type: markdown
attributes: attributes:
value: | value: |
### NOTE: Due to a recent increase in malicious spam activity, this issue will be automatically locked until it is triaged by a maintainer. > [!CAUTION]
### If you receive any replies asking you download a file, do NOT follow the download links! > ### GitHub is experiencing a high volume of malicious spam comments.
> ### If you receive any replies asking you download a file, do NOT follow the download links!
>
> Note that this issue may be temporarily locked as an anti-spam measure after it is opened.
'''.strip() '''.strip()
NO_SKIP = ''' NO_SKIP = '''