diff --git a/frontend/src/components/protocols/Shadowsocks.vue b/frontend/src/components/protocols/Shadowsocks.vue index 8d795d8..cfac78a 100644 --- a/frontend/src/components/protocols/Shadowsocks.vue +++ b/frontend/src/components/protocols/Shadowsocks.vue @@ -6,12 +6,10 @@ hide-details :label="$t('in.ssMethod')" :items="ssMethods" + @update:model-value="changeMethod($event)" v-model="data.method"> - - - @@ -19,12 +17,24 @@ + + + + + + \ No newline at end of file diff --git a/frontend/src/plugins/link.ts b/frontend/src/plugins/link.ts index 185b88a..94b5b1b 100644 --- a/frontend/src/plugins/link.ts +++ b/frontend/src/plugins/link.ts @@ -38,7 +38,7 @@ export namespace LinkUtil { } function shadowsocksLink(user: Client, inbound: Shadowsocks, addrs: any[]): string[] { - const userPass = user.config.shadowsocks?.password + const userPass = inbound.method == "2022-blake3-aes-128-gcm" ? user.config.shadowsocks16?.password : user.config.shadowsocks?.password const password = [userPass] if (inbound.method.startsWith('2022')) password.push(inbound.password) const params = { diff --git a/frontend/src/types/clients.ts b/frontend/src/types/clients.ts index 6479eba..76a3d65 100644 --- a/frontend/src/types/clients.ts +++ b/frontend/src/types/clients.ts @@ -121,5 +121,9 @@ export function randomConfigs(user: string): Config { export function createClient(json?: Partial): Client { defaultClient.name = RandomUtil.randomSeq(8) const defaultObject: Client = { ...defaultClient, ...(json || {}) } + + // Add missing config + defaultObject.config = { ...randomConfigs(defaultObject.name), ...defaultObject.config } + return defaultObject }