diff options
Diffstat (limited to 'web')
| -rw-r--r-- | web/html/modals/xray_rule_modal.html | 26 | ||||
| -rw-r--r-- | web/html/settings/xray/routing.html | 12 | ||||
| -rw-r--r-- | web/html/xray.html | 5 |
3 files changed, 31 insertions, 12 deletions
diff --git a/web/html/modals/xray_rule_modal.html b/web/html/modals/xray_rule_modal.html index d367600b..487bf197 100644 --- a/web/html/modals/xray_rule_modal.html +++ b/web/html/modals/xray_rule_modal.html @@ -9,7 +9,7 @@ </template> Source IPs <a-icon type="question-circle"></a-icon> </a-tooltip> </template> - <a-input v-model.trim="ruleModal.rule.sourceIP"></a-input> + <a-input v-model.trim="ruleModal.rule.sourceIP" placeholder="e.g. 0.0.0.0/8, fc00::/7, geoip:ir"></a-input> </a-form-item> <a-form-item> <template slot="label"> @@ -19,7 +19,17 @@ </template> Source Port <a-icon type="question-circle"></a-icon> </a-tooltip> </template> - <a-input v-model.trim="ruleModal.rule.sourcePort"></a-input> + <a-input v-model.trim="ruleModal.rule.sourcePort" placeholder="e.g. 53,443,1000-2000"></a-input> + </a-form-item> + <a-form-item> + <template slot="label"> + <a-tooltip> + <template slot="title"> + <span>{{ i18n "pages.xray.rules.useComma" }}</span> + </template> VLESS Route <a-icon type="question-circle"></a-icon> + </a-tooltip> + </template> + <a-input v-model.trim="ruleModal.rule.vlessRoute" placeholder="e.g. 53,443,1000-2000"></a-input> </a-form-item> <a-form-item label='Network'> <a-select v-model="ruleModal.rule.network" :dropdown-class-name="themeSwitcher.currentTheme"> @@ -52,7 +62,7 @@ </template> IP <a-icon type="question-circle"></a-icon> </a-tooltip> </template> - <a-input v-model.trim="ruleModal.rule.ip"></a-input> + <a-input v-model.trim="ruleModal.rule.ip" placeholder="e.g. 0.0.0.0/8, fc00::/7, geoip:ir"></a-input> </a-form-item> <a-form-item> <template slot="label"> @@ -62,7 +72,7 @@ </template> Domain <a-icon type="question-circle"></a-icon> </a-tooltip> </template> - <a-input v-model.trim="ruleModal.rule.domain"></a-input> + <a-input v-model.trim="ruleModal.rule.domain" placeholder="e.g. google.com, geosite:cn"></a-input> </a-form-item> <a-form-item> <template slot="label"> @@ -72,7 +82,7 @@ </template> User <a-icon type="question-circle"></a-icon> </a-tooltip> </template> - <a-input v-model.trim="ruleModal.rule.user"></a-input> + <a-input v-model.trim="ruleModal.rule.user" placeholder="e.g. email address"></a-input> </a-form-item> <a-form-item> <template slot="label"> @@ -82,7 +92,7 @@ </template> Port <a-icon type="question-circle"></a-icon> </a-tooltip> </template> - <a-input v-model.trim="ruleModal.rule.port"></a-input> + <a-input v-model.trim="ruleModal.rule.port" placeholder="e.g. 53,443,1000-2000"></a-input> </a-form-item> <a-form-item label='Inbound Tags'> <a-select v-model="ruleModal.rule.inboundTag" mode="multiple" :dropdown-class-name="themeSwitcher.currentTheme"> @@ -122,6 +132,7 @@ ip: "", port: "", sourcePort: "", + vlessRoute: "", network: "", sourceIP: "", user: "", @@ -155,6 +166,7 @@ this.rule.ip = rule.ip ? rule.ip.join(',') : []; this.rule.port = rule.port; this.rule.sourcePort = rule.sourcePort; + this.rule.vlessRoute = rule.vlessRoute; this.rule.network = rule.network; this.rule.sourceIP = rule.sourceIP ? rule.sourceIP.join(',') : []; this.rule.user = rule.user ? rule.user.join(',') : []; @@ -169,6 +181,7 @@ ip: "", port: "", sourcePort: "", + vlessRoute: "", network: "", sourceIP: "", user: "", @@ -210,6 +223,7 @@ rule.ip = value.ip.length > 0 ? value.ip.split(',') : []; rule.port = value.port; rule.sourcePort = value.sourcePort; + rule.vlessRoute = value.vlessRoute; rule.network = value.network; rule.sourceIP = value.sourceIP.length > 0 ? value.sourceIP.split(',') : []; rule.user = value.user.length > 0 ? value.user.split(',') : []; diff --git a/web/html/settings/xray/routing.html b/web/html/settings/xray/routing.html index e5b9b6c6..487f7963 100644 --- a/web/html/settings/xray/routing.html +++ b/web/html/settings/xray/routing.html @@ -67,18 +67,22 @@ </template> <template slot="info" slot-scope="text, rule, index"> <a-popover placement="bottomRight" - v-if="(rule.source+rule.sourcePort+rule.network+rule.protocol+rule.attrs+rule.ip+rule.domain+rule.port).length>0" + v-if="(rule.sourceIP+rule.sourcePort+rule.vlessRoute+rule.network+rule.protocol+rule.attrs+rule.ip+rule.domain+rule.port).length>0" :overlay-class-name="themeSwitcher.currentTheme" trigger="click"> <template slot="content"> <table cellpadding="2" :style="{ maxWidth: '300px' }"> - <tr v-if="rule.source"> - <td>Source</td> - <td><a-tag color="blue" v-for="r in rule.source.split(',')">[[ r ]]</a-tag></td> + <tr v-if="rule.sourceIP"> + <td>Source IP</td> + <td><a-tag color="blue" v-for="r in rule.sourceIP.split(',')">[[ r ]]</a-tag></td> </tr> <tr v-if="rule.sourcePort"> <td>Source Port</td> <td><a-tag color="green" v-for="r in rule.sourcePort.split(',')">[[ r ]]</a-tag></td> </tr> + <tr v-if="rule.vlessRoute"> + <td>VLESS Route</td> + <td><a-tag color="geekblue" v-for="r in rule.vlessRoute.split(',')">[[ r ]]</a-tag></td> + </tr> <tr v-if="rule.network"> <td>Network</td> <td><a-tag color="blue" v-for="r in rule.network.split(',')">[[ r ]]</a-tag></td> diff --git a/web/html/xray.html b/web/html/xray.html index 5b1b8026..9f528e03 100644 --- a/web/html/xray.html +++ b/web/html/xray.html @@ -146,8 +146,9 @@ { title: "#", align: 'center', width: 15, scopedSlots: { customRender: 'action' } }, { title: '{{ i18n "pages.xray.rules.source"}}', children: [ - { title: 'IP', dataIndex: "source", align: 'center', width: 20, ellipsis: true }, - { title: '{{ i18n "pages.inbounds.port" }}', dataIndex: 'sourcePort', align: 'center', width: 10, ellipsis: true }] + { title: 'IP', dataIndex: "sourceIP", align: 'center', width: 20, ellipsis: true }, + { title: '{{ i18n "pages.inbounds.port" }}', dataIndex: 'sourcePort', align: 'center', width: 10, ellipsis: true }, + { title: 'VLESS Route', dataIndex: 'vlessRoute', align: 'center', width: 15, ellipsis: true }] }, { title: '{{ i18n "pages.inbounds.network"}}', children: [ |
