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 committed 2026-03-31 17:59:49 +05:30
1 parent a1fc2fc3c6
commit 9d0b68e18c
114 files changed
+2576 -1867

No files matched your search

+4 -3
View File
@@ -1,4 +1,5 @@
import { WasmProvider } from './wasm-provider';
import type { WindowWithCoherentPdf, CpdfInstance } from '@/types';
let cpdfLoaded = false;
let cpdfLoadPromise: Promise<void> | null = null;
@@ -31,7 +32,7 @@ export async function isCpdfLoaded(): Promise<void> {
}
cpdfLoadPromise = new Promise((resolve, reject) => {
if (typeof (window as any).coherentpdf !== 'undefined') {
if (typeof (window as WindowWithCoherentPdf).coherentpdf !== 'undefined') {
cpdfLoaded = true;
resolve();
return;
@@ -53,7 +54,7 @@ export async function isCpdfLoaded(): Promise<void> {
return cpdfLoadPromise;
}
export async function getCpdf(): Promise<any> {
export async function getCpdf(): Promise<CpdfInstance> {
await isCpdfLoaded();
return (window as any).coherentpdf;
return (window as WindowWithCoherentPdf).coherentpdf as CpdfInstance;
}