mirror of
https://gh.catmak.name/https://github.com/mihomo-party-org/mihomo-party
synced 2025-12-26 20:50:30 +08:00
feat: Data Colletct File Size
* add @mihomo-party/sysproxy * feat: Data Colletct File Size * update changelog
This commit is contained in:
parent
46088f5234
commit
fb33f37652
@ -8,6 +8,7 @@
|
||||
- 支持随机端口
|
||||
- 支持关闭部分端口选项
|
||||
- 在菜单中显示当前代理
|
||||
- 支持修改 数据收集文件大小
|
||||
|
||||
### 修复 (Fix)
|
||||
- 更安全的内核提权检查
|
||||
|
||||
@ -33,6 +33,7 @@
|
||||
"@electron-toolkit/preload": "^3.0.2",
|
||||
"@electron-toolkit/utils": "^4.0.0",
|
||||
"@heroui/react": "^2.8.5",
|
||||
"@mihomo-party/sysproxy": "^2.0.8",
|
||||
"@types/crypto-js": "^4.2.2",
|
||||
"adm-zip": "^0.5.16",
|
||||
"axios": "^1.13.2",
|
||||
|
||||
134
pnpm-lock.yaml
generated
134
pnpm-lock.yaml
generated
@ -17,6 +17,9 @@ importers:
|
||||
'@heroui/react':
|
||||
specifier: ^2.8.5
|
||||
version: 2.8.5(@types/react@19.2.5)(framer-motion@12.23.12(react-dom@19.2.0(react@19.2.0))(react@19.2.0))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(tailwindcss@4.1.17)
|
||||
'@mihomo-party/sysproxy':
|
||||
specifier: ^2.0.8
|
||||
version: 2.0.8
|
||||
'@types/crypto-js':
|
||||
specifier: ^4.2.2
|
||||
version: 4.2.2
|
||||
@ -137,7 +140,7 @@ importers:
|
||||
version: 7.37.5(eslint@9.32.0(jiti@2.6.1))
|
||||
form-data:
|
||||
specifier: ^4.0.4
|
||||
version: 4.0.4
|
||||
version: 4.0.5
|
||||
framer-motion:
|
||||
specifier: 12.23.12
|
||||
version: 12.23.12(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
|
||||
@ -1257,6 +1260,52 @@ packages:
|
||||
resolution: {integrity: sha512-9QOtNffcOF/c1seMCDnjckb3R9WHcG34tky+FHpNKKCW0wc/scYLwMtO+ptyGUfMW0/b/n4qRiALlaFHc9Oj7Q==}
|
||||
engines: {node: '>= 10.0.0'}
|
||||
|
||||
'@mihomo-party/sysproxy-darwin-arm64@2.0.8':
|
||||
resolution: {integrity: sha512-4bSqsjEkmtXzgr8zrSUiNmOdlfRDnkFoXICfJqH7ZlM+4L6n74zrm6perFP0NHPpn/oZO97QXGxIJUQSNhFDrw==}
|
||||
engines: {node: '>= 10'}
|
||||
cpu: [arm64]
|
||||
os: [darwin]
|
||||
|
||||
'@mihomo-party/sysproxy-darwin-x64@2.0.8':
|
||||
resolution: {integrity: sha512-sIDzG7yyQZu+DKQ8X1MeYubdEqXSDjzYjVi+5rVZG/jfLlucS9QZNNiXyoTTDUD5cGRcqv1gYNRynd2Csewesg==}
|
||||
engines: {node: '>= 10'}
|
||||
cpu: [x64]
|
||||
os: [darwin]
|
||||
|
||||
'@mihomo-party/sysproxy-linux-arm64-gnu@2.0.8':
|
||||
resolution: {integrity: sha512-weKk+KcB4lghEj3z15x9FSyla3PT3uLIEU4l4LE4RqhzxgkbJmOt7Wu+ofx4/1k8g8OwwGXIucNgYsV0qpnZQg==}
|
||||
engines: {node: '>= 10'}
|
||||
cpu: [arm64]
|
||||
os: [linux]
|
||||
|
||||
'@mihomo-party/sysproxy-linux-x64-gnu@2.0.8':
|
||||
resolution: {integrity: sha512-wLt63mztsnZoGFUKxzizRRRd5qAtINg+tB2zdhOnr+0E9TaKLGxZnhYm+Nk8tAB1EBvqjmTWsJG9MDHikh2agg==}
|
||||
engines: {node: '>= 10'}
|
||||
cpu: [x64]
|
||||
os: [linux]
|
||||
|
||||
'@mihomo-party/sysproxy-win32-arm64-msvc@2.0.8':
|
||||
resolution: {integrity: sha512-+Mxkw8d3rD6sbFZjjZ18kfx1/WrWXOVlpKd8k3Gdf4LUg7nW8vr64Eaxvjxwcw9AQ1Bu61SHEtvNZfu7woCc1w==}
|
||||
engines: {node: '>= 10'}
|
||||
cpu: [arm64]
|
||||
os: [win32]
|
||||
|
||||
'@mihomo-party/sysproxy-win32-ia32-msvc@2.0.8':
|
||||
resolution: {integrity: sha512-xOVagbGu21MGzEMidpgMoQGRHY0V1EFdDKb+ZhPPnoIbFhECBRR9fQK7lENV6e7S41ppNbg1Rja4J94VpXdvZA==}
|
||||
engines: {node: '>= 10'}
|
||||
cpu: [ia32]
|
||||
os: [win32]
|
||||
|
||||
'@mihomo-party/sysproxy-win32-x64-msvc@2.0.8':
|
||||
resolution: {integrity: sha512-AIgCFoExX36BgXN8sQyf0G99wrObFO0LGBzEFs9OsS2cg8bPkpt63XkAkNcGVxlqJD4WLzsS1GhbsL3qzo64DQ==}
|
||||
engines: {node: '>= 10'}
|
||||
cpu: [x64]
|
||||
os: [win32]
|
||||
|
||||
'@mihomo-party/sysproxy@2.0.8':
|
||||
resolution: {integrity: sha512-tCnkDL4UjbUPvFvFubswmWxz56f+gTsYDpv1ULke1YDEZN7aTSREgC3K+Ge7JjZj2jUZYU1lEYuhFgeFz6+W6w==}
|
||||
engines: {node: '>= 10'}
|
||||
|
||||
'@nodelib/fs.scandir@2.1.5':
|
||||
resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==}
|
||||
engines: {node: '>= 8'}
|
||||
@ -2331,8 +2380,8 @@ packages:
|
||||
base64-js@1.5.1:
|
||||
resolution: {integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==}
|
||||
|
||||
baseline-browser-mapping@2.8.28:
|
||||
resolution: {integrity: sha512-gYjt7OIqdM0PcttNYP2aVrr2G0bMALkBaoehD4BuRGjAOtipg0b6wHg1yNL+s5zSnLZZrGHOw4IrND8CD+3oIQ==}
|
||||
baseline-browser-mapping@2.8.29:
|
||||
resolution: {integrity: sha512-sXdt2elaVnhpDNRDz+1BDx1JQoJRuNk7oVlAlbGiFkLikHCAQiccexF/9e91zVi6RCgqspl04aP+6Cnl9zRLrA==}
|
||||
hasBin: true
|
||||
|
||||
bl@4.1.0:
|
||||
@ -2622,8 +2671,8 @@ packages:
|
||||
crypto-js@4.2.0:
|
||||
resolution: {integrity: sha512-KALDyEYgpY+Rlob/iriUtjV6d5Eq+Y191A5g4UqLAi8CyGP9N1+FdVbkc1SxKc2r4YAYqG8JzO2KGL+AizD70Q==}
|
||||
|
||||
csstype@3.2.1:
|
||||
resolution: {integrity: sha512-98XGutrXoh75MlgLihlNxAGbUuFQc7l1cqcnEZlLNKc0UrVdPndgmaDmYTDDh929VS/eqTZV0rozmhu2qqT1/g==}
|
||||
csstype@3.2.3:
|
||||
resolution: {integrity: sha512-z1HGKcYy2xA8AGQfwrn0PAy+PB7X/GSj3UVJW9qKyn43xWa+gl5nXmU4qqLMRzWVLFC8KusUX8T/0kCiOYpAIQ==}
|
||||
|
||||
data-uri-to-buffer@4.0.1:
|
||||
resolution: {integrity: sha512-0R9ikRb668HB7QDxT1vkpuUBtqc53YyAwMwGeUFKRojY/NWKvdZ+9UYtRfGmhqNbRkTSVpMbmyhXipFFv2cb/A==}
|
||||
@ -3051,8 +3100,8 @@ packages:
|
||||
resolution: {integrity: sha512-gIXjKqtFuWEgzFRJA9WCQeSJLZDjgJUOMCMzxtvFq/37KojM1BFGufqsCy0r4qSQmYLsZYMeyRqzIWOMup03sw==}
|
||||
engines: {node: '>=14'}
|
||||
|
||||
form-data@4.0.4:
|
||||
resolution: {integrity: sha512-KrGhL9Q4zjj0kiUt5OO4Mr/A/jlI2jDYs5eHBpYHPcBEVSiipAvn2Ko2HnPe20rmcuuvMHNdZFp+4IlGTMF0Ow==}
|
||||
form-data@4.0.5:
|
||||
resolution: {integrity: sha512-8RipRLol37bNs2bhoV67fiTEvdTrbMUYcFTiy3+wuuOnUog2QBHCZWXDRijWQfAkhBj2Uf5UnVaiWwA5vdd82w==}
|
||||
engines: {node: '>= 6'}
|
||||
|
||||
formdata-polyfill@4.0.10:
|
||||
@ -3342,8 +3391,8 @@ packages:
|
||||
inherits@2.0.4:
|
||||
resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==}
|
||||
|
||||
inline-style-parser@0.2.6:
|
||||
resolution: {integrity: sha512-gtGXVaBdl5mAes3rPcMedEBm12ibjt1kDMFfheul1wUAOVEJW60voNdMVzVkfLN06O7ZaD/rxhfKgtlgtTbMjg==}
|
||||
inline-style-parser@0.2.7:
|
||||
resolution: {integrity: sha512-Nb2ctOyNR8DqQoR0OwRG95uNWIC0C1lCgf5Naz5H6Ji72KZ8OcFZLz2P5sNgwlyoJ8Yif11oMuYs5pBQa86csA==}
|
||||
|
||||
input-otp@1.4.1:
|
||||
resolution: {integrity: sha512-+yvpmKYKHi9jIGngxagY9oWiiblPB7+nEO75F2l2o4vs+6vpPZZmUl4tBNYuTCvQjhvEIbdNeJu70bhfYP2nbw==}
|
||||
@ -4688,11 +4737,11 @@ packages:
|
||||
strnum@1.1.2:
|
||||
resolution: {integrity: sha512-vrN+B7DBIoTTZjnPNewwhx6cBA/H+IS7rfW68n7XxC1y7uoiGQBxaKzqucGUgavX15dJgiGztLJ8vxuEzwqBdA==}
|
||||
|
||||
style-to-js@1.1.20:
|
||||
resolution: {integrity: sha512-gfXNMzSpR4EU8xCJRQOh69ex6vtO+HWSbSZo58uBfT0UCgpVH84Yr8IQIqSAmjbDBFFG/6fwQUt6SqBGz/Jj2g==}
|
||||
style-to-js@1.1.21:
|
||||
resolution: {integrity: sha512-RjQetxJrrUJLQPHbLku6U/ocGtzyjbJMP9lCNK7Ag0CNh690nSH8woqWH9u16nMjYBAok+i7JO1NP2pOy8IsPQ==}
|
||||
|
||||
style-to-object@1.0.12:
|
||||
resolution: {integrity: sha512-ddJqYnoT4t97QvN2C95bCgt+m7AAgXjVnkk/jxAfmp7EAB8nnqqZYEbMd3em7/vEomDb2LAQKAy1RFfv41mdNw==}
|
||||
style-to-object@1.0.14:
|
||||
resolution: {integrity: sha512-LIN7rULI0jBscWQYaSswptyderlarFkjQ+t79nzty8tcIAceVomEVlLzH5VP4Cmsv6MtKhs7qaAiwlcp+Mgaxw==}
|
||||
|
||||
sumchecker@3.0.1:
|
||||
resolution: {integrity: sha512-MvjXzkz/BOfyVDkG0oFOtBxHX2u3gKbMHIF/dXblZsgD3BWOFLmHovIpZY7BykJdAjcqRCBi1WYBNdEC9yI7vg==}
|
||||
@ -6689,6 +6738,37 @@ snapshots:
|
||||
transitivePeerDependencies:
|
||||
- supports-color
|
||||
|
||||
'@mihomo-party/sysproxy-darwin-arm64@2.0.8':
|
||||
optional: true
|
||||
|
||||
'@mihomo-party/sysproxy-darwin-x64@2.0.8':
|
||||
optional: true
|
||||
|
||||
'@mihomo-party/sysproxy-linux-arm64-gnu@2.0.8':
|
||||
optional: true
|
||||
|
||||
'@mihomo-party/sysproxy-linux-x64-gnu@2.0.8':
|
||||
optional: true
|
||||
|
||||
'@mihomo-party/sysproxy-win32-arm64-msvc@2.0.8':
|
||||
optional: true
|
||||
|
||||
'@mihomo-party/sysproxy-win32-ia32-msvc@2.0.8':
|
||||
optional: true
|
||||
|
||||
'@mihomo-party/sysproxy-win32-x64-msvc@2.0.8':
|
||||
optional: true
|
||||
|
||||
'@mihomo-party/sysproxy@2.0.8':
|
||||
optionalDependencies:
|
||||
'@mihomo-party/sysproxy-darwin-arm64': 2.0.8
|
||||
'@mihomo-party/sysproxy-darwin-x64': 2.0.8
|
||||
'@mihomo-party/sysproxy-linux-arm64-gnu': 2.0.8
|
||||
'@mihomo-party/sysproxy-linux-x64-gnu': 2.0.8
|
||||
'@mihomo-party/sysproxy-win32-arm64-msvc': 2.0.8
|
||||
'@mihomo-party/sysproxy-win32-ia32-msvc': 2.0.8
|
||||
'@mihomo-party/sysproxy-win32-x64-msvc': 2.0.8
|
||||
|
||||
'@nodelib/fs.scandir@2.1.5':
|
||||
dependencies:
|
||||
'@nodelib/fs.stat': 2.0.5
|
||||
@ -7761,7 +7841,7 @@ snapshots:
|
||||
|
||||
'@types/react@19.2.5':
|
||||
dependencies:
|
||||
csstype: 3.2.1
|
||||
csstype: 3.2.3
|
||||
|
||||
'@types/responselike@1.0.3':
|
||||
dependencies:
|
||||
@ -7983,7 +8063,7 @@ snapshots:
|
||||
ejs: 3.1.10
|
||||
electron-builder-squirrel-windows: 25.0.4(dmg-builder@26.0.12)
|
||||
electron-publish: 25.0.3
|
||||
form-data: 4.0.4
|
||||
form-data: 4.0.5
|
||||
fs-extra: 10.1.0
|
||||
hosted-git-info: 4.1.0
|
||||
is-ci: 3.0.1
|
||||
@ -8167,7 +8247,7 @@ snapshots:
|
||||
axios@1.13.2:
|
||||
dependencies:
|
||||
follow-redirects: 1.15.11
|
||||
form-data: 4.0.4
|
||||
form-data: 4.0.5
|
||||
proxy-from-env: 1.1.0
|
||||
transitivePeerDependencies:
|
||||
- debug
|
||||
@ -8180,7 +8260,7 @@ snapshots:
|
||||
|
||||
base64-js@1.5.1: {}
|
||||
|
||||
baseline-browser-mapping@2.8.28: {}
|
||||
baseline-browser-mapping@2.8.29: {}
|
||||
|
||||
bl@4.1.0:
|
||||
dependencies:
|
||||
@ -8226,7 +8306,7 @@ snapshots:
|
||||
|
||||
browserslist@4.28.0:
|
||||
dependencies:
|
||||
baseline-browser-mapping: 2.8.28
|
||||
baseline-browser-mapping: 2.8.29
|
||||
caniuse-lite: 1.0.30001755
|
||||
electron-to-chromium: 1.5.254
|
||||
node-releases: 2.0.27
|
||||
@ -8516,7 +8596,7 @@ snapshots:
|
||||
|
||||
crypto-js@4.2.0: {}
|
||||
|
||||
csstype@3.2.1: {}
|
||||
csstype@3.2.3: {}
|
||||
|
||||
data-uri-to-buffer@4.0.1: {}
|
||||
|
||||
@ -8697,7 +8777,7 @@ snapshots:
|
||||
builder-util: 26.0.11
|
||||
builder-util-runtime: 9.3.1
|
||||
chalk: 4.1.2
|
||||
form-data: 4.0.4
|
||||
form-data: 4.0.5
|
||||
fs-extra: 10.1.0
|
||||
lazy-val: 1.0.5
|
||||
mime: 2.6.0
|
||||
@ -9138,7 +9218,7 @@ snapshots:
|
||||
cross-spawn: 7.0.6
|
||||
signal-exit: 4.1.0
|
||||
|
||||
form-data@4.0.4:
|
||||
form-data@4.0.5:
|
||||
dependencies:
|
||||
asynckit: 0.4.0
|
||||
combined-stream: 1.0.8
|
||||
@ -9372,7 +9452,7 @@ snapshots:
|
||||
mdast-util-mdxjs-esm: 2.0.1
|
||||
property-information: 7.1.0
|
||||
space-separated-tokens: 2.0.2
|
||||
style-to-js: 1.1.20
|
||||
style-to-js: 1.1.21
|
||||
unist-util-position: 5.0.0
|
||||
vfile-message: 4.0.3
|
||||
transitivePeerDependencies:
|
||||
@ -9486,7 +9566,7 @@ snapshots:
|
||||
|
||||
inherits@2.0.4: {}
|
||||
|
||||
inline-style-parser@0.2.6: {}
|
||||
inline-style-parser@0.2.7: {}
|
||||
|
||||
input-otp@1.4.1(react-dom@19.2.0(react@19.2.0))(react@19.2.0):
|
||||
dependencies:
|
||||
@ -11045,13 +11125,13 @@ snapshots:
|
||||
|
||||
strnum@1.1.2: {}
|
||||
|
||||
style-to-js@1.1.20:
|
||||
style-to-js@1.1.21:
|
||||
dependencies:
|
||||
style-to-object: 1.0.12
|
||||
style-to-object: 1.0.14
|
||||
|
||||
style-to-object@1.0.12:
|
||||
style-to-object@1.0.14:
|
||||
dependencies:
|
||||
inline-style-parser: 0.2.6
|
||||
inline-style-parser: 0.2.7
|
||||
|
||||
sumchecker@3.0.1:
|
||||
dependencies:
|
||||
|
||||
@ -7,7 +7,7 @@ const SMART_OVERRIDE_ID = 'smart-core-override'
|
||||
/**
|
||||
* Smart 内核的覆写配置模板
|
||||
*/
|
||||
function generateSmartOverrideTemplate(useLightGBM: boolean, collectData: boolean, strategy: string): string {
|
||||
function generateSmartOverrideTemplate(useLightGBM: boolean, collectData: boolean, strategy: string, collectorSize: number): string {
|
||||
return `
|
||||
// 配置会在启用 Smart 内核时自动应用
|
||||
|
||||
@ -19,6 +19,12 @@ function main(config) {
|
||||
return config
|
||||
}
|
||||
|
||||
// 设置 Smart 内核的 profile 配置
|
||||
if (!config.profile) {
|
||||
config.profile = {}
|
||||
}
|
||||
config.profile['smart-collector-size'] = ${collectorSize}
|
||||
|
||||
// 确保代理组配置存在
|
||||
if (!config['proxy-groups']) {
|
||||
config['proxy-groups'] = []
|
||||
@ -321,14 +327,16 @@ export async function createSmartOverride(): Promise<void> {
|
||||
const {
|
||||
smartCoreUseLightGBM = false,
|
||||
smartCoreCollectData = false,
|
||||
smartCoreStrategy = 'sticky-sessions'
|
||||
smartCoreStrategy = 'sticky-sessions',
|
||||
smartCollectorSize = 100
|
||||
} = await getAppConfig()
|
||||
|
||||
// 生成覆写模板
|
||||
const template = generateSmartOverrideTemplate(
|
||||
smartCoreUseLightGBM,
|
||||
smartCoreCollectData,
|
||||
smartCoreStrategy
|
||||
smartCoreStrategy,
|
||||
smartCollectorSize
|
||||
)
|
||||
|
||||
// 检查是否已存在 Smart 覆写配置
|
||||
|
||||
@ -165,6 +165,8 @@
|
||||
"mihomo.smartCoreStrategyRoundRobin": "Round Robin",
|
||||
"mihomo.smartCoreUseLightGBMTooltip": "Use pre-trained general model for quick node selection improvement, but may not suit your specific network environment",
|
||||
"mihomo.smartCoreCollectDataTooltip": "Collect your network usage data for training custom models better suited to your network environment (turn off if you don't know how to train models)",
|
||||
"mihomo.smartCollectorSize": "Data Colletct File Size (MB)",
|
||||
"mihomo.smartCollectorSizeTooltip": "Limit The File Size of Collected Data, The Default is 100MB",
|
||||
"mihomo.mixedPort": "Mixed Port",
|
||||
"mihomo.confirm": "Confirm",
|
||||
"mihomo.socksPort": "Socks Port",
|
||||
|
||||
@ -165,6 +165,8 @@
|
||||
"mihomo.smartCoreStrategyRoundRobin": "轮询",
|
||||
"mihomo.smartCoreUseLightGBMTooltip": "使用预训练的通用模型,可快速提升节点选择效果,但可能不适合您的特定网络环境",
|
||||
"mihomo.smartCoreCollectDataTooltip": "收集您的网络使用数据,可用于训练更适合您的网络环境的自定义模型(如果您不懂如何训练模型,请关闭)",
|
||||
"mihomo.smartCollectorSize": "数据收集文件大小(MB)",
|
||||
"mihomo.smartCollectorSizeTooltip": "限制数据收集文件大小,默认为 100MB",
|
||||
"mihomo.mixedPort": "混合端口",
|
||||
"mihomo.confirm": "确认",
|
||||
"mihomo.socksPort": "Socks 端口",
|
||||
|
||||
@ -41,6 +41,7 @@ const Mihomo: React.FC = () => {
|
||||
smartCoreUseLightGBM = false,
|
||||
smartCoreCollectData = false,
|
||||
smartCoreStrategy = 'sticky-sessions',
|
||||
smartCollectorSize = 100,
|
||||
maxLogDays = 7,
|
||||
sysProxy,
|
||||
disableLoopbackDetector,
|
||||
@ -602,6 +603,44 @@ const Mihomo: React.FC = () => {
|
||||
/>
|
||||
</SettingItem>
|
||||
|
||||
|
||||
<SettingItem
|
||||
title={
|
||||
<div className="flex items-center gap-2">
|
||||
<span>{t('mihomo.smartCollectorSize')}</span>
|
||||
<Tooltip
|
||||
content={t('mihomo.smartCollectorSizeTooltip')}
|
||||
placement="top"
|
||||
className="max-w-xs"
|
||||
>
|
||||
<IoMdInformationCircleOutline className="text-gray-400 hover:text-gray-600 dark:text-gray-500 dark:hover:text-gray-300 cursor-help" />
|
||||
</Tooltip>
|
||||
</div>
|
||||
}
|
||||
divider
|
||||
>
|
||||
<div className="flex items-center gap-2">
|
||||
<Input
|
||||
size="sm"
|
||||
className="w-[100px]"
|
||||
type="number"
|
||||
value={smartCollectorSize.toString()}
|
||||
onValueChange={async (v: string) => {
|
||||
let num = parseInt(v)
|
||||
await patchAppConfig({ smartCollectorSize: num })
|
||||
}}
|
||||
onBlur={async (e) => {
|
||||
let num = parseInt(e.target.value)
|
||||
if (isNaN(num)) num = 100
|
||||
if (num < 1) num = 1
|
||||
await patchAppConfig({ smartCollectorSize: num })
|
||||
await restartCore()
|
||||
}}
|
||||
/>
|
||||
<span className="text-default-500">MB</span>
|
||||
</div>
|
||||
</SettingItem>
|
||||
|
||||
<SettingItem
|
||||
title={t('mihomo.smartCoreStrategy')}
|
||||
>
|
||||
|
||||
1
src/shared/types.d.ts
vendored
1
src/shared/types.d.ts
vendored
@ -223,6 +223,7 @@ interface IAppConfig {
|
||||
smartCoreUseLightGBM: boolean
|
||||
smartCoreCollectData: boolean
|
||||
smartCoreStrategy: 'sticky-sessions' | 'round-robin'
|
||||
smartCollectorSize?: number
|
||||
proxyDisplayMode: 'simple' | 'full'
|
||||
proxyDisplayOrder: 'default' | 'delay' | 'name'
|
||||
profileDisplayDate?: 'expire' | 'update'
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user