Repository: louislam/uptime-kuma
File: src/pages/EditMonitor.vue (Vue)

Code before:
                                            <label for="tls" class="form-label">{{ $t("Cert") }}</label>
                                            <textarea id="tls-cert" v-model="monitor.tlsCert" class="form-control" :placeholder="$t('Cert body')" required></textarea>
                                        </div>
                                        <div class="my-3">
                                            <label for="tls" class="form-label">{{ $t("Key") }}</label>
                                            <textarea id="tls-key" v-model="monitor.tlsKey" class="form-control" :placeholder="$t('Key body')" required></textarea>
                                        </div>
                                        <div class="my-3">
                                            <label for="tls" class="form-label">{{ $t("CA") }}</label>
                                            <textarea id="tls-ca" v-model="monitor.tlsCa" class="form-control" :placeholder="$t('Server CA')"></textarea>
                                        </div>
                                    </template>
                                    <template v-else>
                                        <div class="my-3">
                                            <label for="basicauth" class="form-label">{{ $t("Username") }}</label>
                                            <input id="basicauth-user" v-model="monitor.basic_auth_user" type="text" class="form-control" :placeholder="$t('Username')">
                                        </div>

                                        <div class="my-3">
                                            <label for="basicauth" class="form-label">{{ $t("Password") }}</label>
                                            <input id="basicauth-pass" v-model="monitor.basic_auth_pass" type="password" autocomplete="new-password" class="form-control" :placeholder="$t('Password')">
                                        </div>
                                        <template v-if="monitor.authMethod === 'ntlm' ">
                                            <div class="my-3">
                                                <label for="basicauth" class="form-label">{{ $t("Domain") }}</label>
                                                <input id="basicauth-domain" v-model="monitor.authDomain" type="text" class="form-control" :placeholder="$t('Domain')">
                                            </div>

                                            <div class="my-3">
                                                <label for="basicauth" class="form-label">{{ $t("Workstation") }}</label>
                                                <input id="basicauth-workstation" v-model="monitor.authWorkstation" type="text" class="form-control" :placeholder="$t('Workstation')">
                                            </div>
                                        </template>
                                    </template>
                                </template>
                            </template>

                            <!-- gRPC Options -->
                            <template v-if="monitor.type === 'grpc-keyword' ">
                                <!-- Proto service enable TLS -->
                                <h2 class="mt-5 mb-2">{{ $t("GRPC Options") }}</h2>
                                <div class="my-3 form-check">
                                    <input id="grpc-enable-tls" v-model="monitor.grpcEnableTls" class="form-check-input" type="checkbox" value="">
                                    <label class="form-check-label" for="grpc-enable-tls">
                                        {{ $t("Enable TLS") }}
                                    </label>
                                    <div class="form-text">
                                        {{ $t("enableGRPCTls") }}
                                    </div>
                                </div>
                                <!-- Proto service name data -->

Review comment (security):
```suggestion
                                                <input id="ntlm-domain" v-model="monitor.authDomain" type="text" class="form-control" :placeholder="$t('Domain')">
```

Code after:
                                        </option>
                                        <option value="basic">
                                            {{ $t("HTTP Basic Auth") }}
                                        </option>
                                        <option value="ntlm">
                                            NTLM
                                        </option>
                                        <option value="mtls">
                                            mTLS
                                        </option>
                                    </select>
                                </div>
                                <template v-if="monitor.authMethod && monitor.authMethod !== null ">
                                    <template v-if="monitor.authMethod === 'mtls' ">
                                        <div class="my-3">
                                            <label for="tls-cert" class="form-label">{{ $t("Cert") }}</label>
                                            <textarea id="tls-cert" v-model="monitor.tlsCert" class="form-control" :placeholder="$t('Cert body')" required></textarea>
                                        </div>
                                        <div class="my-3">
                                            <label for="tls-key" class="form-label">{{ $t("Key") }}</label>
                                            <textarea id="tls-key" v-model="monitor.tlsKey" class="form-control" :placeholder="$t('Key body')" required></textarea>
                                        </div>
                                        <div class="my-3">
                                            <label for="tls-ca" class="form-label">{{ $t("CA") }}</label>
                                            <textarea id="tls-ca" v-model="monitor.tlsCa" class="form-control" :placeholder="$t('Server CA')"></textarea>
                                        </div>
                                    </template>
                                    <template v-else>
                                        <div class="my-3">
                                            <label for="basicauth-user" class="form-label">{{ $t("Username") }}</label>
                                            <input id="basicauth-user" v-model="monitor.basic_auth_user" type="text" class="form-control" :placeholder="$t('Username')">
                                        </div>

                                        <div class="my-3">
                                            <label for="basicauth-pass" class="form-label">{{ $t("Password") }}</label>
                                            <input id="basicauth-pass" v-model="monitor.basic_auth_pass" type="password" autocomplete="new-password" class="form-control" :placeholder="$t('Password')">
                                        </div>
                                        <template v-if="monitor.authMethod === 'ntlm' ">
                                            <div class="my-3">
                                                <label for="ntlm-domain" class="form-label">{{ $t("Domain") }}</label>
                                                <input id="ntlm-domain" v-model="monitor.authDomain" type="text" class="form-control" :placeholder="$t('Domain')">
                                            </div>

                                            <div class="my-3">
                                                <label for="ntlm-workstation" class="form-label">{{ $t("Workstation") }}</label>
                                                <input id="ntlm-workstation" v-model="monitor.authWorkstation" type="text" class="form-control" :placeholder="$t('Workstation')">
                                            </div>
                                        </template>
                                    </template>
                                </template>
                            </template>