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

Code before:
        let kafkaSaslMechanismOptions = [
            "None",
            "plain",
            "scram-sha-256",
            "scram-sha-512",
            "aws",
        ];

        for (let i = 100; i <= 999; i++) {
            acceptedStatusCodeOptions.push(i.toString());
        }

        this.acceptedStatusCodeOptions = acceptedStatusCodeOptions;
        this.dnsresolvetypeOptions = dnsresolvetypeOptions;
        this.kafkaSaslMechanismOptions = kafkaSaslMechanismOptions;
    },
    methods: {
        showDebugDialog() {
            this.modal.show();
        },
        async copyToClipboard() {
            try {
                await navigator.clipboard.writeText(this.curlCommand);
                toast.success(this.$t("CopyToClipboardSuccess"));
            } catch (err) {
                toast.error(this.$t("CopyToClipboardError") + err.message);
            }
        },
        /**
         * Initialize the edit monitor form
         * @returns {void}
         */
        init() {
            if (this.isAdd) {

                this.monitor = {
                    ...monitorDefaults
                };

                if (this.$root.proxyList && !this.monitor.proxyId) {
                    const proxy = this.$root.proxyList.find(proxy => proxy.default);

                    if (proxy) {
                        this.monitor.proxyId = proxy.id;
                    }
                }

                for (let i = 0; i < this.$root.notificationList.length; i++) {
                    if (this.$root.notificationList[i].isDefault === true) {
                        this.monitor.notificationIDList[this.$root.notificationList[i].id] = true;
                    }

Review comment (suggestion):
Please use interpolation ([docs](https://vue-i18n.intlify.dev/guide/essentials/syntax)) to format this.

The reason for this is that there might be languages which work [LTR instead of RTL](https://lingohub.com/blog/right-to-left-vs-left-to-right)
There having the message in a different place in the translation could make sense.

Code after:
                    }
                    if (!this.monitor.databaseConnectionString || isTemplate) {
                        this.monitor.databaseConnectionString = this.connectionStringTemplates[monitorType];
                    }
                    break;
                }
            }

            // Reset conditions since condition variables likely change:
            if (oldType && newType !== oldType) {
                this.monitor.conditions = [];
            }
        },

        currentGameObject(newGameObject, previousGameObject) {
            if (!this.monitor.port || (previousGameObject && previousGameObject.options.port === this.monitor.port)) {
                this.monitor.port = newGameObject.options.port;
            }
            this.monitor.game = newGameObject.keys[0];
        },

        "monitor.ignoreTls"(newVal) {
            if (newVal) {
                this.monitor.expiryNotification = false;
            }
        },
    },
    mounted() {
        this.modal = new Modal(this.$refs.modal);
        this.init();

        let acceptedStatusCodeOptions = [
            "100-199",
            "200-299",
            "300-399",
            "400-499",
            "500-599",
        ];

        let dnsresolvetypeOptions = [
            "A",
            "AAAA",
            "CAA",
            "CNAME",
            "MX",
            "NS",
            "PTR",
            "SOA",
            "SRV",
            "TXT",
        ];