| 1234567891011121314151617181920212223242526 |
- import type { AssertRule } from '~/types/interfaces'
- import {useI18n} from "vue-i18n";
- export class PositiveAssert implements AssertRule {
- supports(key: string): boolean {
- return key === 'positive'
- }
- createRule(criteria: string): (value: unknown) => true | string {
- const { t } = useI18n()
- if (criteria === 'positive') {
- return (value: number) =>
- value === null ||
- value > 0 ||
- t(`must_be_positive`)
- }else if (criteria === 'positive_or_zero'){
- return (value: number) =>
- value === null ||
- value >= 0 ||
- t(`must_be_positive_or_egal_0`)
- }
- return () => true
- }
- }
|