{{define "form/inbound"}}
<!-- base -->
<a-form layout="inline">
    <table width="100%" class="ant-table-tbody">
        <tr>
            <td>{{ i18n "enable" }}</td>
            <td>
                <a-form-item>
                    <a-switch v-model="dbInbound.enable"></a-switch>
                </a-form-item>
            </td>
        </tr>
        <tr>
            <td>{{ i18n "remark" }}</td>
            <td>
                <a-form-item>
                    <a-input v-model.trim="dbInbound.remark" style="width: 250px;"></a-input>
                </a-form-item>
            </td>
        </tr>
        <tr>
            <td>{{ i18n "protocol" }}</td>
            <td>
                <a-form-item>
                    <a-select v-model="inbound.protocol" style="width: 250px;" :disabled="isEdit" :dropdown-class-name="themeSwitcher.currentTheme">
                        <a-select-option v-for="p in Protocols" :key="p" :value="p">[[ p ]]</a-select-option>
                    </a-select>
                </a-form-item>
            </td>
        </tr>
        <tr>
            <td>{{ i18n "monitor" }}
                <a-tooltip>
                <template slot="title">
                    <span>{{ i18n "pages.inbounds.monitorDesc" }}</span>
                </template>
                <a-icon type="question-circle" theme="filled"></a-icon>
                </a-tooltip>
            </td>
            <td>
                <a-form-item>
                    <a-input v-model.trim="inbound.listen" style="width: 250px;"></a-input>
                </a-form-item>
            </td>
        </tr>
        <tr>
            <td>{{ i18n "pages.inbounds.port" }}</td>
            <td>
                <a-form-item>
                    <a-input-number v-model.number="inbound.port"></a-input-number>
                </a-form-item>
            </td>
        </tr>
        <tr>
            <td>
                <span>{{ i18n "pages.inbounds.totalFlow" }}</span>(GB)
                <a-tooltip>
                    <template slot="title">
                        0 <span>{{ i18n "pages.inbounds.meansNoLimit" }}</span>
                    </template>
                    <a-icon type="question-circle" theme="filled"></a-icon>
                </a-tooltip>
            </td>
            <td>
                <a-form-item>
                    <a-input-number v-model="dbInbound.totalGB" :min="0"></a-input-number>
                </a-form-item>
            </td>
        </tr>
        <tr>
            <td>
                <span>{{ i18n "pages.inbounds.expireDate" }}</span>
                <a-tooltip>
                    <template slot="title">
                        <span>{{ i18n "pages.inbounds.leaveBlankToNeverExpire" }}</span>
                    </template>
                    <a-icon type="question-circle" theme="filled"></a-icon>
                </a-tooltip>
            </td>
            <td>
                <a-form-item>
                    <a-date-picker :show-time="{ format: 'HH:mm:ss' }" format="YYYY-MM-DD HH:mm:ss"
                                   :dropdown-class-name="themeSwitcher.currentTheme"
                                   v-model="dbInbound._expiryTime" style="width: 250px;"></a-date-picker>
                </a-form-item>
            </td>
        </tr>
    </table>
</a-form>


<!-- vmess settings -->
<template v-if="inbound.protocol === Protocols.VMESS">
    {{template "form/vmess"}}
</template>

<!-- vless settings -->
<template v-if="inbound.protocol === Protocols.VLESS">
    {{template "form/vless"}}
</template>

<!-- trojan settings -->
<template v-if="inbound.protocol === Protocols.TROJAN">
    {{template "form/trojan"}}
</template>

<!-- shadowsocks -->
<template v-if="inbound.protocol === Protocols.SHADOWSOCKS">
    {{template "form/shadowsocks"}}
</template>

<!-- dokodemo-door -->
<template v-if="inbound.protocol === Protocols.DOKODEMO">
    {{template "form/dokodemo"}}
</template>

<!-- socks -->
<template v-if="inbound.protocol === Protocols.SOCKS">
    {{template "form/socks"}}
</template>

<!-- http -->
<template v-if="inbound.protocol === Protocols.HTTP">
    {{template "form/http"}}
</template>

<!-- stream settings -->
<template v-if="inbound.canEnableStream()">
    {{template "form/streamSettings"}}
    {{template "form/externalProxy" }}
</template>

<!-- tls settings -->
<template v-if="inbound.canEnableTls()">
    {{template "form/tlsSettings"}}
</template>

<!-- sniffing -->
<template v-if="inbound.canSniffing()">
    {{template "form/sniffing"}}
</template>
{{end}}