115 lines
6.1 KiB
TypeScript
115 lines
6.1 KiB
TypeScript
|
|
import { fiscalCodeValidator, mobileValidator, postalCodeValidator } from '@/core/validators';
|
||
|
|
import { nationalIdValidator } from '@/core/validators/national-id.validator';
|
||
|
|
import { ValidatorFn, Validators } from '@angular/forms';
|
||
|
|
|
||
|
|
const required = () => [Validators.required] as ValidatorFn[];
|
||
|
|
type ControlConfig = [string, ValidatorFn[]];
|
||
|
|
|
||
|
|
export const fieldControl = {
|
||
|
|
name: (value = '', isRequired = true): ControlConfig => [value, isRequired ? required() : []],
|
||
|
|
code: (value = '', isRequired = true): ControlConfig => [value, isRequired ? required() : []],
|
||
|
|
description: (value = '', isRequired = false): ControlConfig => [value, isRequired ? required() : []],
|
||
|
|
company_name: (value = '', isRequired = true): ControlConfig => [value, isRequired ? required() : []],
|
||
|
|
first_name: (value = '', isRequired = true): ControlConfig => [value, isRequired ? required() : []],
|
||
|
|
firstName: (value = '', isRequired = true): ControlConfig => [value, isRequired ? required() : []],
|
||
|
|
last_name: (value = '', isRequired = true): ControlConfig => [value, isRequired ? required() : []],
|
||
|
|
lastName: (value = '', isRequired = true): ControlConfig => [value, isRequired ? required() : []],
|
||
|
|
legal_name: (value = '', isRequired = true): ControlConfig => [value, isRequired ? required() : []],
|
||
|
|
registration_code: (value = '', isRequired = true): ControlConfig => [
|
||
|
|
value,
|
||
|
|
isRequired ? required() : [],
|
||
|
|
],
|
||
|
|
registration_number: (value = '', isRequired = true): ControlConfig => [
|
||
|
|
value,
|
||
|
|
isRequired ? required() : [],
|
||
|
|
],
|
||
|
|
mobile_number: (value = '', isRequired = true): ControlConfig => [
|
||
|
|
value,
|
||
|
|
isRequired ? [Validators.required, mobileValidator()] : [mobileValidator()],
|
||
|
|
],
|
||
|
|
mobile: (value = '', isRequired = true): ControlConfig => [
|
||
|
|
value,
|
||
|
|
isRequired ? [Validators.required, mobileValidator()] : [mobileValidator()],
|
||
|
|
],
|
||
|
|
email: (value = '', isRequired = false): ControlConfig => [
|
||
|
|
value,
|
||
|
|
isRequired ? [Validators.required, Validators.email] : [Validators.email],
|
||
|
|
],
|
||
|
|
national_code: (value = '', isRequired = true): ControlConfig => [
|
||
|
|
value,
|
||
|
|
isRequired ? [Validators.required, nationalIdValidator()] : [nationalIdValidator()],
|
||
|
|
],
|
||
|
|
national_id: (value = '', isRequired = true): ControlConfig => [
|
||
|
|
value,
|
||
|
|
isRequired ? [Validators.required, nationalIdValidator()] : [nationalIdValidator()],
|
||
|
|
],
|
||
|
|
postal_code: (value = '', isRequired = true): ControlConfig => [
|
||
|
|
value,
|
||
|
|
isRequired ? [Validators.required, postalCodeValidator()] : [postalCodeValidator()],
|
||
|
|
],
|
||
|
|
username: (value = '', isRequired = true): ControlConfig => [value, isRequired ? required() : []],
|
||
|
|
economic_code: (value = '', isRequired = true): ControlConfig => [
|
||
|
|
value,
|
||
|
|
isRequired ? required() : [],
|
||
|
|
],
|
||
|
|
fiscal_code: (value = '', isRequired = true): ControlConfig => [
|
||
|
|
value,
|
||
|
|
isRequired ? [Validators.required, fiscalCodeValidator()] : [fiscalCodeValidator()],
|
||
|
|
],
|
||
|
|
partner_token: (value = '', isRequired = true): ControlConfig => [
|
||
|
|
value,
|
||
|
|
isRequired ? required() : [],
|
||
|
|
],
|
||
|
|
guild_id: (value = '', isRequired = true): ControlConfig => [value, isRequired ? required() : []],
|
||
|
|
license_starts_at: (value = '', isRequired = true): ControlConfig => [
|
||
|
|
value,
|
||
|
|
isRequired ? required() : [],
|
||
|
|
],
|
||
|
|
branch_code: (value = '', isRequired = false): ControlConfig => [
|
||
|
|
value,
|
||
|
|
isRequired ? required() : [],
|
||
|
|
],
|
||
|
|
address: (value = '', isRequired = true): ControlConfig => [value, isRequired ? required() : []],
|
||
|
|
pos_type: (value = '', isRequired = true): ControlConfig => [value, isRequired ? required() : []],
|
||
|
|
type: (value = '', isRequired = true): ControlConfig => [value, isRequired ? required() : []],
|
||
|
|
role: (value = '', isRequired = true): ControlConfig => [value, isRequired ? required() : []],
|
||
|
|
unit_type: (value = '', isRequired = true): ControlConfig => [value, isRequired ? required() : []],
|
||
|
|
pricing_model: (value = '', isRequired = true): ControlConfig => [value, isRequired ? required() : []],
|
||
|
|
gender: (value = '', isRequired = false): ControlConfig => [value, isRequired ? required() : []],
|
||
|
|
legal: (value = '', isRequired = false): ControlConfig => [value, isRequired ? required() : []],
|
||
|
|
individual: (value = '', isRequired = false): ControlConfig => [
|
||
|
|
value,
|
||
|
|
isRequired ? required() : [],
|
||
|
|
],
|
||
|
|
partner_id: (value = '', isRequired = true): ControlConfig => [value, isRequired ? required() : []],
|
||
|
|
brand_id: (value = '', isRequired = true): ControlConfig => [value, isRequired ? required() : []],
|
||
|
|
category_id: (value = '', isRequired = true): ControlConfig => [value, isRequired ? required() : []],
|
||
|
|
starts_at: (value = '', isRequired = true): ControlConfig => [value, isRequired ? required() : []],
|
||
|
|
expires_at: (value = '', isRequired = true): ControlConfig => [value, isRequired ? required() : []],
|
||
|
|
activated_expires_at: (value = '', isRequired = true): ControlConfig => [
|
||
|
|
value,
|
||
|
|
isRequired ? required() : [],
|
||
|
|
],
|
||
|
|
invoiceDate: (value = '', isRequired = true): ControlConfig => [value, isRequired ? required() : []],
|
||
|
|
quantity: (value = '', isRequired = true): ControlConfig => [value, isRequired ? required() : []],
|
||
|
|
unit_price: (value = '', isRequired = true): ControlConfig => [value, isRequired ? required() : []],
|
||
|
|
cash: (value = '', isRequired = false): ControlConfig => [value, isRequired ? required() : []],
|
||
|
|
set_off: (value = '', isRequired = false): ControlConfig => [value, isRequired ? required() : []],
|
||
|
|
setOff: (value = '', isRequired = false): ControlConfig => [value, isRequired ? required() : []],
|
||
|
|
terminal: (value = '', isRequired = false): ControlConfig => [value, isRequired ? required() : []],
|
||
|
|
sku: (value = '', isRequired = true): ControlConfig => [value, isRequired ? required() : []],
|
||
|
|
model: (value = '', isRequired = true): ControlConfig => [value, isRequired ? required() : []],
|
||
|
|
serial_number: (value = '', isRequired = false): ControlConfig => [
|
||
|
|
value,
|
||
|
|
isRequired ? required() : [],
|
||
|
|
],
|
||
|
|
device_id: (value = '', isRequired = false): ControlConfig => [
|
||
|
|
value,
|
||
|
|
isRequired ? required() : [],
|
||
|
|
],
|
||
|
|
provider_id: (value = '', isRequired = false): ControlConfig => [
|
||
|
|
value,
|
||
|
|
isRequired ? required() : [],
|
||
|
|
],
|
||
|
|
};
|