18 lines
428 B
JavaScript
18 lines
428 B
JavaScript
import { useI18n } from 'vue-i18n';
|
|
|
|
export function useRequired($attrs) {
|
|
const { t } = useI18n();
|
|
|
|
const isRequired =
|
|
typeof $attrs['required'] === 'boolean'
|
|
? $attrs['required']
|
|
: Object.keys($attrs).includes('required');
|
|
const requiredFieldRule = val =>
|
|
isRequired ? !!val || t('fieldRequired') : null;
|
|
|
|
return {
|
|
isRequired,
|
|
requiredFieldRule
|
|
};
|
|
}
|