From 119cff3d85c21f366162f7f7b8ee693079990cd6 Mon Sep 17 00:00:00 2001 From: Alireza Ahmadi Date: Tue, 22 Oct 2024 23:55:37 +0200 Subject: [PATCH] separated inbound's client mux #257 --- frontend/src/components/Multiplex.vue | 1 + frontend/src/layouts/modals/Inbound.vue | 2 ++ frontend/src/plugins/outJson.ts | 4 ---- frontend/src/views/Inbounds.vue | 4 ++++ 4 files changed, 7 insertions(+), 4 deletions(-) diff --git a/frontend/src/components/Multiplex.vue b/frontend/src/components/Multiplex.vue index d036d6c..1f94517 100644 --- a/frontend/src/components/Multiplex.vue +++ b/frontend/src/components/Multiplex.vue @@ -85,6 +85,7 @@ export default { }, computed: { mux(): oMultiplex { + if (!Object.hasOwn(this.$props.data,"multiplex")) this.$props.data.multiplex = {} return this.$props.data.multiplex }, muxEnable: { diff --git a/frontend/src/layouts/modals/Inbound.vue b/frontend/src/layouts/modals/Inbound.vue index ea5fc04..89eee65 100644 --- a/frontend/src/layouts/modals/Inbound.vue +++ b/frontend/src/layouts/modals/Inbound.vue @@ -50,6 +50,7 @@ + {{ $t('in.multiDomain') }} @@ -169,6 +170,7 @@ export default { const prevConfig = { tag: tag ,listen: this.inbound.listen, listen_port: this.inbound.listen_port } this.inbound = createInbound(this.inbound.type, prevConfig) if (this.HasInData.includes(this.inbound.type)){ + if (this.inData.id == -1) this.inData.id = 0 this.inData.outJson = {} this.inData.tag = tag } else { diff --git a/frontend/src/plugins/outJson.ts b/frontend/src/plugins/outJson.ts index 8d2ecab..9f4110a 100644 --- a/frontend/src/plugins/outJson.ts +++ b/frontend/src/plugins/outJson.ts @@ -61,7 +61,6 @@ function addTls(out: any, tls: iTls, tlsClient: oTls){ function shadowsocksOut(out: any, inbound: Shadowsocks) { out.method = inbound.method - out.multiplex = inbound.multiplex } function shadowTlsOut(out: any, inbound: ShadowTLS) { @@ -94,16 +93,13 @@ function tuicOut(out: any, inbound: TUIC) { } function vlessOut(out: any, inbound: VLESS) { - out.multiplex = inbound.multiplex out.transport = inbound.transport } function trojanOut(out: any, inbound: Trojan) { - out.multiplex = inbound.multiplex out.transport = inbound.transport } function vmessOut(out: any, inbound: VMess) { - out.multiplex = inbound.multiplex out.transport = inbound.transport } diff --git a/frontend/src/views/Inbounds.vue b/frontend/src/views/Inbounds.vue index 83d3774..17c647d 100644 --- a/frontend/src/views/Inbounds.vue +++ b/frontend/src/views/Inbounds.vue @@ -311,6 +311,10 @@ const delInbound = (index: number) => { } if (index < Data().oldData.config.inbounds.length){ Data().delInbound(index) + } else { + // Delete new inbound's inData if exists + const inDataIndex = Data().inData.findIndex((d:any) => d.tag == tag) + if (inDataIndex != -1) Data().inData.splice(inDataIndex, 1) } delOverlay.value[index] = false }