@xsolla/payment-client-core 0.1.2 → 0.1.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2020/lib/core/credit-card/credit-card-settings.interface.mjs +2 -0
- package/esm2020/lib/core/credit-card/credit-card-types.enum.mjs +20 -0
- package/esm2020/lib/core/credit-card/credit-card.interface.mjs +2 -0
- package/esm2020/lib/core/credit-card/credit-card.service.mjs +41 -0
- package/esm2020/lib/core/credit-card/credit-cards-map.const.mjs +36 -0
- package/esm2020/lib/core/credit-card/default-mask.const.mjs +2 -0
- package/esm2020/lib/core/credit-card/four-block-mask.const.mjs +2 -0
- package/esm2020/lib/core/credit-card/ordered-cards-settings.const.mjs +45 -0
- package/esm2020/lib/core/credit-card/types/american-express.mjs +13 -0
- package/esm2020/lib/core/credit-card/types/aura.mjs +15 -0
- package/esm2020/lib/core/credit-card/types/china-union-pay.mjs +12 -0
- package/esm2020/lib/core/credit-card/types/dankort.mjs +15 -0
- package/esm2020/lib/core/credit-card/types/default-card.mjs +13 -0
- package/esm2020/lib/core/credit-card/types/diners-clubs.mjs +13 -0
- package/esm2020/lib/core/credit-card/types/discover.mjs +13 -0
- package/esm2020/lib/core/credit-card/types/elo.mjs +13 -0
- package/esm2020/lib/core/credit-card/types/hipercard.mjs +13 -0
- package/esm2020/lib/core/credit-card/types/jcb.mjs +13 -0
- package/esm2020/lib/core/credit-card/types/maestro.mjs +14 -0
- package/esm2020/lib/core/credit-card/types/mastercard.mjs +16 -0
- package/esm2020/lib/core/credit-card/types/mir.mjs +15 -0
- package/esm2020/lib/core/credit-card/types/naranja.mjs +15 -0
- package/esm2020/lib/core/credit-card/types/postepay.mjs +13 -0
- package/esm2020/lib/core/credit-card/types/visa.mjs +13 -0
- package/esm2020/lib/core/payment/actions/next-action.interface.mjs +1 -1
- package/esm2020/lib/core/payment/actions/next-actions.mjs +1 -3
- package/esm2020/lib/core/payment/actions/show-fields/show-fields.action.token.mjs +3 -2
- package/esm2020/lib/core/payment/credit-card-state/credit-card-state.interface.mjs +2 -0
- package/esm2020/lib/core/payment/credit-card-state/credit-card-state.service.mjs +14 -0
- package/esm2020/lib/core/payment/form/controls/card-number-control.config.mjs +10 -0
- package/esm2020/lib/core/payment/form/converters/card-number.converter.mjs +45 -0
- package/esm2020/lib/core/payment/form/converters/converter.abstract.mjs +8 -6
- package/esm2020/lib/core/payment/form/converters/converters-map.mjs +3 -1
- package/esm2020/lib/core/payment/form/converters/email.converter.mjs +3 -3
- package/esm2020/lib/core/payment/form/converters/zip.converter.mjs +4 -5
- package/esm2020/lib/core/payment/form/field-status.interface.mjs +2 -0
- package/esm2020/lib/core/payment/form/form-fields-status.interface.mjs +2 -0
- package/esm2020/lib/core/payment/form/form.module.mjs +8 -4
- package/esm2020/lib/core/payment/form/input-event.enum.mjs +6 -0
- package/esm2020/lib/core/payment/form/validators/async-validator-fn.type.mjs +2 -0
- package/esm2020/lib/core/payment/form/validators/convert.function.mjs +6 -14
- package/esm2020/lib/core/payment/form/validators/credit-card-min-length.validator.mjs +32 -0
- package/esm2020/lib/core/payment/form/validators/email-validator.mjs +3 -4
- package/esm2020/lib/core/payment/form/validators/is-empty-input-value.function.mjs +4 -0
- package/esm2020/lib/core/payment/form/validators/luhn-formula-validator/luhn-formula.validator.mjs +40 -0
- package/esm2020/lib/core/payment/form/validators/required-validator.mjs +3 -4
- package/esm2020/lib/core/payment/form/validators/validation-error.interface.mjs +1 -1
- package/esm2020/lib/core/payment/form/validators/validators.module.mjs +18 -0
- package/esm2020/lib/core/payment/payment.interface.mjs +1 -1
- package/esm2020/lib/core/payment/payment.service.mjs +57 -46
- package/esm2020/lib/core/payment/sync/field-async-validation.interface.mjs +2 -0
- package/esm2020/lib/core/payment/sync/sync-response.class.mjs +7 -4
- package/esm2020/lib/core/payment/sync/sync.service.mjs +14 -11
- package/esm2020/lib/core/payment/xps-response.interface.mjs +1 -1
- package/esm2020/lib/core/type-guards/is-string.function.mjs +4 -0
- package/esm2020/lib/core-library.service.mjs +20 -7
- package/fesm2015/xsolla-payment-client-core.mjs +559 -120
- package/fesm2015/xsolla-payment-client-core.mjs.map +1 -1
- package/fesm2020/xsolla-payment-client-core.mjs +558 -119
- package/fesm2020/xsolla-payment-client-core.mjs.map +1 -1
- package/lib/core/credit-card/credit-card-settings.interface.d.ts +10 -0
- package/lib/core/credit-card/credit-card-types.enum.d.ts +18 -0
- package/lib/core/credit-card/credit-card.interface.d.ts +9 -0
- package/lib/core/credit-card/credit-card.service.d.ts +11 -0
- package/lib/core/credit-card/credit-cards-map.const.d.ts +5 -0
- package/lib/core/credit-card/default-mask.const.d.ts +1 -0
- package/lib/core/credit-card/four-block-mask.const.d.ts +1 -0
- package/lib/core/credit-card/ordered-cards-settings.const.d.ts +12 -0
- package/lib/core/credit-card/types/american-express.d.ts +2 -0
- package/lib/core/credit-card/types/aura.d.ts +2 -0
- package/lib/core/credit-card/types/china-union-pay.d.ts +2 -0
- package/lib/core/credit-card/types/dankort.d.ts +2 -0
- package/lib/core/credit-card/types/default-card.d.ts +2 -0
- package/lib/core/credit-card/types/diners-clubs.d.ts +2 -0
- package/lib/core/credit-card/types/discover.d.ts +2 -0
- package/lib/core/credit-card/types/elo.d.ts +2 -0
- package/lib/core/credit-card/types/hipercard.d.ts +2 -0
- package/lib/core/credit-card/types/jcb.d.ts +2 -0
- package/lib/core/credit-card/types/maestro.d.ts +2 -0
- package/lib/core/credit-card/types/mastercard.d.ts +2 -0
- package/lib/core/credit-card/types/mir.d.ts +2 -0
- package/lib/core/credit-card/types/naranja.d.ts +2 -0
- package/lib/core/credit-card/types/postepay.d.ts +2 -0
- package/lib/core/credit-card/types/visa.d.ts +2 -0
- package/lib/core/payment/actions/next-action.interface.d.ts +1 -2
- package/lib/core/payment/credit-card-state/credit-card-state.interface.d.ts +3 -0
- package/lib/core/payment/credit-card-state/credit-card-state.service.d.ts +7 -0
- package/lib/core/payment/form/controls/card-number-control.config.d.ts +11 -0
- package/lib/core/payment/form/converters/card-number.converter.d.ts +19 -0
- package/lib/core/payment/form/converters/converter.abstract.d.ts +4 -1
- package/lib/core/payment/form/converters/email.converter.d.ts +1 -1
- package/lib/core/payment/form/field-status.interface.d.ts +7 -0
- package/lib/core/payment/form/form-fields-status.interface.d.ts +4 -0
- package/lib/core/payment/form/form.module.d.ts +2 -1
- package/lib/core/payment/form/validators/async-validator-fn.type.d.ts +4 -0
- package/lib/core/payment/form/validators/convert.function.d.ts +1 -1
- package/lib/core/payment/form/validators/credit-card-min-length.validator.d.ts +12 -0
- package/lib/core/payment/form/validators/email-validator.d.ts +1 -1
- package/lib/core/payment/form/validators/is-empty-input-value.function.d.ts +1 -0
- package/lib/core/payment/form/validators/luhn-formula-validator/luhn-formula.validator.d.ts +6 -0
- package/lib/core/payment/form/validators/required-validator.d.ts +1 -1
- package/lib/core/payment/form/validators/validation-error.interface.d.ts +0 -1
- package/lib/core/payment/form/validators/validators.module.d.ts +7 -0
- package/lib/core/payment/payment.interface.d.ts +3 -1
- package/lib/core/payment/payment.service.d.ts +12 -4
- package/lib/core/payment/sync/field-async-validation.interface.d.ts +7 -0
- package/lib/core/payment/sync/sync-response.class.d.ts +2 -4
- package/lib/core/payment/sync/sync.service.d.ts +4 -0
- package/lib/core/payment/xps-response.interface.d.ts +1 -0
- package/lib/core/type-guards/is-string.function.d.ts +1 -0
- package/lib/core-library.service.d.ts +10 -1
- package/package.json +1 -1
- package/xsolla-payment-client-core-0.1.4.tgz +0 -0
- package/esm2020/lib/core/payment/actions/show-field-state/show-field-state.action.class.mjs +0 -12
- package/esm2020/lib/core/payment/actions/show-field-state/show-field-state.action.token.mjs +0 -13
- package/esm2020/lib/core/payment/actions/show-field-state/show-field-state.action.type.mjs +0 -2
- package/esm2020/lib/core/payment/form/input-events.enum.mjs +0 -6
- package/esm2020/lib/core/payment/form/validators/errors-codes.enum.mjs +0 -8
- package/esm2020/lib/core/payment/show-field-state.interface.mjs +0 -2
- package/lib/core/payment/actions/show-field-state/show-field-state.action.class.d.ts +0 -8
- package/lib/core/payment/actions/show-field-state/show-field-state.action.token.d.ts +0 -4
- package/lib/core/payment/actions/show-field-state/show-field-state.action.type.d.ts +0 -11
- package/lib/core/payment/form/validators/errors-codes.enum.d.ts +0 -6
- package/lib/core/payment/show-field-state.interface.d.ts +0 -8
- package/xsolla-payment-client-core-0.1.2.tgz +0 -0
- /package/lib/core/payment/form/{input-events.enum.d.ts → input-event.enum.d.ts} +0 -0
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { Converter } from './converter.abstract';
|
|
2
|
+
import { luhnFormulaValidator } from '../validators/luhn-formula-validator/luhn-formula.validator';
|
|
3
|
+
import { CardNumberConfig } from '../controls/card-number-control.config';
|
|
4
|
+
import { Injectable } from '@angular/core';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
import * as i1 from "../../sync/sync.service";
|
|
7
|
+
import * as i2 from "../validators/credit-card-min-length.validator";
|
|
8
|
+
export class CardNumberConverter extends Converter {
|
|
9
|
+
constructor(syncService, maxLengthValidator, minLengthValidator) {
|
|
10
|
+
super(syncService);
|
|
11
|
+
this.maxLengthValidator = maxLengthValidator;
|
|
12
|
+
this.minLengthValidator = minLengthValidator;
|
|
13
|
+
}
|
|
14
|
+
getValidators(field) {
|
|
15
|
+
return super
|
|
16
|
+
.getValidators(field)
|
|
17
|
+
.concat([
|
|
18
|
+
luhnFormulaValidator,
|
|
19
|
+
this.minLengthValidator.validate,
|
|
20
|
+
this.maxLengthValidator.validate,
|
|
21
|
+
]);
|
|
22
|
+
}
|
|
23
|
+
createControlConfig(field, formState) {
|
|
24
|
+
const config = this.createDefaultControlConfig(CardNumberConfig, field);
|
|
25
|
+
config.placeholder = config.title;
|
|
26
|
+
config.availableCardTypes =
|
|
27
|
+
formState?.availableCardTypes ?? [];
|
|
28
|
+
config.activeCardType = formState?.activeCardType;
|
|
29
|
+
config.customError = formState?.customError;
|
|
30
|
+
config.disabled = formState?.disabled ?? false;
|
|
31
|
+
return config;
|
|
32
|
+
}
|
|
33
|
+
getAutocomplete() {
|
|
34
|
+
return 'cc-number';
|
|
35
|
+
}
|
|
36
|
+
getDataType() {
|
|
37
|
+
return 'text';
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
CardNumberConverter.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: CardNumberConverter, deps: [{ token: i1.SyncService }, { token: i2.CreditCardMinLengthValidator }, { token: i2.CreditCardMinLengthValidator }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
41
|
+
CardNumberConverter.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: CardNumberConverter });
|
|
42
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: CardNumberConverter, decorators: [{
|
|
43
|
+
type: Injectable
|
|
44
|
+
}], ctorParameters: function () { return [{ type: i1.SyncService }, { type: i2.CreditCardMinLengthValidator }, { type: i2.CreditCardMinLengthValidator }]; } });
|
|
45
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FyZC1udW1iZXIuY29udmVydGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvcGF5bWVudC1jbGllbnQtY29yZS9zcmMvbGliL2NvcmUvcGF5bWVudC9mb3JtL2NvbnZlcnRlcnMvY2FyZC1udW1iZXIuY29udmVydGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUtqRCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSw2REFBNkQsQ0FBQztBQUVuRyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUUxRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7O0FBRzNDLE1BQU0sT0FBTyxtQkFBb0IsU0FBUSxTQUFTO0lBQ2hELFlBQ0UsV0FBd0IsRUFDUCxrQkFBZ0QsRUFDaEQsa0JBQWdEO1FBRWpFLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUhGLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBOEI7UUFDaEQsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUE4QjtJQUduRSxDQUFDO0lBRU0sYUFBYSxDQUFDLEtBQVk7UUFDL0IsT0FBTyxLQUFLO2FBQ1QsYUFBYSxDQUFDLEtBQUssQ0FBQzthQUNwQixNQUFNLENBQUM7WUFDTixvQkFBb0I7WUFDcEIsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFFBQVE7WUFDaEMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFFBQVE7U0FDakMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVTLG1CQUFtQixDQUMzQixLQUFZLEVBQ1osU0FBb0I7UUFFcEIsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLDBCQUEwQixDQUFDLGdCQUFnQixFQUFFLEtBQUssQ0FBQyxDQUFDO1FBRXhFLE1BQU0sQ0FBQyxXQUFXLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQztRQUVsQyxNQUFNLENBQUMsa0JBQWtCO1lBQ3RCLFNBQVMsRUFBRSxrQkFBd0MsSUFBSSxFQUFFLENBQUM7UUFFN0QsTUFBTSxDQUFDLGNBQWMsR0FBRyxTQUFTLEVBQUUsY0FBaUMsQ0FBQztRQUVyRSxNQUFNLENBQUMsV0FBVyxHQUFHLFNBQVMsRUFBRSxXQUFxQixDQUFDO1FBQ3RELE1BQU0sQ0FBQyxRQUFRLEdBQUcsU0FBUyxFQUFFLFFBQVEsSUFBSSxLQUFLLENBQUM7UUFFL0MsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQztJQUVTLGVBQWU7UUFDdkIsT0FBTyxXQUFXLENBQUM7SUFDckIsQ0FBQztJQUVTLFdBQVc7UUFDbkIsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQzs7Z0hBNUNVLG1CQUFtQjtvSEFBbkIsbUJBQW1COzJGQUFuQixtQkFBbUI7a0JBRC9CLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb252ZXJ0ZXIgfSBmcm9tICcuL2NvbnZlcnRlci5hYnN0cmFjdCc7XG5pbXBvcnQgeyBTeW5jU2VydmljZSB9IGZyb20gJy4uLy4uL3N5bmMvc3luYy5zZXJ2aWNlJztcbmltcG9ydCB7IENyZWRpdENhcmRNaW5MZW5ndGhWYWxpZGF0b3IgfSBmcm9tICcuLi92YWxpZGF0b3JzL2NyZWRpdC1jYXJkLW1pbi1sZW5ndGgudmFsaWRhdG9yJztcbmltcG9ydCB7IEZpZWxkIH0gZnJvbSAnLi4vLi4vZmllbGQuaW50ZXJmYWNlJztcbmltcG9ydCB7IFZhbGlkYXRvckZuIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgbHVobkZvcm11bGFWYWxpZGF0b3IgfSBmcm9tICcuLi92YWxpZGF0b3JzL2x1aG4tZm9ybXVsYS12YWxpZGF0b3IvbHVobi1mb3JtdWxhLnZhbGlkYXRvcic7XG5pbXBvcnQgeyBGb3JtU3RhdGUgfSBmcm9tICcuLi9mb3JtLXN0YXRlLmludGVyZmFjZSc7XG5pbXBvcnQgeyBDYXJkTnVtYmVyQ29uZmlnIH0gZnJvbSAnLi4vY29udHJvbHMvY2FyZC1udW1iZXItY29udHJvbC5jb25maWcnO1xuaW1wb3J0IHsgQ3JlZGl0Q2FyZFR5cGVzIH0gZnJvbSAnLi4vLi4vLi4vY3JlZGl0LWNhcmQvY3JlZGl0LWNhcmQtdHlwZXMuZW51bSc7XG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBDYXJkTnVtYmVyQ29udmVydGVyIGV4dGVuZHMgQ29udmVydGVyIHtcbiAgcHVibGljIGNvbnN0cnVjdG9yKFxuICAgIHN5bmNTZXJ2aWNlOiBTeW5jU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IG1heExlbmd0aFZhbGlkYXRvcjogQ3JlZGl0Q2FyZE1pbkxlbmd0aFZhbGlkYXRvcixcbiAgICBwcml2YXRlIHJlYWRvbmx5IG1pbkxlbmd0aFZhbGlkYXRvcjogQ3JlZGl0Q2FyZE1pbkxlbmd0aFZhbGlkYXRvclxuICApIHtcbiAgICBzdXBlcihzeW5jU2VydmljZSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0VmFsaWRhdG9ycyhmaWVsZDogRmllbGQpOiBWYWxpZGF0b3JGbltdIHtcbiAgICByZXR1cm4gc3VwZXJcbiAgICAgIC5nZXRWYWxpZGF0b3JzKGZpZWxkKVxuICAgICAgLmNvbmNhdChbXG4gICAgICAgIGx1aG5Gb3JtdWxhVmFsaWRhdG9yLFxuICAgICAgICB0aGlzLm1pbkxlbmd0aFZhbGlkYXRvci52YWxpZGF0ZSxcbiAgICAgICAgdGhpcy5tYXhMZW5ndGhWYWxpZGF0b3IudmFsaWRhdGUsXG4gICAgICBdKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBjcmVhdGVDb250cm9sQ29uZmlnKFxuICAgIGZpZWxkOiBGaWVsZCxcbiAgICBmb3JtU3RhdGU6IEZvcm1TdGF0ZVxuICApOiBDYXJkTnVtYmVyQ29uZmlnIHtcbiAgICBjb25zdCBjb25maWcgPSB0aGlzLmNyZWF0ZURlZmF1bHRDb250cm9sQ29uZmlnKENhcmROdW1iZXJDb25maWcsIGZpZWxkKTtcblxuICAgIGNvbmZpZy5wbGFjZWhvbGRlciA9IGNvbmZpZy50aXRsZTtcblxuICAgIGNvbmZpZy5hdmFpbGFibGVDYXJkVHlwZXMgPVxuICAgICAgKGZvcm1TdGF0ZT8uYXZhaWxhYmxlQ2FyZFR5cGVzIGFzIENyZWRpdENhcmRUeXBlc1tdKSA/PyBbXTtcblxuICAgIGNvbmZpZy5hY3RpdmVDYXJkVHlwZSA9IGZvcm1TdGF0ZT8uYWN0aXZlQ2FyZFR5cGUgYXMgQ3JlZGl0Q2FyZFR5cGVzO1xuXG4gICAgY29uZmlnLmN1c3RvbUVycm9yID0gZm9ybVN0YXRlPy5jdXN0b21FcnJvciBhcyBzdHJpbmc7XG4gICAgY29uZmlnLmRpc2FibGVkID0gZm9ybVN0YXRlPy5kaXNhYmxlZCA/PyBmYWxzZTtcblxuICAgIHJldHVybiBjb25maWc7XG4gIH1cblxuICBwcm90ZWN0ZWQgZ2V0QXV0b2NvbXBsZXRlKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuICdjYy1udW1iZXInO1xuICB9XG5cbiAgcHJvdGVjdGVkIGdldERhdGFUeXBlKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuICd0ZXh0JztcbiAgfVxufVxuIl19
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { UntypedFormControl, Validators } from '@angular/forms';
|
|
2
2
|
import { convert } from '../validators/convert.function';
|
|
3
|
-
import {
|
|
4
|
-
import { ErrorsCodes } from '../validators/errors-codes.enum';
|
|
3
|
+
import { convertedRequiredValidator } from '../validators/required-validator';
|
|
5
4
|
export class Converter {
|
|
6
5
|
constructor(syncService) {
|
|
7
6
|
this.syncService = syncService;
|
|
@@ -14,12 +13,12 @@ export class Converter {
|
|
|
14
13
|
return config;
|
|
15
14
|
}
|
|
16
15
|
convertToFormControl(field) {
|
|
17
|
-
return new UntypedFormControl(this.getValue(field), this.getValidators(field));
|
|
16
|
+
return new UntypedFormControl(this.getValue(field), this.getValidators(field), this.getAsyncValidators(field));
|
|
18
17
|
}
|
|
19
18
|
getValidators(field) {
|
|
20
19
|
const validators = [];
|
|
21
20
|
if (field.isMandatory === "1" /* XpsBoolean.true */) {
|
|
22
|
-
validators.push(
|
|
21
|
+
validators.push(convertedRequiredValidator());
|
|
23
22
|
}
|
|
24
23
|
if (field.regex) {
|
|
25
24
|
const match = /^\/(.*)\/([gim]*)$/.exec(field.regex);
|
|
@@ -28,11 +27,14 @@ export class Converter {
|
|
|
28
27
|
const errorMessage = field.validation_error_msg
|
|
29
28
|
? field.validation_error_msg
|
|
30
29
|
: 'Enter valid data';
|
|
31
|
-
validators.push(convert(Validators.pattern(pattern), errorMessage
|
|
30
|
+
validators.push(convert(Validators.pattern(pattern), errorMessage));
|
|
32
31
|
}
|
|
33
32
|
}
|
|
34
33
|
return validators;
|
|
35
34
|
}
|
|
35
|
+
getAsyncValidators(field) {
|
|
36
|
+
return async () => this.syncService.validate(field);
|
|
37
|
+
}
|
|
36
38
|
createDefaultControlConfig(controlConfigClass, field) {
|
|
37
39
|
const config = new controlConfigClass();
|
|
38
40
|
this.copyCommonOptions(config, field);
|
|
@@ -70,4 +72,4 @@ export class Converter {
|
|
|
70
72
|
});
|
|
71
73
|
}
|
|
72
74
|
}
|
|
73
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
75
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udmVydGVyLmFic3RyYWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvcGF5bWVudC1jbGllbnQtY29yZS9zcmMvbGliL2NvcmUvcGF5bWVudC9mb3JtL2NvbnZlcnRlcnMvY29udmVydGVyLmFic3RyYWN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQU9oRSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDekQsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFJOUUsTUFBTSxPQUFnQixTQUFTO0lBQzdCLFlBQWdDLFdBQXdCO1FBQXhCLGdCQUFXLEdBQVgsV0FBVyxDQUFhO0lBQUcsQ0FBQztJQUVyRCxlQUFlLENBQUMsS0FBWSxFQUFFLFNBQXFCO1FBQ3hELE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxLQUFLLEVBQUUsU0FBUyxDQUFDLENBQUM7UUFFMUQsSUFBSSxTQUFTLEVBQUUsUUFBUSxFQUFFO1lBQ3ZCLE1BQU0sQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDO1NBQ3hCO1FBRUQsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQztJQUVNLG9CQUFvQixDQUFDLEtBQVk7UUFDdEMsT0FBTyxJQUFJLGtCQUFrQixDQUMzQixJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxFQUNwQixJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxFQUN6QixJQUFJLENBQUMsa0JBQWtCLENBQUMsS0FBSyxDQUFDLENBQy9CLENBQUM7SUFDSixDQUFDO0lBRU0sYUFBYSxDQUFDLEtBQVk7UUFDL0IsTUFBTSxVQUFVLEdBQWtCLEVBQUUsQ0FBQztRQUVyQyxJQUFJLEtBQUssQ0FBQyxXQUFXLDhCQUFvQixFQUFFO1lBQ3pDLFVBQVUsQ0FBQyxJQUFJLENBQUMsMEJBQTBCLEVBQUUsQ0FBQyxDQUFDO1NBQy9DO1FBRUQsSUFBSSxLQUFLLENBQUMsS0FBSyxFQUFFO1lBQ2YsTUFBTSxLQUFLLEdBQUcsb0JBQW9CLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUVyRCxJQUFJLEtBQUssRUFBRTtnQkFDVCxNQUFNLE9BQU8sR0FBRyxJQUFJLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBQy9DLE1BQU0sWUFBWSxHQUFHLEtBQUssQ0FBQyxvQkFBb0I7b0JBQzdDLENBQUMsQ0FBQyxLQUFLLENBQUMsb0JBQW9CO29CQUM1QixDQUFDLENBQUMsa0JBQWtCLENBQUM7Z0JBQ3ZCLFVBQVUsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLEVBQUUsWUFBWSxDQUFDLENBQUMsQ0FBQzthQUNyRTtTQUNGO1FBRUQsT0FBTyxVQUFVLENBQUM7SUFDcEIsQ0FBQztJQUVNLGtCQUFrQixDQUN2QixLQUFZO1FBRVosT0FBTyxLQUFLLElBQUksRUFBRSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3RELENBQUM7SUFFTSwwQkFBMEIsQ0FDL0Isa0JBQStCLEVBQy9CLEtBQVk7UUFFWixNQUFNLE1BQU0sR0FBRyxJQUFJLGtCQUFrQixFQUFFLENBQUM7UUFFeEMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLE1BQU0sRUFBRSxLQUFLLENBQUMsQ0FBQztRQUV0QyxPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDO0lBRU0sUUFBUSxDQUFDLEtBQVk7UUFDMUIsT0FBTyxLQUFLLENBQUMsS0FBSyxDQUFDO0lBQ3JCLENBQUM7SUFPUyxXQUFXO1FBQ25CLE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFFUyxlQUFlO1FBQ3ZCLE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztJQUVTLG1CQUFtQjtRQUMzQixPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFFTyxzQkFBc0IsQ0FBQyxLQUFZO1FBQ3pDLE9BQU87WUFDTCxJQUFJLEVBQUUsS0FBSyxDQUFDLElBQUk7WUFDaEIsS0FBSyxFQUFFLEtBQUssQ0FBQyxLQUFLO1lBQ2xCLFNBQVMsRUFBRSxLQUFLLENBQUMsVUFBVTtZQUMzQixRQUFRLEVBQUUsSUFBSSxDQUFDLFdBQVcsRUFBRTtZQUM1QixRQUFRLEVBQUUsS0FBSyxDQUFDLFVBQVUsOEJBQW9CO1lBQzlDLFdBQVcsRUFBRSxLQUFLLENBQUMsT0FBTztZQUMxQixZQUFZLEVBQUUsSUFBSSxDQUFDLGVBQWUsRUFBRTtTQUNyQyxDQUFDO0lBQ0osQ0FBQztJQUVPLGlCQUFpQixDQUN2QixNQUFjLEVBQ2QsS0FBWTtRQUVaLE1BQU0sbUJBQW1CLEdBQUcsSUFBSSxDQUFDLHNCQUFzQixDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRS9ELE1BQU0sQ0FBQyxJQUFJLENBQUMsbUJBQW1CLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxTQUFpQixFQUFFLEVBQUU7WUFDN0QsSUFBSSxDQUFDLENBQUMsU0FBUyxJQUFJLE1BQU0sQ0FBQyxFQUFFO2dCQUN6QixNQUFxQyxDQUFDLFNBQVMsQ0FBQyxHQUMvQyxtQkFDRCxDQUFDLFNBQVMsQ0FBQyxDQUFDO2FBQ2Q7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFVudHlwZWRGb3JtQ29udHJvbCwgVmFsaWRhdG9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IFhwc0Jvb2xlYW4gfSBmcm9tICcuLi8uLi8uLi94cHMtYm9vbGVhbi5lbnVtJztcbmltcG9ydCB7IEZpZWxkIH0gZnJvbSAnLi4vLi4vZmllbGQuaW50ZXJmYWNlJztcbmltcG9ydCB7IFN5bmNTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc3luYy9zeW5jLnNlcnZpY2UnO1xuaW1wb3J0IHsgQ29tbW9uQ29udHJvbENvbmZpZyB9IGZyb20gJy4uL2NvbW1vbi1jb250cm9sLWNvbmZpZy5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgQ29udHJvbENvbmZpZyB9IGZyb20gJy4uL2NvbnRyb2xzL2NvbnRyb2wtY29uZmlnJztcbmltcG9ydCB7IEZvcm1TdGF0ZSB9IGZyb20gJy4uL2Zvcm0tc3RhdGUuaW50ZXJmYWNlJztcbmltcG9ydCB7IGNvbnZlcnQgfSBmcm9tICcuLi92YWxpZGF0b3JzL2NvbnZlcnQuZnVuY3Rpb24nO1xuaW1wb3J0IHsgY29udmVydGVkUmVxdWlyZWRWYWxpZGF0b3IgfSBmcm9tICcuLi92YWxpZGF0b3JzL3JlcXVpcmVkLXZhbGlkYXRvcic7XG5pbXBvcnQgeyBWYWxpZGF0b3JGbiB9IGZyb20gJy4uL3ZhbGlkYXRvcnMvdmFsaWRhdG9yLWZuLnR5cGUnO1xuaW1wb3J0IHsgQXN5bmNWYWxpZGF0b3JGbiB9IGZyb20gJy4uL3ZhbGlkYXRvcnMvYXN5bmMtdmFsaWRhdG9yLWZuLnR5cGUnO1xuXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQ29udmVydGVyIHtcbiAgcHJvdGVjdGVkIGNvbnN0cnVjdG9yKHByb3RlY3RlZCBzeW5jU2VydmljZTogU3luY1NlcnZpY2UpIHt9XG5cbiAgcHVibGljIGNvbnZlcnRUb0NvbmZpZyhmaWVsZDogRmllbGQsIGZvcm1TdGF0ZT86IEZvcm1TdGF0ZSk6IENvbnRyb2xDb25maWcge1xuICAgIGNvbnN0IGNvbmZpZyA9IHRoaXMuY3JlYXRlQ29udHJvbENvbmZpZyhmaWVsZCwgZm9ybVN0YXRlKTtcblxuICAgIGlmIChmb3JtU3RhdGU/LmRpc2FibGVkKSB7XG4gICAgICBjb25maWcuZGlzYWJsZWQgPSB0cnVlO1xuICAgIH1cblxuICAgIHJldHVybiBjb25maWc7XG4gIH1cblxuICBwdWJsaWMgY29udmVydFRvRm9ybUNvbnRyb2woZmllbGQ6IEZpZWxkKTogVW50eXBlZEZvcm1Db250cm9sIHtcbiAgICByZXR1cm4gbmV3IFVudHlwZWRGb3JtQ29udHJvbChcbiAgICAgIHRoaXMuZ2V0VmFsdWUoZmllbGQpLFxuICAgICAgdGhpcy5nZXRWYWxpZGF0b3JzKGZpZWxkKSxcbiAgICAgIHRoaXMuZ2V0QXN5bmNWYWxpZGF0b3JzKGZpZWxkKVxuICAgICk7XG4gIH1cblxuICBwdWJsaWMgZ2V0VmFsaWRhdG9ycyhmaWVsZDogRmllbGQpOiBWYWxpZGF0b3JGbltdIHtcbiAgICBjb25zdCB2YWxpZGF0b3JzOiBWYWxpZGF0b3JGbltdID0gW107XG5cbiAgICBpZiAoZmllbGQuaXNNYW5kYXRvcnkgPT09IFhwc0Jvb2xlYW4udHJ1ZSkge1xuICAgICAgdmFsaWRhdG9ycy5wdXNoKGNvbnZlcnRlZFJlcXVpcmVkVmFsaWRhdG9yKCkpO1xuICAgIH1cblxuICAgIGlmIChmaWVsZC5yZWdleCkge1xuICAgICAgY29uc3QgbWF0Y2ggPSAvXlxcLyguKilcXC8oW2dpbV0qKSQvLmV4ZWMoZmllbGQucmVnZXgpO1xuXG4gICAgICBpZiAobWF0Y2gpIHtcbiAgICAgICAgY29uc3QgcGF0dGVybiA9IG5ldyBSZWdFeHAobWF0Y2hbMV0sIG1hdGNoWzJdKTtcbiAgICAgICAgY29uc3QgZXJyb3JNZXNzYWdlID0gZmllbGQudmFsaWRhdGlvbl9lcnJvcl9tc2dcbiAgICAgICAgICA/IGZpZWxkLnZhbGlkYXRpb25fZXJyb3JfbXNnXG4gICAgICAgICAgOiAnRW50ZXIgdmFsaWQgZGF0YSc7XG4gICAgICAgIHZhbGlkYXRvcnMucHVzaChjb252ZXJ0KFZhbGlkYXRvcnMucGF0dGVybihwYXR0ZXJuKSwgZXJyb3JNZXNzYWdlKSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIHZhbGlkYXRvcnM7XG4gIH1cblxuICBwdWJsaWMgZ2V0QXN5bmNWYWxpZGF0b3JzKFxuICAgIGZpZWxkOiBGaWVsZFxuICApOiBBc3luY1ZhbGlkYXRvckZuIHwgQXN5bmNWYWxpZGF0b3JGbltdIHwgbnVsbCB7XG4gICAgcmV0dXJuIGFzeW5jICgpID0+IHRoaXMuc3luY1NlcnZpY2UudmFsaWRhdGUoZmllbGQpO1xuICB9XG5cbiAgcHVibGljIGNyZWF0ZURlZmF1bHRDb250cm9sQ29uZmlnPFQgZXh0ZW5kcyB7IFtrZXk6IHN0cmluZ106IHVua25vd24gfT4oXG4gICAgY29udHJvbENvbmZpZ0NsYXNzOiBuZXcgKCkgPT4gVCxcbiAgICBmaWVsZDogRmllbGRcbiAgKTogVCB7XG4gICAgY29uc3QgY29uZmlnID0gbmV3IGNvbnRyb2xDb25maWdDbGFzcygpO1xuXG4gICAgdGhpcy5jb3B5Q29tbW9uT3B0aW9ucyhjb25maWcsIGZpZWxkKTtcblxuICAgIHJldHVybiBjb25maWc7XG4gIH1cblxuICBwdWJsaWMgZ2V0VmFsdWUoZmllbGQ6IEZpZWxkKTogc3RyaW5nIHtcbiAgICByZXR1cm4gZmllbGQudmFsdWU7XG4gIH1cblxuICBwcm90ZWN0ZWQgYWJzdHJhY3QgY3JlYXRlQ29udHJvbENvbmZpZyhcbiAgICBmaWVsZDogRmllbGQsXG4gICAgZm9ybVN0YXRlPzogRm9ybVN0YXRlXG4gICk6IENvbnRyb2xDb25maWc7XG5cbiAgcHJvdGVjdGVkIGdldERhdGFUeXBlKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuICd0ZXh0JztcbiAgfVxuXG4gIHByb3RlY3RlZCBnZXRBdXRvY29tcGxldGUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gJ29mZic7XG4gIH1cblxuICBwcm90ZWN0ZWQgc2hvdWxkSGlkZVVzZXJJbnB1dCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICBwcml2YXRlIGdldENvbW1vbkNvbnRyb2xDb25maWcoZmllbGQ6IEZpZWxkKTogQ29tbW9uQ29udHJvbENvbmZpZyB7XG4gICAgcmV0dXJuIHtcbiAgICAgIG5hbWU6IGZpZWxkLm5hbWUsXG4gICAgICB0aXRsZTogZmllbGQudGl0bGUsXG4gICAgICBsYWJlbEhpbnQ6IGZpZWxkLmxhYmVsX2hpbnQsXG4gICAgICBkYXRhVHlwZTogdGhpcy5nZXREYXRhVHlwZSgpLFxuICAgICAgcmVhZG9ubHk6IGZpZWxkLmlzUmVhZG9ubHkgPT09IFhwc0Jvb2xlYW4udHJ1ZSxcbiAgICAgIHBsYWNlaG9sZGVyOiBmaWVsZC5leGFtcGxlLFxuICAgICAgYXV0b2NvbXBsZXRlOiB0aGlzLmdldEF1dG9jb21wbGV0ZSgpLFxuICAgIH07XG4gIH1cblxuICBwcml2YXRlIGNvcHlDb21tb25PcHRpb25zPFRhcmdldCBleHRlbmRzIHsgW2tleTogc3RyaW5nXTogdW5rbm93biB9PihcbiAgICB0YXJnZXQ6IFRhcmdldCxcbiAgICBmaWVsZDogRmllbGRcbiAgKTogdm9pZCB7XG4gICAgY29uc3QgY29tbW9uQ29udHJvbENvbmZpZyA9IHRoaXMuZ2V0Q29tbW9uQ29udHJvbENvbmZpZyhmaWVsZCk7XG5cbiAgICBPYmplY3Qua2V5cyhjb21tb25Db250cm9sQ29uZmlnKS5mb3JFYWNoKChzb3VyY2VLZXk6IHN0cmluZykgPT4ge1xuICAgICAgaWYgKCEoc291cmNlS2V5IGluIHRhcmdldCkpIHtcbiAgICAgICAgKHRhcmdldCBhcyB7IFtrZXk6IHN0cmluZ106IHVua25vd24gfSlbc291cmNlS2V5XSA9IChcbiAgICAgICAgICBjb21tb25Db250cm9sQ29uZmlnIGFzIHVua25vd24gYXMgeyBba2V5OiBzdHJpbmddOiB1bmtub3duIH1cbiAgICAgICAgKVtzb3VyY2VLZXldO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG59XG4iXX0=
|
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
import { InjectionToken } from '@angular/core';
|
|
2
2
|
import { EmailConverter } from './email.converter';
|
|
3
3
|
import { ZipConverter } from './zip.converter';
|
|
4
|
+
import { CardNumberConverter } from './card-number.converter';
|
|
4
5
|
export const convertersMapToken = new InjectionToken('ConvertersTokensMap');
|
|
5
6
|
export const convertersMap = {
|
|
6
7
|
zip: ZipConverter,
|
|
7
8
|
email: EmailConverter,
|
|
9
|
+
card_number: CardNumberConverter,
|
|
8
10
|
};
|
|
9
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
11
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udmVydGVycy1tYXAuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9wYXltZW50LWNsaWVudC1jb3JlL3NyYy9saWIvY29yZS9wYXltZW50L2Zvcm0vY29udmVydGVycy9jb252ZXJ0ZXJzLW1hcC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRS9DLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFOUQsTUFBTSxDQUFDLE1BQU0sa0JBQWtCLEdBQUcsSUFBSSxjQUFjLENBQ2xELHFCQUFxQixDQUN0QixDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sYUFBYSxHQUFrQjtJQUMxQyxHQUFHLEVBQUUsWUFBWTtJQUNqQixLQUFLLEVBQUUsY0FBYztJQUNyQixXQUFXLEVBQUUsbUJBQW1CO0NBQ2pDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3Rpb25Ub2tlbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29udmVydGVyc01hcCB9IGZyb20gJy4vY29udmVydGVycy1tYXAuaW50ZXJmYWNlJztcbmltcG9ydCB7IEVtYWlsQ29udmVydGVyIH0gZnJvbSAnLi9lbWFpbC5jb252ZXJ0ZXInO1xuaW1wb3J0IHsgWmlwQ29udmVydGVyIH0gZnJvbSAnLi96aXAuY29udmVydGVyJztcbmltcG9ydCB7IENhcmROdW1iZXJDb252ZXJ0ZXIgfSBmcm9tICcuL2NhcmQtbnVtYmVyLmNvbnZlcnRlcic7XG5cbmV4cG9ydCBjb25zdCBjb252ZXJ0ZXJzTWFwVG9rZW4gPSBuZXcgSW5qZWN0aW9uVG9rZW48Q29udmVydGVyc01hcD4oXG4gICdDb252ZXJ0ZXJzVG9rZW5zTWFwJ1xuKTtcblxuZXhwb3J0IGNvbnN0IGNvbnZlcnRlcnNNYXA6IENvbnZlcnRlcnNNYXAgPSB7XG4gIHppcDogWmlwQ29udmVydGVyLFxuICBlbWFpbDogRW1haWxDb252ZXJ0ZXIsXG4gIGNhcmRfbnVtYmVyOiBDYXJkTnVtYmVyQ29udmVydGVyLFxufTtcbiJdfQ==
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Injectable } from '@angular/core';
|
|
2
2
|
import { TextControlConfig } from '../controls/text-control.config';
|
|
3
|
-
import {
|
|
3
|
+
import { convertedEmailValidator } from '../validators/email-validator';
|
|
4
4
|
import { Converter } from './converter.abstract';
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
6
6
|
import * as i1 from "../../sync/sync.service";
|
|
@@ -9,7 +9,7 @@ export class EmailConverter extends Converter {
|
|
|
9
9
|
super(syncService);
|
|
10
10
|
}
|
|
11
11
|
getValidators(field) {
|
|
12
|
-
return super.getValidators(field).concat([
|
|
12
|
+
return super.getValidators(field).concat([convertedEmailValidator()]);
|
|
13
13
|
}
|
|
14
14
|
createControlConfig(field) {
|
|
15
15
|
const config = this.createDefaultControlConfig(TextControlConfig, field);
|
|
@@ -26,4 +26,4 @@ EmailConverter.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", versi
|
|
|
26
26
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: EmailConverter, decorators: [{
|
|
27
27
|
type: Injectable
|
|
28
28
|
}], ctorParameters: function () { return [{ type: i1.SyncService }]; } });
|
|
29
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
29
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW1haWwuY29udmVydGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvcGF5bWVudC1jbGllbnQtY29yZS9zcmMvbGliL2NvcmUvcGF5bWVudC9mb3JtL2NvbnZlcnRlcnMvZW1haWwuY29udmVydGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHM0MsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDcEUsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFFeEUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHNCQUFzQixDQUFDOzs7QUFHakQsTUFBTSxPQUFPLGNBQWUsU0FBUSxTQUFTO0lBQzNDLFlBQW1CLFdBQXdCO1FBQ3pDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUNyQixDQUFDO0lBRU0sYUFBYSxDQUFDLEtBQVk7UUFDL0IsT0FBTyxLQUFLLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLHVCQUF1QixFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ3hFLENBQUM7SUFFUyxtQkFBbUIsQ0FBQyxLQUFZO1FBQ3hDLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQywwQkFBMEIsQ0FBQyxpQkFBaUIsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUV6RSxNQUFNLENBQUMsWUFBWSxHQUFHLE9BQU8sQ0FBQztRQUM5QixNQUFNLENBQUMsSUFBSSxHQUFHLE1BQU0sQ0FBQztRQUVyQixPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDO0lBRVMsV0FBVztRQUNuQixPQUFPLE9BQU8sQ0FBQztJQUNqQixDQUFDOzsyR0FwQlUsY0FBYzsrR0FBZCxjQUFjOzJGQUFkLGNBQWM7a0JBRDFCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGaWVsZCB9IGZyb20gJy4uLy4uL2ZpZWxkLmludGVyZmFjZSc7XG5pbXBvcnQgeyBTeW5jU2VydmljZSB9IGZyb20gJy4uLy4uL3N5bmMvc3luYy5zZXJ2aWNlJztcbmltcG9ydCB7IFRleHRDb250cm9sQ29uZmlnIH0gZnJvbSAnLi4vY29udHJvbHMvdGV4dC1jb250cm9sLmNvbmZpZyc7XG5pbXBvcnQgeyBjb252ZXJ0ZWRFbWFpbFZhbGlkYXRvciB9IGZyb20gJy4uL3ZhbGlkYXRvcnMvZW1haWwtdmFsaWRhdG9yJztcbmltcG9ydCB7IFZhbGlkYXRvckZuIH0gZnJvbSAnLi4vdmFsaWRhdG9ycy92YWxpZGF0b3ItZm4udHlwZSc7XG5pbXBvcnQgeyBDb252ZXJ0ZXIgfSBmcm9tICcuL2NvbnZlcnRlci5hYnN0cmFjdCc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBFbWFpbENvbnZlcnRlciBleHRlbmRzIENvbnZlcnRlciB7XG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihzeW5jU2VydmljZTogU3luY1NlcnZpY2UpIHtcbiAgICBzdXBlcihzeW5jU2VydmljZSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0VmFsaWRhdG9ycyhmaWVsZDogRmllbGQpOiBWYWxpZGF0b3JGbltdIHtcbiAgICByZXR1cm4gc3VwZXIuZ2V0VmFsaWRhdG9ycyhmaWVsZCkuY29uY2F0KFtjb252ZXJ0ZWRFbWFpbFZhbGlkYXRvcigpXSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgY3JlYXRlQ29udHJvbENvbmZpZyhmaWVsZDogRmllbGQpOiBUZXh0Q29udHJvbENvbmZpZyB7XG4gICAgY29uc3QgY29uZmlnID0gdGhpcy5jcmVhdGVEZWZhdWx0Q29udHJvbENvbmZpZyhUZXh0Q29udHJvbENvbmZpZywgZmllbGQpO1xuXG4gICAgY29uZmlnLmF1dG9jb21wbGV0ZSA9ICdlbWFpbCc7XG4gICAgY29uZmlnLmljb24gPSAnbWFpbCc7XG5cbiAgICByZXR1cm4gY29uZmlnO1xuICB9XG5cbiAgcHJvdGVjdGVkIGdldERhdGFUeXBlKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuICdlbWFpbCc7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -5,7 +5,6 @@ import { convert } from '../validators/convert.function';
|
|
|
5
5
|
import { restrictedValueValidator } from '../validators/restricted-value.validator';
|
|
6
6
|
import { Converter } from './converter.abstract';
|
|
7
7
|
import { masksFunctionsMap } from '../masks-functions.map';
|
|
8
|
-
import { ErrorsCodes } from '../validators/errors-codes.enum';
|
|
9
8
|
import * as i0 from "@angular/core";
|
|
10
9
|
import * as i1 from "../../sync/sync.service";
|
|
11
10
|
import * as i2 from "../../../country/country.service";
|
|
@@ -26,11 +25,11 @@ export class ZipConverter extends Converter {
|
|
|
26
25
|
const validators = super
|
|
27
26
|
.getValidators(field)
|
|
28
27
|
.concat([
|
|
29
|
-
convert(Validators.minLength(minLength), `Enter at least ${minLength} characters
|
|
30
|
-
convert(Validators.maxLength(maxLength), `Enter no more than ${maxLength} characters
|
|
28
|
+
convert(Validators.minLength(minLength), `Enter at least ${minLength} characters`),
|
|
29
|
+
convert(Validators.maxLength(maxLength), `Enter no more than ${maxLength} characters`),
|
|
31
30
|
]);
|
|
32
31
|
if (this.isUsCountry) {
|
|
33
|
-
validators.push(convert(restrictedValueValidator('00000'), 'Enter a valid ZIP code'
|
|
32
|
+
validators.push(convert(restrictedValueValidator('00000'), 'Enter a valid ZIP code'));
|
|
34
33
|
}
|
|
35
34
|
return validators;
|
|
36
35
|
}
|
|
@@ -65,4 +64,4 @@ ZipConverter.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version
|
|
|
65
64
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: ZipConverter, decorators: [{
|
|
66
65
|
type: Injectable
|
|
67
66
|
}], ctorParameters: function () { return [{ type: i1.SyncService }, { type: i2.CountryService }]; } });
|
|
68
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
67
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiemlwLmNvbnZlcnRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3BheW1lbnQtY2xpZW50LWNvcmUvc3JjL2xpYi9jb3JlL3BheW1lbnQvZm9ybS9jb252ZXJ0ZXJzL3ppcC5jb252ZXJ0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQWUsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFJekQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDcEUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3pELE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBQ3BGLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNqRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7OztBQUkzRCxNQUFNLE9BQU8sWUFBYSxTQUFRLFNBQVM7SUFLekMsWUFDRSxXQUF3QixFQUNQLGNBQThCO1FBRS9DLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUZGLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQU5oQyxjQUFTLEdBQUcsQ0FBQyxDQUFDO1FBQ2QsY0FBUyxHQUFHLEVBQUUsQ0FBQztRQUNmLG9CQUFlLEdBQUcsQ0FBQyxDQUFDO0lBT3JDLENBQUM7SUFFRCxJQUFZLFdBQVc7UUFDckIsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLFVBQVUsRUFBRSxLQUFLLElBQUksQ0FBQztJQUNuRCxDQUFDO0lBRU0sYUFBYSxDQUFDLEtBQVk7UUFDL0IsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQztRQUMzRSxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDO1FBQzNFLE1BQU0sVUFBVSxHQUFrQixLQUFLO2FBQ3BDLGFBQWEsQ0FBQyxLQUFLLENBQUM7YUFDcEIsTUFBTSxDQUFDO1lBQ04sT0FBTyxDQUNMLFVBQVUsQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLEVBQy9CLGtCQUFrQixTQUFTLGFBQWEsQ0FDekM7WUFFRCxPQUFPLENBQ0wsVUFBVSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsRUFDL0Isc0JBQXNCLFNBQVMsYUFBYSxDQUM3QztTQUNGLENBQUMsQ0FBQztRQUVMLElBQUksSUFBSSxDQUFDLFdBQVcsRUFBRTtZQUNwQixVQUFVLENBQUMsSUFBSSxDQUNiLE9BQU8sQ0FBQyx3QkFBd0IsQ0FBQyxPQUFPLENBQUMsRUFBRSx3QkFBd0IsQ0FBQyxDQUNyRSxDQUFDO1NBQ0g7UUFFRCxPQUFPLFVBQVUsQ0FBQztJQUNwQixDQUFDO0lBRVMsbUJBQW1CLENBQUMsS0FBWTtRQUN4QyxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsMEJBQTBCLENBQUMsaUJBQWlCLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDekUsTUFBTSxDQUFDLElBQUksR0FBRyxVQUFVLENBQUM7UUFFekIsSUFBSSxJQUFJLENBQUMsV0FBVyxFQUFFO1lBQ3BCLE1BQU0sQ0FBQyxVQUFVLEdBQUc7Z0JBQ2xCLEtBQUssRUFBRSxLQUFLO2dCQUNaLGdCQUFnQixFQUFFLElBQUk7Z0JBQ3RCLFFBQVEsRUFBRSxJQUFJO2FBQ0QsQ0FBQztZQUNoQixNQUFNLENBQUMsU0FBUyxHQUFHLFNBQVMsQ0FBQztZQUU3QixJQUFJLGlCQUFpQixDQUFDLEtBQUssQ0FBQyxFQUFFO2dCQUMzQixNQUFNLENBQUMsVUFBeUIsQ0FBQyxJQUFJLEdBQUcsaUJBQWlCLENBQUMsS0FBSyxDQUFDLENBQUM7YUFDbkU7U0FDRjthQUFNO1lBQ0wsTUFBTSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDO1NBQ25DO1FBRUQsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQztJQUVTLGVBQWU7UUFDdkIsT0FBTyxhQUFhLENBQUM7SUFDdkIsQ0FBQztJQUVTLFdBQVc7UUFDbkIsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQzs7eUdBdEVVLFlBQVk7NkdBQVosWUFBWTsyRkFBWixZQUFZO2tCQUR4QixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVmFsaWRhdG9yRm4sIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBDb3VudHJ5U2VydmljZSB9IGZyb20gJy4uLy4uLy4uL2NvdW50cnkvY291bnRyeS5zZXJ2aWNlJztcbmltcG9ydCB7IEZpZWxkIH0gZnJvbSAnLi4vLi4vZmllbGQuaW50ZXJmYWNlJztcbmltcG9ydCB7IFN5bmNTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc3luYy9zeW5jLnNlcnZpY2UnO1xuaW1wb3J0IHsgVGV4dENvbnRyb2xDb25maWcgfSBmcm9tICcuLi9jb250cm9scy90ZXh0LWNvbnRyb2wuY29uZmlnJztcbmltcG9ydCB7IGNvbnZlcnQgfSBmcm9tICcuLi92YWxpZGF0b3JzL2NvbnZlcnQuZnVuY3Rpb24nO1xuaW1wb3J0IHsgcmVzdHJpY3RlZFZhbHVlVmFsaWRhdG9yIH0gZnJvbSAnLi4vdmFsaWRhdG9ycy9yZXN0cmljdGVkLXZhbHVlLnZhbGlkYXRvcic7XG5pbXBvcnQgeyBDb252ZXJ0ZXIgfSBmcm9tICcuL2NvbnZlcnRlci5hYnN0cmFjdCc7XG5pbXBvcnQgeyBtYXNrc0Z1bmN0aW9uc01hcCB9IGZyb20gJy4uL21hc2tzLWZ1bmN0aW9ucy5tYXAnO1xuaW1wb3J0IHsgTWFza0NvbmZpZyB9IGZyb20gJy4uL21hc2stY29uZmlnLmludGVyZmFjZSc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBaaXBDb252ZXJ0ZXIgZXh0ZW5kcyBDb252ZXJ0ZXIge1xuICBwcml2YXRlIHJlYWRvbmx5IG1pbkxlbmd0aCA9IDM7XG4gIHByaXZhdGUgcmVhZG9ubHkgbWF4TGVuZ3RoID0gMTA7XG4gIHByaXZhdGUgcmVhZG9ubHkgdXNDb3VudHJ5TGVuZ3RoID0gNTtcblxuICBwdWJsaWMgY29uc3RydWN0b3IoXG4gICAgc3luY1NlcnZpY2U6IFN5bmNTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgY291bnRyeVNlcnZpY2U6IENvdW50cnlTZXJ2aWNlXG4gICkge1xuICAgIHN1cGVyKHN5bmNTZXJ2aWNlKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0IGlzVXNDb3VudHJ5KCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmNvdW50cnlTZXJ2aWNlLmdldENvdW50cnkoKSA9PT0gJ1VTJztcbiAgfVxuXG4gIHB1YmxpYyBnZXRWYWxpZGF0b3JzKGZpZWxkOiBGaWVsZCk6IFZhbGlkYXRvckZuW10ge1xuICAgIGNvbnN0IG1pbkxlbmd0aCA9IHRoaXMuaXNVc0NvdW50cnkgPyB0aGlzLnVzQ291bnRyeUxlbmd0aCA6IHRoaXMubWluTGVuZ3RoO1xuICAgIGNvbnN0IG1heExlbmd0aCA9IHRoaXMuaXNVc0NvdW50cnkgPyB0aGlzLnVzQ291bnRyeUxlbmd0aCA6IHRoaXMubWF4TGVuZ3RoO1xuICAgIGNvbnN0IHZhbGlkYXRvcnM6IFZhbGlkYXRvckZuW10gPSBzdXBlclxuICAgICAgLmdldFZhbGlkYXRvcnMoZmllbGQpXG4gICAgICAuY29uY2F0KFtcbiAgICAgICAgY29udmVydChcbiAgICAgICAgICBWYWxpZGF0b3JzLm1pbkxlbmd0aChtaW5MZW5ndGgpLFxuICAgICAgICAgIGBFbnRlciBhdCBsZWFzdCAke21pbkxlbmd0aH0gY2hhcmFjdGVyc2BcbiAgICAgICAgKSxcblxuICAgICAgICBjb252ZXJ0KFxuICAgICAgICAgIFZhbGlkYXRvcnMubWF4TGVuZ3RoKG1heExlbmd0aCksXG4gICAgICAgICAgYEVudGVyIG5vIG1vcmUgdGhhbiAke21heExlbmd0aH0gY2hhcmFjdGVyc2BcbiAgICAgICAgKSxcbiAgICAgIF0pO1xuXG4gICAgaWYgKHRoaXMuaXNVc0NvdW50cnkpIHtcbiAgICAgIHZhbGlkYXRvcnMucHVzaChcbiAgICAgICAgY29udmVydChyZXN0cmljdGVkVmFsdWVWYWxpZGF0b3IoJzAwMDAwJyksICdFbnRlciBhIHZhbGlkIFpJUCBjb2RlJylcbiAgICAgICk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHZhbGlkYXRvcnM7XG4gIH1cblxuICBwcm90ZWN0ZWQgY3JlYXRlQ29udHJvbENvbmZpZyhmaWVsZDogRmllbGQpOiBUZXh0Q29udHJvbENvbmZpZyB7XG4gICAgY29uc3QgY29uZmlnID0gdGhpcy5jcmVhdGVEZWZhdWx0Q29udHJvbENvbmZpZyhUZXh0Q29udHJvbENvbmZpZywgZmllbGQpO1xuICAgIGNvbmZpZy5pY29uID0gJ2xvY2F0aW9uJztcblxuICAgIGlmICh0aGlzLmlzVXNDb3VudHJ5KSB7XG4gICAgICBjb25maWcubWFza0NvbmZpZyA9IHtcbiAgICAgICAgZ3VpZGU6IGZhbHNlLFxuICAgICAgICB1bm1hc2tNb2RlbFZhbHVlOiB0cnVlLFxuICAgICAgICBzaG93TWFzazogdHJ1ZSxcbiAgICAgIH0gYXMgTWFza0NvbmZpZztcbiAgICAgIGNvbmZpZy5pbnB1dE1vZGUgPSAnbnVtZXJpYyc7XG5cbiAgICAgIGlmIChtYXNrc0Z1bmN0aW9uc01hcFsnemlwJ10pIHtcbiAgICAgICAgKGNvbmZpZy5tYXNrQ29uZmlnIGFzIE1hc2tDb25maWcpLm1hc2sgPSBtYXNrc0Z1bmN0aW9uc01hcFsnemlwJ107XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbmZpZy5tYXhMZW5ndGggPSB0aGlzLm1heExlbmd0aDtcbiAgICB9XG5cbiAgICByZXR1cm4gY29uZmlnO1xuICB9XG5cbiAgcHJvdGVjdGVkIGdldEF1dG9jb21wbGV0ZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiAncG9zdGFsLWNvZGUnO1xuICB9XG5cbiAgcHJvdGVjdGVkIGdldERhdGFUeXBlKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuICd0ZXh0JztcbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGQtc3RhdHVzLmludGVyZmFjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3BheW1lbnQtY2xpZW50LWNvcmUvc3JjL2xpYi9jb3JlL3BheW1lbnQvZm9ybS9maWVsZC1zdGF0dXMuaW50ZXJmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGb3JtQ29udHJvbFN0YXR1cywgVmFsaWRhdGlvbkVycm9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuZXhwb3J0IGludGVyZmFjZSBGaWVsZFN0YXR1cyB7XG4gIG5hbWU6IHN0cmluZztcbiAgdmFsaWRhdGlvblN0YXR1czogRm9ybUNvbnRyb2xTdGF0dXM7XG4gIGVycm9yczogVmFsaWRhdGlvbkVycm9ycyB8IG51bGw7XG4gIGlzRm9jdXNlZD86IGJvb2xlYW47XG59XG4iXX0=
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1maWVsZHMtc3RhdHVzLmludGVyZmFjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3BheW1lbnQtY2xpZW50LWNvcmUvc3JjL2xpYi9jb3JlL3BheW1lbnQvZm9ybS9mb3JtLWZpZWxkcy1zdGF0dXMuaW50ZXJmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGaWVsZFN0YXR1cyB9IGZyb20gJy4vZmllbGQtc3RhdHVzLmludGVyZmFjZSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRm9ybUZpZWxkc1N0YXR1cyB7XG4gIFtrZXk6IHN0cmluZ106IEZpZWxkU3RhdHVzO1xufVxuIl19
|
|
@@ -5,29 +5,33 @@ import { convertersMap, convertersMapToken } from './converters/converters-map';
|
|
|
5
5
|
import { EmailConverter } from './converters/email.converter';
|
|
6
6
|
import { ZipConverter } from './converters/zip.converter';
|
|
7
7
|
import { FormService } from './form.service';
|
|
8
|
+
import { CardNumberConverter } from './converters/card-number.converter';
|
|
9
|
+
import { ValidatorsModule } from './validators/validators.module';
|
|
8
10
|
import * as i0 from "@angular/core";
|
|
9
11
|
export class FormModule {
|
|
10
12
|
}
|
|
11
13
|
FormModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: FormModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
12
|
-
FormModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.7", ngImport: i0, type: FormModule, imports: [ReactiveFormsModule] });
|
|
14
|
+
FormModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.7", ngImport: i0, type: FormModule, imports: [ReactiveFormsModule, ValidatorsModule] });
|
|
13
15
|
FormModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: FormModule, providers: [
|
|
14
16
|
FormService,
|
|
15
17
|
ControlConfigService,
|
|
16
18
|
ZipConverter,
|
|
17
19
|
EmailConverter,
|
|
20
|
+
CardNumberConverter,
|
|
18
21
|
{ provide: convertersMapToken, useValue: convertersMap },
|
|
19
|
-
], imports: [ReactiveFormsModule] });
|
|
22
|
+
], imports: [ReactiveFormsModule, ValidatorsModule] });
|
|
20
23
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: FormModule, decorators: [{
|
|
21
24
|
type: NgModule,
|
|
22
25
|
args: [{
|
|
23
|
-
imports: [ReactiveFormsModule],
|
|
26
|
+
imports: [ReactiveFormsModule, ValidatorsModule],
|
|
24
27
|
providers: [
|
|
25
28
|
FormService,
|
|
26
29
|
ControlConfigService,
|
|
27
30
|
ZipConverter,
|
|
28
31
|
EmailConverter,
|
|
32
|
+
CardNumberConverter,
|
|
29
33
|
{ provide: convertersMapToken, useValue: convertersMap },
|
|
30
34
|
],
|
|
31
35
|
}]
|
|
32
36
|
}] });
|
|
33
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
37
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9wYXltZW50LWNsaWVudC1jb3JlL3NyYy9saWIvY29yZS9wYXltZW50L2Zvcm0vZm9ybS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUN6RSxPQUFPLEVBQUUsYUFBYSxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDaEYsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQzlELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDekUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7O0FBYWxFLE1BQU0sT0FBTyxVQUFVOzt1R0FBVixVQUFVO3dHQUFWLFVBQVUsWUFWWCxtQkFBbUIsRUFBRSxnQkFBZ0I7d0dBVXBDLFVBQVUsYUFUVjtRQUNULFdBQVc7UUFDWCxvQkFBb0I7UUFDcEIsWUFBWTtRQUNaLGNBQWM7UUFDZCxtQkFBbUI7UUFDbkIsRUFBRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsUUFBUSxFQUFFLGFBQWEsRUFBRTtLQUN6RCxZQVJTLG1CQUFtQixFQUFFLGdCQUFnQjsyRkFVcEMsVUFBVTtrQkFYdEIsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUUsQ0FBQyxtQkFBbUIsRUFBRSxnQkFBZ0IsQ0FBQztvQkFDaEQsU0FBUyxFQUFFO3dCQUNULFdBQVc7d0JBQ1gsb0JBQW9CO3dCQUNwQixZQUFZO3dCQUNaLGNBQWM7d0JBQ2QsbUJBQW1CO3dCQUNuQixFQUFFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxRQUFRLEVBQUUsYUFBYSxFQUFFO3FCQUN6RDtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgQ29udHJvbENvbmZpZ1NlcnZpY2UgfSBmcm9tICcuL2NvbnRyb2xzL2NvbnRyb2wtY29uZmlnLnNlcnZpY2UnO1xuaW1wb3J0IHsgY29udmVydGVyc01hcCwgY29udmVydGVyc01hcFRva2VuIH0gZnJvbSAnLi9jb252ZXJ0ZXJzL2NvbnZlcnRlcnMtbWFwJztcbmltcG9ydCB7IEVtYWlsQ29udmVydGVyIH0gZnJvbSAnLi9jb252ZXJ0ZXJzL2VtYWlsLmNvbnZlcnRlcic7XG5pbXBvcnQgeyBaaXBDb252ZXJ0ZXIgfSBmcm9tICcuL2NvbnZlcnRlcnMvemlwLmNvbnZlcnRlcic7XG5pbXBvcnQgeyBGb3JtU2VydmljZSB9IGZyb20gJy4vZm9ybS5zZXJ2aWNlJztcbmltcG9ydCB7IENhcmROdW1iZXJDb252ZXJ0ZXIgfSBmcm9tICcuL2NvbnZlcnRlcnMvY2FyZC1udW1iZXIuY29udmVydGVyJztcbmltcG9ydCB7IFZhbGlkYXRvcnNNb2R1bGUgfSBmcm9tICcuL3ZhbGlkYXRvcnMvdmFsaWRhdG9ycy5tb2R1bGUnO1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbUmVhY3RpdmVGb3Jtc01vZHVsZSwgVmFsaWRhdG9yc01vZHVsZV0sXG4gIHByb3ZpZGVyczogW1xuICAgIEZvcm1TZXJ2aWNlLFxuICAgIENvbnRyb2xDb25maWdTZXJ2aWNlLFxuICAgIFppcENvbnZlcnRlcixcbiAgICBFbWFpbENvbnZlcnRlcixcbiAgICBDYXJkTnVtYmVyQ29udmVydGVyLFxuICAgIHsgcHJvdmlkZTogY29udmVydGVyc01hcFRva2VuLCB1c2VWYWx1ZTogY29udmVydGVyc01hcCB9LFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBGb3JtTW9kdWxlIHt9XG4iXX0=
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export var InputEventName;
|
|
2
|
+
(function (InputEventName) {
|
|
3
|
+
InputEventName["blur"] = "blur";
|
|
4
|
+
InputEventName["focus"] = "focus";
|
|
5
|
+
})(InputEventName || (InputEventName = {}));
|
|
6
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtZXZlbnQuZW51bS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3BheW1lbnQtY2xpZW50LWNvcmUvc3JjL2xpYi9jb3JlL3BheW1lbnQvZm9ybS9pbnB1dC1ldmVudC5lbnVtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBTixJQUFZLGNBR1g7QUFIRCxXQUFZLGNBQWM7SUFDeEIsK0JBQWEsQ0FBQTtJQUNiLGlDQUFlLENBQUE7QUFDakIsQ0FBQyxFQUhXLGNBQWMsS0FBZCxjQUFjLFFBR3pCIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGVudW0gSW5wdXRFdmVudE5hbWUge1xuICBibHVyID0gJ2JsdXInLFxuICBmb2N1cyA9ICdmb2N1cycsXG59XG4iXX0=
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXN5bmMtdmFsaWRhdG9yLWZuLnR5cGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9wYXltZW50LWNsaWVudC1jb3JlL3NyYy9saWIvY29yZS9wYXltZW50L2Zvcm0vdmFsaWRhdG9ycy9hc3luYy12YWxpZGF0b3ItZm4udHlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWJzdHJhY3RDb250cm9sIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgVmFsaWRhdGlvbkVycm9ycyB9IGZyb20gJy4vdmFsaWRhdGlvbi1lcnJvcnMuaW50ZXJmYWNlJztcblxuZXhwb3J0IHR5cGUgQXN5bmNWYWxpZGF0b3JGbiA9IChcbiAgYzogQWJzdHJhY3RDb250cm9sXG4pID0+IFByb21pc2U8VmFsaWRhdGlvbkVycm9ycyB8IG51bGw+IHwgT2JzZXJ2YWJsZTxWYWxpZGF0aW9uRXJyb3JzIHwgbnVsbD47XG4iXX0=
|
|
@@ -1,23 +1,15 @@
|
|
|
1
|
-
export function convert(validator, message
|
|
1
|
+
export function convert(validator, message) {
|
|
2
2
|
return (control) => {
|
|
3
3
|
const errors = validator(control);
|
|
4
4
|
if (!errors) {
|
|
5
5
|
return errors;
|
|
6
6
|
}
|
|
7
7
|
const firstErrorKey = Object.keys(errors)[0];
|
|
8
|
-
|
|
9
|
-
error = typeof
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
rewritableError.code = errorCode;
|
|
13
|
-
if (error[firstErrorKey] != null) {
|
|
14
|
-
rewritableError.value = error[firstErrorKey];
|
|
15
|
-
}
|
|
16
|
-
if (rewritableError.requiredLength) {
|
|
17
|
-
rewritableError.number = rewritableError.requiredLength;
|
|
18
|
-
}
|
|
19
|
-
errors.rewritableError = rewritableError;
|
|
8
|
+
const firstError = errors[firstErrorKey];
|
|
9
|
+
const error = typeof firstError === 'object' && firstError !== null ? firstError : {};
|
|
10
|
+
error.message = message;
|
|
11
|
+
errors[firstErrorKey] = error;
|
|
20
12
|
return errors;
|
|
21
13
|
};
|
|
22
14
|
}
|
|
23
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
15
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udmVydC5mdW5jdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3BheW1lbnQtY2xpZW50LWNvcmUvc3JjL2xpYi9jb3JlL3BheW1lbnQvZm9ybS92YWxpZGF0b3JzL2NvbnZlcnQuZnVuY3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBS0EsTUFBTSxVQUFVLE9BQU8sQ0FDckIsU0FBc0IsRUFDdEIsT0FBZTtJQUVmLE9BQU8sQ0FBQyxPQUF3QixFQUFvQyxFQUFFO1FBQ3BFLE1BQU0sTUFBTSxHQUE0QixTQUFTLENBQUMsT0FBTyxDQUFDLENBQUM7UUFFM0QsSUFBSSxDQUFDLE1BQU0sRUFBRTtZQUNYLE9BQU8sTUFBTSxDQUFDO1NBQ2Y7UUFFRCxNQUFNLGFBQWEsR0FBVyxNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3JELE1BQU0sVUFBVSxHQUE2QixNQUFNLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDbkUsTUFBTSxLQUFLLEdBQ1QsT0FBTyxVQUFVLEtBQUssUUFBUSxJQUFJLFVBQVUsS0FBSyxJQUFJLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQzFFLEtBQUssQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO1FBRXhCLE1BQU0sQ0FBQyxhQUFhLENBQUMsR0FBRyxLQUFLLENBQUM7UUFFOUIsT0FBTyxNQUFtQyxDQUFDO0lBQzdDLENBQUMsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBYnN0cmFjdENvbnRyb2wsIFZhbGlkYXRpb25FcnJvcnMsIFZhbGlkYXRvckZuIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgVmFsaWRhdG9yRm4gYXMgQ29udmVydGVkVmFsaWRhdG9yRm4gfSBmcm9tICcuL3ZhbGlkYXRvci1mbi50eXBlJztcbmltcG9ydCB7IFZhbGlkYXRpb25FcnJvcnMgYXMgQ29udmVydGVkVmFsaWRhdGlvbkVycm9ycyB9IGZyb20gJy4vdmFsaWRhdGlvbi1lcnJvcnMuaW50ZXJmYWNlJztcbmltcG9ydCB7IFZhbGlkYXRpb25FcnJvciBhcyBDb252ZXJ0ZWRWYWxpZGF0aW9uRXJyb3IgfSBmcm9tICcuL3ZhbGlkYXRpb24tZXJyb3IuaW50ZXJmYWNlJztcblxuZXhwb3J0IGZ1bmN0aW9uIGNvbnZlcnQoXG4gIHZhbGlkYXRvcjogVmFsaWRhdG9yRm4sXG4gIG1lc3NhZ2U6IHN0cmluZ1xuKTogQ29udmVydGVkVmFsaWRhdG9yRm4ge1xuICByZXR1cm4gKGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCk6IENvbnZlcnRlZFZhbGlkYXRpb25FcnJvcnMgfCBudWxsID0+IHtcbiAgICBjb25zdCBlcnJvcnM6IFZhbGlkYXRpb25FcnJvcnMgfCBudWxsID0gdmFsaWRhdG9yKGNvbnRyb2wpO1xuXG4gICAgaWYgKCFlcnJvcnMpIHtcbiAgICAgIHJldHVybiBlcnJvcnM7XG4gICAgfVxuXG4gICAgY29uc3QgZmlyc3RFcnJvcktleTogc3RyaW5nID0gT2JqZWN0LmtleXMoZXJyb3JzKVswXTtcbiAgICBjb25zdCBmaXJzdEVycm9yOiBDb252ZXJ0ZWRWYWxpZGF0aW9uRXJyb3IgPSBlcnJvcnNbZmlyc3RFcnJvcktleV07XG4gICAgY29uc3QgZXJyb3IgPVxuICAgICAgdHlwZW9mIGZpcnN0RXJyb3IgPT09ICdvYmplY3QnICYmIGZpcnN0RXJyb3IgIT09IG51bGwgPyBmaXJzdEVycm9yIDoge307XG4gICAgZXJyb3IubWVzc2FnZSA9IG1lc3NhZ2U7XG5cbiAgICBlcnJvcnNbZmlyc3RFcnJvcktleV0gPSBlcnJvcjtcblxuICAgIHJldHVybiBlcnJvcnMgYXMgQ29udmVydGVkVmFsaWRhdGlvbkVycm9ycztcbiAgfTtcbn1cbiJdfQ==
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { isEmptyInputValue } from './is-empty-input-value.function';
|
|
2
|
+
import { Injectable } from '@angular/core';
|
|
3
|
+
import { isString } from '../../../type-guards/is-string.function';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
import * as i1 from "../../../credit-card/credit-card.service";
|
|
6
|
+
export class CreditCardMinLengthValidator {
|
|
7
|
+
constructor(creditService) {
|
|
8
|
+
this.creditService = creditService;
|
|
9
|
+
this.validate = (field) => {
|
|
10
|
+
if (isEmptyInputValue(field.value) || !isString(field.value)) {
|
|
11
|
+
return null;
|
|
12
|
+
}
|
|
13
|
+
const length = field.value.length;
|
|
14
|
+
const cardType = this.creditService.getTypeByNumber(field.value);
|
|
15
|
+
const { minLength } = this.creditService.getCreditCardSettings(cardType);
|
|
16
|
+
return length < minLength
|
|
17
|
+
? {
|
|
18
|
+
rewritableError: {
|
|
19
|
+
message: `Enter at least ${minLength} characters`,
|
|
20
|
+
number: minLength,
|
|
21
|
+
},
|
|
22
|
+
}
|
|
23
|
+
: null;
|
|
24
|
+
};
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
CreditCardMinLengthValidator.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: CreditCardMinLengthValidator, deps: [{ token: i1.CreditCardService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
28
|
+
CreditCardMinLengthValidator.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: CreditCardMinLengthValidator });
|
|
29
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: CreditCardMinLengthValidator, decorators: [{
|
|
30
|
+
type: Injectable
|
|
31
|
+
}], ctorParameters: function () { return [{ type: i1.CreditCardService }]; } });
|
|
32
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlZGl0LWNhcmQtbWluLWxlbmd0aC52YWxpZGF0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9wYXltZW50LWNsaWVudC1jb3JlL3NyYy9saWIvY29yZS9wYXltZW50L2Zvcm0vdmFsaWRhdG9ycy9jcmVkaXQtY2FyZC1taW4tbGVuZ3RoLnZhbGlkYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNwRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNDLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQzs7O0FBSW5FLE1BQU0sT0FBTyw0QkFBNEI7SUFDdkMsWUFBb0MsYUFBZ0M7UUFBaEMsa0JBQWEsR0FBYixhQUFhLENBQW1CO1FBRTdELGFBQVEsR0FBRyxDQUFDLEtBQXdCLEVBQTJCLEVBQUU7WUFDdEUsSUFBSSxpQkFBaUIsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxFQUFFO2dCQUM1RCxPQUFPLElBQUksQ0FBQzthQUNiO1lBRUQsTUFBTSxNQUFNLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUM7WUFFbEMsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxlQUFlLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBRWpFLE1BQU0sRUFBRSxTQUFTLEVBQUUsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLHFCQUFxQixDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBRXpFLE9BQU8sTUFBTSxHQUFHLFNBQVM7Z0JBQ3ZCLENBQUMsQ0FBQztvQkFDRSxlQUFlLEVBQUU7d0JBQ2YsT0FBTyxFQUFFLGtCQUFrQixTQUFTLGFBQWE7d0JBQ2pELE1BQU0sRUFBRSxTQUFTO3FCQUNsQjtpQkFDRjtnQkFDSCxDQUFDLENBQUMsSUFBSSxDQUFDO1FBQ1gsQ0FBQyxDQUFDO0lBckJxRSxDQUFDOzt5SEFEN0QsNEJBQTRCOzZIQUE1Qiw0QkFBNEI7MkZBQTVCLDRCQUE0QjtrQkFEeEMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGlzRW1wdHlJbnB1dFZhbHVlIH0gZnJvbSAnLi9pcy1lbXB0eS1pbnB1dC12YWx1ZS5mdW5jdGlvbic7XG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBWYWxpZGF0aW9uRXJyb3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgaXNTdHJpbmcgfSBmcm9tICcuLi8uLi8uLi90eXBlLWd1YXJkcy9pcy1zdHJpbmcuZnVuY3Rpb24nO1xuaW1wb3J0IHsgQ3JlZGl0Q2FyZFNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9jcmVkaXQtY2FyZC9jcmVkaXQtY2FyZC5zZXJ2aWNlJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIENyZWRpdENhcmRNaW5MZW5ndGhWYWxpZGF0b3Ige1xuICBwdWJsaWMgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBjcmVkaXRTZXJ2aWNlOiBDcmVkaXRDYXJkU2VydmljZSkge31cblxuICBwdWJsaWMgdmFsaWRhdGUgPSAoZmllbGQ6IHsgdmFsdWU6IHN0cmluZyB9KTogVmFsaWRhdGlvbkVycm9ycyB8IG51bGwgPT4ge1xuICAgIGlmIChpc0VtcHR5SW5wdXRWYWx1ZShmaWVsZC52YWx1ZSkgfHwgIWlzU3RyaW5nKGZpZWxkLnZhbHVlKSkge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgY29uc3QgbGVuZ3RoID0gZmllbGQudmFsdWUubGVuZ3RoO1xuXG4gICAgY29uc3QgY2FyZFR5cGUgPSB0aGlzLmNyZWRpdFNlcnZpY2UuZ2V0VHlwZUJ5TnVtYmVyKGZpZWxkLnZhbHVlKTtcblxuICAgIGNvbnN0IHsgbWluTGVuZ3RoIH0gPSB0aGlzLmNyZWRpdFNlcnZpY2UuZ2V0Q3JlZGl0Q2FyZFNldHRpbmdzKGNhcmRUeXBlKTtcblxuICAgIHJldHVybiBsZW5ndGggPCBtaW5MZW5ndGhcbiAgICAgID8ge1xuICAgICAgICAgIHJld3JpdGFibGVFcnJvcjoge1xuICAgICAgICAgICAgbWVzc2FnZTogYEVudGVyIGF0IGxlYXN0ICR7bWluTGVuZ3RofSBjaGFyYWN0ZXJzYCxcbiAgICAgICAgICAgIG51bWJlcjogbWluTGVuZ3RoLFxuICAgICAgICAgIH0sXG4gICAgICAgIH1cbiAgICAgIDogbnVsbDtcbiAgfTtcbn1cbiJdfQ==
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import { Validators } from '@angular/forms';
|
|
2
2
|
import { convert } from './convert.function';
|
|
3
|
-
import { ErrorsCodes } from './errors-codes.enum';
|
|
4
3
|
const emailRegexp = /^((([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*)|((\x22)((((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(\\([\x01-\x09\x0b\x0c\x0d-\x7f]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))))*(((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(\x22)))@((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))$/i; // eslint-disable-line
|
|
5
|
-
export function
|
|
6
|
-
return convert(Validators.pattern(emailRegexp), 'Enter a valid email'
|
|
4
|
+
export function convertedEmailValidator() {
|
|
5
|
+
return convert(Validators.pattern(emailRegexp), 'Enter a valid email');
|
|
7
6
|
}
|
|
8
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW1haWwtdmFsaWRhdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvcGF5bWVudC1jbGllbnQtY29yZS9zcmMvbGliL2NvcmUvcGF5bWVudC9mb3JtL3ZhbGlkYXRvcnMvZW1haWwtdmFsaWRhdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM1QyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFHN0MsTUFBTSxXQUFXLEdBQ2YseTRCQUF5NEIsQ0FBQyxDQUFDLHNCQUFzQjtBQUVuNkIsTUFBTSxVQUFVLHVCQUF1QjtJQUNyQyxPQUFPLE9BQU8sQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxFQUFFLHFCQUFxQixDQUFDLENBQUM7QUFDekUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBjb252ZXJ0IH0gZnJvbSAnLi9jb252ZXJ0LmZ1bmN0aW9uJztcbmltcG9ydCB7IFZhbGlkYXRvckZuIH0gZnJvbSAnLi92YWxpZGF0b3ItZm4udHlwZSc7XG5cbmNvbnN0IGVtYWlsUmVnZXhwID1cbiAgL14oKChbYS16XXxcXGR8WyEjXFwkJSYnXFwqXFwrXFwtXFwvPVxcP1xcXl9ge1xcfH1+XXxbXFx1MDBBMC1cXHVEN0ZGXFx1RjkwMC1cXHVGRENGXFx1RkRGMC1cXHVGRkVGXSkrKFxcLihbYS16XXxcXGR8WyEjXFwkJSYnXFwqXFwrXFwtXFwvPVxcP1xcXl9ge1xcfH1+XXxbXFx1MDBBMC1cXHVEN0ZGXFx1RjkwMC1cXHVGRENGXFx1RkRGMC1cXHVGRkVGXSkrKSopfCgoXFx4MjIpKCgoKFxceDIwfFxceDA5KSooXFx4MGRcXHgwYSkpPyhcXHgyMHxcXHgwOSkrKT8oKFtcXHgwMS1cXHgwOFxceDBiXFx4MGNcXHgwZS1cXHgxZlxceDdmXXxcXHgyMXxbXFx4MjMtXFx4NWJdfFtcXHg1ZC1cXHg3ZV18W1xcdTAwQTAtXFx1RDdGRlxcdUY5MDAtXFx1RkRDRlxcdUZERjAtXFx1RkZFRl0pfChcXFxcKFtcXHgwMS1cXHgwOVxceDBiXFx4MGNcXHgwZC1cXHg3Zl18W1xcdTAwQTAtXFx1RDdGRlxcdUY5MDAtXFx1RkRDRlxcdUZERjAtXFx1RkZFRl0pKSkpKigoKFxceDIwfFxceDA5KSooXFx4MGRcXHgwYSkpPyhcXHgyMHxcXHgwOSkrKT8oXFx4MjIpKSlAKCgoW2Etel18XFxkfFtcXHUwMEEwLVxcdUQ3RkZcXHVGOTAwLVxcdUZEQ0ZcXHVGREYwLVxcdUZGRUZdKXwoKFthLXpdfFxcZHxbXFx1MDBBMC1cXHVEN0ZGXFx1RjkwMC1cXHVGRENGXFx1RkRGMC1cXHVGRkVGXSkoW2Etel18XFxkfC18XFwufF98fnxbXFx1MDBBMC1cXHVEN0ZGXFx1RjkwMC1cXHVGRENGXFx1RkRGMC1cXHVGRkVGXSkqKFthLXpdfFxcZHxbXFx1MDBBMC1cXHVEN0ZGXFx1RjkwMC1cXHVGRENGXFx1RkRGMC1cXHVGRkVGXSkpKVxcLikrKChbYS16XXxbXFx1MDBBMC1cXHVEN0ZGXFx1RjkwMC1cXHVGRENGXFx1RkRGMC1cXHVGRkVGXSl8KChbYS16XXxbXFx1MDBBMC1cXHVEN0ZGXFx1RjkwMC1cXHVGRENGXFx1RkRGMC1cXHVGRkVGXSkoW2Etel18XFxkfC18XFwufF98fnxbXFx1MDBBMC1cXHVEN0ZGXFx1RjkwMC1cXHVGRENGXFx1RkRGMC1cXHVGRkVGXSkqKFthLXpdfFtcXHUwMEEwLVxcdUQ3RkZcXHVGOTAwLVxcdUZEQ0ZcXHVGREYwLVxcdUZGRUZdKSkpJC9pOyAvLyBlc2xpbnQtZGlzYWJsZS1saW5lXG5cbmV4cG9ydCBmdW5jdGlvbiBjb252ZXJ0ZWRFbWFpbFZhbGlkYXRvcigpOiBWYWxpZGF0b3JGbiB7XG4gIHJldHVybiBjb252ZXJ0KFZhbGlkYXRvcnMucGF0dGVybihlbWFpbFJlZ2V4cCksICdFbnRlciBhIHZhbGlkIGVtYWlsJyk7XG59XG4iXX0=
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export function isEmptyInputValue(value) {
|
|
2
|
+
return value == null || value.length === 0;
|
|
3
|
+
}
|
|
4
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXMtZW1wdHktaW5wdXQtdmFsdWUuZnVuY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9wYXltZW50LWNsaWVudC1jb3JlL3NyYy9saWIvY29yZS9wYXltZW50L2Zvcm0vdmFsaWRhdG9ycy9pcy1lbXB0eS1pbnB1dC12YWx1ZS5mdW5jdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLFVBQVUsaUJBQWlCLENBQUMsS0FBZ0M7SUFDaEUsT0FBTyxLQUFLLElBQUksSUFBSSxJQUFJLEtBQUssQ0FBQyxNQUFNLEtBQUssQ0FBQyxDQUFDO0FBQzdDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZnVuY3Rpb24gaXNFbXB0eUlucHV0VmFsdWUodmFsdWU6IHN0cmluZyB8IG51bGwgfCB1bmRlZmluZWQpOiBib29sZWFuIHtcbiAgcmV0dXJuIHZhbHVlID09IG51bGwgfHwgdmFsdWUubGVuZ3RoID09PSAwO1xufVxuIl19
|
package/esm2020/lib/core/payment/form/validators/luhn-formula-validator/luhn-formula.validator.mjs
ADDED
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { isEmptyInputValue } from '../is-empty-input-value.function';
|
|
2
|
+
import { isString } from '../../../../type-guards/is-string.function';
|
|
3
|
+
/**
|
|
4
|
+
* Checks number match Luhn algorithm.
|
|
5
|
+
* Based on http://en.wikipedia.org/wiki/Luhn.
|
|
6
|
+
*/
|
|
7
|
+
export const luhnFormulaValidator = ({ value }) => {
|
|
8
|
+
if (isEmptyInputValue(value) || !isString(value)) {
|
|
9
|
+
return null;
|
|
10
|
+
}
|
|
11
|
+
const error = {
|
|
12
|
+
rewritableError: {
|
|
13
|
+
message: `Enter a valid card number`,
|
|
14
|
+
},
|
|
15
|
+
};
|
|
16
|
+
if (/[^0-9 -]+/.test(value)) {
|
|
17
|
+
// accept only spaces, digits and dashes
|
|
18
|
+
return error;
|
|
19
|
+
}
|
|
20
|
+
let resultSum = 0;
|
|
21
|
+
let digit = 0;
|
|
22
|
+
let isEven = false;
|
|
23
|
+
const modBase = 10;
|
|
24
|
+
const digitRadix = 10;
|
|
25
|
+
const maxNumber = 9;
|
|
26
|
+
const digits = value.replace(/\D/g, '');
|
|
27
|
+
// Checks if number match Luhn algorithm
|
|
28
|
+
// based on http://en.wikipedia.org/wiki/Luhn
|
|
29
|
+
for (let index = digits.length - 1; index >= 0; index--) {
|
|
30
|
+
const char = digits.charAt(index);
|
|
31
|
+
digit = parseInt(char, digitRadix);
|
|
32
|
+
if (isEven && (digit *= 2) > maxNumber) {
|
|
33
|
+
digit -= maxNumber;
|
|
34
|
+
}
|
|
35
|
+
resultSum += digit;
|
|
36
|
+
isEven = !isEven;
|
|
37
|
+
}
|
|
38
|
+
return resultSum % modBase === 0 ? null : error;
|
|
39
|
+
};
|
|
40
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibHVobi1mb3JtdWxhLnZhbGlkYXRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3BheW1lbnQtY2xpZW50LWNvcmUvc3JjL2xpYi9jb3JlL3BheW1lbnQvZm9ybS92YWxpZGF0b3JzL2x1aG4tZm9ybXVsYS12YWxpZGF0b3IvbHVobi1mb3JtdWxhLnZhbGlkYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUdyRSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFFdEU7OztHQUdHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sb0JBQW9CLEdBQWdCLENBQUMsRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFFO0lBQzdELElBQUksaUJBQWlCLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLEVBQUU7UUFDaEQsT0FBTyxJQUFJLENBQUM7S0FDYjtJQUVELE1BQU0sS0FBSyxHQUFxQjtRQUM5QixlQUFlLEVBQUU7WUFDZixPQUFPLEVBQUUsMkJBQTJCO1NBQ3JDO0tBQ0YsQ0FBQztJQUVGLElBQUksV0FBVyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRTtRQUMzQix3Q0FBd0M7UUFDeEMsT0FBTyxLQUFLLENBQUM7S0FDZDtJQUVELElBQUksU0FBUyxHQUFHLENBQUMsQ0FBQztJQUNsQixJQUFJLEtBQUssR0FBRyxDQUFDLENBQUM7SUFDZCxJQUFJLE1BQU0sR0FBRyxLQUFLLENBQUM7SUFFbkIsTUFBTSxPQUFPLEdBQUcsRUFBRSxDQUFDO0lBQ25CLE1BQU0sVUFBVSxHQUFHLEVBQUUsQ0FBQztJQUN0QixNQUFNLFNBQVMsR0FBRyxDQUFDLENBQUM7SUFDcEIsTUFBTSxNQUFNLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFFeEMsd0NBQXdDO0lBQ3hDLDZDQUE2QztJQUM3QyxLQUFLLElBQUksS0FBSyxHQUFHLE1BQU0sQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFLEtBQUssSUFBSSxDQUFDLEVBQUUsS0FBSyxFQUFFLEVBQUU7UUFDdkQsTUFBTSxJQUFJLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNsQyxLQUFLLEdBQUcsUUFBUSxDQUFDLElBQUksRUFBRSxVQUFVLENBQUMsQ0FBQztRQUVuQyxJQUFJLE1BQU0sSUFBSSxDQUFDLEtBQUssSUFBSSxDQUFDLENBQUMsR0FBRyxTQUFTLEVBQUU7WUFDdEMsS0FBSyxJQUFJLFNBQVMsQ0FBQztTQUNwQjtRQUVELFNBQVMsSUFBSSxLQUFLLENBQUM7UUFDbkIsTUFBTSxHQUFHLENBQUMsTUFBTSxDQUFDO0tBQ2xCO0lBRUQsT0FBTyxTQUFTLEdBQUcsT0FBTyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUM7QUFDbEQsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaXNFbXB0eUlucHV0VmFsdWUgfSBmcm9tICcuLi9pcy1lbXB0eS1pbnB1dC12YWx1ZS5mdW5jdGlvbic7XG5pbXBvcnQgeyBWYWxpZGF0b3JGbiB9IGZyb20gJy4uL3ZhbGlkYXRvci1mbi50eXBlJztcbmltcG9ydCB7IFZhbGlkYXRpb25FcnJvcnMgfSBmcm9tICcuLi92YWxpZGF0aW9uLWVycm9ycy5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgaXNTdHJpbmcgfSBmcm9tICcuLi8uLi8uLi8uLi90eXBlLWd1YXJkcy9pcy1zdHJpbmcuZnVuY3Rpb24nO1xuXG4vKipcbiAqIENoZWNrcyBudW1iZXIgbWF0Y2ggTHVobiBhbGdvcml0aG0uXG4gKiBCYXNlZCBvbiBodHRwOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL0x1aG4uXG4gKi9cbmV4cG9ydCBjb25zdCBsdWhuRm9ybXVsYVZhbGlkYXRvcjogVmFsaWRhdG9yRm4gPSAoeyB2YWx1ZSB9KSA9PiB7XG4gIGlmIChpc0VtcHR5SW5wdXRWYWx1ZSh2YWx1ZSkgfHwgIWlzU3RyaW5nKHZhbHVlKSkge1xuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgY29uc3QgZXJyb3I6IFZhbGlkYXRpb25FcnJvcnMgPSB7XG4gICAgcmV3cml0YWJsZUVycm9yOiB7XG4gICAgICBtZXNzYWdlOiBgRW50ZXIgYSB2YWxpZCBjYXJkIG51bWJlcmAsXG4gICAgfSxcbiAgfTtcblxuICBpZiAoL1teMC05IC1dKy8udGVzdCh2YWx1ZSkpIHtcbiAgICAvLyBhY2NlcHQgb25seSBzcGFjZXMsIGRpZ2l0cyBhbmQgZGFzaGVzXG4gICAgcmV0dXJuIGVycm9yO1xuICB9XG5cbiAgbGV0IHJlc3VsdFN1bSA9IDA7XG4gIGxldCBkaWdpdCA9IDA7XG4gIGxldCBpc0V2ZW4gPSBmYWxzZTtcblxuICBjb25zdCBtb2RCYXNlID0gMTA7XG4gIGNvbnN0IGRpZ2l0UmFkaXggPSAxMDtcbiAgY29uc3QgbWF4TnVtYmVyID0gOTtcbiAgY29uc3QgZGlnaXRzID0gdmFsdWUucmVwbGFjZSgvXFxEL2csICcnKTtcblxuICAvLyBDaGVja3MgaWYgbnVtYmVyIG1hdGNoIEx1aG4gYWxnb3JpdGhtXG4gIC8vIGJhc2VkIG9uIGh0dHA6Ly9lbi53aWtpcGVkaWEub3JnL3dpa2kvTHVoblxuICBmb3IgKGxldCBpbmRleCA9IGRpZ2l0cy5sZW5ndGggLSAxOyBpbmRleCA+PSAwOyBpbmRleC0tKSB7XG4gICAgY29uc3QgY2hhciA9IGRpZ2l0cy5jaGFyQXQoaW5kZXgpO1xuICAgIGRpZ2l0ID0gcGFyc2VJbnQoY2hhciwgZGlnaXRSYWRpeCk7XG5cbiAgICBpZiAoaXNFdmVuICYmIChkaWdpdCAqPSAyKSA+IG1heE51bWJlcikge1xuICAgICAgZGlnaXQgLT0gbWF4TnVtYmVyO1xuICAgIH1cblxuICAgIHJlc3VsdFN1bSArPSBkaWdpdDtcbiAgICBpc0V2ZW4gPSAhaXNFdmVuO1xuICB9XG5cbiAgcmV0dXJuIHJlc3VsdFN1bSAlIG1vZEJhc2UgPT09IDAgPyBudWxsIDogZXJyb3I7XG59O1xuIl19
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { Validators } from '@angular/forms';
|
|
2
2
|
import { convert } from './convert.function';
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
return convert(Validators.required, 'Required', ErrorsCodes.required);
|
|
3
|
+
export function convertedRequiredValidator() {
|
|
4
|
+
return convert(Validators.required, 'Required');
|
|
6
5
|
}
|
|
7
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
6
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVxdWlyZWQtdmFsaWRhdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvcGF5bWVudC1jbGllbnQtY29yZS9zcmMvbGliL2NvcmUvcGF5bWVudC9mb3JtL3ZhbGlkYXRvcnMvcmVxdWlyZWQtdmFsaWRhdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBZSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN6RCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFN0MsTUFBTSxVQUFVLDBCQUEwQjtJQUN4QyxPQUFPLE9BQU8sQ0FBQyxVQUFVLENBQUMsUUFBUSxFQUFFLFVBQVUsQ0FBQyxDQUFDO0FBQ2xELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBWYWxpZGF0b3JGbiwgVmFsaWRhdG9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IGNvbnZlcnQgfSBmcm9tICcuL2NvbnZlcnQuZnVuY3Rpb24nO1xuXG5leHBvcnQgZnVuY3Rpb24gY29udmVydGVkUmVxdWlyZWRWYWxpZGF0b3IoKTogVmFsaWRhdG9yRm4ge1xuICByZXR1cm4gY29udmVydChWYWxpZGF0b3JzLnJlcXVpcmVkLCAnUmVxdWlyZWQnKTtcbn1cbiJdfQ==
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdGlvbi1lcnJvci5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9wYXltZW50LWNsaWVudC1jb3JlL3NyYy9saWIvY29yZS9wYXltZW50L2Zvcm0vdmFsaWRhdG9ycy92YWxpZGF0aW9uLWVycm9yLmludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBWYWxpZGF0aW9uRXJyb3Ige1xuICBtZXNzYWdlPzogc3RyaW5nO1xuICBbcGFyYW1ldGVyOiBzdHJpbmddOiB1bmtub3duO1xufVxuIl19
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { CommonModule } from '@angular/common';
|
|
3
|
+
import { CreditCardMinLengthValidator } from './credit-card-min-length.validator';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
export class ValidatorsModule {
|
|
6
|
+
}
|
|
7
|
+
ValidatorsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: ValidatorsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
8
|
+
ValidatorsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.7", ngImport: i0, type: ValidatorsModule, imports: [CommonModule] });
|
|
9
|
+
ValidatorsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: ValidatorsModule, providers: [CreditCardMinLengthValidator], imports: [CommonModule] });
|
|
10
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: ValidatorsModule, decorators: [{
|
|
11
|
+
type: NgModule,
|
|
12
|
+
args: [{
|
|
13
|
+
declarations: [],
|
|
14
|
+
imports: [CommonModule],
|
|
15
|
+
providers: [CreditCardMinLengthValidator],
|
|
16
|
+
}]
|
|
17
|
+
}] });
|
|
18
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdG9ycy5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9wYXltZW50LWNsaWVudC1jb3JlL3NyYy9saWIvY29yZS9wYXltZW50L2Zvcm0vdmFsaWRhdG9ycy92YWxpZGF0b3JzLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQzs7QUFPbEYsTUFBTSxPQUFPLGdCQUFnQjs7NkdBQWhCLGdCQUFnQjs4R0FBaEIsZ0JBQWdCLFlBSGpCLFlBQVk7OEdBR1gsZ0JBQWdCLGFBRmhCLENBQUMsNEJBQTRCLENBQUMsWUFEL0IsWUFBWTsyRkFHWCxnQkFBZ0I7a0JBTDVCLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFLEVBQUU7b0JBQ2hCLE9BQU8sRUFBRSxDQUFDLFlBQVksQ0FBQztvQkFDdkIsU0FBUyxFQUFFLENBQUMsNEJBQTRCLENBQUM7aUJBQzFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDcmVkaXRDYXJkTWluTGVuZ3RoVmFsaWRhdG9yIH0gZnJvbSAnLi9jcmVkaXQtY2FyZC1taW4tbGVuZ3RoLnZhbGlkYXRvcic7XG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW10sXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGVdLFxuICBwcm92aWRlcnM6IFtDcmVkaXRDYXJkTWluTGVuZ3RoVmFsaWRhdG9yXSxcbn0pXG5leHBvcnQgY2xhc3MgVmFsaWRhdG9yc01vZHVsZSB7fVxuIl19
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGF5bWVudC5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9wYXltZW50LWNsaWVudC1jb3JlL3NyYy9saWIvY29yZS9wYXltZW50L3BheW1lbnQuaW50ZXJmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBWYWxpZGF0aW9uRXJyb3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgTmV4dEFjdGlvbiB9IGZyb20gJy4vYWN0aW9ucy9uZXh0LWFjdGlvbi5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgU3RhdHVzIH0gZnJvbSAnLi9zdGF0dXMvc3RhdHVzLmludGVyZmFjZSc7XG5pbXBvcnQgeyBGaWVsZCB9IGZyb20gJy4vZmllbGQuaW50ZXJmYWNlJztcbmltcG9ydCB7IENvbnRyb2xDb25maWcgfSBmcm9tICcuL2Zvcm0vY29udHJvbHMvY29udHJvbC1jb25maWcnO1xuaW1wb3J0IHsgRmluYW5jZURldGFpbHMgfSBmcm9tICcuL2ZpbmFuY2UtZGV0YWlscy9maW5hbmNlLWRldGFpbHMuY2xhc3MnO1xuaW1wb3J0IHsgSW5wdXRFdmVudE5hbWUgfSBmcm9tICcuL2Zvcm0vaW5wdXQtZXZlbnQuZW51bSc7XG5pbXBvcnQgeyBGb3JtRmllbGRzU3RhdHVzIH0gZnJvbSAnLi9mb3JtL2Zvcm0tZmllbGRzLXN0YXR1cy5pbnRlcmZhY2UnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFBheW1lbnQge1xuICBpbml0aWFsaXplKCk6IFByb21pc2U8RmllbGRbXT47XG4gIHN1Ym1pdCgpOiBQcm9taXNlPE5leHRBY3Rpb24gfCBudWxsIHwgdm9pZD47XG4gIGdldEZpZWxkcygpOiBGaWVsZFtdO1xuICB2YWxpZGF0ZShmaWVsZDogRmllbGQpOiBQcm9taXNlPFZhbGlkYXRpb25FcnJvcnMgfCBudWxsPjtcbiAgZ2V0RmluYW5jZURldGFpbHMoKTogRmluYW5jZURldGFpbHMgfCBudWxsO1xuICBydW5UaHJlZURzKCk6IE5leHRBY3Rpb247XG4gIGdldFN0YXR1cygpOiBQcm9taXNlPFN0YXR1cz47XG4gIGZvcm06IHtcbiAgICBmaWVsZHNTdGF0dXMkOiBPYnNlcnZhYmxlPEZvcm1GaWVsZHNTdGF0dXM+O1xuICAgIGNoYW5nZUZpZWxkVmFsdWUobmFtZTogc3RyaW5nLCB2YWx1ZTogc3RyaW5nKTogdm9pZDtcbiAgICBnZXRDb250cm9sQ29uZmlnKGZpZWxkOiBGaWVsZCk6IENvbnRyb2xDb25maWcgfCBudWxsO1xuICAgIGNoYW5nZUZpZWxkU3RhdGUobmFtZTogc3RyaW5nLCBzdGF0ZTogSW5wdXRFdmVudE5hbWUpOiB2b2lkO1xuICB9O1xuICBmbG93VXBkYXRlcyQ6IE9ic2VydmFibGU8TmV4dEFjdGlvbj47XG4gIGZpbmFuY2VEZXRhaWxzVXBkYXRlcyQ6IE9ic2VydmFibGU8RmluYW5jZURldGFpbHM+O1xufVxuIl19
|