https://www.npmjs.com/package/vue-tel-input here a repo that integrate beautifully vue-tel-input
Here an exemple to make it work with q-form:
<q-field
v-model="bookingPhoneNumber"
borderless
:rules="[isRequired, isPhoneNumberValid]"
>
<vue3-q-tel-input
v-model:tel="bookingPhoneNumber"
class="pr-b-tel-input pronto-input"
default-country="fr"
:label="t('generic.phoneNumber')"
rounded
outlined
@error="isPhoneNumberInError = $event"
/>
</q-field>
const isPhoneNumberInError = ref(false);
async function isPhoneNumberValid(): Promise<boolean | string> {
// sleep 100ms
await new Promise((r) => setTimeout(r, 100));
return (
!isPhoneNumberInError.value || 'Rentrer un numéro de téléphone valide'
);
}