Fixed reading list delete being broken.
This commit is contained in:
parent
52f6e235d0
commit
ff8cba71f5
4 changed files with 25 additions and 12 deletions
|
|
@ -229,14 +229,17 @@
|
|||
</div>
|
||||
}
|
||||
|
||||
<app-draggable-ordered-list [items]="items" (orderUpdated)="orderUpdated($event)" [accessibilityMode]="accessibilityMode"
|
||||
[disabled]="!(formGroup.get('edit')?.value || false)" [showRemoveButton]="formGroup.get('edit')?.value || false">
|
||||
<app-draggable-ordered-list [items]="items" [accessibilityMode]="accessibilityMode"
|
||||
[disabled]="!(formGroup.get('edit')?.value || false)"
|
||||
(orderUpdated)="orderUpdated($event)"
|
||||
(itemRemove)="removeItem($event)"
|
||||
[showRemoveButton]="formGroup.get('edit')?.value || false">
|
||||
|
||||
<ng-template #draggableItem let-item let-position="idx">
|
||||
<app-reading-list-item [ngClass]="{'content-container': items.length < 100, 'non-virtualized-container': items.length >= 100}" [item]="item"
|
||||
[position]="position" [libraryTypes]="libraryTypes"
|
||||
[promoted]="item.promoted" (read)="readChapter($event)"
|
||||
(remove)="itemRemoved($event, position)"
|
||||
(remove)="removeItem($event)"
|
||||
[showRemove]="false"/>
|
||||
</ng-template>
|
||||
</app-draggable-ordered-list>
|
||||
|
|
|
|||
|
|
@ -25,7 +25,8 @@ import {ImageService} from 'src/app/_services/image.service';
|
|||
import {ReadingListService} from 'src/app/_services/reading-list.service';
|
||||
import {
|
||||
DraggableOrderedListComponent,
|
||||
IndexUpdateEvent
|
||||
IndexUpdateEvent,
|
||||
ItemRemoveEvent
|
||||
} from '../draggable-ordered-list/draggable-ordered-list.component';
|
||||
import {forkJoin, startWith, tap} from 'rxjs';
|
||||
import {ReaderService} from 'src/app/_services/reader.service';
|
||||
|
|
@ -321,6 +322,7 @@ export class ReadingListDetailComponent implements OnInit {
|
|||
}
|
||||
|
||||
editReadingList(readingList: ReadingList) {
|
||||
if (!readingList) return;
|
||||
this.actionService.editReadingList(readingList, (readingList: ReadingList) => {
|
||||
// Reload information around list
|
||||
this.readingListService.getReadingList(this.listId).subscribe(rl => {
|
||||
|
|
@ -347,10 +349,10 @@ export class ReadingListDetailComponent implements OnInit {
|
|||
});
|
||||
}
|
||||
|
||||
itemRemoved(item: ReadingListItem, position: number) {
|
||||
removeItem(removeEvent: ItemRemoveEvent) {
|
||||
if (!this.readingList) return;
|
||||
this.readingListService.deleteItem(this.readingList.id, item.id).subscribe(() => {
|
||||
this.items.splice(position, 1);
|
||||
this.readingListService.deleteItem(this.readingList.id, removeEvent.item.id).subscribe(() => {
|
||||
this.items.splice(removeEvent.position, 1);
|
||||
this.items = [...this.items];
|
||||
this.cdRef.markForCheck();
|
||||
this.toastr.success(translate('toasts.item-removed'));
|
||||
|
|
|
|||
|
|
@ -18,7 +18,7 @@
|
|||
{{item.title}}
|
||||
<div class="actions float-end">
|
||||
@if (showRemove) {
|
||||
<button class="btn btn-danger" (click)="remove.emit(item)">
|
||||
<button class="btn btn-danger" (click)="removeItem(item)">
|
||||
<span>
|
||||
<i class="fa fa-trash me-1" aria-hidden="true"></i>
|
||||
</span>
|
||||
|
|
|
|||
|
|
@ -9,6 +9,7 @@ import {ImageComponent} from '../../../shared/image/image.component';
|
|||
import {TranslocoDirective} from "@jsverse/transloco";
|
||||
import {SeriesFormatComponent} from "../../../shared/series-format/series-format.component";
|
||||
import {ReadMoreComponent} from "../../../shared/read-more/read-more.component";
|
||||
import {ItemRemoveEvent} from "../draggable-ordered-list/draggable-ordered-list.component";
|
||||
|
||||
@Component({
|
||||
selector: 'app-reading-list-item',
|
||||
|
|
@ -33,9 +34,16 @@ export class ReadingListItemComponent {
|
|||
@Input() promoted: boolean = false;
|
||||
|
||||
@Output() read: EventEmitter<ReadingListItem> = new EventEmitter();
|
||||
@Output() remove: EventEmitter<ReadingListItem> = new EventEmitter();
|
||||
@Output() remove: EventEmitter<ItemRemoveEvent> = new EventEmitter();
|
||||
|
||||
readChapter(item: ReadingListItem) {
|
||||
this.read.emit(item);
|
||||
}
|
||||
|
||||
removeItem(item: ReadingListItem) {
|
||||
this.remove.emit({
|
||||
item: item,
|
||||
position: item.order
|
||||
});
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue