Headless CMS and Content Managment Hub
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 

111 lines
4.7 KiB

<div class="row no-gutters" [class.compare]="fieldFormCompare">
<div [class.col-12]="!fieldFormCompare" [class.col-6]="fieldFormCompare">
<div class="table-items-row" [class.field-invalid]="isInvalid | async" *ngIf="field.properties.isContentField; else uiField">
<div class="languages-buttons">
<button *ngIf="isTranslatable" type="button" class="btn btn-text-secondary btn-sm mr-1" (click)="translate()" title="Autotranslate from master language">
<i class="icon-translate"></i>
</button>
<sqx-field-languages
[field]="field"
[language]="language"
(languageChange)="emitLanguageChange($event)"
[languages]="languages"
[showAllControls]="showAllControls"
(showAllControlsChange)="changeShowAllControls($event)">
</sqx-field-languages>
</div>
<ng-container *ngIf="showAllControls; else singleControl">
<div class="form-group" *ngFor="let language of languages; trackBy: trackByLanguage">
<sqx-field-editor
[displaySuffix]="prefix(language)"
[form]="form"
[formContext]="formContext"
[field]="field"
[language]="language"
[languages]="languages"
[isCompact]="!!fieldFormCompare"
[control]="fieldForm.controls[language.iso2Code]">
</sqx-field-editor>
</div>
</ng-container>
<ng-template #singleControl>
<sqx-field-editor
[form]="form"
[formContext]="formContext"
[field]="field"
[language]="language"
[languages]="languages"
[isCompact]="!!fieldFormCompare"
[control]="selectedFormControl">
</sqx-field-editor>
</ng-template>
</div>
<ng-template #uiField>
<sqx-field-editor
[form]="form"
[formContext]="formContext"
[field]="field"
[language]="language"
[languages]="languages"
[isCompact]="!!fieldFormCompare"
[control]="selectedFormControl">
</sqx-field-editor>
</ng-template>
</div>
<div class="col-6 col-right" *ngIf="fieldFormCompare">
<button type="button" class="btn btn-primary btn-sm field-copy" (click)="copy()" *ngIf="field.properties.isContentField && (isDifferent | async)">
<i class="icon-arrow_back"></i>
</button>
<div class="table-items-row" *ngIf="field.properties.isContentField; else uiField">
<div class="languages-buttons">
<sqx-field-languages
[field]="field"
[language]="language"
(languageChange)="emitLanguageChange($event)"
[languages]="languages"
[showAllControls]="showAllControls"
(showAllControlsChange)="changeShowAllControls($event)">
</sqx-field-languages>
</div>
<ng-container *ngIf="showAllControls; else singleControlCompare">
<div class="form-group" *ngFor="let language of languages; trackBy: trackByLanguage">
<sqx-field-editor
[displaySuffix]="prefix(language)"
[field]="field"
[language]="language"
[languages]="languages"
[isCompact]="true"
[control]="fieldFormCompare?.controls[language.iso2Code]">
</sqx-field-editor>
</div>
</ng-container>
<ng-template #singleControlCompare>
<sqx-field-editor
[field]="field"
[language]="language"
[languages]="languages"
[isCompact]="true"
[control]="selectedFormControlCompare">
</sqx-field-editor>
</ng-template>
</div>
<ng-template #uiField>
<sqx-field-editor
[field]="field"
[language]="language"
[languages]="languages"
[isCompact]="!!fieldFormCompare"
[control]="selectedFormControl">
</sqx-field-editor>
</ng-template>
</div>
</div>