Refactor and enhance type safety across various modules

- Updated function parameters and return types in `page-preview.ts`, `pdf-decrypt.ts`, and `pymupdf-loader.ts` for improved type safety.
- Introduced type definitions for `CpdfInstance`, `PyMuPDFInstance`, and other related types to ensure better type checking.
- Enhanced error handling in `sanitize.ts` by creating a utility function for error messages.
- Removed unnecessary type assertions and improved type inference in `editor.ts`, `serialization.ts`, and `tools.test.ts`.
- Added type definitions for markdown-it plugins to improve compatibility and type safety.
- Enforced stricter TypeScript settings by enabling `noImplicitAny` in `tsconfig.json`.
- Cleaned up test files by refining type assertions and ensuring consistency in type usage.
This commit is contained in:
alam00000
2026-03-31 17:59:49 +05:30
parent a1fc2fc3c6
commit 9d0b68e18c
114 changed files with 2577 additions and 1868 deletions

View File

@@ -9,7 +9,6 @@ import {
renderPagesProgressively,
cleanupLazyRendering,
renderPageToCanvas,
createPlaceholder,
} from '../utils/render-utils';
import { initializeGlobalShortcuts } from '../utils/shortcuts-init.js';
import { repairPdfFile } from './repair-pdf.js';
@@ -841,7 +840,7 @@ function deletePage(index: number) {
async function insertPdfAfter(index: number) {
document.getElementById('insert-pdf-input')?.click();
(window as any).__insertAfterIndex = index;
(window as unknown as Record<string, unknown>).__insertAfterIndex = index;
}
async function handleInsertPdf(e: Event) {
@@ -849,7 +848,8 @@ async function handleInsertPdf(e: Event) {
const file = input.files?.[0];
if (!file) return;
const insertAfterIndex = (window as any).__insertAfterIndex;
const insertAfterIndex = (window as unknown as Record<string, unknown>)
.__insertAfterIndex as number | undefined;
if (insertAfterIndex === undefined) return;
try {
@@ -974,7 +974,7 @@ function addBlankPage() {
rotation: 0,
visualRotation: 0,
canvas,
pdfDoc: null as any,
pdfDoc: null!,
originalPageIndex: -1,
fileName: '', // Blank page has no file
};