{{isNew ? "New Action" : previousName}} {{isNew ? 'Creating a new action' : 'Modifying an existing action'}}
Redeemable Action Name @if (isNew && formGroup.get('name')?.invalid && (formGroup.get('name')?.dirty || formGroup.get('name')?.touched)) { @if (formGroup.get('name')?.hasError('required')) { The name is required. } @if (formGroup.get('name')?.hasError('itemExistsInArray')) { The name is already in use. } }
Type @for (type of actionTypes; track $index) { {{type}} } @if (isNew && formGroup.get('type')?.invalid && (formGroup.get('type')?.dirty || formGroup.get('type')?.touched)) { @if (formGroup.get('type')?.hasError('required')) { The type is required. } }
@if (actionEntries.hasOwnProperty(action.type)) {
@for (field of actionEntries[action.type]; track $index) {
@if (field.type == 'text') { {{field.label}} @if (field.control.invalid && (field.control.dirty || field.control.touched)) { @if (field.control.hasError('required')) { This field is required. } @if (field.control.hasError('minlength')) { The value needs to be longer. } } } @else if (field.type == 'number') { {{field.label}} @if (field.control.invalid && (field.control.dirty || field.control.touched)) { @if (field.control.hasError('required')) { This field is required. } @if (field.control.hasError('min')) { The value must be higher. } } }
}
}
@if (!isNew) { }