Kavita+ Overhaul & New Changelog (#3507)
This commit is contained in:
parent
d880c1690c
commit
a5707617f2
249 changed files with 14775 additions and 2300 deletions
|
|
@ -731,18 +731,6 @@
|
|||
<div [ngbNavOutlet]="nav" class="tab-content {{utilityService.getActiveBreakpoint() === Breakpoint.Mobile ? 'mt-3' : 'ms-4 flex-fill'}}"></div>
|
||||
</div>
|
||||
<div class="modal-footer">
|
||||
@if (accountService.hasValidLicense$ | async) {
|
||||
<button type="button" class="btn btn-light" (click)="forceScan()" position="above"
|
||||
[ngbTooltip]="t('force-refresh-tooltip')">
|
||||
@if (forceIsLoading) {
|
||||
<div class="spinner-border spinner-border-sm text-primary" role="status">
|
||||
<span class="visually-hidden">loading...</span>
|
||||
</div>
|
||||
} @else {
|
||||
{{t('force-refresh')}}
|
||||
}
|
||||
</button>
|
||||
}
|
||||
<button type="button" class="btn btn-secondary" (click)="close()">{{t('close')}}</button>
|
||||
<button type="submit" class="btn btn-primary" [disabled]="!editSeriesForm.valid" (click)="save()">{{t('save')}}</button>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -62,6 +62,7 @@ import {ActionService} from "../../../_services/action.service";
|
|||
import {DownloadService} from "../../../shared/_services/download.service";
|
||||
import {SettingItemComponent} from "../../../settings/_components/setting-item/setting-item.component";
|
||||
import {ReadTimePipe} from "../../../_pipes/read-time.pipe";
|
||||
import {LicenseService} from "../../../_services/license.service";
|
||||
|
||||
enum TabID {
|
||||
General = 0,
|
||||
|
|
@ -134,6 +135,7 @@ export class EditSeriesModalComponent implements OnInit {
|
|||
private readonly metadataService = inject(MetadataService);
|
||||
private readonly cdRef = inject(ChangeDetectorRef);
|
||||
public readonly accountService = inject(AccountService);
|
||||
protected readonly licenseService = inject(LicenseService);
|
||||
private readonly destroyRef = inject(DestroyRef);
|
||||
private readonly toastr = inject(ToastrService);
|
||||
private readonly actionFactoryService = inject(ActionFactoryService);
|
||||
|
|
|
|||
|
|
@ -45,7 +45,7 @@
|
|||
|
||||
<div class="card-overlay"></div>
|
||||
|
||||
@if (showReadButton) {
|
||||
@if (showReadButton && !bulkSelectionService.hasSelections()) {
|
||||
<div class="series overlay-information">
|
||||
<div class="overlay-information--centered">
|
||||
<span class="card-title library mx-auto" style="width: auto;">
|
||||
|
|
|
|||
|
|
@ -44,16 +44,19 @@
|
|||
}
|
||||
|
||||
<div class="card-overlay"></div>
|
||||
<div class="chapter overlay-information">
|
||||
<div class="overlay-information--centered">
|
||||
<span class="card-title library mx-auto" style="width: auto;" (click)="read($event)">
|
||||
<!-- Card Image -->
|
||||
<div>
|
||||
<i class="fa-solid fa-book" aria-hidden="true"></i>
|
||||
</div>
|
||||
</span>
|
||||
|
||||
@if (!bulkSelectionService.hasSelections()) {
|
||||
<div class="chapter overlay-information">
|
||||
<div class="overlay-information--centered">
|
||||
<span class="card-title library mx-auto" style="width: auto;" (click)="read($event)">
|
||||
<!-- Card Image -->
|
||||
<div>
|
||||
<i class="fa-solid fa-book" aria-hidden="true"></i>
|
||||
</div>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
}
|
||||
</div>
|
||||
|
||||
@if (chapter.isSpecial) {
|
||||
|
|
|
|||
|
|
@ -1,4 +1,55 @@
|
|||
<ng-container *transloco="let t; read: 'edit-chapter-progress'">
|
||||
<!-- <ngx-datatable-->
|
||||
<!-- class="bootstrap"-->
|
||||
<!-- [rows]="items.controls"-->
|
||||
<!-- [columnMode]="ColumnMode.flex"-->
|
||||
<!-- rowHeight="auto"-->
|
||||
<!-- [footerHeight]="50"-->
|
||||
<!-- [limit]="15"-->
|
||||
<!-- >-->
|
||||
|
||||
<!-- <ngx-datatable-column name="" [sortable]="false" [draggable]="false" [resizeable]="false" [flexGrow]="3">-->
|
||||
<!-- <ng-template let-column="column" ngx-datatable-header-template>-->
|
||||
<!-- {{t('user-header')}}-->
|
||||
<!-- </ng-template>-->
|
||||
<!-- <ng-template let-item="row" let-idx="index" ngx-datatable-cell-template>-->
|
||||
<!-- {{progressEvents[idx].userName | sentenceCase}}-->
|
||||
<!-- </ng-template>-->
|
||||
<!-- </ngx-datatable-column>-->
|
||||
|
||||
|
||||
<!-- <ngx-datatable-column name="" [sortable]="false" [draggable]="false" [resizeable]="false" [flexGrow]="1">-->
|
||||
<!-- <ng-template let-column="column" ngx-datatable-header-template>-->
|
||||
<!-- {{t('page-read-header')}}-->
|
||||
<!-- </ng-template>-->
|
||||
<!-- <ng-template let-item="row" let-idx="index" ngx-datatable-cell-template>-->
|
||||
<!-- @if(editMode[idx]) {-->
|
||||
<!-- <input type="number" formControlName="pagesRead" class="form-control" inputmode="numeric"/>-->
|
||||
<!-- } @else {-->
|
||||
<!-- {{progressEvents[idx].pagesRead}}-->
|
||||
<!-- }-->
|
||||
<!-- </ng-template>-->
|
||||
<!-- </ngx-datatable-column>-->
|
||||
|
||||
<!-- <ngx-datatable-column name="" [sortable]="false" [draggable]="false" [resizeable]="false" [flexGrow]="1">-->
|
||||
<!-- <ng-template let-column="column" ngx-datatable-header-template>-->
|
||||
<!-- {{t('date-created-header')}}-->
|
||||
<!-- </ng-template>-->
|
||||
<!-- <ng-template let-item="row" let-idx="index" ngx-datatable-cell-template>-->
|
||||
<!-- {{progressEvents[idx].createdUtc | utcToLocalTime | date:'shortDate' | defaultDate}}-->
|
||||
<!-- </ng-template>-->
|
||||
<!-- </ngx-datatable-column>-->
|
||||
|
||||
<!-- <ngx-datatable-column name="" [sortable]="false" [draggable]="false" [resizeable]="false" [flexGrow]="1">-->
|
||||
<!-- <ng-template let-column="column" ngx-datatable-header-template>-->
|
||||
<!-- {{t('date-updated-header')}}-->
|
||||
<!-- </ng-template>-->
|
||||
<!-- <ng-template let-item="row" let-idx="index" ngx-datatable-cell-template>-->
|
||||
<!-- {{progressEvents[idx].lastModifiedUtc | utcToLocalTime | date:'shortDate' | defaultDate}}-->
|
||||
<!-- </ng-template>-->
|
||||
<!-- </ngx-datatable-column>-->
|
||||
<!-- </ngx-datatable>-->
|
||||
|
||||
<table class="table table-striped" [formGroup]="formGroup">
|
||||
<thead>
|
||||
<tr>
|
||||
|
|
|
|||
|
|
@ -9,6 +9,7 @@ import {TranslocoDirective} from "@jsverse/transloco";
|
|||
import {FormArray, FormBuilder, FormGroup, ReactiveFormsModule, Validators} from "@angular/forms";
|
||||
import {SentenceCasePipe} from "../../_pipes/sentence-case.pipe";
|
||||
import {DefaultDatePipe} from "../../_pipes/default-date.pipe";
|
||||
import {ColumnMode, NgxDatatableModule} from "@siemens/ngx-datatable";
|
||||
|
||||
@Component({
|
||||
selector: 'app-edit-chapter-progress',
|
||||
|
|
@ -23,7 +24,8 @@ import {DefaultDatePipe} from "../../_pipes/default-date.pipe";
|
|||
ReactiveFormsModule,
|
||||
SentenceCasePipe,
|
||||
DatePipe,
|
||||
DefaultDatePipe
|
||||
DefaultDatePipe,
|
||||
NgxDatatableModule
|
||||
],
|
||||
templateUrl: './edit-chapter-progress.component.html',
|
||||
styleUrl: './edit-chapter-progress.component.scss',
|
||||
|
|
@ -82,4 +84,5 @@ export class EditChapterProgressComponent implements OnInit {
|
|||
this.cdRef.markForCheck();
|
||||
}
|
||||
|
||||
protected readonly ColumnMode = ColumnMode;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -44,16 +44,19 @@
|
|||
}
|
||||
|
||||
<div class="card-overlay"></div>
|
||||
<div class="series overlay-information">
|
||||
<div class="overlay-information--centered">
|
||||
@if (!bulkSelectionService.hasSelections()) {
|
||||
<div class="series overlay-information">
|
||||
<div class="overlay-information--centered">
|
||||
<span class="card-title library mx-auto" style="width: auto;" (click)="read($event)">
|
||||
<!-- Card Image -->
|
||||
<div>
|
||||
<i class="fa-solid fa-book" aria-hidden="true"></i>
|
||||
</div>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
}
|
||||
|
||||
</div>
|
||||
<div class="card-body meta-title" [ngbTooltip]="series.localizedName.length > 34 ? series.localizedName : null">
|
||||
<div class="card-content d-flex justify-content-center align-items-center text-center" style="width:100%;min-height:58px;">
|
||||
|
|
|
|||
|
|
@ -38,16 +38,18 @@
|
|||
}
|
||||
<div class="card-overlay"></div>
|
||||
|
||||
<div class="volume overlay-information" (click)="read($event)">
|
||||
<div class="overlay-information--centered">
|
||||
<span class="card-title library mx-auto" style="width: auto;">
|
||||
<!-- Card Image -->
|
||||
<div>
|
||||
<i class="fa-solid fa-book" aria-hidden="true"></i>
|
||||
</div>
|
||||
</span>
|
||||
@if (!bulkSelectionService.hasSelections()) {
|
||||
<div class="volume overlay-information" (click)="read($event)">
|
||||
<div class="overlay-information--centered">
|
||||
<span class="card-title library mx-auto" style="width: auto;">
|
||||
<!-- Card Image -->
|
||||
<div>
|
||||
<i class="fa-solid fa-book" aria-hidden="true"></i>
|
||||
</div>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
}
|
||||
</div>
|
||||
|
||||
@if (libraryType === LibraryType.LightNovel || libraryType === LibraryType.Book) {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue