react-native-moyasar-sdk
Version:
Official React Native Moyasar SDK - Integrate Credit Cards, Apple Pay, Samsung Pay, and STC Pay with simple interfaces for a seamless payment experience in your React Native app
27 lines (21 loc) • 751 B
text/typescript
import { getConfiguredLocalizations } from '../../localizations/i18n';
import { FieldValidator } from './field_validator';
export class CreditCardNameValidator extends FieldValidator {
private latinRegex = /^[a-zA-Z\s-]+$/;
constructor() {
super();
const { t } = getConfiguredLocalizations();
this.addRule(t('moyasarTranslation:nameRequired'), (value: string) => {
return value.length === 0;
});
this.addRule(
t('moyasarTranslation:onlyEnglishAlphabets'),
(value: string) => {
return !this.latinRegex.test(value);
}
);
this.addRule(t('moyasarTranslation:bothNamesRequired'), (value: string) => {
return value.split(' ').filter((name) => name !== '').length < 2;
});
}
}