Commit Graph

286 Commits

Author SHA1 Message Date
alam00000
dd36fdde7a fix: ensure correct input type for SHA-256 hashing in tests 2026-03-27 13:47:08 +05:30
alam00000
86c8086979 refactor: replace PDFDocument.load with loadPdfDocument utility in TimestampNode 2026-03-27 13:27:58 +05:30
Alam
a90f74c719 Merge pull request #576 from InstaZDLL/feat/timestamp-pdf
feat: add Timestamp PDF tool with RFC 3161 support
2026-03-27 11:03:57 +05:30
alam00000
bd44108296 feat: add PDF password prompt and centralized pdf-lib loader with auto-repair 2026-03-26 14:42:48 +05:30
alam00000
9278774b8a - Refactor PDF loading across workflow nodes to use loadPdfDocument utility
- Replaced direct calls to PDFDocument.load with loadPdfDocument in multiple nodes to standardize PDF loading process.
2026-03-26 13:40:21 +05:30
alam00000
9d362b1cf8 feat: enable loading of encrypted PDFs by adding ignoreEncryption option 2026-03-26 12:55:50 +05:30
alam00000
1dbf907eeb Add password prompt functionality and tests while uploading encrypted PDF 2026-03-26 12:11:12 +05:30
alam00000
f88f872162 feat: implement filename deduplication utility and integrate across multiple file conversion modules 2026-03-24 20:36:56 +05:30
alam00000
6e227a3aa4 feat: add tests for comic info generation functions 2026-03-24 14:58:36 +05:30
alam00000
e3216dddc5 feat: add PDF to CBZ conversion tool with metadata support
- Updated main.ts to include 'PDF to CBZ' in the tools list.
- Added new types for CBZ options and comic metadata in pdf-to-cbz-type.ts.
- Implemented comic-info utility functions for generating ComicInfo.xml and metadata OPF files.
- Created pdf-to-cbz.html page with UI for PDF to CBZ conversion, including options for image format, quality, and metadata.
- Updated vite.config.ts to route to the new PDF to CBZ page.
2026-03-24 14:55:51 +05:30
alam00000
3ca19af354 feat: add TIFF conversion options and integrate wasm-vips for image processing
- Updated README.md to include new dependencies: wasm-vips, pixelmatch, diff, and microdiff.
- Added wasm-vips to package.json and package-lock.json for advanced TIFF encoding.
- Enhanced localization files with new options for DPI, compression, color mode, and multi-page TIFF saving.
- Implemented UI changes in pdf-to-tiff.html to allow users to select DPI, compression type, color mode, and multi-page options.
- Refactored pdf-to-tiff-page.ts to utilize wasm-vips for TIFF encoding, replacing previous UTIF implementation.
- Introduced TiffOptions interface in pdf-to-tiff-type.ts for better type management.
- Updated Vite configuration to exclude wasm-vips from dependency optimization.
2026-03-24 13:24:50 +05:30
Alam
b732ee7925 Merge pull request #565 from Skillkiller/translate-pdf-to-image
Implement missing i18n translations for PDF-to-Image modules
2026-03-24 11:55:11 +05:30
Sebastian Espei
6d19c5f2e4 Revert formatting churn in signing pages 2026-03-24 01:56:53 +01:00
Lukas
252ebf962d feat: add page up/down hotkeys for quick bookmark input 2026-03-22 13:05:48 +01:00
alam00000
37b5956bd5 feat: add option to opt out of embedding full fonts in OCR settings 2026-03-21 16:39:51 +05:30
alam00000
8bf52b9ef1 feat: implement annotation flattening functionality and add tests 2026-03-17 22:46:13 +05:30
alam00000
6c0e9c7232 feat: enhance PDF comparison with overlay options and filters 2026-03-16 21:47:35 +05:30
alam00000
477839f106 feat: add "Add Page Labels" tool to the application
- Introduced a new tool for adding page labels to PDF documents, allowing users to apply Roman numerals, prefixes, and custom numbering ranges.
- Created a new HTML page for the tool with a user-friendly interface for file upload and label rule configuration.
- Implemented logic for handling file uploads, processing PDF files, and applying page labels based on user-defined rules.
- Added necessary types and utility functions for managing page label styles and normalization of start values.
- Updated main application configuration to include the new tool in the navigation.
- Added tests for page label utilities to ensure correct functionality.
2026-03-16 14:34:27 +05:30
InstalZDLL
0a718dac8f fix: address CodeRabbit review feedback on tests
- digital-sign-pdf.test.ts: stub VITE_CORS_PROXY_URL and
  VITE_CORS_PROXY_SECRET env vars for test isolation
- timestamp-node.test.ts: replace regex-only test with actual data()
  method tests covering timestampPdf call, output filename suffix,
  and error wrapping with TSA context
2026-03-15 15:58:43 +01:00
InstalZDLL
969b74dfb5 test: add timestampPdf signature tests with sample.pdf
Test the timestampPdf() function using the real sample.pdf (SHA256 verified).
PdfSigner is mocked to avoid network calls while validating:
- Correct signdate/TSA URL passed to PdfSigner
- PDF bytes forwarded to signer.sign()
- Uint8Array returned from signed result
- Error propagation from TSA failures
- Multiple TSA URL support
- Original PDF bytes not mutated
2026-03-15 15:44:55 +01:00
InstalZDLL
1569b66d5c test: add unit tests for timestamp PDF feature
Add 31 tests across 3 test files covering:
- TSA preset configuration (uniqueness, valid URLs, known providers)
- Timestamp PDF page logic (file validation, output naming, UI state, drop zone)
- TimestampNode workflow node (category, icon, description, presets)
2026-03-15 15:34:14 +01:00
alam00000
31f43b557f feat: add transparent background option for form fields 2026-03-15 19:52:48 +05:30
Alam
b107acb00c Merge pull request #555 from xtotdam/russian_translation
add Russian translation
2026-03-15 19:36:04 +05:30
alam00000
47c1be6df1 refactor pdf decrypt 2026-03-15 14:29:30 +05:30
InstalZDLL
70f0834fc0 fix: address CodeRabbit review feedback
- Handle Headers instance in TSA request detection (not just plain objects)
- Wrap timestampPdf with createCorsAwareFetch for OCSP/cert chain requests
- Pass 'success' type to showAlert on successful timestamp
- Add TSA URL context to timestamp error messages with cause
- Remove redundant Uint8Array wrapping in TimestampNode
2026-03-15 00:46:47 +01:00
InstalZDLL
dfd0ebcfc5 feat: add Timestamp PDF tool with RFC 3161 support
Add document timestamping to the Secure PDF section using RFC 3161
protocol. Users can select from preset TSA servers (DigiCert, Sectigo,
SSL.com, Entrust, FreeTSA) or enter a custom TSA URL. No personal
certificate is required — only a cryptographic hash is sent to the server.

Key changes:
- Timestamp PDF page with TSA server selector, FAQ and SEO structured data
- timestampPdf() function with CORS proxy URL resolution
- TimestampNode for the workflow engine
- Tool entry in Secure PDF category + homepage i18n
- Built-in CORS proxy middleware for dev/preview
- Translations for all 16 languages

Tested with DigiCert, Sectigo and Entrust TSA servers. Timestamps are
verifiable in Adobe Acrobat (ETSI.RFC3161 SubFilter).
2026-03-15 00:30:53 +01:00
xtotdam
cb4db2d762 fix rabbitai bot suggestions 2026-03-14 14:48:49 +03:00
alam00000
77da6d7a7d feat: integrate Tesseract.js with improved language availability and font handling
- Refactored OCR page recognition to utilize a configured Tesseract worker.
- Added functions to manage font URLs and asset filenames based on language.
- Implemented language availability checks and error handling for unsupported languages.
- Enhanced PDF workflow to display available OCR languages and handle user selections.
- Introduced utility functions for resolving Tesseract asset configurations.
- Added tests for OCR functionality, font loading, and Tesseract runtime behavior.
- Updated global types to include environment variables for Tesseract and font configurations.
2026-03-14 15:50:30 +05:30
alam00000
d7e06ce361 feat(i18n): enhance language detection from browser preferences and add tests 2026-03-13 19:20:37 +05:30
alam00000
e117ab93bd fix: form creator bug and added tests 2026-03-12 18:37:35 +05:30
YuF-9468
6b7eeea51a fix(form-creator): improve checkbox/radio resize constraints and cursors 2026-03-12 11:56:35 +08:00
alam00000
272a8cd038 fix: remove false highlights 2026-03-11 15:54:01 +05:30
Sebastian Espei
2ede256de2 Add localization for loading page count in various PDF processing pages 2026-03-10 20:13:13 +01:00
Sebastian Espei
571ce07af6 Add localization for PDF to BMP and PDF to TIFF conversion alerts and loader messages 2026-03-10 19:55:21 +01:00
Sebastian Espei
8d26378611 Add localization for PDF to WebP conversion alerts and loader messages 2026-03-10 19:52:38 +01:00
Sebastian Espei
37d95e249d Add localization for PDF to PNG conversion alerts and loader messages 2026-03-10 19:18:39 +01:00
Sebastian Espei
01c4d3bd7c Add localization for PDF to JPG conversion alerts and loader messages 2026-03-10 19:17:17 +01:00
Sebastian Espei
d5244649a3 Update imports according to the translation guidelines 2026-03-10 18:40:47 +01:00
Sebastian Espei
4f86960265 Add localization for image scale 2026-03-10 18:38:09 +01:00
Sebastian Espei
67e3887165 Add localization for image quality 2026-03-10 18:35:17 +01:00
Sebastian Espei
f1b03d076c Add localization for image quality 2026-03-10 18:31:27 +01:00
Sebastian Espei
667385ee1c Add localization to fileDisplayArea 2026-03-10 18:24:31 +01:00
Sebastian Espei
b479abf6cf Add localization to "download" button 2026-03-10 17:49:03 +01:00
alam00000
5232102ac0 feat: enhance PDF comparison with new change types and zoom functionality
- Added support for 'moved' and 'style-changed' change types in PDF comparison.
- Implemented category filters for changes, allowing users to filter by text, images, headers, annotations, formatting, and background.
- Introduced zoom functionality with buttons for zooming in, out, and resetting to default.
- Updated UI to reflect new change types and categories, including visual indicators for moved and style-changed items.
- Enhanced summary display to include counts for moved and style-changed changes.
- Refactored rendering logic to accommodate zoom levels and improve performance.
- Added tests for new change detection features and category assignments.
2026-03-10 13:51:23 +05:30
alam00000
d2a1450bc0 refactor: remove HTML report export and implement PDF export options in PDF comparison tool
- Deleted the exportCompareHtmlReport function and its related imports.
- Introduced a dropdown menu for exporting comparison results as PDFs with multiple modes (split, alternating, left, right).
- Updated the comparison logic to utilize caching for page models and comparison results.
- Refactored rendering functions to improve code organization and maintainability.
- Enhanced UI elements for better user experience during PDF export.
2026-03-09 23:27:40 +05:30
Sebastian Espei
92d5e40ac3 Add direct image download to pdf-to-bmp 2026-03-09 17:04:28 +01:00
Sebastian Espei
7c09768109 Add direct image download to pdf-to-tiff 2026-03-09 17:04:28 +01:00
Sebastian Espei
3748463d38 Add direct image download to pdf-to-webp 2026-03-09 17:04:28 +01:00
Sebastian Espei
65f99f0646 Add direct image download to pdf-to-png 2026-03-09 17:04:27 +01:00
Sebastian Espei
22ff7f435c Add direct image download to pdf-to-jpg 2026-03-09 17:04:27 +01:00