import {ref} from "@nuxtjs/composition-api"; import {QUERY_TYPE} from "~/types/enums"; import {DataProviders} from "~/types/interfaces"; import VueI18n from "vue-i18n"; /** * @category Use/form * @class UseChecker * Use Classe pour des utils de verifications */ class UseChecker{ /** * Use méthode fournissant une fonction pour tester la validité d'une Siret ainsi que la gestion du message d'erreur */ public static useHandleSiret(i18n:VueI18n, $dataProvider: DataProviders){ const siretError = ref(false) const siretErrorMessage = ref('') const checkSiret = async (siret:string) => { const response = await $dataProvider.invoke({ type: QUERY_TYPE.DEFAULT, url: 'siret-checking', id: siret }) if(typeof response !== 'undefined'){ siretError.value = !response.isCorrect siretErrorMessage.value = response.isCorrect ? '' : i18n.t('siret_error') as string }else{ siretError.value = false siretErrorMessage.value = '' } } return { siretError, siretErrorMessage, checkSiret } } } export default UseChecker