feat(favicon,repair-pdf): Add favicon support and implement PDF repair tool

- Add favicon.ico to public directory for browser tab display
- Update favicon references across all HTML pages with proper link tags for SVG, PNG, and ICO formats
- Add Apple touch icon support for iOS devices
- Create new repair-pdf.ts logic module for PDF repair functionality
- Create new repair-pdf-page.ts utility module for page-level repair operations
- Add repair-pdf.html page with UI for PDF repair tool
- Register repair PDF tool in tools configuration and PDF tools registry
- Update UI rendering utilities to support new repair tool
- Improve favicon handling with multiple format fallbacks for cross-browser compatibility
- Standardize favicon paths to use absolute URLs for consistency
- Clean up whitespace and formatting in licensing.html for code consistency
This commit is contained in:
abdullahalam123
2025-12-01 12:44:34 +05:30
parent 05bc0d5a3c
commit c5764e4172
32 changed files with 759 additions and 404 deletions

View File

@@ -44,19 +44,23 @@ export const dom = {
};
export const showLoader = (text = 'Processing...') => {
dom.loaderText.textContent = text;
dom.loaderModal.classList.remove('hidden');
if (dom.loaderText) dom.loaderText.textContent = text;
if (dom.loaderModal) dom.loaderModal.classList.remove('hidden');
};
export const hideLoader = () => dom.loaderModal.classList.add('hidden');
export const hideLoader = () => {
if (dom.loaderModal) dom.loaderModal.classList.add('hidden');
};
export const showAlert = (title: any, message: any) => {
dom.alertTitle.textContent = title;
dom.alertMessage.textContent = message;
dom.alertModal.classList.remove('hidden');
if (dom.alertTitle) dom.alertTitle.textContent = title;
if (dom.alertMessage) dom.alertMessage.textContent = message;
if (dom.alertModal) dom.alertModal.classList.remove('hidden');
};
export const hideAlert = () => dom.alertModal.classList.add('hidden');
export const hideAlert = () => {
if (dom.alertModal) dom.alertModal.classList.add('hidden');
};
export const switchView = (view: any) => {
if (view === 'grid') {
@@ -243,7 +247,7 @@ export const renderPageThumbnails = async (toolId: any, pdfDoc: any) => {
container,
createWrapper,
{
batchSize: 6,
batchSize: 8,
useLazyLoading: true,
lazyLoadMargin: '300px',
onProgress: (current, total) => {