mirror of
https://github.com/Stirling-Tools/Stirling-PDF.git
synced 2025-06-18 05:25:04 +00:00
70 lines
2.0 KiB
JavaScript
70 lines
2.0 KiB
JavaScript
import { Command } from "./command.js";
|
|
|
|
export class DeletePageCommand extends Command {
|
|
constructor(element, pagesContainer) {
|
|
super();
|
|
|
|
this.element = element;
|
|
this.pagesContainer = pagesContainer;
|
|
|
|
this.filenameInputValue = document.getElementById("filename-input").value;
|
|
|
|
const filenameParagraph = document.getElementById("filename");
|
|
this.filenameParagraphText = filenameParagraph
|
|
? filenameParagraph.innerText
|
|
: "";
|
|
}
|
|
|
|
execute() {
|
|
this.nextSibling = this.element.nextSibling;
|
|
|
|
this.pagesContainer.removeChild(this.element);
|
|
if (this.pagesContainer.childElementCount === 0) {
|
|
const filenameInput = document.getElementById("filename-input");
|
|
const downloadBtn = document.getElementById("export-button");
|
|
|
|
filenameInput.disabled = true;
|
|
filenameInput.value = "";
|
|
|
|
downloadBtn.disabled = true;
|
|
}
|
|
}
|
|
|
|
undo() {
|
|
let node = this.nextSibling;
|
|
if (node) this.pagesContainer.insertBefore(this.element, node);
|
|
else this.pagesContainer.appendChild(this.element);
|
|
|
|
const pageNumberElement = this.element.querySelector(".page-number");
|
|
if (pageNumberElement) {
|
|
this.element.removeChild(pageNumberElement);
|
|
}
|
|
|
|
const filenameInput = document.getElementById("filename-input");
|
|
const downloadBtn = document.getElementById("export-button");
|
|
|
|
filenameInput.disabled = false;
|
|
filenameInput.value = this.filenameInputValue;
|
|
|
|
downloadBtn.disabled = false;
|
|
}
|
|
|
|
redo() {
|
|
const pageNumberElement = this.element.querySelector(".page-number");
|
|
if (pageNumberElement) {
|
|
this.element.removeChild(pageNumberElement);
|
|
}
|
|
|
|
this.pagesContainer.removeChild(this.element);
|
|
if (this.pagesContainer.childElementCount === 0) {
|
|
const filenameInput = document.getElementById("filename-input");
|
|
const downloadBtn = document.getElementById("export-button");
|
|
|
|
filenameInput.disabled = true;
|
|
filenameInput.value = "";
|
|
|
|
downloadBtn.disabled = true;
|
|
}
|
|
}
|
|
}
|