On desktop, don't allow clicking on the genre/tag as issue browsing is not yet implemented
This commit is contained in:
parent
6763e97a87
commit
ba14f47a96
6 changed files with 21 additions and 12 deletions
|
|
@ -10,8 +10,8 @@
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<PackageReference Include="BenchmarkDotNet" Version="0.14.0" />
|
<PackageReference Include="BenchmarkDotNet" Version="0.15.1" />
|
||||||
<PackageReference Include="BenchmarkDotNet.Annotations" Version="0.14.0" />
|
<PackageReference Include="BenchmarkDotNet.Annotations" Version="0.15.1" />
|
||||||
<PackageReference Include="NSubstitute" Version="5.3.0" />
|
<PackageReference Include="NSubstitute" Version="5.3.0" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -5,6 +5,11 @@
|
||||||
box-shadow: 0 2px 5px rgba(0,0,0,0.2);
|
box-shadow: 0 2px 5px rgba(0,0,0,0.2);
|
||||||
transition: transform 0.2s ease, background 0.3s ease;
|
transition: transform 0.2s ease, background 0.3s ease;
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
|
|
||||||
|
&.not-selectable:hover {
|
||||||
|
cursor: not-allowed;
|
||||||
|
background-color: var(--bs-card-color, #2c2c2c) !important;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.tag-card:hover {
|
.tag-card:hover {
|
||||||
|
|
|
||||||
|
|
@ -19,7 +19,7 @@
|
||||||
>
|
>
|
||||||
<ng-template #cardItem let-item let-position="idx">
|
<ng-template #cardItem let-item let-position="idx">
|
||||||
|
|
||||||
<div class="tag-card" (click)="openFilter(FilterField.Genres, item.id)">
|
<div class="tag-card" [ngClass]="{'not-selectable': item.seriesCount === 0}" (click)="openFilter(FilterField.Genres, item)">
|
||||||
<div class="tag-name">{{ item.title }}</div>
|
<div class="tag-name">{{ item.title }}</div>
|
||||||
<div class="tag-meta">
|
<div class="tag-meta">
|
||||||
<span>{{t('series-count', {num: item.seriesCount | compactNumber})}}</span>
|
<span>{{t('series-count', {num: item.seriesCount | compactNumber})}}</span>
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
import {ChangeDetectionStrategy, ChangeDetectorRef, Component, EventEmitter, inject, OnInit} from '@angular/core';
|
import {ChangeDetectionStrategy, ChangeDetectorRef, Component, EventEmitter, inject, OnInit} from '@angular/core';
|
||||||
import {CardDetailLayoutComponent} from "../../cards/card-detail-layout/card-detail-layout.component";
|
import {CardDetailLayoutComponent} from "../../cards/card-detail-layout/card-detail-layout.component";
|
||||||
import {DecimalPipe} from "@angular/common";
|
import {DecimalPipe, NgClass} from "@angular/common";
|
||||||
import {
|
import {
|
||||||
SideNavCompanionBarComponent
|
SideNavCompanionBarComponent
|
||||||
} from "../../sidenav/_components/side-nav-companion-bar/side-nav-companion-bar.component";
|
} from "../../sidenav/_components/side-nav-companion-bar/side-nav-companion-bar.component";
|
||||||
|
|
@ -24,7 +24,8 @@ import {Title} from "@angular/platform-browser";
|
||||||
DecimalPipe,
|
DecimalPipe,
|
||||||
SideNavCompanionBarComponent,
|
SideNavCompanionBarComponent,
|
||||||
TranslocoDirective,
|
TranslocoDirective,
|
||||||
CompactNumberPipe
|
CompactNumberPipe,
|
||||||
|
NgClass
|
||||||
],
|
],
|
||||||
templateUrl: './browse-genres.component.html',
|
templateUrl: './browse-genres.component.html',
|
||||||
styleUrl: './browse-genres.component.scss',
|
styleUrl: './browse-genres.component.scss',
|
||||||
|
|
@ -62,7 +63,8 @@ export class BrowseGenresComponent implements OnInit {
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
openFilter(field: FilterField, value: string | number) {
|
openFilter(field: FilterField, genre: BrowseGenre) {
|
||||||
this.filterUtilityService.applyFilter(['all-series'], field, FilterComparison.Equal, `${value}`).subscribe();
|
if (genre.seriesCount === 0) return; // We don't yet have an issue page
|
||||||
|
this.filterUtilityService.applyFilter(['all-series'], field, FilterComparison.Equal, `${genre.id}`).subscribe();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -19,7 +19,7 @@
|
||||||
>
|
>
|
||||||
<ng-template #cardItem let-item let-position="idx">
|
<ng-template #cardItem let-item let-position="idx">
|
||||||
|
|
||||||
<div class="tag-card" (click)="openFilter(FilterField.Tags, item.id)">
|
<div class="tag-card" [ngClass]="{'not-selectable': item.seriesCount === 0}" (click)="openFilter(FilterField.Tags, item)">
|
||||||
<div class="tag-name">{{ item.title }}</div>
|
<div class="tag-name">{{ item.title }}</div>
|
||||||
<div class="tag-meta">
|
<div class="tag-meta">
|
||||||
<span>{{t('series-count', {num: item.seriesCount | compactNumber})}}</span>
|
<span>{{t('series-count', {num: item.seriesCount | compactNumber})}}</span>
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
import {ChangeDetectionStrategy, ChangeDetectorRef, Component, EventEmitter, inject, OnInit} from '@angular/core';
|
import {ChangeDetectionStrategy, ChangeDetectorRef, Component, EventEmitter, inject, OnInit} from '@angular/core';
|
||||||
import {CardDetailLayoutComponent} from "../../cards/card-detail-layout/card-detail-layout.component";
|
import {CardDetailLayoutComponent} from "../../cards/card-detail-layout/card-detail-layout.component";
|
||||||
import {DecimalPipe} from "@angular/common";
|
import {DecimalPipe, NgClass} from "@angular/common";
|
||||||
import {
|
import {
|
||||||
SideNavCompanionBarComponent
|
SideNavCompanionBarComponent
|
||||||
} from "../../sidenav/_components/side-nav-companion-bar/side-nav-companion-bar.component";
|
} from "../../sidenav/_components/side-nav-companion-bar/side-nav-companion-bar.component";
|
||||||
|
|
@ -25,7 +25,8 @@ import {Title} from "@angular/platform-browser";
|
||||||
DecimalPipe,
|
DecimalPipe,
|
||||||
SideNavCompanionBarComponent,
|
SideNavCompanionBarComponent,
|
||||||
TranslocoDirective,
|
TranslocoDirective,
|
||||||
CompactNumberPipe
|
CompactNumberPipe,
|
||||||
|
NgClass
|
||||||
],
|
],
|
||||||
templateUrl: './browse-tags.component.html',
|
templateUrl: './browse-tags.component.html',
|
||||||
styleUrl: './browse-tags.component.scss',
|
styleUrl: './browse-tags.component.scss',
|
||||||
|
|
@ -61,7 +62,8 @@ export class BrowseTagsComponent implements OnInit {
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
openFilter(field: FilterField, value: string | number) {
|
openFilter(field: FilterField, tag: BrowseTag) {
|
||||||
this.filterUtilityService.applyFilter(['all-series'], field, FilterComparison.Equal, `${value}`).subscribe();
|
if (tag.seriesCount === 0) return; // We don't yet have an issue page
|
||||||
|
this.filterUtilityService.applyFilter(['all-series'], field, FilterComparison.Equal, `${tag.id}`).subscribe();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue