Browse Source

UI: Fixed not allow created entities version

pull/8341/head
Vladyslav_Prykhodko 4 years ago
parent
commit
f1f7250270
  1. 50
      ui-ngx/src/app/modules/home/components/vc/complex-version-create.component.ts
  2. 13
      ui-ngx/src/app/modules/home/components/vc/entity-types-version-create.component.ts

50
ui-ngx/src/app/modules/home/components/vc/complex-version-create.component.ts

@ -120,32 +120,34 @@ export class ComplexVersionCreateComponent extends PageComponent implements OnIn
this.popoverComponent.updatePosition(); this.popoverComponent.updatePosition();
} }
this.versionCreateResultSubscription = this.versionCreateResult$.subscribe((result) => { this.versionCreateResultSubscription = this.versionCreateResult$.subscribe({
let message: string; next: (result) => {
if (!result.error) { let message: string;
if (result.done && !result.added && !result.modified && !result.removed) { if (!result.error) {
message = this.translate.instant('version-control.nothing-to-commit'); if (result.done && !result.added && !result.modified && !result.removed) {
message = this.translate.instant('version-control.nothing-to-commit');
} else {
message = this.translate.instant('version-control.version-create-result',
{added: result.added, modified: result.modified, removed: result.removed});
}
} else { } else {
message = this.translate.instant('version-control.version-create-result',
{added: result.added, modified: result.modified, removed: result.removed});
}
} else {
message = result.error; message = result.error;
} }
this.resultMessage = this.sanitizer.bypassSecurityTrustHtml(message); this.resultMessage = this.sanitizer.bypassSecurityTrustHtml(message);
this.versionCreateResult = result; this.versionCreateResult = result;
this.versionCreateBranch = request.branch; this.versionCreateBranch = request.branch;
this.cd.detectChanges(); this.cd.detectChanges();
if (this.popoverComponent) { if (this.popoverComponent) {
this.popoverComponent.updatePosition(); this.popoverComponent.updatePosition();
} }
}, },
(error) => { error: (error) => {
this.hasError = true; this.hasError = true;
this.resultMessage = this.sanitizer.bypassSecurityTrustHtml(parseHttpErrorMessage(error, this.translate).message); this.resultMessage = this.sanitizer.bypassSecurityTrustHtml(parseHttpErrorMessage(error, this.translate).message);
this.cd.detectChanges(); this.cd.detectChanges();
if (this.popoverComponent) { if (this.popoverComponent) {
this.popoverComponent.updatePosition(); this.popoverComponent.updatePosition();
}
} }
}); });
} }

13
ui-ngx/src/app/modules/home/components/vc/entity-types-version-create.component.ts

@ -18,12 +18,12 @@ import { Component, forwardRef, Input, OnInit } from '@angular/core';
import { import {
AbstractControl, AbstractControl,
ControlValueAccessor, ControlValueAccessor,
NG_VALIDATORS,
NG_VALUE_ACCESSOR,
UntypedFormArray, UntypedFormArray,
UntypedFormBuilder, UntypedFormBuilder,
UntypedFormControl, UntypedFormControl,
UntypedFormGroup, UntypedFormGroup,
NG_VALIDATORS,
NG_VALUE_ACCESSOR,
Validator, Validator,
Validators Validators
} from '@angular/forms'; } from '@angular/forms';
@ -104,6 +104,9 @@ export class EntityTypesVersionCreateComponent extends PageComponent implements
this.entityTypesVersionCreateFormGroup.disable({emitEvent: false}); this.entityTypesVersionCreateFormGroup.disable({emitEvent: false});
} else { } else {
this.entityTypesVersionCreateFormGroup.enable({emitEvent: false}); this.entityTypesVersionCreateFormGroup.enable({emitEvent: false});
(this.entityTypesVersionCreateFormGroup.get('entityTypes') as UntypedFormArray).controls.forEach(
control => this.updateEntityTypeValidators(control)
);
} }
} }
@ -147,7 +150,7 @@ export class EntityTypesVersionCreateComponent extends PageComponent implements
} }
); );
this.updateEntityTypeValidators(entityTypeControl); this.updateEntityTypeValidators(entityTypeControl);
entityTypeControl.get('config').get('allEntities').valueChanges.subscribe(() => { entityTypeControl.get('config.allEntities').valueChanges.subscribe(() => {
this.updateEntityTypeValidators(entityTypeControl); this.updateEntityTypeValidators(entityTypeControl);
}); });
return entityTypeControl; return entityTypeControl;
@ -229,7 +232,7 @@ export class EntityTypesVersionCreateComponent extends PageComponent implements
allowedEntityTypes(entityTypeControl?: AbstractControl): Array<EntityType> { allowedEntityTypes(entityTypeControl?: AbstractControl): Array<EntityType> {
let res = [...exportableEntityTypes]; let res = [...exportableEntityTypes];
const currentEntityType: EntityType = entityTypeControl?.get('entityType')?.value; const currentEntityType: EntityType = entityTypeControl?.get('entityType')?.value;
const value: [{entityType: string, config: EntityTypeVersionCreateConfig}] = const value: [{entityType: string; config: EntityTypeVersionCreateConfig}] =
this.entityTypesVersionCreateFormGroup.get('entityTypes').value || []; this.entityTypesVersionCreateFormGroup.get('entityTypes').value || [];
const usedEntityTypes = value.map(val => val.entityType).filter(val => val); const usedEntityTypes = value.map(val => val.entityType).filter(val => val);
res = res.filter(entityType => !usedEntityTypes.includes(entityType) || entityType === currentEntityType); res = res.filter(entityType => !usedEntityTypes.includes(entityType) || entityType === currentEntityType);
@ -237,7 +240,7 @@ export class EntityTypesVersionCreateComponent extends PageComponent implements
} }
private updateModel() { private updateModel() {
const value: [{entityType: string, config: EntityTypeVersionCreateConfig}] = const value: [{entityType: string; config: EntityTypeVersionCreateConfig}] =
this.entityTypesVersionCreateFormGroup.get('entityTypes').value || []; this.entityTypesVersionCreateFormGroup.get('entityTypes').value || [];
let modelValue: {[entityType: string]: EntityTypeVersionCreateConfig} = null; let modelValue: {[entityType: string]: EntityTypeVersionCreateConfig} = null;
if (value && value.length) { if (value && value.length) {

Loading…
Cancel
Save