Browse Source

Track by

pull/345/head
Sebastian Stehle 7 years ago
parent
commit
b62e839ac4
  1. 6
      src/Squidex/app/features/assets/pages/assets-filters-page.component.html
  2. 8
      src/Squidex/app/features/assets/pages/assets-filters-page.component.ts
  3. 6
      src/Squidex/app/features/content/pages/contents/contents-filters-page.component.html
  4. 8
      src/Squidex/app/features/content/pages/contents/contents-filters-page.component.ts
  5. 2
      src/Squidex/app/features/schemas/pages/schema/field.component.html
  6. 2
      src/Squidex/app/features/schemas/pages/schema/schema-page.component.html

6
src/Squidex/app/features/assets/pages/assets-filters-page.component.html

@ -14,7 +14,8 @@
</div>
</a>
<a class="sidebar-item" *ngFor="let tag of assetsState.tags | async" (click)="toggleTag(tag.name)" [class.active]="assetsState.isTagSelected(tag.name)">
<a class="sidebar-item" *ngFor="let tag of assetsState.tags | async; trackBy: trackByTag" (click)="toggleTag(tag.name)"
[class.active]="assetsState.isTagSelected(tag.name)">
<div class="row">
<div class="col">
{{tag.name}}
@ -29,7 +30,8 @@
<h3>Saved queries</h3>
<a class="sidebar-item" *ngFor="let query of queries.queries | async" (click)="search(query.filter)" [class.active]="isSelectedQuery(query.filter)">
<a class="sidebar-item" *ngFor="let query of queries.queries | async; trackBy: trackByQuery" (click)="search(query.filter)"
[class.active]="isSelectedQuery(query.filter)">
<a class="sidebar-item-remove float-right" (click)="queries.remove(query.name)">
<i class="icon-close"></i>
</a>

8
src/Squidex/app/features/assets/pages/assets-filters-page.component.ts

@ -47,4 +47,12 @@ export class AssetsFiltersPageComponent {
public isSelectedQuery(query: string) {
return query === this.assetsState.snapshot.assetsQuery || (!query && !this.assetsState.assetsQuery);
}
public trackByTag(index: number, tag: { name: string }) {
return tag.name;
}
public trackByQuery(index: number, query: { name: string }) {
return query.name;
}
}

6
src/Squidex/app/features/content/pages/contents/contents-filters-page.component.html

@ -4,7 +4,8 @@
</ng-container>
<ng-container content>
<a class="sidebar-item" *ngFor="let query of schemaQueries.defaultQueries" (click)="search(query.filter)" [class.active]="isSelectedQuery(query.filter)">
<a class="sidebar-item" *ngFor="let query of schemaQueries.defaultQueries; trackBy: trackByTag" (click)="search(query.filter)"
[class.active]="isSelectedQuery(query.filter)">
{{query.name}}
</a>
@ -13,7 +14,8 @@
<div class="sidebar-section">
<h3>Saved queries</h3>
<a class="sidebar-item" *ngFor="let query of schemaQueries.queries | async" (click)="search(query.filter)" [class.active]="isSelectedQuery(query.filter)">
<a class="sidebar-item" *ngFor="let query of schemaQueries.queries | async; trackByQuery" (click)="search(query.filter)"
[class.active]="isSelectedQuery(query.filter)">
{{query.name}}
<a class="sidebar-item-remove float-right" (click)="schemaQueries.remove(query.name)">

8
src/Squidex/app/features/content/pages/contents/contents-filters-page.component.ts

@ -49,4 +49,12 @@ export class ContentsFiltersPageComponent extends ResourceOwner implements OnIni
public isSelectedQuery(query: string) {
return query === this.contentsState.snapshot.contentsQuery || (!query && !this.contentsState.snapshot.contentsQuery);
}
public trackByTag(index: number, tag: { name: string }) {
return tag.name;
}
public trackByQuery(index: number, query: { name: string }) {
return query.name;
}
}

2
src/Squidex/app/features/schemas/pages/schema/field.component.html

@ -28,7 +28,7 @@
<button type="button" class="btn btn-text-secondary ml-1" (click)="dropdown.toggle()" [class.active]="dropdown.isOpen | async" #optionsButton>
<i class="icon-dots"></i>
</button>
<div class="dropdown-menu" *sqxModalView="dropdown" [sqxModalTarget]="optionsButton" @fade>
<div class="dropdown-menu" *sqxModalView="dropdown;closeAlways:true" [sqxModalTarget]="optionsButton" @fade>
<a class="dropdown-item" (click)="enableField()" *ngIf="field.isDisabled">
Enable in UI
</a>

2
src/Squidex/app/features/schemas/pages/schema/schema-page.component.html

@ -23,7 +23,7 @@
<button type="button" class="btn btn-text-secondary ml-1" (click)="editOptionsDropdown.toggle()" [class.active]="editOptionsDropdown.isOpen | async" #buttonOptions>
<i class="icon-dots"></i>
</button>
<div class="dropdown-menu" *sqxModalView="editOptionsDropdown" [sqxModalTarget]="buttonOptions" @fade>
<div class="dropdown-menu" *sqxModalView="editOptionsDropdown;closeAlways:true" [sqxModalTarget]="buttonOptions" @fade>
<a class="dropdown-item" (click)="configureScriptsDialog.show()">
Edit Scripts
</a>

Loading…
Cancel
Save