[ACS-8956] Introduce new ESLint rule for self-closing tags (#10354)

This commit is contained in:
MichalKinas 2024-11-04 10:58:24 +01:00 committed by GitHub
parent 3f1b88a62c
commit f07636e297
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
247 changed files with 710 additions and 1359 deletions

View File

@ -185,7 +185,10 @@ module.exports = {
{ {
files: ['*.html'], files: ['*.html'],
extends: ['plugin:@angular-eslint/template/recommended', 'plugin:@angular-eslint/template/accessibility'], extends: ['plugin:@angular-eslint/template/recommended', 'plugin:@angular-eslint/template/accessibility'],
rules: {} parser: '@angular-eslint/template-parser',
rules: {
'@angular-eslint/template/prefer-self-closing-tags': 'error'
}
}, },
{ {
files: ['*.spec.ts'], files: ['*.spec.ts'],

View File

@ -13,7 +13,7 @@
"prefer-arrow/prefer-arrow-functions": "off", "prefer-arrow/prefer-arrow-functions": "off",
"@typescript-eslint/no-var-requires": "off", "@typescript-eslint/no-var-requires": "off",
"@typescript-eslint/naming-convention": "warn", "@typescript-eslint/naming-convention": "warn",
"quote-props": "warn", "quote-props": "off",
"no-shadow": "warn", "no-shadow": "warn",
"no-restricted-syntax": "off", "no-restricted-syntax": "off",
"no-underscore-dangle": "off", "no-underscore-dangle": "off",

View File

@ -22,12 +22,12 @@
} }
], ],
"no-shadow": "warn", "no-shadow": "warn",
"quote-props": "warn", "quote-props": "off",
"object-shorthand": "warn", "object-shorthand": "warn",
"prefer-const": "warn", "prefer-const": "warn",
"arrow-body-style": "warn", "arrow-body-style": "warn",
"@angular-eslint/no-output-native": "off", "@angular-eslint/no-output-native": "off",
"space-before-function-paren": "warn", "space-before-function-paren": "off",
"@angular-eslint/component-selector": [ "@angular-eslint/component-selector": [
"error", "error",
{ {

View File

@ -9,8 +9,7 @@
{{'ADF-ASPECT-LIST.DIALOG.SELECTED' | translate}}</p> {{'ADF-ASPECT-LIST.DIALOG.SELECTED' | translate}}</p>
</div> </div>
<mat-dialog-content class="adf-aspect-dialog-content"> <mat-dialog-content class="adf-aspect-dialog-content">
<adf-aspect-list #aspectList (valueChanged)="onValueChanged($event)" (updateCounter)="onUpdateCounter($event)" [nodeId]="currentNodeId" [excludedAspects]="data.excludedAspects"> <adf-aspect-list #aspectList (valueChanged)="onValueChanged($event)" (updateCounter)="onUpdateCounter($event)" [nodeId]="currentNodeId" [excludedAspects]="data.excludedAspects" />
</adf-aspect-list>
</mat-dialog-content> </mat-dialog-content>
<mat-dialog-actions class="adf-aspect-list-dialog"> <mat-dialog-actions class="adf-aspect-list-dialog">

View File

@ -44,6 +44,6 @@
<ng-template #loading> <ng-template #loading>
<div class="adf-aspect-list-spinner"> <div class="adf-aspect-list-spinner">
<mat-progress-spinner mode="indeterminate" id="adf-aspect-spinner"></mat-progress-spinner> <mat-progress-spinner mode="indeterminate" id="adf-aspect-spinner" />
</div> </div>
</ng-template> </ng-template>

View File

@ -63,7 +63,6 @@
*ngIf="existingCategoriesLoading" *ngIf="existingCategoriesLoading"
[diameter]="50" [diameter]="50"
class="adf-categories-management-spinner" class="adf-categories-management-spinner"
[attr.aria-label]="'CATEGORIES_MANAGEMENT.LOADING' | translate"> [attr.aria-label]="'CATEGORIES_MANAGEMENT.LOADING' | translate" />
</mat-spinner>
</div> </div>
</div> </div>

View File

@ -58,10 +58,8 @@ export class SavedSearchesService {
*/ */
getSavedSearches(): Observable<SavedSearch[]> { getSavedSearches(): Observable<SavedSearch[]> {
return this.getSavedSearchesNodeId().pipe( return this.getSavedSearchesNodeId().pipe(
concatMap(() => { concatMap(() =>
return from( from(this.nodesApi.getNodeContent(this.savedSearchFileNodeId).then((content) => this.mapFileContentToSavedSearches(content))).pipe(
this.nodesApi.getNodeContent(this.savedSearchFileNodeId).then((content) => this.mapFileContentToSavedSearches(content))
).pipe(
catchError((error) => { catchError((error) => {
if (!this.createFileAttempt) { if (!this.createFileAttempt) {
this.createFileAttempt = true; this.createFileAttempt = true;
@ -70,8 +68,8 @@ export class SavedSearchesService {
} }
return throwError(() => error); return throwError(() => error);
}) })
); )
}) )
); );
} }
@ -130,9 +128,9 @@ export class SavedSearchesService {
tap((updatedSearches: SavedSearch[]) => { tap((updatedSearches: SavedSearch[]) => {
this.savedSearches$.next(updatedSearches); this.savedSearches$.next(updatedSearches);
}), }),
switchMap((updatedSearches: SavedSearch[]) => { switchMap((updatedSearches: SavedSearch[]) =>
return from(this.nodesApi.updateNodeContent(this.savedSearchFileNodeId, JSON.stringify(updatedSearches))); from(this.nodesApi.updateNodeContent(this.savedSearchFileNodeId, JSON.stringify(updatedSearches)))
}), ),
catchError((error) => { catchError((error) => {
this.savedSearches$.next(previousSavedSearches); this.savedSearches$.next(previousSavedSearches);
return throwError(() => error); return throwError(() => error);
@ -161,9 +159,9 @@ export class SavedSearchesService {
tap((updatedSearches: SavedSearch[]) => { tap((updatedSearches: SavedSearch[]) => {
this.savedSearches$.next(updatedSearches); this.savedSearches$.next(updatedSearches);
}), }),
switchMap((updatedSearches: SavedSearch[]) => { switchMap((updatedSearches: SavedSearch[]) =>
return from(this.nodesApi.updateNodeContent(this.savedSearchFileNodeId, JSON.stringify(updatedSearches))); from(this.nodesApi.updateNodeContent(this.savedSearchFileNodeId, JSON.stringify(updatedSearches)))
}), ),
catchError((error) => { catchError((error) => {
this.savedSearches$.next(previousSavedSearchesOrder); this.savedSearches$.next(previousSavedSearchesOrder);
return throwError(() => error); return throwError(() => error);
@ -192,9 +190,9 @@ export class SavedSearchesService {
})); }));
}), }),
tap((savedSearches: SavedSearch[]) => this.savedSearches$.next(savedSearches)), tap((savedSearches: SavedSearch[]) => this.savedSearches$.next(savedSearches)),
switchMap((updatedSearches: SavedSearch[]) => { switchMap((updatedSearches: SavedSearch[]) =>
return from(this.nodesApi.updateNodeContent(this.savedSearchFileNodeId, JSON.stringify(updatedSearches))); from(this.nodesApi.updateNodeContent(this.savedSearchFileNodeId, JSON.stringify(updatedSearches)))
}), ),
catchError((error) => { catchError((error) => {
this.savedSearches$.next(previousSavedSearchesOrder); this.savedSearches$.next(previousSavedSearchesOrder);
return throwError(() => error); return throwError(() => error);

View File

@ -11,8 +11,7 @@
[preset]="preset" [preset]="preset"
[displayTags]="displayTags" [displayTags]="displayTags"
[displayCategories]="displayCategories" [displayCategories]="displayCategories"
[customPanels]="customPanels"> [customPanels]="customPanels" />
</adf-content-metadata>
</mat-card-content> </mat-card-content>
<mat-card-footer class="adf-content-metadata-card-footer adf-content-metadata-card-view-footer"> <mat-card-footer class="adf-content-metadata-card-footer adf-content-metadata-card-view-footer">
<div> <div>

View File

@ -52,8 +52,7 @@
[displayEmpty]="displayEmpty" [displayEmpty]="displayEmpty"
[copyToClipboardAction]="copyToClipboardAction" [copyToClipboardAction]="copyToClipboardAction"
[useChipsForMultiValueProperty]="useChipsForMultiValueProperty" [useChipsForMultiValueProperty]="useChipsForMultiValueProperty"
[multiValueSeparator]="multiValueSeparator"> [multiValueSeparator]="multiValueSeparator" />
</adf-card-view>
</mat-expansion-panel> </mat-expansion-panel>
<ng-container *ngIf="displayTags"> <ng-container *ngIf="displayTags">
@ -114,8 +113,7 @@
(tagsChange)="storeTagsToAssign($event)" (tagsChange)="storeTagsToAssign($event)"
[mode]="tagsCreatorMode" [mode]="tagsCreatorMode"
[tags]="assignedTags" [tags]="assignedTags"
[disabledTagsRemoving]="saving"> [disabledTagsRemoving]="saving" />
</adf-tags-creator>
</mat-expansion-panel> </mat-expansion-panel>
</ng-container> </ng-container>
@ -178,8 +176,7 @@
[categories]="categories" [categories]="categories"
[managementMode]="categoriesManagementMode" [managementMode]="categoriesManagementMode"
[classifiableChanged]="classifiableChanged" [classifiableChanged]="classifiableChanged"
(categoriesChange)="storeCategoriesToAssign($event)"> (categoriesChange)="storeCategoriesToAssign($event)" />
</adf-categories-management>
</mat-expansion-panel> </mat-expansion-panel>
</ng-container> </ng-container>
@ -196,10 +193,9 @@
<adf-content-metadata-header <adf-content-metadata-header
class="adf-metadata-custom-panel-title" class="adf-metadata-custom-panel-title"
[title]="customPanel.panelTitle" [title]="customPanel.panelTitle"
[expanded]="currentPanel.panelTitle === customPanel.panelTitle && currentPanel.expanded"> [expanded]="currentPanel.panelTitle === customPanel.panelTitle && currentPanel.expanded" />
</adf-content-metadata-header>
</mat-expansion-panel-header> </mat-expansion-panel-header>
<adf-dynamic-component [id]="customPanel.component" [data]="{ node }"></adf-dynamic-component> <adf-dynamic-component [id]="customPanel.component" [data]="{ node }" />
</mat-expansion-panel> </mat-expansion-panel>
<ng-container *ngIf="groupedProperties$ | async; else loading; let groupedProperties"> <ng-container *ngIf="groupedProperties$ | async; else loading; let groupedProperties">
@ -257,13 +253,12 @@
[copyToClipboardAction]="copyToClipboardAction" [copyToClipboardAction]="copyToClipboardAction"
[useChipsForMultiValueProperty]="useChipsForMultiValueProperty" [useChipsForMultiValueProperty]="useChipsForMultiValueProperty"
[multiValueSeparator]="multiValueSeparator" [multiValueSeparator]="multiValueSeparator"
[displayLabelForChips]="true"> [displayLabelForChips]="true" />
</adf-card-view>
</mat-expansion-panel> </mat-expansion-panel>
</div> </div>
</ng-container> </ng-container>
<ng-template #loading> <ng-template #loading>
<mat-progress-bar mode="indeterminate" [attr.aria-label]="'DATA_LOADING' | translate"> </mat-progress-bar> <mat-progress-bar mode="indeterminate" [attr.aria-label]="'DATA_LOADING' | translate" />
</ng-template> </ng-template>
</mat-accordion> </mat-accordion>

View File

@ -34,8 +34,7 @@
[hideMyFiles]="dropdownHideMyFiles" [hideMyFiles]="dropdownHideMyFiles"
[siteList]="dropdownSiteList" [siteList]="dropdownSiteList"
[value]="startSiteGuid" [value]="startSiteGuid"
data-automation-id="content-node-selector-sites-combo"> data-automation-id="content-node-selector-sites-combo" />
</adf-sites-dropdown>
<button *ngIf="hasCustomModels()" <button *ngIf="hasCustomModels()"
data-automation-id="adf-toggle-search-panel-button" data-automation-id="adf-toggle-search-panel-button"
mat-icon-button mat-icon-button
@ -44,7 +43,7 @@
{{ 'SEARCH.SEARCH_HEADER.TITLE' | translate }} {{ 'SEARCH.SEARCH_HEADER.TITLE' | translate }}
</button> </button>
<div class="adf-content-node-selector-search-panel-container"> <div class="adf-content-node-selector-search-panel-container">
<adf-search-panel *ngIf="searchPanelExpanded"></adf-search-panel> <adf-search-panel *ngIf="searchPanelExpanded" />
<div class="adf-content-node-selector-document-list-container"> <div class="adf-content-node-selector-document-list-container">
<adf-toolbar> <adf-toolbar>
<adf-toolbar-title> <adf-toolbar-title>
@ -59,9 +58,8 @@
[transform]="breadcrumbTransform" [transform]="breadcrumbTransform"
[folderNode]="breadcrumbFolderNode" [folderNode]="breadcrumbFolderNode"
[root]="breadcrumbFolderTitle" [root]="breadcrumbFolderTitle"
data-automation-id="content-node-selector-content-breadcrumb"> data-automation-id="content-node-selector-content-breadcrumb" />
</adf-dropdown-breadcrumb> <ng-container *ngIf="showNodeCounter" [adf-node-counter]="getSelectedCount()" />
<ng-container *ngIf="showNodeCounter" [adf-node-counter]="getSelectedCount()"></ng-container>
</adf-toolbar-title> </adf-toolbar-title>
</adf-toolbar> </adf-toolbar>
@ -98,15 +96,15 @@
</adf-custom-empty-content-template> </adf-custom-empty-content-template>
<data-columns> <data-columns>
<data-column key="$thumbnail" type="image"></data-column> <data-column key="$thumbnail" type="image" />
<data-column key="name" type="text" title="ADF-DOCUMENT-LIST.LAYOUT.NAME" class="adf-full-width adf-ellipsis-cell"> <data-column key="name" type="text" title="ADF-DOCUMENT-LIST.LAYOUT.NAME" class="adf-full-width adf-ellipsis-cell">
<ng-template let-context> <ng-template let-context>
<adf-name-location-cell [row]="context.row"></adf-name-location-cell> <adf-name-location-cell [row]="context.row" />
</ng-template> </ng-template>
</data-column> </data-column>
<data-column key="modifiedAt" type="date" title="ADF-DOCUMENT-LIST.LAYOUT.MODIFIED_ON" format="timeAgo" class="adf-content-selector-modified-cell"></data-column> <data-column key="modifiedAt" type="date" title="ADF-DOCUMENT-LIST.LAYOUT.MODIFIED_ON" format="timeAgo" class="adf-content-selector-modified-cell" />
<data-column key="createdByUser.displayName" type="text" title="ADF-DOCUMENT-LIST.LAYOUT.CREATED_BY" class="adf-content-selector-modifier-cell"></data-column> <data-column key="createdByUser.displayName" type="text" title="ADF-DOCUMENT-LIST.LAYOUT.CREATED_BY" class="adf-content-selector-modifier-cell" />
<data-column key="visibility" type="text" title="ADF-DOCUMENT-LIST.LAYOUT.STATUS" class="adf-content-selector-visibility-cell"></data-column> <data-column key="visibility" type="text" title="ADF-DOCUMENT-LIST.LAYOUT.STATUS" class="adf-content-selector-visibility-cell" />
</data-columns> </data-columns>
</adf-document-list> </adf-document-list>

View File

@ -4,7 +4,7 @@
mat-align-tabs="start" mat-align-tabs="start"
(selectedIndexChange)="onTabSelectionChange($event)"> (selectedIndexChange)="onTabSelectionChange($event)">
<mat-tab label="{{ 'NODE_SELECTOR.REPOSITORY' | translate }}"> <mat-tab label="{{ 'NODE_SELECTOR.REPOSITORY' | translate }}">
<ng-container *ngTemplateOutlet='contentNodePanel'></ng-container> <ng-container *ngTemplateOutlet='contentNodePanel' />
</mat-tab> </mat-tab>
<mat-tab [disabled]="isNotAllowedToUpload()"> <mat-tab [disabled]="isNotAllowedToUpload()">
<div class="adf-content-node-selector-local-upload-container"> <div class="adf-content-node-selector-local-upload-container">
@ -17,8 +17,8 @@
[rootId]="data?.currentFolderId" [rootId]="data?.currentFolderId"
[readOnly]="true" [readOnly]="true"
data-automation-id="content-node-selector-upload-breadcrumb" data-automation-id="content-node-selector-upload-breadcrumb"
></adf-dropdown-breadcrumb> />
<ng-container *ngIf="isCounterVisible()" [adf-node-counter]="getSelectedCount()"></ng-container> <ng-container *ngIf="isCounterVisible()" [adf-node-counter]="getSelectedCount()" />
</adf-toolbar-title> </adf-toolbar-title>
</adf-toolbar> </adf-toolbar>
<ng-template mat-tab-label> <ng-template mat-tab-label>
@ -32,7 +32,7 @@
<div class="adf-content-node-selector-local-upload-content"> <div class="adf-content-node-selector-local-upload-content">
<adf-upload-drag-area [rootFolderId]="currentDirectoryId"> <adf-upload-drag-area [rootFolderId]="currentDirectoryId">
<div [class.adf-upload-dialog-container]="uploadStarted"> <div [class.adf-upload-dialog-container]="uploadStarted">
<adf-file-uploading-dialog [alwaysVisible]="true"></adf-file-uploading-dialog> <adf-file-uploading-dialog [alwaysVisible]="true" />
</div> </div>
<adf-empty-list data-automation-id="adf-empty-list" *ngIf="!uploadStarted"> <adf-empty-list data-automation-id="adf-empty-list" *ngIf="!uploadStarted">
<div class="adf-empty-list_template adf-empty-folder"> <div class="adf-empty-list_template adf-empty-folder">
@ -71,8 +71,7 @@
(select)="onSelect($event)" (select)="onSelect($event)"
(showingSearch)="onShowingSearch($event)" (showingSearch)="onShowingSearch($event)"
(siteChange)="onSiteChange($event)" (siteChange)="onSiteChange($event)"
(navigationChange)="onNavigationChange($event)"> (navigationChange)="onNavigationChange($event)" />
</adf-content-node-selector-panel>
</ng-template> </ng-template>
@ -84,8 +83,7 @@
[multipleFiles]="isMultipleSelection()" [multipleFiles]="isMultipleSelection()"
[rootFolderId]="currentDirectoryId" [rootFolderId]="currentDirectoryId"
[disabled]="isNotAllowedToUpload()" [disabled]="isNotAllowedToUpload()"
(error)="onError($event)"> (error)="onError($event)" />
</adf-upload-button>
</ng-container> </ng-container>
</div> </div>
<div> <div>

View File

@ -24,8 +24,7 @@
data-automation-id="adf-expire-toggle" data-automation-id="adf-expire-toggle"
aria-label="{{ 'SHARE.EXPIRES' | translate }}" aria-label="{{ 'SHARE.EXPIRES' | translate }}"
[checked]="!!time.value" [checked]="!!time.value"
(change)="onToggleExpirationDate($event)"> (change)="onToggleExpirationDate($event)" />
</mat-slide-toggle>
</div> </div>
<div <div
[style.display]="isExpiryDateToggleChecked ? 'block' : 'none'" [style.display]="isExpiryDateToggleChecked ? 'block' : 'none'"
@ -37,12 +36,10 @@
[disabled]="time.disabled" [disabled]="time.disabled"
[for]="datePicker" [for]="datePicker"
matSuffix matSuffix
class="adf-share-link__icon adf-share-link__calender-icon"> class="adf-share-link__icon adf-share-link__calender-icon" />
</mat-datepicker-toggle>
<mat-datepicker <mat-datepicker
#datePicker #datePicker
(closed)="onDatePickerClosed()"> (closed)="onDatePickerClosed()" />
</mat-datepicker>
<input <input
class="adf-share-link__input" class="adf-share-link__input"
#datePickerInput #datePickerInput
@ -67,8 +64,7 @@
aria-label="{{ 'SHARE.TITLE' | translate }}" aria-label="{{ 'SHARE.TITLE' | translate }}"
[checked]="isFileShared" [checked]="isFileShared"
[disabled]="!canUpdate || isDisabled" [disabled]="!canUpdate || isDisabled"
(change)="onSlideShareChange($event)"> (change)="onSlideShareChange($event)" />
</mat-slide-toggle>
<div class="adf-share-link__label adf-sharable-link">{{ 'SHARE.SHARABLE-LINK-CREATED' | translate }} <div class="adf-share-link__label adf-sharable-link">{{ 'SHARE.SHARABLE-LINK-CREATED' | translate }}
</div> </div>
</div> </div>

View File

@ -7,8 +7,7 @@
(categoriesChange)="categories = $event" (categoriesChange)="categories = $event"
[categoryNameControlVisible]="true" [categoryNameControlVisible]="true"
[managementMode]="categoriesManagementMode" [managementMode]="categoriesManagementMode"
[multiSelect]="multiSelect"> [multiSelect]="multiSelect" />
</adf-categories-management>
</mat-dialog-content> </mat-dialog-content>
<mat-dialog-actions align="end"> <mat-dialog-actions align="end">
<button <button

View File

@ -1,6 +1,6 @@
<h1 matDialogTitle>{{ 'CORE.DIALOG.DOWNLOAD_ZIP.TITLE' | translate }}</h1> <h1 matDialogTitle>{{ 'CORE.DIALOG.DOWNLOAD_ZIP.TITLE' | translate }}</h1>
<div mat-dialog-content class="adf-dialog-content"> <div mat-dialog-content class="adf-dialog-content">
<mat-progress-bar value="{{ percentageDone }}" color="primary" mode="determinate"></mat-progress-bar> <mat-progress-bar value="{{ percentageDone }}" color="primary" mode="determinate" />
<div class="adf-dialog-content-progress-text"> <div class="adf-dialog-content-progress-text">
<span class="adf-dialog-content-progress-text-percentage"> <span class="adf-dialog-content-progress-text-percentage">
{{ percentageDone }}% {{ percentageDone }}%

View File

@ -25,8 +25,8 @@
<br /> <br />
<mat-form-field *ngIf="form.value?.isTimeLock"> <mat-form-field *ngIf="form.value?.isTimeLock">
<mat-datetimepicker-toggle [for]="datetimePicker" matSuffix></mat-datetimepicker-toggle> <mat-datetimepicker-toggle [for]="datetimePicker" matSuffix />
<mat-datetimepicker #datetimePicker type="datetime" [openOnFocus]="true" [timeInterval]="1"></mat-datetimepicker> <mat-datetimepicker #datetimePicker type="datetime" [openOnFocus]="true" [timeInterval]="1" />
<input matInput [formControlName]="'time'" [matDatetimepicker]="datetimePicker" required autocomplete="false"> <input matInput [formControlName]="'time'" [matDatetimepicker]="datetimePicker" required autocomplete="false">
</mat-form-field> </mat-form-field>
</div> </div>

View File

@ -35,8 +35,7 @@
<adf-filter-header <adf-filter-header
[currentFolderId]="currentFolderId" [currentFolderId]="currentFolderId"
[value]="filterValue" [value]="filterValue"
(filterSelection)="onFilterSelectionChange($event)"> (filterSelection)="onFilterSelectionChange($event)" />
</adf-filter-header>
</div> </div>
<adf-no-content-template> <adf-no-content-template>
@ -71,8 +70,7 @@
class="adf-document-list-loading-margin" class="adf-document-list-loading-margin"
[attr.aria-label]="'ADF-DOCUMENT-LIST.LOADER_LABEL' | translate" [attr.aria-label]="'ADF-DOCUMENT-LIST.LOADER_LABEL' | translate"
[color]="'primary'" [color]="'primary'"
[mode]="'indeterminate'"> [mode]="'indeterminate'" />
</mat-progress-spinner>
</div> </div>
<ng-content select="adf-custom-loading-content-template"></ng-content> <ng-content select="adf-custom-loading-content-template"></ng-content>
</ng-template> </ng-template>
@ -85,8 +83,7 @@
[mainMenuTrigger]="mainMenuTrigger" [mainMenuTrigger]="mainMenuTrigger"
[columnsSorting]="false" [columnsSorting]="false"
[maxColumnsVisible]="maxColumnsVisible" [maxColumnsVisible]="maxColumnsVisible"
(submitColumnsVisibility)="onColumnsVisibilityChange($event)"> (submitColumnsVisibility)="onColumnsVisibilityChange($event)" />
</adf-datatable-column-selector>
</ng-template> </ng-template>
</adf-main-menu-datatable-template> </adf-main-menu-datatable-template>

View File

@ -3,8 +3,7 @@
<ng-template let-col> <ng-template let-col>
<adf-search-filter-container [col]="col" <adf-search-filter-container [col]="col"
[value]="value" [value]="value"
(filterChange)="onFilterSelectionChange()"> (filterChange)="onFilterSelectionChange()" />
</adf-search-filter-container>
</ng-template> </ng-template>
</adf-header-filter-template> </adf-header-filter-template>
</div> </div>

View File

@ -1,6 +1,6 @@
<h1 class="adf-new-version-uploader-dialog-title" mat-dialog-title data-automation-id="new-version-uploader-dialog-title">{{ title | translate }}</h1> <h1 class="adf-new-version-uploader-dialog-title" mat-dialog-title data-automation-id="new-version-uploader-dialog-title">{{ title | translate }}</h1>
<section class="adf-new-version-uploader-dialog-content" mat-dialog-content *ngIf="!data.showVersionsOnly"> <section class="adf-new-version-uploader-dialog-content" mat-dialog-content *ngIf="!data.showVersionsOnly">
<adf-version-comparison id="adf-version-comparison" [newFileVersion]="data.file" [node]="data.node"></adf-version-comparison> <adf-version-comparison id="adf-version-comparison" [newFileVersion]="data.file" [node]="data.node" />
<adf-version-upload <adf-version-upload
id="adf-version-upload-button" id="adf-version-upload-button"
[node]="data.node" [node]="data.node"
@ -9,8 +9,7 @@
(success)="handleUpload($event)" (success)="handleUpload($event)"
(cancel)="handleCancel()" (cancel)="handleCancel()"
(error)="onUploadError($event)" (error)="onUploadError($event)"
> />
</adf-version-upload>
</section> </section>
<ng-container *ngIf="data.showVersionsOnly"> <ng-container *ngIf="data.showVersionsOnly">
<section class="adf-new-version-uploader-dialog-content" mat-dialog-content> <section class="adf-new-version-uploader-dialog-content" mat-dialog-content>
@ -26,7 +25,7 @@
(deleted)="refresh($event)" (deleted)="refresh($event)"
(restored)="refresh($event)" (restored)="refresh($event)"
(viewVersion)="onViewingVersion($event)" (viewVersion)="onViewingVersion($event)"
></adf-version-list> />
</div> </div>
</div> </div>
</section> </section>

View File

@ -1,5 +1,4 @@
<adf-comments <adf-comments
[readOnly]="readOnly" [readOnly]="readOnly"
[id]="nodeId" [id]="nodeId"
> />
</adf-comments>

View File

@ -20,7 +20,7 @@
<data-columns> <data-columns>
<data-column class="adf-datatable-cell--image adf-authority-icon-column" key="$thumbunail" [sortable]="false"> <data-column class="adf-datatable-cell--image adf-authority-icon-column" key="$thumbunail" [sortable]="false">
<ng-template let-context> <ng-template let-context>
<adf-user-icon-column [context]="context"></adf-user-icon-column> <adf-user-icon-column [context]="context" />
</ng-template> </ng-template>
</data-column> </data-column>
@ -28,7 +28,7 @@
[title]="'PERMISSION_MANAGER.COLUMN.NAME' | translate:{count:selectedMembers.length}" [title]="'PERMISSION_MANAGER.COLUMN.NAME' | translate:{count:selectedMembers.length}"
key="id"> key="id">
<ng-template let-context> <ng-template let-context>
<adf-user-name-column [context]="context"></adf-user-name-column> <adf-user-name-column [context]="context" />
</ng-template> </ng-template>
</data-column> </data-column>
@ -40,8 +40,7 @@
[value]="entry.data.getValue(entry.row, entry.col)" [value]="entry.data.getValue(entry.row, entry.col)"
[roles]="data.roles" [roles]="data.roles"
id="adf-select-role-permission" id="adf-select-role-permission"
(roleChanged)="onMemberUpdate($event, entry.row.obj)"> (roleChanged)="onMemberUpdate($event, entry.row.obj)" />
</adf-user-role-column>
</ng-template> </ng-template>
<adf-data-column-header> <adf-data-column-header>
@ -50,8 +49,7 @@
placeholder="PERMISSION_MANAGER.COLUMN.BULK-ROLE" placeholder="PERMISSION_MANAGER.COLUMN.BULK-ROLE"
[roles]="data.roles" [roles]="data.roles"
id="adf-bulk-select-role-permission" id="adf-bulk-select-role-permission"
(roleChanged)="onBulkUpdate($event)"> (roleChanged)="onBulkUpdate($event)" />
</adf-user-role-column>
</ng-template> </ng-template>
</adf-data-column-header> </adf-data-column-header>
</data-column> </data-column>
@ -92,7 +90,7 @@
<ng-container *ngIf="isSearchActive"> <ng-container *ngIf="isSearchActive">
<mat-dialog-content class="adf-add-permission-dialog-content"> <mat-dialog-content class="adf-add-permission-dialog-content">
<adf-add-permission-panel class="adf-search-container" (select)="onSelect($event)"></adf-add-permission-panel> <adf-add-permission-panel class="adf-search-container" (select)="onSelect($event)" />
</mat-dialog-content> </mat-dialog-content>
<mat-dialog-actions class="adf-add-permission-dialog-actions"> <mat-dialog-actions class="adf-add-permission-dialog-actions">

View File

@ -44,7 +44,7 @@
> >
<mat-list-option id="adf-add-permission-group-everyone" #eveyone [disableRipple]="true" [value]="EVERYONE"> <mat-list-option id="adf-add-permission-group-everyone" #eveyone [disableRipple]="true" [value]="EVERYONE">
<div class="adf-list-option-item"> <div class="adf-list-option-item">
<adf-user-icon-column [node]="EVERYONE" id="add-group-icon" [selected]="eveyone.selected"></adf-user-icon-column> <adf-user-icon-column [node]="EVERYONE" id="add-group-icon" [selected]="eveyone.selected" />
<p class="adf-result-name"> <p class="adf-result-name">
{{ 'PERMISSION_MANAGER.ADD-PERMISSION.EVERYONE' | translate }} {{ 'PERMISSION_MANAGER.ADD-PERMISSION.EVERYONE' | translate }}
</p> </p>
@ -59,7 +59,7 @@
#option #option
> >
<div class="adf-list-option-item"> <div class="adf-list-option-item">
<adf-user-icon-column [node]="item" [selected]="option.selected"></adf-user-icon-column> <adf-user-icon-column [node]="item" [selected]="option.selected" />
<p class="adf-result-name"> <p class="adf-result-name">
<ng-container *ngIf="item.entry?.properties['cm:authorityDisplayName']; else authorityName"> <ng-container *ngIf="item.entry?.properties['cm:authorityDisplayName']; else authorityName">
{{ item.entry.properties['cm:authorityDisplayName'] }} {{ item.entry.properties['cm:authorityDisplayName'] }}

View File

@ -1,4 +1,4 @@
<adf-add-permission-panel (select)="onSelect($event)"></adf-add-permission-panel> <adf-add-permission-panel (select)="onSelect($event)" />
<div id="adf-add-permission-actions"> <div id="adf-add-permission-actions">
<button mat-button <button mat-button
id="adf-add-permission-action-button" id="adf-add-permission-action-button"

View File

@ -7,7 +7,7 @@
<data-columns> <data-columns>
<data-column class="adf-datatable-cell--image adf-authority-icon-column" key="$thumbunail" [sortable]="false"> <data-column class="adf-datatable-cell--image adf-authority-icon-column" key="$thumbunail" [sortable]="false">
<ng-template let-context> <ng-template let-context>
<adf-user-icon-column [context]="context"></adf-user-icon-column> <adf-user-icon-column [context]="context" />
</ng-template> </ng-template>
</data-column> </data-column>
@ -15,7 +15,7 @@
[title]="'PERMISSION_MANAGER.COLUMN.NAME' | translate:{count:permissions.length}" [title]="'PERMISSION_MANAGER.COLUMN.NAME' | translate:{count:permissions.length}"
key="authorityId"> key="authorityId">
<ng-template let-context> <ng-template let-context>
<adf-user-name-column [context]="context"></adf-user-name-column> <adf-user-name-column [context]="context" />
</ng-template> </ng-template>
</data-column>d </data-column>d
@ -24,7 +24,7 @@
key="location" key="location"
*ngIf="node && showLocation"> *ngIf="node && showLocation">
<ng-template> <ng-template>
<adf-node-path-column [node]="node"></adf-node-path-column> <adf-node-path-column [node]="node" />
</ng-template> </ng-template>
</data-column> </data-column>
@ -39,8 +39,7 @@
[value]="entry.data.getValue(entry.row, entry.col)" [value]="entry.data.getValue(entry.row, entry.col)"
[roles]="roles" [roles]="roles"
id="adf-select-role-permission" id="adf-select-role-permission"
(roleChanged)="updateRole($event, entry.row.obj)"> (roleChanged)="updateRole($event, entry.row.obj)" />
</adf-user-role-column>
</ng-template> </ng-template>
<adf-data-column-header *ngIf="!isReadOnly"> <adf-data-column-header *ngIf="!isReadOnly">
@ -50,8 +49,7 @@
[roles]="roles" [roles]="roles"
[value]="bulkSelectionRole" [value]="bulkSelectionRole"
id="adf-bulk-select-role-permission" id="adf-bulk-select-role-permission"
(roleChanged)="bulkRoleUpdate($event)"> (roleChanged)="bulkRoleUpdate($event)" />
</adf-user-role-column>
</ng-template> </ng-template>
</adf-data-column-header> </adf-data-column-header>
</data-column> </data-column>
@ -76,8 +74,7 @@
id="adf-no-permissions-template" id="adf-no-permissions-template"
icon="supervisor_account" icon="supervisor_account"
[title]="'PERMISSION_MANAGER.MESSAGE.EMPTY-PERMISSION' | translate" [title]="'PERMISSION_MANAGER.MESSAGE.EMPTY-PERMISSION' | translate"
[subtitle]="'PERMISSION_MANAGER.MESSAGE.EMPTY-SUBTITLE' | translate"> [subtitle]="'PERMISSION_MANAGER.MESSAGE.EMPTY-SUBTITLE' | translate" />
</adf-empty-content>
</ng-template> </ng-template>
</adf-no-content-template> </adf-no-content-template>

View File

@ -1,6 +1,6 @@
<mat-card class="adf-permission-card" id="adf-permission-manager-card"> <mat-card class="adf-permission-card" id="adf-permission-manager-card">
<div *ngIf="(permissionList.data$ | async) === null && permissionList.loading$ | async" class="adf-permission-loader"> <div *ngIf="(permissionList.data$ | async) === null && permissionList.loading$ | async" class="adf-permission-loader">
<mat-progress-spinner [color]="'primary'" [mode]="'indeterminate'"></mat-progress-spinner> <mat-progress-spinner [color]="'primary'" [mode]="'indeterminate'" />
</div> </div>
<ng-container *ngIf="permissionList.error$ | async"> <ng-container *ngIf="permissionList.error$ | async">
@ -28,8 +28,7 @@
aria-label="{{'PERMISSION_MANAGER.LABELS.INHERITED_PERMISSION_TOGGLE' | translate}}" aria-label="{{'PERMISSION_MANAGER.LABELS.INHERITED_PERMISSION_TOGGLE' | translate}}"
data-automation-id="adf-inherit-toggle-button" data-automation-id="adf-inherit-toggle-button"
[checked]="model.node.permissions.isInheritanceEnabled" [checked]="model.node.permissions.isInheritanceEnabled"
(change)="permissionList.toggleInherited($event)"> (change)="permissionList.toggleInherited($event)" />
</mat-slide-toggle>
</span> </span>
<span class="adf-inherit-subtitle" title="total"> <span class="adf-inherit-subtitle" title="total">
@ -60,8 +59,7 @@
[permissions]="model.inheritedPermissions" [permissions]="model.inheritedPermissions"
[showLocation]="true" [showLocation]="true"
[selectionMode]="'none'" [selectionMode]="'none'"
[roles]="model.roles"> [roles]="model.roles" />
</adf-permission-container>
</div> </div>
</ng-template> </ng-template>
@ -100,8 +98,7 @@
(updateAll)="updateAllPermission($event)" (updateAll)="updateAllPermission($event)"
(row-select)="onSelect($any($event).detail.selection)" (row-select)="onSelect($any($event).detail.selection)"
(row-unselect)="onSelect($any($event).detail.selection)" (row-unselect)="onSelect($any($event).detail.selection)"
[roles]="model.roles"> [roles]="model.roles" />
</adf-permission-container>
</mat-card-content> </mat-card-content>
</ng-container> </ng-container>

View File

@ -35,7 +35,7 @@ import { MatIconModule } from '@angular/material/icon';
</ng-container> </ng-container>
</div> </div>
<div class="adf-cell-value" *ngIf="isSelected"> <div class="adf-cell-value" *ngIf="isSelected">
<mat-icon class="adf-people-select-icon adf-datatable-selected" svgIcon="selected"></mat-icon> <mat-icon class="adf-people-select-icon adf-datatable-selected" svgIcon="selected" />
</div> </div>
`, `,
styleUrls: ['./user-icon-column.component.scss'], styleUrls: ['./user-icon-column.component.scss'],

View File

@ -29,7 +29,7 @@ import { SearchChipListComponent } from './search-chip-list.component';
selector: 'adf-test-component', selector: 'adf-test-component',
standalone: true, standalone: true,
imports: [SearchChipListComponent], imports: [SearchChipListComponent],
template: ` <adf-search-chip-list [searchFilter]="searchFilter" [clearAll]="allowClear"> </adf-search-chip-list> ` template: ` <adf-search-chip-list [searchFilter]="searchFilter" [clearAll]="allowClear" /> `
}) })
class TestComponent { class TestComponent {
allowClear = true; allowClear = true;

View File

@ -9,7 +9,7 @@
(searchChange)="inputChange($event)" (searchChange)="inputChange($event)"
(reset)="onReset($event)" (reset)="onReset($event)"
(selectResult)="onSelectFirstResult()" (selectResult)="onSelectFirstResult()"
(submit)="submit.emit($event)"></adf-search-text-input> (submit)="submit.emit($event)" />
<adf-search #search <adf-search #search
#auto="searchAutocomplete" #auto="searchAutocomplete"

View File

@ -7,7 +7,6 @@
[field]="field" [field]="field"
[initialValue]="preselectedValues[field]" [initialValue]="preselectedValues[field]"
(changed)="onDateRangedValueChanged($event, field)" (changed)="onDateRangedValueChanged($event, field)"
(valid)="tabsValidity[field]=$event"> (valid)="tabsValidity[field]=$event" />
</adf-search-date-range>
</ng-container> </ng-container>
</adf-search-filter-tabbed> </adf-search-filter-tabbed>

View File

@ -35,8 +35,8 @@
<input matEndDate placeholder="{{ 'SEARCH.DATE_RANGE_ADVANCED.BETWEEN_PLACEHOLDERS.END_DATE' | translate }}" <input matEndDate placeholder="{{ 'SEARCH.DATE_RANGE_ADVANCED.BETWEEN_PLACEHOLDERS.END_DATE' | translate }}"
data-automation-id="date-range-between-end-input" [formControl]="betweenEndDateFormControl" (change)="dateChanged($event, betweenEndDateFormControl)"> data-automation-id="date-range-between-end-input" [formControl]="betweenEndDateFormControl" (change)="dateChanged($event, betweenEndDateFormControl)">
</mat-date-range-input> </mat-date-range-input>
<mat-datepicker-toggle matSuffix [for]="picker" data-automation-id="date-range-between-datepicker-toggle"></mat-datepicker-toggle> <mat-datepicker-toggle matSuffix [for]="picker" data-automation-id="date-range-between-datepicker-toggle" />
<mat-date-range-picker #picker></mat-date-range-picker> <mat-date-range-picker #picker />
<mat-error *ngIf="betweenStartDateFormControl.errors?.invalidDate">{{ 'SEARCH.DATE_RANGE_ADVANCED.ERROR.START_DATE.INVALID_FORMAT' | translate }}</mat-error> <mat-error *ngIf="betweenStartDateFormControl.errors?.invalidDate">{{ 'SEARCH.DATE_RANGE_ADVANCED.ERROR.START_DATE.INVALID_FORMAT' | translate }}</mat-error>
<mat-error *ngIf="betweenStartDateFormControl.errors?.required">{{ 'SEARCH.DATE_RANGE_ADVANCED.ERROR.START_DATE.REQUIRED' | translate }}</mat-error> <mat-error *ngIf="betweenStartDateFormControl.errors?.required">{{ 'SEARCH.DATE_RANGE_ADVANCED.ERROR.START_DATE.REQUIRED' | translate }}</mat-error>

View File

@ -9,8 +9,8 @@
[max]="fromMaxDatetime" [max]="fromMaxDatetime"
(dateChange)="onChangedHandler($event, from)" (dateChange)="onChangedHandler($event, from)"
data-automation-id="datetime-range-from-input"> data-automation-id="datetime-range-from-input">
<mat-datetimepicker-toggle matSuffix [for]="fromDatetimePicker" data-automation-id="datetime-range-from-date-toggle"></mat-datetimepicker-toggle> <mat-datetimepicker-toggle matSuffix [for]="fromDatetimePicker" data-automation-id="datetime-range-from-date-toggle" />
<mat-datetimepicker #fromDatetimePicker color="accent" type="datetime"></mat-datetimepicker> <mat-datetimepicker #fromDatetimePicker color="accent" type="datetime" />
<mat-error *ngIf="from.invalid" data-automation-id="datetime-range-from-error"> <mat-error *ngIf="from.invalid" data-automation-id="datetime-range-from-error">
{{ getFromValidationMessage() | translate: { requiredFormat: datetimePickerFormat } }} {{ getFromValidationMessage() | translate: { requiredFormat: datetimePickerFormat } }}
</mat-error> </mat-error>
@ -27,8 +27,8 @@
[max]="maxDatetime" [max]="maxDatetime"
(dateChange)="onChangedHandler($event, to)" (dateChange)="onChangedHandler($event, to)"
data-automation-id="datetime-range-to-input"> data-automation-id="datetime-range-to-input">
<mat-datetimepicker-toggle matSuffix [for]="toDatetimePicker" data-automation-id="datetime-range-to-date-toggle"></mat-datetimepicker-toggle> <mat-datetimepicker-toggle matSuffix [for]="toDatetimePicker" data-automation-id="datetime-range-to-date-toggle" />
<mat-datetimepicker #toDatetimePicker color="accent" type="datetime"></mat-datetimepicker> <mat-datetimepicker #toDatetimePicker color="accent" type="datetime" />
<mat-error *ngIf="to.invalid" data-automation-id="datetime-range-to-error"> <mat-error *ngIf="to.invalid" data-automation-id="datetime-range-to-error">
{{ getToValidationMessage() | translate: { requiredFormat: datetimePickerFormat } }} {{ getToValidationMessage() | translate: { requiredFormat: datetimePickerFormat } }}
</mat-error> </mat-error>

View File

@ -5,8 +5,7 @@
[allowOnlyPredefinedValues]="settings.allowOnlyPredefinedValues" [allowOnlyPredefinedValues]="settings.allowOnlyPredefinedValues"
(inputChanged)="onInputChange($event)" (inputChanged)="onInputChange($event)"
[compareOption]="optionComparator" [compareOption]="optionComparator"
(optionsChanged)="onOptionsChange($event)"> (optionsChanged)="onOptionsChange($event)" />
</adf-search-chip-autocomplete-input>
<div class="adf-facet-buttons" *ngIf="!settings?.hideDefaultAction"> <div class="adf-facet-buttons" *ngIf="!settings?.hideDefaultAction">
<button mat-button color="primary" data-automation-id="adf-search-chip-autocomplete-btn-clear" (click)="reset()"> <button mat-button color="primary" data-automation-id="adf-search-chip-autocomplete-btn-clear" (click)="reset()">

View File

@ -35,8 +35,7 @@
</ng-container> </ng-container>
<ng-container ngProjectAs="filter-content"> <ng-container ngProjectAs="filter-content">
<adf-search-facet-tabbed-content [tabbedFacet]="tabbedFacet" (isPopulated)="onIsPopulatedEventChange($event)" <adf-search-facet-tabbed-content [tabbedFacet]="tabbedFacet" (isPopulated)="onIsPopulatedEventChange($event)"
[onReset$]="reset$" [onApply$]="apply$" (displayValue$)="displayValue = $event"> [onReset$]="reset$" [onApply$]="apply$" (displayValue$)="displayValue = $event" />
</adf-search-facet-tabbed-content>
</ng-container> </ng-container>
<ng-container ngProjectAs="filter-actions"> <ng-container ngProjectAs="filter-actions">
<button mat-button class="adf-search-action-button" (click)="onRemove()" id="cancel-filter-button"> <button mat-button class="adf-search-action-button" (click)="onRemove()" id="cancel-filter-button">

View File

@ -6,7 +6,6 @@
[onReset$]="reset$" [onReset$]="reset$"
[allowOnlyPredefinedValues]="true" [allowOnlyPredefinedValues]="true"
[compareOption]="optionComparator" [compareOption]="optionComparator"
(optionsChanged)="onOptionsChange($event, field)"> (optionsChanged)="onOptionsChange($event, field)" />
</adf-search-chip-autocomplete-input>
</ng-container> </ng-container>
</adf-search-filter-tabbed> </adf-search-filter-tabbed>

View File

@ -36,7 +36,7 @@
{{ field.label | translate }} {{ field.label | translate }}
</ng-container> </ng-container>
<ng-container ngProjectAs="filter-content"> <ng-container ngProjectAs="filter-content">
<adf-search-facet-field [field]="field" #facetField></adf-search-facet-field> <adf-search-facet-field [field]="field" #facetField />
</ng-container> </ng-container>
<ng-container ngProjectAs="filter-actions"> <ng-container ngProjectAs="filter-actions">
<button mat-button class="adf-search-action-button" (click)="onRemove()" id="cancel-filter-button"> <button mat-button class="adf-search-action-button" (click)="onRemove()" id="cancel-filter-button">

View File

@ -1,18 +1,17 @@
<mat-chip-listbox role="listbox" [attr.aria-label]="'SEARCH.FILTER.ARIA-LABEL.SEARCH_FILTER' | translate"> <mat-chip-listbox role="listbox" [attr.aria-label]="'SEARCH.FILTER.ARIA-LABEL.SEARCH_FILTER' | translate">
<ng-container *ngFor="let category of categories"> <ng-container *ngFor="let category of categories">
<adf-search-widget-chip [category]="category"></adf-search-widget-chip> <adf-search-widget-chip [category]="category" />
</ng-container> </ng-container>
<ng-container *ngIf="showContextFacets && tabbedFacet"> <ng-container *ngIf="showContextFacets && tabbedFacet">
<adf-search-facet-chip-tabbed <adf-search-facet-chip-tabbed
[tabbedFacet]="tabbedFacet" [tabbedFacet]="tabbedFacet"
[attr.data-automation-id]="facetChipTabbedId" > [attr.data-automation-id]="facetChipTabbedId" />
</adf-search-facet-chip-tabbed>
</ng-container> </ng-container>
<ng-container *ngIf="showContextFacets && responseFacets"> <ng-container *ngIf="showContextFacets && responseFacets">
<ng-container *ngFor="let field of responseFacets"> <ng-container *ngFor="let field of responseFacets">
<adf-search-facet-chip [field]="field" [attr.data-automation-id]="'search-fact-chip-' + field.field" ></adf-search-facet-chip> <adf-search-facet-chip [field]="field" [attr.data-automation-id]="'search-fact-chip-' + field.field" />
</ng-container> </ng-container>
</ng-container> </ng-container>

View File

@ -10,13 +10,13 @@
</button> </button>
</div> </div>
<mat-divider></mat-divider> <mat-divider />
<div class="adf-search-filter-content"> <div class="adf-search-filter-content">
<ng-content select="filter-content"></ng-content> <ng-content select="filter-content"></ng-content>
</div> </div>
<mat-divider></mat-divider> <mat-divider />
<div class="adf-search-filter-actions"> <div class="adf-search-filter-actions">
<ng-content select="filter-actions"></ng-content> <ng-content select="filter-actions"></ng-content>

View File

@ -35,8 +35,7 @@
<adf-search-widget-container #widget <adf-search-widget-container #widget
[id]="category.id" [id]="category.id"
[selector]="category.component.selector" [selector]="category.component.selector"
[settings]="category.component.settings"> [settings]="category.component.settings" />
</adf-search-widget-container>
</ng-container> </ng-container>
<ng-container ngProjectAs="filter-actions"> <ng-container ngProjectAs="filter-actions">

View File

@ -18,8 +18,7 @@
matBadge="filter" matBadge="filter"
matBadgeColor="warn" matBadgeColor="warn"
[matBadgeHidden]="!isActive()" [matBadgeHidden]="!isActive()"
> />
</adf-icon>
</button> </button>
<mat-menu #filter="matMenu" class="adf-filter-menu adf-search-filter-menu" (closed)="onClosed()"> <mat-menu #filter="matMenu" class="adf-filter-menu adf-search-filter-menu" (closed)="onClosed()">
@ -33,8 +32,7 @@
[settings]="category?.component?.settings" [settings]="category?.component?.settings"
[value]="initialValue" [value]="initialValue"
[useHeaderQueryBuilder]="true" [useHeaderQueryBuilder]="true"
> />
</adf-search-widget-container>
</div> </div>
<mat-dialog-actions class="adf-filter-actions"> <mat-dialog-actions class="adf-filter-actions">
<button <button

View File

@ -3,6 +3,6 @@
[labelClass]='selectedIndex === i ? "adf-search-tab-label-active" : ""' [labelClass]='selectedIndex === i ? "adf-search-tab-label-active" : ""'
[bodyClass]='selectedIndex === i ? "adf-search-tab-content-active" : ""' [bodyClass]='selectedIndex === i ? "adf-search-tab-content-active" : ""'
label="{{tabContent.name | translate}}"> label="{{tabContent.name | translate}}">
<ng-container *ngTemplateOutlet="tabContent.templateRef"></ng-container> <ng-container *ngTemplateOutlet="tabContent.templateRef" />
</mat-tab> </mat-tab>
</mat-tab-group> </mat-tab-group>

View File

@ -2,8 +2,7 @@
<adf-search-widget-container <adf-search-widget-container
[id]="category.id" [id]="category.id"
[selector]="category.component.selector" [selector]="category.component.selector"
[settings]="category.component.settings"> [settings]="category.component.settings" />
</adf-search-widget-container>
<div <div
*ngIf="!category?.component?.settings?.hideDefaultAction" *ngIf="!category?.component?.settings?.hideDefaultAction"
class="adf-search-filter-card-actions" class="adf-search-filter-card-actions"

View File

@ -16,7 +16,7 @@
{{ category.name | translate }} {{ category.name | translate }}
</mat-panel-title> </mat-panel-title>
</mat-expansion-panel-header> </mat-expansion-panel-header>
<adf-search-filter-card [category]="category"></adf-search-filter-card> <adf-search-filter-card [category]="category" />
</mat-expansion-panel> </mat-expansion-panel>
<ng-container *ngIf="facetFiltersService.tabbedFacet && showContextFacets"> <ng-container *ngIf="facetFiltersService.tabbedFacet && showContextFacets">
@ -26,8 +26,7 @@
</mat-expansion-panel-header> </mat-expansion-panel-header>
<adf-search-facet-tabbed-content <adf-search-facet-tabbed-content
[tabbedFacet]="facetFiltersService.tabbedFacet" [tabbedFacet]="facetFiltersService.tabbedFacet"
[attr.data-automation-id]="'expansion-panel-'+facetFiltersService.tabbedFacet.label"> [attr.data-automation-id]="'expansion-panel-'+facetFiltersService.tabbedFacet.label" />
</adf-search-facet-tabbed-content>
</mat-expansion-panel> </mat-expansion-panel>
</ng-container> </ng-container>
@ -38,7 +37,7 @@
<mat-panel-title class="adf-search-filter-header-title">{{ field.label | translate }}</mat-panel-title> <mat-panel-title class="adf-search-filter-header-title">{{ field.label | translate }}</mat-panel-title>
</mat-expansion-panel-header> </mat-expansion-panel-header>
<adf-search-facet-field [field]="field"></adf-search-facet-field> <adf-search-facet-field [field]="field" />
</mat-expansion-panel> </mat-expansion-panel>
</ng-container> </ng-container>

View File

@ -1,6 +1,5 @@
<div class="adf-search-panel-scrollable" data-automation-id="adf-search-panel-container"> <div class="adf-search-panel-scrollable" data-automation-id="adf-search-panel-container">
<adf-search-filter *ngIf="hasCustomModels()" <adf-search-filter *ngIf="hasCustomModels()"
class="app-search-settings" class="app-search-settings"
[showContextFacets]="false"> [showContextFacets]="false" />
</adf-search-filter>
</div> </div>

View File

@ -53,6 +53,5 @@
[compareOption]="compareFileExtensions" [compareOption]="compareFileExtensions"
[formatChipValue]="getExtensionWithoutDot" [formatChipValue]="getExtensionWithoutDot"
[filter]="filterExtensions" [filter]="filterExtensions"
placeholder="SEARCH.SEARCH_PROPERTIES.FILE_TYPE"> placeholder="SEARCH.SEARCH_PROPERTIES.FILE_TYPE" />
</adf-search-chip-autocomplete-input>
</form> </form>

View File

@ -3,5 +3,4 @@
[selected]="value" [selected]="value"
[ascending]="ascending" [ascending]="ascending"
(valueChange)="onValueChanged($event)" (valueChange)="onValueChanged($event)"
(sortingChange)="onSortingChanged($event)"> (sortingChange)="onSortingChanged($event)" />
</adf-sorting-picker>

View File

@ -3,5 +3,4 @@
[limitChipsDisplayed]="limitTagsDisplayed" [limitChipsDisplayed]="limitTagsDisplayed"
[showDelete]="showDelete" [showDelete]="showDelete"
(displayNext)="refreshTag()" (displayNext)="refreshTag()"
(removedChip)="removeTag($event)"> (removedChip)="removeTag($event)" />
</adf-dynamic-chip-list>

View File

@ -59,7 +59,6 @@
class="adf-tags-creator-spinner" class="adf-tags-creator-spinner"
[diameter]="50" [diameter]="50"
[attr.aria-label]="'TAG.TAGS_CREATOR.TAGS_LOADING' | translate" [attr.aria-label]="'TAG.TAGS_CREATOR.TAGS_LOADING' | translate"
> />
</mat-spinner>
</div> </div>
</div> </div>

View File

@ -22,10 +22,9 @@
color="primary" color="primary"
mode="indeterminate" mode="indeterminate"
[diameter]="24" [diameter]="24"
*ngIf="node.isLoading; else loadMoreIcon"> *ngIf="node.isLoading; else loadMoreIcon" />
</mat-progress-spinner>
<ng-template #loadMoreIcon> <ng-template #loadMoreIcon>
<adf-icon [value]="'chevron_right'"></adf-icon> <adf-icon [value]="'chevron_right'" />
</ng-template> </ng-template>
</button> </button>
</div> </div>
@ -57,10 +56,9 @@
color="primary" color="primary"
mode="indeterminate" mode="indeterminate"
[diameter]="24" [diameter]="24"
*ngIf="node.isLoading; else expandCollapseIcon"> *ngIf="node.isLoading; else expandCollapseIcon" />
</mat-progress-spinner>
<ng-template #expandCollapseIcon> <ng-template #expandCollapseIcon>
<adf-icon [value]="expandCollapseIconValue(node)"></adf-icon> <adf-icon [value]="expandCollapseIconValue(node)" />
</ng-template> </ng-template>
</button> </button>
</div> </div>
@ -71,16 +69,14 @@
[checked]="descendantsAllSelected(node)" [checked]="descendantsAllSelected(node)"
[indeterminate]="descendantsPartiallySelected(node)" [indeterminate]="descendantsPartiallySelected(node)"
(change)="onNodeSelected(node)" (change)="onNodeSelected(node)"
data-automation-id="has-children-node-checkbox"> data-automation-id="has-children-node-checkbox" />
</mat-checkbox>
<ng-template #noChildrenNodeCheckbox> <ng-template #noChildrenNodeCheckbox>
<mat-checkbox <mat-checkbox
color="primary" color="primary"
[id]="node.id" [id]="node.id"
[checked]="treeNodesSelection.isSelected(node)" [checked]="treeNodesSelection.isSelected(node)"
(change)="onNodeSelected(node)" (change)="onNodeSelected(node)"
data-automation-id="no-children-node-checkbox"> data-automation-id="no-children-node-checkbox" />
</mat-checkbox>
</ng-template> </ng-template>
</ng-container> </ng-container>
<div class="adf-tree-cell"> <div class="adf-tree-cell">
@ -121,7 +117,6 @@
<div class="adf-tree-loading-spinner-container"> <div class="adf-tree-loading-spinner-container">
<mat-progress-spinner <mat-progress-spinner
color="primary" color="primary"
mode="indeterminate"> mode="indeterminate" />
</mat-progress-spinner>
</div> </div>
</ng-template> </ng-template>

View File

@ -60,8 +60,7 @@
<ng-template let-file="$implicit"> <ng-template let-file="$implicit">
<adf-file-uploading-list-row <adf-file-uploading-list-row
[file]="file" [file]="file"
(cancel)="uploadList.cancelFile(file)"> (cancel)="uploadList.cancelFile(file)" />
</adf-file-uploading-list-row>
</ng-template> </ng-template>
</adf-file-uploading-list> </adf-file-uploading-list>

View File

@ -3,7 +3,7 @@
insert_drive_file insert_drive_file
</mat-icon> </mat-icon>
<adf-icon *ngIf="mimeType !== 'default'" value="adf:{{ mimeType }}"></adf-icon> <adf-icon *ngIf="mimeType !== 'default'" value="adf:{{ mimeType }}" />
<span <span
class="adf-file-uploading-row__name" class="adf-file-uploading-row__name"

View File

@ -1,5 +1,5 @@
<mat-progress-bar *ngIf="isLoading" data-automation-id="version-history-loading-bar" mode="indeterminate" <mat-progress-bar *ngIf="isLoading" data-automation-id="version-history-loading-bar" mode="indeterminate"
color="accent"></mat-progress-bar> color="accent" />
<mat-list class="adf-version-list adf-version-list-element" [hidden]="isLoading"> <mat-list class="adf-version-list adf-version-list-element" [hidden]="isLoading">
<cdk-virtual-scroll-viewport #viewport itemSize="88" class="adf-version-list-viewport" [minBufferPx]="440" [maxBufferPx]="528"> <cdk-virtual-scroll-viewport #viewport itemSize="88" class="adf-version-list-viewport" [minBufferPx]="440" [maxBufferPx]="528">
<mat-list-item class="adf-version-list-item" <mat-list-item class="adf-version-list-item"

View File

@ -1,5 +1,5 @@
<div class="adf-new-version-container"> <div class="adf-new-version-container">
<adf-version-comparison *ngIf="showVersionComparison" [node]="node" [newFileVersion]="newFileVersion"></adf-version-comparison> <adf-version-comparison *ngIf="showVersionComparison" [node]="node" [newFileVersion]="newFileVersion" />
<div class="adf-new-version-uploader-container" id="adf-new-version-uploader-container" [@uploadToggle]="uploadState"> <div class="adf-new-version-uploader-container" id="adf-new-version-uploader-container" [@uploadToggle]="uploadState">
<table class="adf-version-upload" *ngIf="uploadState !== 'close' && !versionList.isLoading"> <table class="adf-version-upload" *ngIf="uploadState !== 'close' && !versionList.isLoading">
<tr> <tr>
@ -11,8 +11,7 @@
[currentVersion]="versionList?.latestVersion?.entry" [currentVersion]="versionList?.latestVersion?.entry"
(success)="onUploadSuccess($event)" (success)="onUploadSuccess($event)"
(cancel)="onUploadCancel()" (cancel)="onUploadCancel()"
(error)="onUploadError($event)"> (error)="onUploadError($event)" />
</adf-version-upload>
</td> </td>
</tr> </tr>
</table> </table>
@ -38,8 +37,7 @@
[allowVersionDelete]="allowVersionDelete" [allowVersionDelete]="allowVersionDelete"
(deleted)="refresh($event)" (deleted)="refresh($event)"
(restored)="refresh($event)" (restored)="refresh($event)"
(viewVersion)="onViewVersion($event)"> (viewVersion)="onViewVersion($event)" />
</adf-version-list>
</div> </div>
</div> </div>
</div> </div>

View File

@ -28,8 +28,7 @@
[file]="newFileVersion" [file]="newFileVersion"
[majorVersion]="isMajorVersion()" [majorVersion]="isMajorVersion()"
(success)="onSuccess($event)" (success)="onSuccess($event)"
(error)="onError($event)"> (error)="onError($event)" />
</adf-upload-version-button>
<button mat-raised-button (click)="cancelUpload()" id="adf-new-version-cancel" *ngIf="showCancelButton" >{{ <button mat-raised-button (click)="cancelUpload()" id="adf-new-version-cancel" *ngIf="showCancelButton" >{{
'ADF_VERSION_LIST.ACTIONS.UPLOAD.CANCEL'| translate }} 'ADF_VERSION_LIST.ACTIONS.UPLOAD.CANCEL'| translate }}
</button> </button>

View File

@ -22,13 +22,13 @@
} }
], ],
"no-shadow": "warn", "no-shadow": "warn",
"quote-props": "warn", "quote-props": "off",
"object-shorthand": "warn", "object-shorthand": "warn",
"no-restricted-syntax": "warn", "no-restricted-syntax": "warn",
"prefer-const": "warn", "prefer-const": "warn",
"arrow-body-style": "warn", "arrow-body-style": "warn",
"@angular-eslint/no-output-native": "off", "@angular-eslint/no-output-native": "off",
"space-before-function-paren": "warn", "space-before-function-paren": "off",
"@angular-eslint/component-selector": [ "@angular-eslint/component-selector": [
"error", "error",
{ {

View File

@ -3,7 +3,7 @@
<ol> <ol>
<ng-container *ngFor="let breadcrumbTemplate of selectedBreadcrumbs; last as last"> <ng-container *ngFor="let breadcrumbTemplate of selectedBreadcrumbs; last as last">
<li adf-breadcrumb-focus class="adf-breadcrumb__item-wrapper"> <li adf-breadcrumb-focus class="adf-breadcrumb__item-wrapper">
<ng-container *ngTemplateOutlet="breadcrumbTemplate"></ng-container> <ng-container *ngTemplateOutlet="breadcrumbTemplate" />
<div *ngIf="!last" class="adf-breadcrumb__chevron" [class.adf-breadcrumb__chevron-before--compact]="compact" ></div> <div *ngIf="!last" class="adf-breadcrumb__chevron" [class.adf-breadcrumb__chevron-before--compact]="compact" ></div>
</li> </li>

View File

@ -24,7 +24,7 @@ import { FlagsComponent } from './flags/flags.component';
imports: [FlagsComponent], imports: [FlagsComponent],
template: ` template: `
<div class="adf-feature-flags-wrapper"> <div class="adf-feature-flags-wrapper">
<adf-feature-flags-overrides></adf-feature-flags-overrides> <adf-feature-flags-overrides />
</div> </div>
`, `,
styles: [ styles: [

View File

@ -2,14 +2,12 @@
<div class="adf-feature-flags-overrides-header-text" tabindex="0"> <div class="adf-feature-flags-overrides-header-text" tabindex="0">
<adf-feature-flags-override-indicator <adf-feature-flags-override-indicator
class="adf-activity-indicator" class="adf-activity-indicator"
size='large'> size='large' />
</adf-feature-flags-override-indicator>
<span>{{ "CORE.FEATURE-FLAGS.OVERRIDES" | translate }}</span> <span>{{ "CORE.FEATURE-FLAGS.OVERRIDES" | translate }}</span>
</div> </div>
<mat-slide-toggle <mat-slide-toggle
[checked]="isEnabled" [checked]="isEnabled"
(change)="onEnable($event.checked)"> (change)="onEnable($event.checked)" />
</mat-slide-toggle>
<button <button
class="adf-feature-flags-overrides-header-close" class="adf-feature-flags-overrides-header-close"
mat-icon-button mat-icon-button
@ -26,8 +24,8 @@
</th> </th>
<td mat-cell class="adf-icon-col" *matCellDef="let element"> <td mat-cell class="adf-icon-col" *matCellDef="let element">
<button mat-icon-button *ngIf="element.fictive; else flagFromApi" class="adf-fictive-flag-button" (click)="onDelete(element.flag)"> <button mat-icon-button *ngIf="element.fictive; else flagFromApi" class="adf-fictive-flag-button" (click)="onDelete(element.flag)">
<mat-icon class="material-icons-outlined adf-custom-flag-icon" fontIcon="memory"></mat-icon> <mat-icon class="material-icons-outlined adf-custom-flag-icon" fontIcon="memory" />
<mat-icon class="material-icons-outlined adf-trash-icon" fontIcon="delete"></mat-icon> <mat-icon class="material-icons-outlined adf-trash-icon" fontIcon="delete" />
</button> </button>
</td> </td>
</ng-container> </ng-container>
@ -45,7 +43,7 @@
<th mat-header-cell class="adf-val-col header-cell" *matHeaderCellDef> <th mat-header-cell class="adf-val-col header-cell" *matHeaderCellDef>
<div class="adf-input-field-buttons-container"> <div class="adf-input-field-buttons-container">
<button *ngIf="showPlusButton$ | async" mat-icon-button title="{{'CORE.FEATURE-FLAGS.ADD_NEW' | translate}}" color="accent" (click)="onAddButtonClick()"> <button *ngIf="showPlusButton$ | async" mat-icon-button title="{{'CORE.FEATURE-FLAGS.ADD_NEW' | translate}}" color="accent" (click)="onAddButtonClick()">
<mat-icon class="material-icons-outlined" fontIcon="add_circle"></mat-icon> <mat-icon class="material-icons-outlined" fontIcon="add_circle" />
</button> </button>
<button *ngIf="inputValue" matSuffix mat-icon-button aria-label="Clear" (click)="onClearInput()" class="adf-clear-button"> <button *ngIf="inputValue" matSuffix mat-icon-button aria-label="Clear" (click)="onClearInput()" class="adf-clear-button">
<mat-icon>cancel</mat-icon> <mat-icon>cancel</mat-icon>
@ -56,8 +54,7 @@
<mat-slide-toggle <mat-slide-toggle
[checked]="element.value" [checked]="element.value"
(change)="onChange(element.flag, $event.checked)" (change)="onChange(element.flag, $event.checked)"
[disabled]="!isEnabled"> [disabled]="!isEnabled" />
</mat-slide-toggle>
</td> </td>
</ng-container> </ng-container>

View File

@ -14,8 +14,7 @@
aria-level="1" aria-level="1"
*ngIf="!hideSidenav" *ngIf="!hideSidenav"
> >
<adf-dynamic-component id="app.layout.header" [data]="{ layout }"> <adf-dynamic-component id="app.layout.header" [data]="{ layout }" />
</adf-dynamic-component>
</div> </div>
</ng-template> </ng-template>
</adf-sidenav-layout-header> </adf-sidenav-layout-header>
@ -29,20 +28,18 @@
<adf-dynamic-component <adf-dynamic-component
id="app.layout.sidenav" id="app.layout.sidenav"
[data]="{ layout, mode: layout.isMenuMinimized ? 'collapsed' : 'expanded'}" [data]="{ layout, mode: layout.isMenuMinimized ? 'collapsed' : 'expanded'}"
> />
</adf-dynamic-component>
</div> </div>
</ng-template> </ng-template>
</adf-sidenav-layout-navigation> </adf-sidenav-layout-navigation>
<adf-sidenav-layout-content> <adf-sidenav-layout-content>
<ng-template> <ng-template>
<router-outlet></router-outlet> <router-outlet />
</ng-template> </ng-template>
</adf-sidenav-layout-content> </adf-sidenav-layout-content>
</adf-sidenav-layout> </adf-sidenav-layout>
<adf-dynamic-component id="app.shell.sibling"> <adf-dynamic-component id="app.shell.sibling" />
</adf-dynamic-component>
<router-outlet name="viewer"></router-outlet> <router-outlet name="viewer" />

View File

@ -6,6 +6,6 @@
<mat-cell *matCellDef="let row">{{ column.cell(row) }}</mat-cell> <mat-cell *matCellDef="let row">{{ column.cell(row) }}</mat-cell>
</ng-container> </ng-container>
<mat-header-row *matHeaderRowDef="displayedColumns"></mat-header-row> <mat-header-row *matHeaderRowDef="displayedColumns" />
<mat-row *matRowDef="let row; columns: displayedColumns"></mat-row> <mat-row *matRowDef="let row; columns: displayedColumns" />
</mat-table> </mat-table>

View File

@ -5,9 +5,9 @@
</mat-header-cell> </mat-header-cell>
<mat-cell *matCellDef="let row" <mat-cell *matCellDef="let row"
class="adf-about-license-cell" class="adf-about-license-cell"
[innerHTML]="column.cell(row)"></mat-cell> [innerHTML]="column.cell(row)" />
</ng-container> </ng-container>
<mat-header-row *matHeaderRowDef="displayedColumns"></mat-header-row> <mat-header-row *matHeaderRowDef="displayedColumns" />
<mat-row *matRowDef="let row; columns: displayedColumns"></mat-row> <mat-row *matRowDef="let row; columns: displayedColumns" />
</mat-table> </mat-table>

View File

@ -6,6 +6,6 @@
<mat-cell *matCellDef="let row">{{ column.cell(row) }}</mat-cell> <mat-cell *matCellDef="let row">{{ column.cell(row) }}</mat-cell>
</ng-container> </ng-container>
<mat-header-row *matHeaderRowDef="displayedColumns"></mat-header-row> <mat-header-row *matHeaderRowDef="displayedColumns" />
<mat-row *matRowDef="let row; columns: displayedColumns"></mat-row> <mat-row *matRowDef="let row; columns: displayedColumns" />
</mat-table> </mat-table>

View File

@ -6,6 +6,6 @@
<mat-cell *matCellDef="let row" class="adf-package-list-table__row-cell">{{ column.cell(row) }}</mat-cell> <mat-cell *matCellDef="let row" class="adf-package-list-table__row-cell">{{ column.cell(row) }}</mat-cell>
</ng-container> </ng-container>
<mat-header-row *matHeaderRowDef="displayedColumns" class="adf-package-list-table__header-row"></mat-header-row> <mat-header-row *matHeaderRowDef="displayedColumns" class="adf-package-list-table__header-row" />
<mat-row *matRowDef="let row; columns: displayedColumns" class="adf-package-list-table__row"></mat-row> <mat-row *matRowDef="let row; columns: displayedColumns" class="adf-package-list-table__row" />
</mat-table> </mat-table>

View File

@ -1,16 +1,16 @@
<div> <div>
<article *ngIf="licenseEntries"> <article *ngIf="licenseEntries">
<header>{{ 'ABOUT.LICENSE.TITLE' | translate }}</header> <header>{{ 'ABOUT.LICENSE.TITLE' | translate }}</header>
<adf-about-license-list [data]="licenseEntries"></adf-about-license-list> <adf-about-license-list [data]="licenseEntries" />
</article> </article>
<article *ngIf="statusEntries"> <article *ngIf="statusEntries">
<header>{{ 'ABOUT.STATUS.TITLE' | translate }}</header> <header>{{ 'ABOUT.STATUS.TITLE' | translate }}</header>
<adf-about-status-list [data]="statusEntries"></adf-about-status-list> <adf-about-status-list [data]="statusEntries" />
</article> </article>
<article *ngIf="data?.modules"> <article *ngIf="data?.modules">
<header>{{ 'ABOUT.MODULES.TITLE' | translate }}</header> <header>{{ 'ABOUT.MODULES.TITLE' | translate }}</header>
<adf-about-module-list [data]="data.modules"></adf-about-module-list> <adf-about-module-list [data]="data.modules" />
</article> </article>
</div> </div>

View File

@ -6,6 +6,6 @@
<mat-cell *matCellDef="let row">{{ column.cell(row) }}</mat-cell> <mat-cell *matCellDef="let row">{{ column.cell(row) }}</mat-cell>
</ng-container> </ng-container>
<mat-header-row *matHeaderRowDef="displayedColumns"></mat-header-row> <mat-header-row *matHeaderRowDef="displayedColumns" />
<mat-row *matRowDef="let row; columns: displayedColumns"></mat-row> <mat-row *matRowDef="let row; columns: displayedColumns" />
</mat-table> </mat-table>

View File

@ -4,7 +4,7 @@
<mat-expansion-panel-header class="adf-about-panel-header"> <mat-expansion-panel-header class="adf-about-panel-header">
<mat-panel-title class="adf-about-panel-header__title">{{panel.label}}</mat-panel-title> <mat-panel-title class="adf-about-panel-header__title">{{panel.label}}</mat-panel-title>
</mat-expansion-panel-header> </mat-expansion-panel-header>
<ng-container *ngTemplateOutlet="panel.layoutTemplate"></ng-container> <ng-container *ngTemplateOutlet="panel.layoutTemplate" />
</mat-expansion-panel> </mat-expansion-panel>
</ng-container> </ng-container>
</mat-accordion> </mat-accordion>

View File

@ -12,7 +12,7 @@
[attr.aria-hidden]="ariaHidden" [attr.aria-hidden]="ariaHidden"
[attr.data-automation-id]="testId" [attr.data-automation-id]="testId"
> >
<ng-container [ngTemplateOutlet]="buttonContent"></ng-container> <ng-container [ngTemplateOutlet]="buttonContent" />
</button> </button>
</ng-container> </ng-container>
@ -29,7 +29,7 @@
[attr.aria-hidden]="ariaHidden" [attr.aria-hidden]="ariaHidden"
[attr.data-automation-id]="testId" [attr.data-automation-id]="testId"
> >
<ng-container [ngTemplateOutlet]="buttonContent"></ng-container> <ng-container [ngTemplateOutlet]="buttonContent" />
</button> </button>
</ng-container> </ng-container>
@ -46,7 +46,7 @@
[attr.aria-hidden]="ariaHidden" [attr.aria-hidden]="ariaHidden"
[attr.data-automation-id]="testId" [attr.data-automation-id]="testId"
> >
<ng-container [ngTemplateOutlet]="buttonContent"></ng-container> <ng-container [ngTemplateOutlet]="buttonContent" />
</button> </button>
</ng-container> </ng-container>
@ -63,7 +63,7 @@
[attr.aria-hidden]="ariaHidden" [attr.aria-hidden]="ariaHidden"
[attr.data-automation-id]="testId" [attr.data-automation-id]="testId"
> >
<ng-container [ngTemplateOutlet]="buttonContent"></ng-container> <ng-container [ngTemplateOutlet]="buttonContent" />
</button> </button>
</ng-container> </ng-container>
@ -81,7 +81,7 @@
[attr.data-automation-id]="testId" [attr.data-automation-id]="testId"
> >
<mat-icon *ngIf="icon" class="adf-button__icon">{{ icon }}</mat-icon> <mat-icon *ngIf="icon" class="adf-button__icon">{{ icon }}</mat-icon>
<ng-container [ngTemplateOutlet]="buttonContent"></ng-container> <ng-container [ngTemplateOutlet]="buttonContent" />
</button> </button>
</ng-container> </ng-container>
@ -99,7 +99,7 @@
[attr.data-automation-id]="testId" [attr.data-automation-id]="testId"
> >
<mat-icon *ngIf="icon" class="adf-button__icon">{{ icon }}</mat-icon> <mat-icon *ngIf="icon" class="adf-button__icon">{{ icon }}</mat-icon>
<ng-container *ngIf="!icon" [ngTemplateOutlet]="buttonContent"></ng-container> <ng-container *ngIf="!icon" [ngTemplateOutlet]="buttonContent" />
</button> </button>
</ng-container> </ng-container>
@ -117,7 +117,7 @@
[attr.data-automation-id]="testId" [attr.data-automation-id]="testId"
> >
<mat-icon *ngIf="icon" class="adf-button__icon">{{ icon }}</mat-icon> <mat-icon *ngIf="icon" class="adf-button__icon">{{ icon }}</mat-icon>
<ng-container *ngIf="!icon" [ngTemplateOutlet]="buttonContent"></ng-container> <ng-container *ngIf="!icon" [ngTemplateOutlet]="buttonContent" />
</button> </button>
</ng-container> </ng-container>
</ng-container> </ng-container>

View File

@ -48,8 +48,7 @@
[attr.title]="'CORE.METADATA.ACTIONS.EDIT' | translate" [attr.title]="'CORE.METADATA.ACTIONS.EDIT' | translate"
[attr.data-automation-id]="'datepickertoggle-' + property.key" [attr.data-automation-id]="'datepickertoggle-' + property.key"
[for]="datetimePicker" [for]="datetimePicker"
> />
</mat-datetimepicker-toggle>
</div> </div>
<input <input
@ -67,8 +66,7 @@
[timeInterval]="5" [timeInterval]="5"
[attr.data-automation-id]="'datepicker-' + property.key" [attr.data-automation-id]="'datepicker-' + property.key"
[startAt]="valueDate" [startAt]="valueDate"
> />
</mat-datetimepicker>
</div> </div>
<ng-template #elseEmptyValueBlock> <ng-template #elseEmptyValueBlock>
{{ property.default | translate }} {{ property.default | translate }}
@ -107,16 +105,14 @@
[attr.title]="'CORE.METADATA.ACTIONS.EDIT' | translate" [attr.title]="'CORE.METADATA.ACTIONS.EDIT' | translate"
[attr.data-automation-id]="'datepickertoggle-' + property.key" [attr.data-automation-id]="'datepickertoggle-' + property.key"
[for]="datetimePicker" [for]="datetimePicker"
> />
</mat-datetimepicker-toggle>
<mat-datetimepicker <mat-datetimepicker
#datetimePicker #datetimePicker
[type]="$any(property).type" [type]="$any(property).type"
[timeInterval]="5" [timeInterval]="5"
[attr.data-automation-id]="'datepicker-' + property.key" [attr.data-automation-id]="'datepicker-' + property.key"
[startAt]="valueDate" [startAt]="valueDate"
> />
</mat-datetimepicker>
</div> </div>
</div> </div>
</div> </div>

View File

@ -15,8 +15,8 @@
<mat-cell *matCellDef="let item">{{item.value}}</mat-cell> <mat-cell *matCellDef="let item">{{item.value}}</mat-cell>
</ng-container> </ng-container>
<mat-header-row *matHeaderRowDef="['name', 'value']"></mat-header-row> <mat-header-row *matHeaderRowDef="['name', 'value']" />
<mat-row *matRowDef="let row; columns: ['name', 'value'];"></mat-row> <mat-row *matRowDef="let row; columns: ['name', 'value'];" />
</mat-table> </mat-table>
</div> </div>

View File

@ -23,7 +23,7 @@
(selectionChange)="onChange($event)" (selectionChange)="onChange($event)"
data-automation-class="select-box" data-automation-class="select-box"
[aria-label]="property.label | translate"> [aria-label]="property.label | translate">
<adf-select-filter-input *ngIf="showInputFilter" (change)="onFilterInputChange($event)"></adf-select-filter-input> <adf-select-filter-input *ngIf="showInputFilter" (change)="onFilterInputChange($event)" />
<mat-option *ngIf="displayNoneOption">{{ 'CORE.CARDVIEW.NONE' | translate }}</mat-option> <mat-option *ngIf="displayNoneOption">{{ 'CORE.CARDVIEW.NONE' | translate }}</mat-option>
<mat-option <mat-option
*ngFor="let option of list$ | async" *ngFor="let option of list$ | async"

View File

@ -10,8 +10,7 @@
[copyToClipboardAction]="copyToClipboardAction" [copyToClipboardAction]="copyToClipboardAction"
[useChipsForMultiValueProperty]="useChipsForMultiValueProperty" [useChipsForMultiValueProperty]="useChipsForMultiValueProperty"
[multiValueSeparator]="multiValueSeparator" [multiValueSeparator]="multiValueSeparator"
[displayLabelForChips]="displayLabelForChips"> [displayLabelForChips]="displayLabelForChips" />
</adf-card-view-item-dispatcher>
</div> </div>
</div> </div>
</div> </div>

View File

@ -30,6 +30,5 @@
</div> </div>
</div> </div>
<adf-comment-list *ngIf="comments?.length > 0" [comments]="comments"> <adf-comment-list *ngIf="comments?.length > 0" [comments]="comments" />
</adf-comment-list>
</div> </div>

View File

@ -20,7 +20,7 @@
</button> </button>
</div> </div>
<mat-divider class="adf-columns-selector-divider"></mat-divider> <mat-divider class="adf-columns-selector-divider" />
<div class="adf-columns-selector-search-input-container"> <div class="adf-columns-selector-search-input-container">
<mat-icon <mat-icon
@ -50,7 +50,7 @@
</div> </div>
</div> </div>
<mat-divider class="adf-columns-selector-divider"></mat-divider> <mat-divider class="adf-columns-selector-divider" />
<div class="adf-columns-selector-footer"> <div class="adf-columns-selector-footer">
<button <button

View File

@ -102,8 +102,7 @@
<adf-icon <adf-icon
*ngIf="hoveredHeaderColumnIndex === columnIndex && !isResizing" *ngIf="hoveredHeaderColumnIndex === columnIndex && !isResizing"
value="adf:drag_indicator" value="adf:drag_indicator"
[attr.data-automation-id]="'adf-datatable-cell-header-drag-icon-'+col.key"> [attr.data-automation-id]="'adf-datatable-cell-header-drag-icon-'+col.key" />
</adf-icon>
</span> </span>
</div> </div>
<div <div
@ -142,8 +141,7 @@
[ngTemplateOutlet]="mainActionTemplate" [ngTemplateOutlet]="mainActionTemplate"
[ngTemplateOutletContext]="{ [ngTemplateOutletContext]="{
$implicit: mainMenuTrigger $implicit: mainMenuTrigger
}"> }" />
</ng-container>
</mat-menu> </mat-menu>
<span class="adf-sr-only">{{ 'ADF-DATATABLE.ACCESSIBILITY.ACTIONS' | translate }}</span> <span class="adf-sr-only">{{ 'ADF-DATATABLE.ACCESSIBILITY.ACTIONS' | translate }}</span>
</ng-container> </ng-container>
@ -248,8 +246,7 @@
</mat-icon> </mat-icon>
<ng-template #no_iconvalue> <ng-template #no_iconvalue>
<mat-icon class="adf-datatable-selected" <mat-icon class="adf-datatable-selected"
*ngIf="row.isSelected && !multiselect; else no_selected_row" svgIcon="selected"> *ngIf="row.isSelected && !multiselect; else no_selected_row" svgIcon="selected" />
</mat-icon>
<ng-template #no_selected_row> <ng-template #no_selected_row>
<img class="adf-datatable-center-img-ie" <img class="adf-datatable-center-img-ie"
[attr.aria-label]="(data.getValue(row, col) | fileType) === 'disable' ? [attr.aria-label]="(data.getValue(row, col) | fileType) === 'disable' ?
@ -273,8 +270,7 @@
[column]="col" [column]="col"
[row]="row" [row]="row"
[resolverFn]="resolverFn" [resolverFn]="resolverFn"
[tooltip]="getCellTooltip(row, col)"> [tooltip]="getCellTooltip(row, col)" />
</adf-icon-cell>
</div> </div>
<div *ngSwitchCase="'date'" class="adf-cell-value adf-cell-date" [attr.tabindex]="data.getValue(row, col, resolverFn)? 0 : -1" <div *ngSwitchCase="'date'" class="adf-cell-value adf-cell-date" [attr.tabindex]="data.getValue(row, col, resolverFn)? 0 : -1"
[attr.data-automation-id]="'date_' + (data.getValue(row, col, resolverFn) | adfLocalizedDate: 'medium') "> [attr.data-automation-id]="'date_' + (data.getValue(row, col, resolverFn) | adfLocalizedDate: 'medium') ">
@ -284,8 +280,7 @@
[row]="row" [row]="row"
[resolverFn]="resolverFn" [resolverFn]="resolverFn"
[tooltip]="getCellTooltip(row, col)" [tooltip]="getCellTooltip(row, col)"
[dateConfig]="col.dateConfig"> [dateConfig]="col.dateConfig" />
</adf-date-cell>
</div> </div>
<div *ngSwitchCase="'location'" [attr.tabindex]="data.getValue(row, col, resolverFn)? 0 : -1" class="adf-cell-value" <div *ngSwitchCase="'location'" [attr.tabindex]="data.getValue(row, col, resolverFn)? 0 : -1" class="adf-cell-value"
[attr.data-automation-id]="'location' + data.getValue(row, col, resolverFn)"> [attr.data-automation-id]="'location' + data.getValue(row, col, resolverFn)">
@ -294,8 +289,7 @@
[column]="col" [column]="col"
[row]="row" [row]="row"
[resolverFn]="resolverFn" [resolverFn]="resolverFn"
[tooltip]="getCellTooltip(row, col)"> [tooltip]="getCellTooltip(row, col)" />
</adf-location-cell>
</div> </div>
<div *ngSwitchCase="'fileSize'" [attr.tabindex]="data.getValue(row, col, resolverFn)? 0 : -1" class="adf-cell-value" <div *ngSwitchCase="'fileSize'" [attr.tabindex]="data.getValue(row, col, resolverFn)? 0 : -1" class="adf-cell-value"
[attr.data-automation-id]="'fileSize_' + data.getValue(row, col, resolverFn)"> [attr.data-automation-id]="'fileSize_' + data.getValue(row, col, resolverFn)">
@ -304,8 +298,7 @@
[column]="col" [column]="col"
[row]="row" [row]="row"
[resolverFn]="resolverFn" [resolverFn]="resolverFn"
[tooltip]="getCellTooltip(row, col)"> [tooltip]="getCellTooltip(row, col)" />
</adf-filesize-cell>
</div> </div>
<div *ngSwitchCase="'text'" [attr.tabindex]="data.getValue(row, col, resolverFn)? 0 : -1" class="adf-cell-value" <div *ngSwitchCase="'text'" [attr.tabindex]="data.getValue(row, col, resolverFn)? 0 : -1" class="adf-cell-value"
[attr.data-automation-id]="'text_' + data.getValue(row, col, resolverFn)"> [attr.data-automation-id]="'text_' + data.getValue(row, col, resolverFn)">
@ -315,8 +308,7 @@
[column]="col" [column]="col"
[row]="row" [row]="row"
[resolverFn]="resolverFn" [resolverFn]="resolverFn"
[tooltip]="getCellTooltip(row, col)"> [tooltip]="getCellTooltip(row, col)" />
</adf-datatable-cell>
</div> </div>
<div *ngSwitchCase="'boolean'" [attr.tabindex]="data.getValue(row, col, resolverFn)? 0 : -1" class="adf-cell-value" <div *ngSwitchCase="'boolean'" [attr.tabindex]="data.getValue(row, col, resolverFn)? 0 : -1" class="adf-cell-value"
[attr.data-automation-id]="'boolean_' + data.getValue(row, col, resolverFn)"> [attr.data-automation-id]="'boolean_' + data.getValue(row, col, resolverFn)">
@ -325,8 +317,7 @@
[column]="col" [column]="col"
[row]="row" [row]="row"
[resolverFn]="resolverFn" [resolverFn]="resolverFn"
[tooltip]="getCellTooltip(row, col)"> [tooltip]="getCellTooltip(row, col)" />
</adf-boolean-cell>
</div> </div>
<div *ngSwitchCase="'json'" [attr.tabindex]="data.getValue(row, col, resolverFn)? 0 : -1" class="adf-cell-value"> <div *ngSwitchCase="'json'" [attr.tabindex]="data.getValue(row, col, resolverFn)? 0 : -1" class="adf-cell-value">
<adf-json-cell <adf-json-cell
@ -334,8 +325,7 @@
[data]="data" [data]="data"
[column]="col" [column]="col"
[resolverFn]="resolverFn" [resolverFn]="resolverFn"
[row]="row"> [row]="row" />
</adf-json-cell>
</div> </div>
<div *ngSwitchCase="'amount'" <div *ngSwitchCase="'amount'"
class="adf-cell-value" class="adf-cell-value"
@ -346,8 +336,7 @@
[column]="col" [column]="col"
[resolverFn]="resolverFn" [resolverFn]="resolverFn"
[row]="row" [row]="row"
[currencyConfig]="col.currencyConfig"> [currencyConfig]="col.currencyConfig" />
</adf-amount-cell>
</div> </div>
<div *ngSwitchCase="'number'" <div *ngSwitchCase="'number'"
class="adf-cell-value" class="adf-cell-value"
@ -358,8 +347,7 @@
[column]="col" [column]="col"
[resolverFn]="resolverFn" [resolverFn]="resolverFn"
[row]="row" [row]="row"
[decimalConfig]="col.decimalConfig"> [decimalConfig]="col.decimalConfig" />
</adf-number-cell>
</div> </div>
<span *ngSwitchDefault class="adf-cell-value"> <span *ngSwitchDefault class="adf-cell-value">
<!-- empty cell for unknown column type --> <!-- empty cell for unknown column type -->
@ -370,8 +358,7 @@
<div class="adf-cell-value" [attr.tabindex]="col.focus ? 0 : null"> <div class="adf-cell-value" [attr.tabindex]="col.focus ? 0 : null">
<ng-container <ng-container
[ngTemplateOutlet]="col.template" [ngTemplateOutlet]="col.template"
[ngTemplateOutletContext]="{ $implicit: { data: data, row: row, col: col }, value: data.getValue(row, col, resolverFn) }"> [ngTemplateOutletContext]="{ $implicit: { data: data, row: row, col: col }, value: data.getValue(row, col, resolverFn) }" />
</ng-container>
</div> </div>
</div> </div>
</div> </div>

View File

@ -36,8 +36,8 @@
</div> </div>
<mat-dialog-content *ngIf="data.contentTemplate || data.contentComponent || data.contentText" class="adf-dialog-content"> <mat-dialog-content *ngIf="data.contentTemplate || data.contentComponent || data.contentText" class="adf-dialog-content">
<ng-container [ngTemplateOutlet]="data.contentTemplate"></ng-container> <ng-container [ngTemplateOutlet]="data.contentTemplate" />
<ng-container *ngComponentOutlet="data.contentComponent; injector: dataInjector"></ng-container> <ng-container *ngComponentOutlet="data.contentComponent; injector: dataInjector" />
<ng-container>{{ data.contentText | translate }}</ng-container> <ng-container>{{ data.contentText | translate }}</ng-container>
</mat-dialog-content> </mat-dialog-content>
@ -47,7 +47,7 @@
> >
<div class="adf-additional-actions-container"> <div class="adf-additional-actions-container">
<ng-container *ngIf="!additionalActionButtons && data.actionsTemplate"> <ng-container *ngIf="!additionalActionButtons && data.actionsTemplate">
<ng-container [ngTemplateOutlet]="data.actionsTemplate"></ng-container> <ng-container [ngTemplateOutlet]="data.actionsTemplate" />
</ng-container> </ng-container>
<ng-container *ngIf="!data.actionsTemplate && additionalActionButtons"> <ng-container *ngIf="!data.actionsTemplate && additionalActionButtons">

View File

@ -21,7 +21,7 @@
[id]="'field-' + currentRootElement?.id + '-container'" [id]="'field-' + currentRootElement?.id + '-container'"
class="adf-container-widget" class="adf-container-widget"
[hidden]="!currentRootElement?.isVisible"> [hidden]="!currentRootElement?.isVisible">
<adf-header-widget [element]="currentRootElement"></adf-header-widget> <adf-header-widget [element]="currentRootElement" />
<div *ngIf="currentRootElement?.form?.enableFixedSpace; else fixingTemplate"> <div *ngIf="currentRootElement?.form?.enableFixedSpace; else fixingTemplate">
<div class="adf-grid-list" <div class="adf-grid-list"
[ngStyle]="{ 'grid-template-columns': 'repeat(' + getNumberOfColumns(currentRootElement) + ', 1fr)' }" [ngStyle]="{ 'grid-template-columns': 'repeat(' + getNumberOfColumns(currentRootElement) + ', 1fr)' }"
@ -29,7 +29,7 @@
<div class="adf-grid-list-item" <div class="adf-grid-list-item"
*ngFor="let field of getContainerFields(currentRootElement)" *ngFor="let field of getContainerFields(currentRootElement)"
[ngStyle]="{ 'grid-area': 'auto / auto / span ' + (field?.rowspan || 1) + ' / span ' + (field?.colspan || 1) }"> [ngStyle]="{ 'grid-area': 'auto / auto / span ' + (field?.rowspan || 1) + ' / span ' + (field?.colspan || 1) }">
<adf-form-field *ngIf="field" [field]="field"></adf-form-field> <adf-form-field *ngIf="field" [field]="field" />
</div> </div>
</div> </div>
</div> </div>
@ -40,7 +40,7 @@
*ngFor="let column of currentRootElement?.columns" *ngFor="let column of currentRootElement?.columns"
[style.width.%]="getColumnWith(currentRootElement)"> [style.width.%]="getColumnWith(currentRootElement)">
<div class="adf-grid-list-column-view-item" *ngFor="let field of column?.fields"> <div class="adf-grid-list-column-view-item" *ngFor="let field of column?.fields">
<adf-form-field *ngIf="field" [field]="field"></adf-form-field> <adf-form-field *ngIf="field" [field]="field" />
</div> </div>
</div> </div>
</section> </section>
@ -48,12 +48,12 @@
<ng-template #columnViewItem let-column="column"> <ng-template #columnViewItem let-column="column">
<div class="adf-grid-list-column-view-item" *ngFor="let field of column?.fields"> <div class="adf-grid-list-column-view-item" *ngFor="let field of column?.fields">
<adf-form-field *ngIf="field" [field]="field"></adf-form-field> <adf-form-field *ngIf="field" [field]="field" />
</div> </div>
</ng-template> </ng-template>
</div> </div>
<div *ngIf="currentRootElement.type === 'dynamic-table'" class="adf-container-widget"> <div *ngIf="currentRootElement.type === 'dynamic-table'" class="adf-container-widget">
<adf-form-field [field]="currentRootElement"></adf-form-field> <adf-form-field [field]="currentRootElement" />
</div> </div>
</div> </div>
</ng-template> </ng-template>

View File

@ -15,8 +15,8 @@
(ngModelChange)="onFieldChanged(field)" [disabled]="field.readOnly" (ngModelChange)="onFieldChanged(field)" [disabled]="field.readOnly"
(blur)="markAsTouched()"> (blur)="markAsTouched()">
</mat-form-field> </mat-form-field>
<error-widget [error]="field.validationSummary"></error-widget> <error-widget [error]="field.validationSummary" />
<error-widget *ngIf="isInvalidFieldRequired() && isTouched()" <error-widget *ngIf="isInvalidFieldRequired() && isTouched()"
required="{{ 'FORM.FIELD.REQUIRED' | translate }}"></error-widget> required="{{ 'FORM.FIELD.REQUIRED' | translate }}" />
</div> </div>
</div> </div>

View File

@ -8,6 +8,6 @@
[blobFile]="field.value.blobFile" [blobFile]="field.value.blobFile"
[fileName]="field.value.fileName" [fileName]="field.value.fileName"
[showViewer]="field.value?.blobFile || field.value?.urlFile" [showViewer]="field.value?.blobFile || field.value?.urlFile"
[allowGoBack]="false"></adf-viewer> [allowGoBack]="false" />
<error-widget [error]="field.validationSummary"></error-widget> <error-widget [error]="field.validationSummary" />
</div> </div>

View File

@ -12,7 +12,7 @@
{{ field.name | translate }} {{ field.name | translate }}
<span class="adf-asterisk" *ngIf="isRequired()">*</span> <span class="adf-asterisk" *ngIf="isRequired()">*</span>
</mat-checkbox> </mat-checkbox>
<error-widget [error]="field.validationSummary"></error-widget> <error-widget [error]="field.validationSummary" />
<error-widget *ngIf="isInvalidFieldRequired() && isTouched()" <error-widget *ngIf="isInvalidFieldRequired() && isTouched()"
required="{{ 'FORM.FIELD.REQUIRED' | translate }}"></error-widget> required="{{ 'FORM.FIELD.REQUIRED' | translate }}" />
</div> </div>

View File

@ -25,16 +25,14 @@
[min]="minDate" [min]="minDate"
[max]="maxDate"> [max]="maxDate">
<mat-datetimepicker-toggle matSuffix [for]="datetimePicker" <mat-datetimepicker-toggle matSuffix [for]="datetimePicker"
[disabled]="field.readOnly"> [disabled]="field.readOnly" />
</mat-datetimepicker-toggle>
<mat-datetimepicker #datetimePicker <mat-datetimepicker #datetimePicker
data-automation-id="adf-date-time-widget-picker" data-automation-id="adf-date-time-widget-picker"
type="datetime" type="datetime"
[touchUi]="true" [touchUi]="true"
[timeInterval]="5" [timeInterval]="5"
[disabled]="field.readOnly"> [disabled]="field.readOnly" />
</mat-datetimepicker>
</mat-form-field> </mat-form-field>
<error-widget *ngIf="datetimeInputControl.invalid && datetimeInputControl.touched" [error]="field.validationSummary"></error-widget> <error-widget *ngIf="datetimeInputControl.invalid && datetimeInputControl.touched" [error]="field.validationSummary" />
</div> </div>
</div> </div>

View File

@ -13,11 +13,10 @@
[min]="minDate" [min]="minDate"
[max]="maxDate" [max]="maxDate"
(blur)="updateField()"> (blur)="updateField()">
<mat-datepicker-toggle matSuffix [for]="datePicker" [disabled]="field.readOnly"></mat-datepicker-toggle> <mat-datepicker-toggle matSuffix [for]="datePicker" [disabled]="field.readOnly" />
<mat-datepicker #datePicker <mat-datepicker #datePicker
[startAt]="startAt" [startAt]="startAt"
[disabled]="field.readOnly"> [disabled]="field.readOnly" />
</mat-datepicker>
</mat-form-field> </mat-form-field>
<error-widget *ngIf="dateInputControl.invalid && dateInputControl.touched" [error]="field.validationSummary"></error-widget> <error-widget *ngIf="dateInputControl.invalid && dateInputControl.touched" [error]="field.validationSummary" />
</div> </div>

View File

@ -28,9 +28,8 @@
(blur)="markAsTouched()" /> (blur)="markAsTouched()" />
</mat-form-field> </mat-form-field>
<error-widget [error]="field.validationSummary"></error-widget> <error-widget [error]="field.validationSummary" />
<error-widget *ngIf="isInvalidFieldRequired() && isTouched()" <error-widget *ngIf="isInvalidFieldRequired() && isTouched()"
required="{{ 'FORM.FIELD.REQUIRED' | translate }}"> required="{{ 'FORM.FIELD.REQUIRED' | translate }}" />
</error-widget>
</div> </div>
</div> </div>

View File

@ -23,10 +23,9 @@
<div *ngIf="field.maxLength > 0" class="adf-multiline-word-counter"> <div *ngIf="field.maxLength > 0" class="adf-multiline-word-counter">
<span class="adf-multiline-word-counter-value">{{ field?.value?.length || 0 }}/{{ field.maxLength }}</span> <span class="adf-multiline-word-counter-value">{{ field?.value?.length || 0 }}/{{ field.maxLength }}</span>
</div> </div>
<error-widget [error]="field.validationSummary"></error-widget> <error-widget [error]="field.validationSummary" />
<error-widget *ngIf="isInvalidFieldRequired() && isTouched()" <error-widget *ngIf="isInvalidFieldRequired() && isTouched()"
class="adf-multiline-required-message" class="adf-multiline-required-message"
required="{{ 'FORM.FIELD.REQUIRED' | translate }}"> required="{{ 'FORM.FIELD.REQUIRED' | translate }}" />
</error-widget>
</div> </div>

View File

@ -27,8 +27,8 @@
[title]="field.tooltip" [title]="field.tooltip"
(blur)="markAsTouched()"> (blur)="markAsTouched()">
</mat-form-field> </mat-form-field>
<error-widget [error]="field.validationSummary"></error-widget> <error-widget [error]="field.validationSummary" />
<error-widget *ngIf="isInvalidFieldRequired() && isTouched()" <error-widget *ngIf="isInvalidFieldRequired() && isTouched()"
required="{{ 'FORM.FIELD.REQUIRED' | translate }}"></error-widget> required="{{ 'FORM.FIELD.REQUIRED' | translate }}" />
</div> </div>
</div> </div>

View File

@ -26,8 +26,8 @@
[title]="field.tooltip" [title]="field.tooltip"
(blur)="markAsTouched()"> (blur)="markAsTouched()">
</mat-form-field> </mat-form-field>
<error-widget [error]="field.validationSummary"></error-widget> <error-widget [error]="field.validationSummary" />
<error-widget *ngIf="isInvalidFieldRequired() && isTouched()" <error-widget *ngIf="isInvalidFieldRequired() && isTouched()"
required="{{ 'FORM.FIELD.REQUIRED' | translate }}"></error-widget> required="{{ 'FORM.FIELD.REQUIRED' | translate }}" />
</div> </div>
</div> </div>

View File

@ -2,23 +2,23 @@
<ng-container *ngSwitchCase="'minimal'"> <ng-container *ngSwitchCase="'minimal'">
<adf-toolbar [color]="color"> <adf-toolbar [color]="color">
<adf-toolbar-title> <adf-toolbar-title>
<ng-container *ngTemplateOutlet="toolbarTitleContent"></ng-container> <ng-container *ngTemplateOutlet="toolbarTitleContent" />
</adf-toolbar-title> </adf-toolbar-title>
<ng-container *ngTemplateOutlet="navbarTemplate"></ng-container> <ng-container *ngTemplateOutlet="navbarTemplate" />
<div class="adf-toolbar--spacer"></div> <div class="adf-toolbar--spacer"></div>
<ng-container *ngTemplateOutlet="toolbarActions"></ng-container> <ng-container *ngTemplateOutlet="toolbarActions" />
</adf-toolbar> </adf-toolbar>
</ng-container> </ng-container>
<ng-container *ngSwitchCase="'extended'"> <ng-container *ngSwitchCase="'extended'">
<adf-toolbar [color]="color"> <adf-toolbar [color]="color">
<adf-toolbar-title> <adf-toolbar-title>
<ng-container *ngTemplateOutlet="toolbarTitleContent"></ng-container> <ng-container *ngTemplateOutlet="toolbarTitleContent" />
</adf-toolbar-title> </adf-toolbar-title>
<ng-container *ngTemplateOutlet="toolbarActions"></ng-container> <ng-container *ngTemplateOutlet="toolbarActions" />
</adf-toolbar> </adf-toolbar>
<adf-toolbar [color]="color"> <adf-toolbar [color]="color">
<ng-container *ngTemplateOutlet="navbarTemplate"></ng-container> <ng-container *ngTemplateOutlet="navbarTemplate" />
</adf-toolbar> </adf-toolbar>
</ng-container> </ng-container>
</ng-container> </ng-container>

View File

@ -1,5 +1,4 @@
<adf-navbar-item *ngFor="let item of items" <adf-navbar-item *ngFor="let item of items"
[routerLink]="item.routerLink" [routerLink]="item.routerLink"
[label]="item.label"> [label]="item.label" />
</adf-navbar-item>
<ng-content></ng-content> <ng-content></ng-content>

View File

@ -1,5 +1,5 @@
<ng-container *ngIf="isCustom; else: defaultIcon"> <ng-container *ngIf="isCustom; else: defaultIcon">
<mat-icon [color]="color" [svgIcon]="value" aria-hidden="true"></mat-icon> <mat-icon [color]="color" [svgIcon]="value" aria-hidden="true" />
</ng-container> </ng-container>
<ng-template #defaultIcon> <ng-template #defaultIcon>

View File

@ -4,7 +4,7 @@
<ng-content *ngIf="!title" info-drawer-title select="[info-drawer-title]"></ng-content> <ng-content *ngIf="!title" info-drawer-title select="[info-drawer-title]"></ng-content>
<ng-content info-drawer-buttons select="[info-drawer-buttons]"></ng-content> <ng-content info-drawer-buttons select="[info-drawer-buttons]"></ng-content>
<ng-container info-drawer-content *ngIf="showTabLayout(); then tabLayout else singleLayout"></ng-container> <ng-container info-drawer-content *ngIf="showTabLayout(); then tabLayout else singleLayout" />
<ng-template #tabLayout> <ng-template #tabLayout>
<mat-tab-group [(selectedIndex)]="selectedIndex" class="adf-info-drawer-tabs" (selectedTabChange)="onTabChange($event)" [animationDuration]="0"> <mat-tab-group [(selectedIndex)]="selectedIndex" class="adf-info-drawer-tabs" (selectedTabChange)="onTabChange($event)" [animationDuration]="0">
@ -22,7 +22,7 @@
<span *ngIf="contentBlock.label">{{ contentBlock.label | translate }}</span> <span *ngIf="contentBlock.label">{{ contentBlock.label | translate }}</span>
</ng-template> </ng-template>
<ng-container *ngTemplateOutlet="contentBlock.content"></ng-container> <ng-container *ngTemplateOutlet="contentBlock.content" />
</mat-tab> </mat-tab>
</mat-tab-group> </mat-tab-group>
</ng-template> </ng-template>

View File

@ -86,9 +86,9 @@ describe('InfoDrawerComponent', () => {
imports: [InfoDrawerTabComponent, InfoDrawerComponent], imports: [InfoDrawerTabComponent, InfoDrawerComponent],
template: ` template: `
<adf-info-drawer [selectedIndex]="tabIndex" [icon]="icon" title="Fake Title Custom"> <adf-info-drawer [selectedIndex]="tabIndex" [icon]="icon" title="Fake Title Custom">
<adf-info-drawer-tab label="Tab1"></adf-info-drawer-tab> <adf-info-drawer-tab label="Tab1" />
<adf-info-drawer-tab label="Tab2"></adf-info-drawer-tab> <adf-info-drawer-tab label="Tab2" />
<adf-info-drawer-tab label="Tab3" icon="tab-icon"></adf-info-drawer-tab> <adf-info-drawer-tab label="Tab3" icon="tab-icon" />
</adf-info-drawer> </adf-info-drawer>
` `
}) })
@ -166,7 +166,7 @@ describe('Custom InfoDrawer', () => {
@Component({ @Component({
standalone: true, standalone: true,
imports: [InfoDrawerComponent], imports: [InfoDrawerComponent],
template: ` <adf-info-drawer [showHeader]="showHeader" [icon]="icon" title="Fake Visibility Info Drawer Title"> </adf-info-drawer> ` template: ` <adf-info-drawer [showHeader]="showHeader" [icon]="icon" title="Fake Visibility Info Drawer Title" /> `
}) })
class VisibilityInfoDrawerComponent extends InfoDrawerComponent { class VisibilityInfoDrawerComponent extends InfoDrawerComponent {
showHeader: boolean; showHeader: boolean;

View File

@ -33,7 +33,7 @@ import { MatIconModule } from '@angular/material/icon';
{{ 'ADF.LANGUAGE' | translate }} {{ 'ADF.LANGUAGE' | translate }}
</button> </button>
<mat-menu #langMenu="matMenu"> <mat-menu #langMenu="matMenu">
<adf-language-menu (changedLanguage)="changedLanguage.emit($event)"></adf-language-menu> <adf-language-menu (changedLanguage)="changedLanguage.emit($event)" />
</mat-menu> </mat-menu>
` `
}) })

View File

@ -1,7 +1,7 @@
<div class="adf-sidenav-layout-full-space"> <div class="adf-sidenav-layout-full-space">
<ng-container *ngIf="!isHeaderInside"> <ng-container *ngIf="!isHeaderInside">
<ng-container class="adf-sidenav-layout-outer-header" <ng-container class="adf-sidenav-layout-outer-header"
*ngTemplateOutlet="headerTemplate; context:templateContext"></ng-container> *ngTemplateOutlet="headerTemplate; context:templateContext" />
</ng-container> </ng-container>
<adf-layout-container #container <adf-layout-container #container
@ -16,13 +16,13 @@
class="adf-layout__content"> class="adf-layout__content">
<ng-container app-layout-navigation <ng-container app-layout-navigation
*ngTemplateOutlet="navigationTemplate; context:templateContext"></ng-container> *ngTemplateOutlet="navigationTemplate; context:templateContext" />
<ng-container app-layout-content> <ng-container app-layout-content>
<ng-container *ngIf="isHeaderInside"> <ng-container *ngIf="isHeaderInside">
<ng-container *ngTemplateOutlet="headerTemplate; context:templateContext"></ng-container> <ng-container *ngTemplateOutlet="headerTemplate; context:templateContext" />
</ng-container> </ng-container>
<ng-container *ngTemplateOutlet="contentTemplate; context:templateContext"></ng-container> <ng-container *ngTemplateOutlet="contentTemplate; context:templateContext" />
</ng-container> </ng-container>
</adf-layout-container> </adf-layout-container>

View File

@ -4,8 +4,7 @@
</header> </header>
<mat-dialog-content class="adf-login-dialog-content"> <mat-dialog-content class="adf-login-dialog-content">
<adf-login-dialog-panel #adfLoginPanel (success)="onLoginSuccess($event)"> <adf-login-dialog-panel #adfLoginPanel (success)="onLoginSuccess($event)" />
</adf-login-dialog-panel>
</mat-dialog-content> </mat-dialog-content>
<mat-dialog-actions class="adf-login-dialog-content-actions" align="end"> <mat-dialog-actions class="adf-login-dialog-content-actions" align="end">

View File

@ -148,8 +148,7 @@
id="checking-spinner" id="checking-spinner"
class="adf-login-checking-spinner" class="adf-login-checking-spinner"
[strokeWidth]="4" [strokeWidth]="4"
[diameter]="25"> [diameter]="25" />
</mat-spinner>
</div> </div>
</div> </div>
<div <div

View File

@ -135,8 +135,7 @@
<mat-spinner id="checking-spinner" <mat-spinner id="checking-spinner"
class="adf-login-checking-spinner" class="adf-login-checking-spinner"
[strokeWidth]="4" [strokeWidth]="4"
[diameter]="25"> [diameter]="25" />
</mat-spinner>
</div> </div>
</div> </div>
<div *ngIf="actualLoginStep === LoginSteps.Welcome" <div *ngIf="actualLoginStep === LoginSteps.Welcome"

View File

@ -36,7 +36,7 @@
</button> </button>
</div> </div>
<mat-divider></mat-divider> <mat-divider />
<mat-list role="menuitem"> <mat-list role="menuitem">
<ng-container *ngIf="notifications.length; else empty_list_template"> <ng-container *ngIf="notifications.length; else empty_list_template">
@ -67,7 +67,7 @@
</ng-template> </ng-template>
</mat-list> </mat-list>
<mat-divider></mat-divider> <mat-divider />
<div class="adf-notification-history-load-more" role="menuitem" *ngIf="hasMoreNotifications()"> <div class="adf-notification-history-load-more" role="menuitem" *ngIf="hasMoreNotifications()">
<button mat-button (click)="loadMore()"> <button mat-button (click)="loadMore()">

View File

@ -12,5 +12,5 @@
mode="indeterminate" mode="indeterminate"
class="adf-infinite-pagination-spinner" class="adf-infinite-pagination-spinner"
data-automation-id="adf-infinite-pagination-spinner" data-automation-id="adf-infinite-pagination-spinner"
[attr.aria-label]="'DATA_LOADING' | translate"></mat-progress-bar> [attr.aria-label]="'DATA_LOADING' | translate" />
</div> </div>

View File

@ -6,8 +6,7 @@
[color]="color" [color]="color"
[attr.aria-label]="ariaLabel" [attr.aria-label]="ariaLabel"
[attr.aria-hidden]="ariaHidden" [attr.aria-hidden]="ariaHidden"
[attr.data-automation-id]="testId"> [attr.data-automation-id]="testId" />
</mat-progress-bar>
</ng-container> </ng-container>
<ng-container *ngSwitchCase="'spinner'"> <ng-container *ngSwitchCase="'spinner'">
@ -17,7 +16,6 @@
[color]="color" [color]="color"
[attr.aria-label]="ariaLabel" [attr.aria-label]="ariaLabel"
[attr.aria-hidden]="ariaHidden" [attr.aria-hidden]="ariaHidden"
[attr.data-automation-id]="testId"> [attr.data-automation-id]="testId" />
</mat-progress-spinner>
</ng-container> </ng-container>
</ng-container> </ng-container>

View File

@ -1,5 +1,5 @@
<div class="adf-empty-content" [title]="title | translate"> <div class="adf-empty-content" [title]="title | translate">
<adf-icon class="adf-empty-content__icon" [value]="icon"></adf-icon> <adf-icon class="adf-empty-content__icon" [value]="icon" />
<div class="adf-empty-content__title">{{ title | translate }}</div> <div class="adf-empty-content__title">{{ title | translate }}</div>
<div class="adf-empty-content__subtitle">{{ subtitle | translate }}</div> <div class="adf-empty-content__subtitle">{{ subtitle | translate }}</div>
<ng-content></ng-content> <ng-content></ng-content>

View File

@ -7,6 +7,5 @@
[id]="page.id" [id]="page.id"
[ngClass]="{'adf-pdf-thumbnails__thumb--selected' : isSelected(page.id)}" [ngClass]="{'adf-pdf-thumbnails__thumb--selected' : isSelected(page.id)}"
[page]="page" [page]="page"
(click)="goTo(page.id)"> (click)="goTo(page.id)" />
</adf-pdf-thumb>
</div> </div>

View File

@ -13,12 +13,11 @@
</div> </div>
<ng-container *ngIf="thumbnailsTemplate"> <ng-container *ngIf="thumbnailsTemplate">
<ng-container *ngTemplateOutlet="thumbnailsTemplate;context:pdfThumbnailsContext"></ng-container> <ng-container *ngTemplateOutlet="thumbnailsTemplate;context:pdfThumbnailsContext" />
</ng-container> </ng-container>
<adf-pdf-thumbnails *ngIf="!thumbnailsTemplate && !isPanelDisabled" <adf-pdf-thumbnails *ngIf="!thumbnailsTemplate && !isPanelDisabled"
(close)="toggleThumbnails()" (close)="toggleThumbnails()"
[pdfViewer]="pdfViewer"> [pdfViewer]="pdfViewer" />
</adf-pdf-thumbnails>
</div> </div>
</div> </div>
</ng-container> </ng-container>
@ -34,7 +33,7 @@
aria-expanded="true"> aria-expanded="true">
<div id="loader-container" class="adf-loader-container"> <div id="loader-container" class="adf-loader-container">
<div class="adf-loader-item"> <div class="adf-loader-item">
<mat-progress-bar class="adf-loader-item-progress-bar" mode="indeterminate"></mat-progress-bar> <mat-progress-bar class="adf-loader-item-progress-bar" mode="indeterminate" />
</div> </div>
</div> </div>
</div> </div>
@ -54,7 +53,7 @@
(click)="toggleThumbnails()"> (click)="toggleThumbnails()">
<mat-icon>dashboard</mat-icon> <mat-icon>dashboard</mat-icon>
</button> </button>
<adf-toolbar-divider></adf-toolbar-divider> <adf-toolbar-divider />
</ng-container> </ng-container>
<button id="viewer-previous-page-button" <button id="viewer-previous-page-button"

View File

@ -41,7 +41,7 @@ class TestDialogComponent {}
@Component({ @Component({
standalone: true, standalone: true,
imports: [PdfViewerComponent], imports: [PdfViewerComponent],
template: ` <adf-pdf-viewer [allowThumbnails]="true" [showToolbar]="true" [urlFile]="urlFile"></adf-pdf-viewer> ` template: ` <adf-pdf-viewer [allowThumbnails]="true" [showToolbar]="true" [urlFile]="urlFile" /> `
}) })
class UrlTestComponent { class UrlTestComponent {
@ViewChild(PdfViewerComponent, { static: true }) @ViewChild(PdfViewerComponent, { static: true })
@ -57,7 +57,7 @@ class UrlTestComponent {
@Component({ @Component({
standalone: true, standalone: true,
imports: [PdfViewerComponent], imports: [PdfViewerComponent],
template: ` <adf-pdf-viewer [allowThumbnails]="true" [showToolbar]="true" [urlFile]="urlFile"></adf-pdf-viewer> ` template: ` <adf-pdf-viewer [allowThumbnails]="true" [showToolbar]="true" [urlFile]="urlFile" /> `
}) })
class UrlTestPasswordComponent { class UrlTestPasswordComponent {
@ViewChild(PdfViewerComponent, { static: true }) @ViewChild(PdfViewerComponent, { static: true })
@ -73,7 +73,7 @@ class UrlTestPasswordComponent {
@Component({ @Component({
standalone: true, standalone: true,
imports: [PdfViewerComponent], imports: [PdfViewerComponent],
template: ` <adf-pdf-viewer [allowThumbnails]="true" [showToolbar]="true" [blobFile]="blobFile"></adf-pdf-viewer> ` template: ` <adf-pdf-viewer [allowThumbnails]="true" [showToolbar]="true" [blobFile]="blobFile" /> `
}) })
class BlobTestComponent { class BlobTestComponent {
@ViewChild(PdfViewerComponent, { static: true }) @ViewChild(PdfViewerComponent, { static: true })

Some files were not shown because too many files have changed in this diff Show More