UI: Fixed responsive create/restore complex version
This commit is contained in:
parent
58e418578c
commit
a60ecd1372
@ -22,7 +22,8 @@
|
||||
<div *ngFor="let entityTypeFormGroup of entityTypesFormGroupArray(); trackBy: trackByEntityType;
|
||||
let $index = index; last as isLast;"
|
||||
fxLayout="row" fxLayoutAlign="start center" [ngStyle]="!isLast ? {paddingBottom: '8px'} : {}">
|
||||
<mat-expansion-panel class="entity-type-config" fxFlex [formGroup]="entityTypeFormGroup" [expanded]="entityTypesFormGroupExpanded(entityTypeFormGroup)">
|
||||
<mat-expansion-panel class="entity-type-config" [ngClass]="{'load': loading}" fxFlex [formGroup]="entityTypeFormGroup"
|
||||
[expanded]="entityTypesFormGroupExpanded(entityTypeFormGroup)" (opened)="loading = false">
|
||||
<mat-expansion-panel-header>
|
||||
<div fxFlex fxLayout="row" fxLayoutAlign="start center">
|
||||
<mat-panel-title>
|
||||
@ -40,57 +41,55 @@
|
||||
</button>
|
||||
</div>
|
||||
</mat-expansion-panel-header>
|
||||
<ng-template matExpansionPanelContent>
|
||||
<div class="entity-type-config-content" fxLayout="column" fxLayoutGap="0.5em">
|
||||
<mat-divider></mat-divider>
|
||||
<div fxLayout="row" fxLayout.xs="column" fxLayoutGap.gt-xs="16px">
|
||||
<tb-entity-type-select
|
||||
showLabel
|
||||
formControlName="entityType"
|
||||
required
|
||||
[filterAllowedEntityTypes]="false"
|
||||
[allowedEntityTypes]="allowedEntityTypes(entityTypeFormGroup)">
|
||||
</tb-entity-type-select>
|
||||
<div fxFlex fxLayout="row" fxLayout.xs="column" fxLayoutGap.gt-xs="16px" formGroupName="config">
|
||||
<mat-form-field fxFlex class="mat-block">
|
||||
<mat-label translate>version-control.sync-strategy</mat-label>
|
||||
<mat-select formControlName="syncStrategy">
|
||||
<mat-option [value]="'default'">
|
||||
{{ 'version-control.default' | translate }}
|
||||
</mat-option>
|
||||
<mat-option *ngFor="let strategy of syncStrategies" [value]="strategy">
|
||||
{{syncStrategyTranslations.get(strategy) | translate}}
|
||||
</mat-option>
|
||||
</mat-select>
|
||||
</mat-form-field>
|
||||
<div fxFlex fxLayout="column" fxLayoutGap="8px">
|
||||
<mat-checkbox *ngIf="entityTypeFormGroup.get('entityType').value === entityTypes.DEVICE" formControlName="saveCredentials">
|
||||
{{ 'version-control.export-credentials' | translate }}
|
||||
</mat-checkbox>
|
||||
<mat-checkbox formControlName="saveAttributes">
|
||||
{{ 'version-control.export-attributes' | translate }}
|
||||
</mat-checkbox>
|
||||
<mat-checkbox formControlName="saveRelations">
|
||||
{{ 'version-control.export-relations' | translate }}
|
||||
</mat-checkbox>
|
||||
</div>
|
||||
<div class="entity-type-config-content" fxLayout="column" fxLayoutGap="0.5em">
|
||||
<mat-divider></mat-divider>
|
||||
<div fxLayout="row" fxLayout.xs="column" fxLayoutGap.gt-xs="16px">
|
||||
<tb-entity-type-select
|
||||
showLabel
|
||||
formControlName="entityType"
|
||||
required
|
||||
[filterAllowedEntityTypes]="false"
|
||||
[allowedEntityTypes]="allowedEntityTypes(entityTypeFormGroup)">
|
||||
</tb-entity-type-select>
|
||||
<div fxFlex fxLayout="row" fxLayout.xs="column" fxLayoutGap.gt-xs="16px" formGroupName="config">
|
||||
<mat-form-field fxFlex class="mat-block">
|
||||
<mat-label translate>version-control.sync-strategy</mat-label>
|
||||
<mat-select formControlName="syncStrategy">
|
||||
<mat-option [value]="'default'">
|
||||
{{ 'version-control.default' | translate }}
|
||||
</mat-option>
|
||||
<mat-option *ngFor="let strategy of syncStrategies" [value]="strategy">
|
||||
{{syncStrategyTranslations.get(strategy) | translate}}
|
||||
</mat-option>
|
||||
</mat-select>
|
||||
</mat-form-field>
|
||||
<div fxFlex fxLayout="column" fxLayoutGap="8px">
|
||||
<mat-checkbox *ngIf="entityTypeFormGroup.get('entityType').value === entityTypes.DEVICE" formControlName="saveCredentials">
|
||||
{{ 'version-control.export-credentials' | translate }}
|
||||
</mat-checkbox>
|
||||
<mat-checkbox formControlName="saveAttributes">
|
||||
{{ 'version-control.export-attributes' | translate }}
|
||||
</mat-checkbox>
|
||||
<mat-checkbox formControlName="saveRelations">
|
||||
{{ 'version-control.export-relations' | translate }}
|
||||
</mat-checkbox>
|
||||
</div>
|
||||
</div>
|
||||
<div fxLayout="row" fxLayout.xs="column" fxLayoutGap.gt-xs="16px" fxLayoutAlign.gt-xs="start center"
|
||||
formGroupName="config" ngStyle.gt-xs="min-height: 76px;">
|
||||
<mat-slide-toggle formControlName="allEntities">
|
||||
{{ 'version-control.all-entities' | translate }}
|
||||
</mat-slide-toggle>
|
||||
<tb-entity-list
|
||||
fxFlex
|
||||
[fxShow]="!entityTypeFormGroup.get('config').get('allEntities').value"
|
||||
[entityType]="entityTypeFormGroup.get('entityType').value"
|
||||
required
|
||||
formControlName="entityIds">
|
||||
</tb-entity-list>
|
||||
</div>
|
||||
</div>
|
||||
</ng-template>
|
||||
<div fxLayout="row" fxLayout.xs="column" fxLayoutGap.gt-xs="16px" fxLayoutAlign.gt-xs="start center"
|
||||
formGroupName="config" ngStyle.gt-xs="min-height: 76px;">
|
||||
<mat-slide-toggle formControlName="allEntities">
|
||||
{{ 'version-control.all-entities' | translate }}
|
||||
</mat-slide-toggle>
|
||||
<tb-entity-list
|
||||
fxFlex
|
||||
[fxShow]="!entityTypeFormGroup.get('config').get('allEntities').value"
|
||||
[entityType]="entityTypeFormGroup.get('entityType').value"
|
||||
required
|
||||
formControlName="entityIds">
|
||||
</tb-entity-list>
|
||||
</div>
|
||||
</div>
|
||||
</mat-expansion-panel>
|
||||
</div>
|
||||
<div *ngIf="!entityTypesFormGroupArray().length">
|
||||
|
||||
@ -55,5 +55,9 @@
|
||||
.mat-expansion-panel-body {
|
||||
padding: 0;
|
||||
}
|
||||
&.load .mat-expansion-panel-content {
|
||||
height: 0;
|
||||
visibility: hidden;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -74,6 +74,8 @@ export class EntityTypesVersionCreateComponent extends PageComponent implements
|
||||
|
||||
entityTypes = EntityType;
|
||||
|
||||
loading = true;
|
||||
|
||||
constructor(protected store: Store<AppState>,
|
||||
private translate: TranslateService,
|
||||
private fb: FormBuilder) {
|
||||
|
||||
@ -22,7 +22,8 @@
|
||||
<div *ngFor="let entityTypeFormGroup of entityTypesFormGroupArray(); trackBy: trackByEntityType;
|
||||
let $index = index; last as isLast;"
|
||||
fxLayout="row" fxLayoutAlign="start center" [ngStyle]="!isLast ? {paddingBottom: '8px'} : {}">
|
||||
<mat-expansion-panel class="entity-type-config" fxFlex [formGroup]="entityTypeFormGroup" [expanded]="entityTypesFormGroupExpanded(entityTypeFormGroup)">
|
||||
<mat-expansion-panel class="entity-type-config" [ngClass]="{'load': loading}" fxFlex [formGroup]="entityTypeFormGroup"
|
||||
[expanded]="entityTypesFormGroupExpanded(entityTypeFormGroup)" (opened)="loading = false">
|
||||
<mat-expansion-panel-header>
|
||||
<div fxFlex fxLayout="row" fxLayoutAlign="start center">
|
||||
<mat-panel-title>
|
||||
@ -40,44 +41,42 @@
|
||||
</button>
|
||||
</div>
|
||||
</mat-expansion-panel-header>
|
||||
<ng-template matExpansionPanelContent>
|
||||
<div class="entity-type-config-content" fxLayout="column" fxLayoutGap="0.5em">
|
||||
<mat-divider></mat-divider>
|
||||
<div fxLayout="row" fxLayout.xs="column" fxLayoutGap.gt-xs="32px">
|
||||
<tb-entity-type-select
|
||||
fxFlex
|
||||
showLabel
|
||||
formControlName="entityType"
|
||||
required
|
||||
[filterAllowedEntityTypes]="false"
|
||||
[allowedEntityTypes]="allowedEntityTypes(entityTypeFormGroup)">
|
||||
</tb-entity-type-select>
|
||||
<div fxFlex fxLayout="row" fxLayout.xs="column" fxLayoutGap.gt-xs="16px" fxLayoutGap.xs="8px" formGroupName="config">
|
||||
<div fxFlex fxLayout="column" fxLayoutGap="8px">
|
||||
<mat-checkbox #removeOtherEntitiesCheckbox
|
||||
formControlName="removeOtherEntities"
|
||||
(click)="onRemoveOtherEntities(removeOtherEntitiesCheckbox, entityTypeFormGroup, $event)">
|
||||
{{ 'version-control.remove-other-entities' | translate }}
|
||||
</mat-checkbox>
|
||||
<mat-checkbox formControlName="findExistingEntityByName">
|
||||
{{ 'version-control.find-existing-entity-by-name' | translate }}
|
||||
</mat-checkbox>
|
||||
</div>
|
||||
<div fxFlex fxLayout="column" fxLayoutGap="8px">
|
||||
<mat-checkbox *ngIf="entityTypeFormGroup.get('entityType').value === entityTypes.DEVICE" formControlName="loadCredentials">
|
||||
{{ 'version-control.load-credentials' | translate }}
|
||||
</mat-checkbox>
|
||||
<mat-checkbox formControlName="loadAttributes">
|
||||
{{ 'version-control.load-attributes' | translate }}
|
||||
</mat-checkbox>
|
||||
<mat-checkbox formControlName="loadRelations">
|
||||
{{ 'version-control.load-relations' | translate }}
|
||||
</mat-checkbox>
|
||||
</div>
|
||||
<div class="entity-type-config-content" fxLayout="column" fxLayoutGap="0.5em">
|
||||
<mat-divider></mat-divider>
|
||||
<div fxLayout="row" fxLayout.xs="column" fxLayoutGap.gt-xs="32px">
|
||||
<tb-entity-type-select
|
||||
fxFlex
|
||||
showLabel
|
||||
formControlName="entityType"
|
||||
required
|
||||
[filterAllowedEntityTypes]="false"
|
||||
[allowedEntityTypes]="allowedEntityTypes(entityTypeFormGroup)">
|
||||
</tb-entity-type-select>
|
||||
<div fxFlex fxLayout="row" fxLayout.xs="column" fxLayoutGap.gt-xs="16px" fxLayoutGap.xs="8px" formGroupName="config">
|
||||
<div fxFlex fxLayout="column" fxLayoutGap="8px">
|
||||
<mat-checkbox #removeOtherEntitiesCheckbox
|
||||
formControlName="removeOtherEntities"
|
||||
(click)="onRemoveOtherEntities(removeOtherEntitiesCheckbox, entityTypeFormGroup, $event)">
|
||||
{{ 'version-control.remove-other-entities' | translate }}
|
||||
</mat-checkbox>
|
||||
<mat-checkbox formControlName="findExistingEntityByName">
|
||||
{{ 'version-control.find-existing-entity-by-name' | translate }}
|
||||
</mat-checkbox>
|
||||
</div>
|
||||
<div fxFlex fxLayout="column" fxLayoutGap="8px">
|
||||
<mat-checkbox *ngIf="entityTypeFormGroup.get('entityType').value === entityTypes.DEVICE" formControlName="loadCredentials">
|
||||
{{ 'version-control.load-credentials' | translate }}
|
||||
</mat-checkbox>
|
||||
<mat-checkbox formControlName="loadAttributes">
|
||||
{{ 'version-control.load-attributes' | translate }}
|
||||
</mat-checkbox>
|
||||
<mat-checkbox formControlName="loadRelations">
|
||||
{{ 'version-control.load-relations' | translate }}
|
||||
</mat-checkbox>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</ng-template>
|
||||
</div>
|
||||
</mat-expansion-panel>
|
||||
</div>
|
||||
<div *ngIf="!entityTypesFormGroupArray().length">
|
||||
|
||||
@ -55,5 +55,9 @@
|
||||
.mat-expansion-panel-body {
|
||||
padding: 0;
|
||||
}
|
||||
&.load .mat-expansion-panel-content {
|
||||
height: 0;
|
||||
visibility: hidden;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -68,6 +68,8 @@ export class EntityTypesVersionLoadComponent extends PageComponent implements On
|
||||
|
||||
entityTypes = EntityType;
|
||||
|
||||
loading = true;
|
||||
|
||||
constructor(protected store: Store<AppState>,
|
||||
private translate: TranslateService,
|
||||
private popoverService: TbPopoverService,
|
||||
|
||||
@ -248,7 +248,7 @@ export class EntityVersionsTableComponent extends PageComponent implements OnIni
|
||||
}
|
||||
},
|
||||
{maxHeight: '90vh', height: '100%', padding: '10px'},
|
||||
{width: '600px', minWidth: '100%', maxWidth: '100%'}, {}, false);
|
||||
{}, {}, false);
|
||||
complexCreateVersionPopover.tbComponentRef.instance.popoverComponent = complexCreateVersionPopover;
|
||||
}
|
||||
}
|
||||
@ -321,7 +321,7 @@ export class EntityVersionsTableComponent extends PageComponent implements OnIni
|
||||
}
|
||||
},
|
||||
{maxHeight: '80vh', height: '100%', padding: '10px'},
|
||||
{width: '600px', minWidth: '100%', maxWidth: '100%'}, {}, false);
|
||||
{}, {}, false);
|
||||
restoreEntitiesVersionPopover.tbComponentRef.instance.popoverComponent = restoreEntitiesVersionPopover;
|
||||
}
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user