On desktop, don't allow clicking on the genre/tag as issue browsing is not yet implemented

This commit is contained in:
Joseph Milazzo 2025-06-20 09:23:22 -05:00
parent 6763e97a87
commit ba14f47a96
6 changed files with 21 additions and 12 deletions

View file

@ -10,8 +10,8 @@
</ItemGroup>
<ItemGroup>
<PackageReference Include="BenchmarkDotNet" Version="0.14.0" />
<PackageReference Include="BenchmarkDotNet.Annotations" Version="0.14.0" />
<PackageReference Include="BenchmarkDotNet" Version="0.15.1" />
<PackageReference Include="BenchmarkDotNet.Annotations" Version="0.15.1" />
<PackageReference Include="NSubstitute" Version="5.3.0" />
</ItemGroup>

View file

@ -5,6 +5,11 @@
box-shadow: 0 2px 5px rgba(0,0,0,0.2);
transition: transform 0.2s ease, background 0.3s ease;
cursor: pointer;
&.not-selectable:hover {
cursor: not-allowed;
background-color: var(--bs-card-color, #2c2c2c) !important;
}
}
.tag-card:hover {

View file

@ -19,7 +19,7 @@
>
<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-meta">
<span>{{t('series-count', {num: item.seriesCount | compactNumber})}}</span>

View file

@ -1,6 +1,6 @@
import {ChangeDetectionStrategy, ChangeDetectorRef, Component, EventEmitter, inject, OnInit} from '@angular/core';
import {CardDetailLayoutComponent} from "../../cards/card-detail-layout/card-detail-layout.component";
import {DecimalPipe} from "@angular/common";
import {DecimalPipe, NgClass} from "@angular/common";
import {
SideNavCompanionBarComponent
} from "../../sidenav/_components/side-nav-companion-bar/side-nav-companion-bar.component";
@ -24,7 +24,8 @@ import {Title} from "@angular/platform-browser";
DecimalPipe,
SideNavCompanionBarComponent,
TranslocoDirective,
CompactNumberPipe
CompactNumberPipe,
NgClass
],
templateUrl: './browse-genres.component.html',
styleUrl: './browse-genres.component.scss',
@ -62,7 +63,8 @@ export class BrowseGenresComponent implements OnInit {
});
}
openFilter(field: FilterField, value: string | number) {
this.filterUtilityService.applyFilter(['all-series'], field, FilterComparison.Equal, `${value}`).subscribe();
openFilter(field: FilterField, genre: BrowseGenre) {
if (genre.seriesCount === 0) return; // We don't yet have an issue page
this.filterUtilityService.applyFilter(['all-series'], field, FilterComparison.Equal, `${genre.id}`).subscribe();
}
}

View file

@ -19,7 +19,7 @@
>
<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-meta">
<span>{{t('series-count', {num: item.seriesCount | compactNumber})}}</span>

View file

@ -1,6 +1,6 @@
import {ChangeDetectionStrategy, ChangeDetectorRef, Component, EventEmitter, inject, OnInit} from '@angular/core';
import {CardDetailLayoutComponent} from "../../cards/card-detail-layout/card-detail-layout.component";
import {DecimalPipe} from "@angular/common";
import {DecimalPipe, NgClass} from "@angular/common";
import {
SideNavCompanionBarComponent
} from "../../sidenav/_components/side-nav-companion-bar/side-nav-companion-bar.component";
@ -25,7 +25,8 @@ import {Title} from "@angular/platform-browser";
DecimalPipe,
SideNavCompanionBarComponent,
TranslocoDirective,
CompactNumberPipe
CompactNumberPipe,
NgClass
],
templateUrl: './browse-tags.component.html',
styleUrl: './browse-tags.component.scss',
@ -61,7 +62,8 @@ export class BrowseTagsComponent implements OnInit {
});
}
openFilter(field: FilterField, value: string | number) {
this.filterUtilityService.applyFilter(['all-series'], field, FilterComparison.Equal, `${value}`).subscribe();
openFilter(field: FilterField, tag: BrowseTag) {
if (tag.seriesCount === 0) return; // We don't yet have an issue page
this.filterUtilityService.applyFilter(['all-series'], field, FilterComparison.Equal, `${tag.id}`).subscribe();
}
}