Repository: louislam/uptime-kuma
File: src/components/notifications/GtxMessaging.vue (Vue)

Code before:
<template>
    <div class="mb-3">
        <label for="gtxmessaging-api-key" class="form-label">{{ $t("gtxMessagingApiKey") }}</label>
        <HiddenInput id="gtxmessaging-api-key" v-model="$parent.notification.gtxMessagingApiKey" :required="true"></HiddenInput>
    </div>
    <div class="mb-3">
        <label for="gtxmessaging-from" class="form-label">{{ $t("gtxMessagingFrom") }}</label>
        <input id="gtxmessaging-from" v-model="$parent.notification.gtxMessagingFrom" type="text" class="form-control" required>
    </div>
    <div class="mb-3">
        <label for="gtxmessaging-to" class="form-label">{{ $t("gtxMessagingTo") }}</label>
        <input id="gtxmessaging-to" v-model="$parent.notification.gtxMessagingTo" type="text" pattern="^[\d-]{10,31}(@[\w\.]{1,})?$" class="form-control" required>
    </div>
    <div class="mb-3">
        <i18n-t tag="p" keypath="More info on:" style="margin-top: 8px;">
            <a href="https://www.gtx-messaging.com/en/solutions/sms-gateway-api/" target="_blank">https://www.gtx-messaging.com/en/solutions/sms-gateway-api/</a>
        </i18n-t>
    </div>
</template>

<script>
import HiddenInput from "../HiddenInput.vue";

export default {
    components: {
        HiddenInput
    }
};
</script>


Review comment (suggestion):
A few things here:
- please don't use `margin-top` => use the `mt-XXX` classes instead 
- I think this can be simplified into a single i18n-t tag => removing the outer `div`
- The site you are linking to is a marketing page. What is the intend here? (what info are you trying to convey?)

Code after:
<template>
    <div class="mb-3">
        <label for="gtxmessaging-api-key" class="form-label">{{ $t("API Key") }}</label>
        <HiddenInput id="gtxmessaging-api-key" v-model="$parent.notification.gtxMessagingApiKey" :required="true"></HiddenInput>
        <div class="form-text">
            {{ $t("gtxMessagingApiKeyHint") }}
        </div>
    </div>
    <div class="mb-3">
        <label for="gtxmessaging-from" class="form-label">{{ $t("From Phone Number / Transmission Path Originating Address (TPOA)") }}</label>
        <input id="gtxmessaging-from" v-model="$parent.notification.gtxMessagingFrom" type="text" class="form-control" required>
        <i18n-t tag="div" keypath="gtxMessagingFromHint" class="form-text">
            <template #e164>
                <a href="https://wikipedia.org/wiki/E.164">E.164</a>
            </template>
            <template #e212>
                <a href="https://wikipedia.org/wiki/E.212">E.212</a>
            </template>
            <template #e214>
                <a href="https://wikipedia.org/wiki/E.214">E.214</a>
            </template>
        </i18n-t>
    </div>
    <div class="mb-3">
        <label for="gtxmessaging-to" class="form-label">{{ $t("To Phone Number") }}</label>
        <input id="gtxmessaging-to" v-model="$parent.notification.gtxMessagingTo" type="text" pattern="^\+\d+$" class="form-control" required>
        <i18n-t tag="div" keypath="gtxMessagingToHint" class="form-text">
            <template #e164>
                <a href="https://wikipedia.org/wiki/E.164">E.164</a>
            </template>
            <template #e212>
                <a href="https://wikipedia.org/wiki/E.212">E.212</a>
            </template>
            <template #e214>
                <a href="https://wikipedia.org/wiki/E.214">E.214</a>
            </template>
        </i18n-t>
    </div>
</template>

<script>
import HiddenInput from "../HiddenInput.vue";