Browse Source

UI: refactored widget-action-dialog column index validation

pull/10820/head
rusikv 2 years ago
parent
commit
1d92cd227e
  1. 22
      ui-ngx/src/app/modules/home/components/widget/action/widget-action-dialog.component.ts

22
ui-ngx/src/app/modules/home/components/widget/action/widget-action-dialog.component.ts

@ -118,7 +118,7 @@ export class WidgetActionDialogComponent extends DialogComponent<WidgetActionDia
ngOnInit(): void { ngOnInit(): void {
this.widgetActionFormGroup = this.fb.group({ this.widgetActionFormGroup = this.fb.group({
actionSourceId: [this.action.actionSourceId, Validators.required], actionSourceId: [this.action.actionSourceId, Validators.required],
columnIndex: [this.checkColumnIndex(this.action.columnIndex)], columnIndex: [{value: this.checkColumnIndex(this.action.columnIndex), disabled: true}, Validators.required],
name: [this.action.name, [this.validateActionName(), Validators.required]], name: [this.action.name, [this.validateActionName(), Validators.required]],
icon: [this.action.icon, Validators.required], icon: [this.action.icon, Validators.required],
useShowWidgetActionFunction: [this.action.useShowWidgetActionFunction], useShowWidgetActionFunction: [this.action.useShowWidgetActionFunction],
@ -132,12 +132,11 @@ export class WidgetActionDialogComponent extends DialogComponent<WidgetActionDia
this.widgetActionFormGroup.get('name').updateValueAndValidity(); this.widgetActionFormGroup.get('name').updateValueAndValidity();
this.updateShowWidgetActionForm(); this.updateShowWidgetActionForm();
if (value === 'cellClick') { if (value === 'cellClick') {
this.widgetActionFormGroup.get('columnIndex').setValidators([Validators.required]); this.widgetActionFormGroup.get('columnIndex').enable();
this.getCellClickColumnsInfo(); this.getCellClickColumnsInfo();
} else { } else {
this.widgetActionFormGroup.get('columnIndex').clearValidators(); this.widgetActionFormGroup.get('columnIndex').disable();
} }
this.widgetActionFormGroup.get('columnIndex').updateValueAndValidity();
}); });
this.widgetActionFormGroup.get('useShowWidgetActionFunction').valueChanges.pipe( this.widgetActionFormGroup.get('useShowWidgetActionFunction').valueChanges.pipe(
takeUntil(this.destroy$) takeUntil(this.destroy$)
@ -145,12 +144,12 @@ export class WidgetActionDialogComponent extends DialogComponent<WidgetActionDia
this.updateShowWidgetActionForm(); this.updateShowWidgetActionForm();
}); });
setTimeout(() => { setTimeout(() => {
if (this.action?.actionSourceId === 'cellClick' && isDefinedAndNotNull(this.action.columnIndex) && if (this.action?.actionSourceId === 'cellClick') {
this.widgetActionFormGroup.get('columnIndex').value === null) { this.widgetActionFormGroup.get('columnIndex').enable();
this.widgetActionFormGroup.get('columnIndex').setValidators([Validators.required]); if (isDefinedAndNotNull(this.action.columnIndex) && this.widgetActionFormGroup.get('columnIndex').value === null) {
this.widgetActionFormGroup.get('columnIndex').updateValueAndValidity(); this.columnIndexPlaceholderText = `${this.action.columnIndex} (${this.translate.instant('widget-config.not-set')})`;
this.columnIndexPlaceholderText = `${this.action.columnIndex} (${this.translate.instant('widget-config.not-set')})`; this.columnIndexSelect.focus();
this.columnIndexSelect.focus(); }
} }
}); });
} }
@ -255,9 +254,6 @@ export class WidgetActionDialogComponent extends DialogComponent<WidgetActionDia
{...this.widgetActionFormGroup.value, ...this.widgetActionFormGroup.get('widgetAction').value}; {...this.widgetActionFormGroup.value, ...this.widgetActionFormGroup.get('widgetAction').value};
delete (result as any).widgetAction; delete (result as any).widgetAction;
result.id = this.action.id; result.id = this.action.id;
if (!isDefinedAndNotNull(result.columnIndex)) {
delete result.columnIndex;
}
this.dialogRef.close(result); this.dialogRef.close(result);
} }
} }

Loading…
Cancel
Save