diff --git a/frontend/src/data/toolRegistry.tsx b/frontend/src/data/toolRegistry.tsx index b24fd89bc..738936b1a 100644 --- a/frontend/src/data/toolRegistry.tsx +++ b/frontend/src/data/toolRegistry.tsx @@ -18,66 +18,509 @@ export type ToolRegistry = { }; export const baseToolRegistry: ToolRegistry = { - "add-attachments": { icon: attachment, name: "home.attachments.title", component: null, view: "format", description: "home.attachments.desc", category: "Standard Tools", subcategory: "Page Formatting" }, - "add-image": { icon: image, name: "home.addImage.title", component: null, view: "format", description: "home.addImage.desc", category: "Advanced Tools", subcategory: "Advanced Formatting" }, - "add-page-numbers": { icon: 123, name: "home.add-page-numbers.title", component: null, view: "format", description: "home.add-page-numbers.desc", category: "Standard Tools", subcategory: "Page Formatting" }, - "add-password": { icon: password, name: "home.addPassword.title", component: null, view: "security", description: "home.addPassword.desc", category: "Standard Tools", subcategory: "Document Security" }, - "add-stamp": { icon: approval, name: "home.AddStampRequest.title", component: null, view: "format", description: "home.AddStampRequest.desc", category: "Standard Tools", subcategory: "Document Security" }, - "add-watermark": { icon: branding_watermark, name: "home.watermark.title", component: null, view: "format", description: "home.watermark.desc", category: "Standard Tools", subcategory: "Document Security" }, - "adjust-colors-contrast": { icon: palette, name: "home.adjust-contrast.title", component: null, view: "format", description: "home.adjust-contrast.desc", category: "Advanced Tools", subcategory: "Advanced Formatting" }, - "adjust-page-size-scale": { icon: crop_free, name: "home.scalePages.title", component: null, view: "format", description: "home.scalePages.desc", category: "Standard Tools", subcategory: "Page Formatting" }, - "auto-rename-pdf-file": { icon: match_word, name: "home.auto-rename.title", component: null, view: "format", description: "home.auto-rename.desc", category: "Advanced Tools", subcategory: "Automation" }, - "auto-split-by-size-count": { icon: content_cut, name: "home.autoSizeSplitPDF.title", component: null, view: "format", description: "home.autoSizeSplitPDF.desc", category: "Advanced Tools", subcategory: "Automation" }, - "auto-split-pages": { icon: split_scene_right, name: "home.autoSplitPDF.title", component: null, view: "format", description: "home.autoSplitPDF.desc", category: "Advanced Tools", subcategory: "Automation" }, - "automate": { icon: automation, name: "home.automate.title", component: null, view: "format", description: "home.automate.desc", category: "Advanced Tools", subcategory: "Automation" }, - "certSign": { icon: workspace_premium, name: "home.certSign.title", component: null, view: "sign", description: "home.certSign.desc", category: "Standard Tools", subcategory: "Signing" }, - "change-metadata": { icon: assignment, name: "home.changeMetadata.title", component: null, view: "format", description: "home.changeMetadata.desc", category: "Standard Tools", subcategory: "Document Review" }, - "change-permissions": { icon: admin_panel_settings, name: "home.permissions.title", component: null, view: "security", description: "home.permissions.desc", category: "Standard Tools", subcategory: "Document Review" }, - "compare": { icon: compare, name: "home.compare.title", component: null, view: "format", description: "home.compare.desc", category: "Recommended Tools", subcategory: null }, - "compressPdfs": { icon: zoom_in_map, name: "home.compressPdfs.title", component: CompressPdfPanel, view: "compress", description: "home.compressPdfs.desc", category: "Recommended Tools", subcategory: null }, - "convert": { icon: sync_alt, name: "home.fileToPDF.title", component: null, view: "convert", description: "home.fileToPDF.desc", category: "Recommended Tools", subcategory: null }, - "cropPdf": { icon: crop, name: "home.crop.title", component: null, view: "format", description: "home.crop.desc", category: "Standard Tools", subcategory: "Page Formatting" }, - "detect-split-scanned-photos": { icon: scanner, name: "home.ScannerImageSplit.title", component: null, view: "format", description: "home.ScannerImageSplit.desc", category: "Advanced Tools", subcategory: "Advanced Formatting" }, - "edit-table-of-contents": { icon: bookmark_add, name: "home.editTableOfContents.title", component: null, view: "format", description: "home.editTableOfContents.desc", category: "Advanced Tools", subcategory: "Advanced Formatting" }, - "extract-images": { icon: filter, name: "home.extractImages.title", component: null, view: "extract", description: "home.extractImages.desc", category: "Standard Tools", subcategory: "Extraction" }, - "extract-pages": { icon: upload, name: "home.extractPage.title", component: null, view: "extract", description: "home.extractPage.desc", category: "Standard Tools", subcategory: "Extraction" }, - "flatten": { icon: layers_clear, name: "home.flatten.title", component: null, view: "format", description: "home.flatten.desc", category: "Standard Tools", subcategory: "Document Security" }, - "get-all-info-on-pdf": { icon: fact_check, name: "home.getPdfInfo.title", component: null, view: "extract", description: "home.getPdfInfo.desc", category: "Standard Tools", subcategory: "Verification" }, - "manage-certificates": { icon: license, name: "home.manageCertificates.title", component: null, view: "security", description: "home.manageCertificates.desc", category: "Standard Tools", subcategory: "Document Security" }, - "mergePdfs": { icon: library_add, name: "home.merge.title", component: MergePdfPanel, view: "merge", description: "home.merge.desc", category: "Recommended Tools", subcategory: null }, - "multi-page-layout": { icon: dashboard, name: "home.pageLayout.title", component: null, view: "format", description: "home.pageLayout.desc", category: "Standard Tools", subcategory: "Page Formatting" }, - "multi-tool": { icon: dashboard_customize, name: "home.multiTool.title", component: null, view: "pageEditor", description: "home.multiTool.desc", category: "Recommended Tools", subcategory: null }, - "ocr": { icon: quick_reference_all, name: "home.ocr.title", component: null, view: "convert", description: "home.ocr.desc", category: "Recommended Tools", subcategory: null }, - "overlay-pdfs": { icon: layers, name: "home.overlay-pdfs.title", component: null, view: "format", description: "home.overlay-pdfs.desc", category: "Advanced Tools", subcategory: "Advanced Formatting" }, - "read": { icon: article, name: "home.read.title", component: null, view: "view", description: "home.read.desc", category: "Standard Tools", subcategory: "Document Review" }, - "redact": { icon: visibility_off, name: "home.redact.title", component: null, view: "redact", description: "home.redact.desc", category: "Recommended Tools", subcategory: null }, - "remove": { icon: delete, name: "home.removePages.title", component: null, view: "remove", description: "home.removePages.desc", category: "Standard Tools", subcategory: "Removal" }, - "remove-annotations": { icon: thread_unread, name: "home.removeAnnotations.title", component: null, view: "remove", description: "home.removeAnnotations.desc", category: "Standard Tools", subcategory: "Removal" }, - "remove-blank-pages": { icon: scan_delete, name: "home.removeBlanks.title", component: null, view: "remove", description: "home.removeBlanks.desc", category: "Standard Tools", subcategory: "Removal" }, - "remove-certificate-sign": { icon: remove_moderator, name: "home.removeCertSign.title", component: null, view: "security", description: "home.removeCertSign.desc", category: "Standard Tools", subcategory: "Removal" }, - "remove-image": { icon: remove_selection, name: "home.removeImagePdf.title", component: null, view: "format", description: "home.removeImagePdf.desc", category: "Standard Tools", subcategory: "Removal" }, - "remove-password": { icon: lock_open_right, name: "home.removePassword.title", component: null, view: "security", description: "home.removePassword.desc", category: "Standard Tools", subcategory: "Removal" }, - "repair": { icon: build, name: "home.repair.title", component: null, view: "format", description: "home.repair.desc", category: "Advanced Tools", subcategory: "Advanced Formatting" }, - "replace-and-invert-color": { icon: format_color_fill, name: "home.replaceColorPdf.title", component: null, view: "format", description: "home.replaceColorPdf.desc", category: "Advanced Tools", subcategory: "Advanced Formatting" }, - "reorganize-pages": { icon: move_down, name: "home.reorganizePages.title", component: null, view: "pageEditor", description: "home.reorganizePages.desc", category: "Standard Tools", subcategory: "Page Formatting" }, - "rotate": { icon: rotate_right, name: "home.rotate.title", component: null, view: "format", description: "home.rotate.desc", category: "Standard Tools", subcategory: "Page Formatting" }, - "sanitize": { icon: sanitizer, name: "home.sanitizePdf.title", component: null, view: "security", description: "home.sanitizePdf.desc", category: "Standard Tools", subcategory: "Document Security" }, - "scanner-effect": { icon: scanner, name: "home.fakeScan.title", component: null, view: "format", description: "home.fakeScan.desc", category: "Advanced Tools", subcategory: "Advanced Formatting" }, - "show-javascript": { icon: javascript, name: "home.showJS.title", component: null, view: "extract", description: "home.showJS.desc", category: "Advanced Tools", subcategory: "Developer Tools" }, - "sign": { icon: signature, name: "home.sign.title", component: null, view: "sign", description: "home.sign.desc", category: "Standard Tools", subcategory: "Signing" }, - "single-large-page": { icon: looks_one, name: "home.PdfToSinglePage.title", component: null, view: "format", description: "home.PdfToSinglePage.desc", category: "Standard Tools", subcategory: "Page Formatting" }, - "split": { icon: content_cut, name: "home.split.title", component: null, view: "format", description: "home.split.desc", category: "Standard Tools", subcategory: "Page Formatting" }, - "split-by-chapters": { icon: collections_bookmark, name: "home.splitPdfByChapters.title", component: null, view: "format", description: "home.splitPdfByChapters.desc", category: "Advanced Tools", subcategory: "Advanced Formatting" }, - "split-by-sections": { icon: grid_on, name: "home.split-by-sections.title", component: null, view: "format", description: "home.split-by-sections.desc", category: "Advanced Tools", subcategory: "Advanced Formatting" }, - "splitPdf": { icon: content_cut, name: "home.split.title", component: SplitPdfPanel, view: "split", description: "home.split.desc", category: "Standard Tools", subcategory: "Page Formatting" }, - "unlock-pdf-forms": { icon: preview_off, name: "home.unlockPDFForms.title", component: null, view: "security", description: "home.unlockPDFForms.desc", category: "Standard Tools", subcategory: "Document Security" }, - "validate-pdf-signature": { icon: verified, name: "home.validateSignature.title", component: null, view: "security", description: "home.validateSignature.desc", category: "Standard Tools", subcategory: "Verification" }, - "view-pdf": { icon: article, name: "home.viewPdf.title", component: null, view: "view", description: "home.viewPdf.desc", category: "Recommended Tools", subcategory: null + "add-attachments": { + icon: attachment, + name: "home.attachments.title", + component: null, + view: "format", + description: "home.attachments.desc", + category: "Standard Tools", + subcategory: "Page Formatting", + }, + "add-image": { + icon: image, + name: "home.addImage.title", + component: null, + view: "format", + description: "home.addImage.desc", + category: "Advanced Tools", + subcategory: "Advanced Formatting" + }, + "add-page-numbers": { + icon: 123, + name: "home.add-page-numbers.title", + component: null, + view: "format", + description: "home.add-page-numbers.desc", + category: "Standard Tools", + subcategory: "Page Formatting" + }, + "add-password": { + icon: password, + name: "home.addPassword.title", + component: null, + view: "security", + description: "home.addPassword.desc", + category: "Standard Tools", + subcategory: "Document Security" + }, + "add-stamp": { + icon: approval, + name: "home.AddStampRequest.title", + component: null, + view: "format", + description: "home.AddStampRequest.desc", + category: "Standard Tools", + subcategory: "Document Security" + }, + "add-watermark": { + icon: branding_watermark, + name: "home.watermark.title", + component: null, + view: "format", + description: "home.watermark.desc", + category: "Standard Tools", + subcategory: "Document Security" + }, + "adjust-colors-contrast": { + icon: palette, + name: "home.adjust-contrast.title", + component: null, + view: "format", + description: "home.adjust-contrast.desc", + category: "Advanced Tools", + subcategory: "Advanced Formatting" + }, + "adjust-page-size-scale": { + icon: crop_free, + name: "home.scalePages.title", + component: null, + view: "format", + description: "home.scalePages.desc", + category: "Standard Tools", + subcategory: "Page Formatting" + }, + "auto-rename-pdf-file": { + icon: match_word, + name: "home.auto-rename.title", + component: null, + view: "format", + description: "home.auto-rename.desc", + category: "Advanced Tools", + subcategory: "Automation" + }, + "auto-split-by-size-count": { + icon: content_cut, + name: "home.autoSizeSplitPDF.title", + component: null, + view: "format", + description: "home.autoSizeSplitPDF.desc", + category: "Advanced Tools", + subcategory: "Automation" + }, + "auto-split-pages": { + icon: split_scene_right, + name: "home.autoSplitPDF.title", + component: null, + view: "format", + description: "home.autoSplitPDF.desc", + category: "Advanced Tools", + subcategory: "Automation" + }, + "automate": { + icon: automation, + name: "home.automate.title", + component: null, + view: "format", + description: "home.automate.desc", + category: "Advanced Tools", + subcategory: "Automation" + }, + "certSign": { + icon: workspace_premium, + name: "home.certSign.title", + component: null, + view: "sign", + description: "home.certSign.desc", + category: "Standard Tools", + subcategory: "Signing" + }, + "change-metadata": { + icon: assignment, + name: "home.changeMetadata.title", + component: null, + view: "format", + description: "home.changeMetadata.desc", + category: "Standard Tools", + subcategory: "Document Review" + }, + "change-permissions": { + icon: admin_panel_settings, + name: "home.permissions.title", + component: null, + view: "security", + description: "home.permissions.desc", + category: "Standard Tools", + subcategory: "Document Review" + }, + "compare": { + icon: compare, + name: "home.compare.title", + component: null, + view: "format", + description: "home.compare.desc", + category: "Recommended Tools", + subcategory: null + }, + "compressPdfs": { + icon: zoom_in_map, + name: "home.compressPdfs.title", + component: CompressPdfPanel, + view: "compress", + description: "home.compressPdfs.desc", + category: "Recommended Tools", + subcategory: null + }, + "convert": { + icon: sync_alt, + name: "home.fileToPDF.title", + component: null, + view: "convert", + description: "home.fileToPDF.desc", + category: "Recommended Tools", + subcategory: null + }, + "cropPdf": { + icon: crop, + name: "home.crop.title", + component: null, + view: "format", + description: "home.crop.desc", + category: "Standard Tools", + subcategory: "Page Formatting" + }, + "detect-split-scanned-photos": { + icon: scanner, + name: "home.ScannerImageSplit.title", + component: null, + view: "format", + description: "home.ScannerImageSplit.desc", + category: "Advanced Tools", + subcategory: "Advanced Formatting" + }, + "edit-table-of-contents": { + icon: bookmark_add, + name: "home.editTableOfContents.title", + component: null, + view: "format", + description: "home.editTableOfContents.desc", + category: "Advanced Tools", + subcategory: "Advanced Formatting" + }, + "extract-images": { + icon: filter, + name: "home.extractImages.title", + component: null, + view: "extract", + description: "home.extractImages.desc", + category: "Standard Tools", + subcategory: "Extraction" + }, + "extract-pages": { + icon: upload, + name: "home.extractPage.title", + component: null, + view: "extract", + description: "home.extractPage.desc", + category: "Standard Tools", + subcategory: "Extraction" + }, + "flatten": { + icon: layers_clear, + name: "home.flatten.title", + component: null, + view: "format", + description: "home.flatten.desc", + category: "Standard Tools", + subcategory: "Document Security" + }, + "get-all-info-on-pdf": { + icon: fact_check, + name: "home.getPdfInfo.title", + component: null, + view: "extract", + description: "home.getPdfInfo.desc", + category: "Standard Tools", + subcategory: "Verification" + }, + "manage-certificates": { + icon: license, + name: "home.manageCertificates.title", + component: null, + view: "security", + description: "home.manageCertificates.desc", + category: "Standard Tools", + subcategory: "Document Security" + }, + "mergePdfs": { + icon: library_add, + name: "home.merge.title", + component: MergePdfPanel, + view: "merge", + description: "home.merge.desc", + category: "Recommended Tools", + subcategory: null + }, + "multi-page-layout": { + icon: dashboard, + name: "home.pageLayout.title", + component: null, + view: "format", + description: "home.pageLayout.desc", + category: "Standard Tools", + subcategory: "Page Formatting" + }, + "multi-tool": { + icon: dashboard_customize, + name: "home.multiTool.title", + component: null, + view: "pageEditor", + description: "home.multiTool.desc", + category: "Recommended Tools", + subcategory: null + }, + "ocr": { + icon: quick_reference_all, + name: "home.ocr.title", + component: null, + view: "convert", + description: "home.ocr.desc", + category: "Recommended Tools", + subcategory: null + }, + "overlay-pdfs": { + icon: layers, + name: "home.overlay-pdfs.title", + component: null, + view: "format", + description: "home.overlay-pdfs.desc", + category: "Advanced Tools", + subcategory: "Advanced Formatting" + }, + "read": { + icon: article, + name: "home.read.title", + component: null, + view: "view", + description: "home.read.desc", + category: "Standard Tools", + subcategory: "Document Review" + }, + "redact": { + icon: visibility_off, + name: "home.redact.title", + component: null, + view: "redact", + description: "home.redact.desc", + category: "Recommended Tools", + subcategory: null + }, + "remove": { + icon: delete, + name: "home.removePages.title", + component: null, + view: "remove", + description: "home.removePages.desc", + category: "Standard Tools", + subcategory: "Removal" + }, + "remove-annotations": { + icon: thread_unread, + name: "home.removeAnnotations.title", + component: null, + view: "remove", + description: "home.removeAnnotations.desc", + category: "Standard Tools", + subcategory: "Removal" + }, + "remove-blank-pages": { + icon: scan_delete, + name: "home.removeBlanks.title", + component: null, + view: "remove", + description: "home.removeBlanks.desc", + category: "Standard Tools", + subcategory: "Removal" + }, + "remove-certificate-sign": { + icon: remove_moderator, + name: "home.removeCertSign.title", + component: null, + view: "security", + description: "home.removeCertSign.desc", + category: "Standard Tools", + subcategory: "Removal" + }, + "remove-image": { + icon: remove_selection, + name: "home.removeImagePdf.title", + component: null, + view: "format", + description: "home.removeImagePdf.desc", + category: "Standard Tools", + subcategory: "Removal" + }, + "remove-password": { + icon: lock_open_right, + name: "home.removePassword.title", + component: null, + view: "security", + description: "home.removePassword.desc", + category: "Standard Tools", + subcategory: "Removal" + }, + "repair": { + icon: build, + name: "home.repair.title", + component: null, + view: "format", + description: "home.repair.desc", + category: "Advanced Tools", + subcategory: "Advanced Formatting" + }, + "replace-and-invert-color": { + icon: format_color_fill, + name: "home.replaceColorPdf.title", + component: null, + view: "format", + description: "home.replaceColorPdf.desc", + category: "Advanced Tools", + subcategory: "Advanced Formatting" + }, + "reorganize-pages": { + icon: move_down, + name: "home.reorganizePages.title", + component: null, + view: "pageEditor", + description: "home.reorganizePages.desc", + category: "Standard Tools", + subcategory: "Page Formatting" + }, + "rotate": { + icon: rotate_right, + name: "home.rotate.title", + component: null, + view: "format", + description: "home.rotate.desc", + category: "Standard Tools", + subcategory: "Page Formatting" + }, + "sanitize": { + icon: sanitizer, + name: "home.sanitizePdf.title", + component: null, + view: "security", + description: "home.sanitizePdf.desc", + category: "Standard Tools", + subcategory: "Document Security" + }, + "scanner-effect": { + icon: scanner, + name: "home.fakeScan.title", + component: null, + view: "format", + description: "home.fakeScan.desc", + category: "Advanced Tools", + subcategory: "Advanced Formatting" + }, + "show-javascript": { + icon: javascript, + name: "home.showJS.title", + component: null, + view: "extract", + description: "home.showJS.desc", + category: "Advanced Tools", + subcategory: "Developer Tools" + }, + "sign": { + icon: signature, + name: "home.sign.title", + component: null, + view: "sign", + description: "home.sign.desc", + category: "Standard Tools", + subcategory: "Signing" + }, + "single-large-page": { + icon: looks_one, + name: "home.PdfToSinglePage.title", + component: null, + view: "format", + description: "home.PdfToSinglePage.desc", + category: "Standard Tools", + subcategory: "Page Formatting" + }, + "split": { + icon: content_cut, + name: "home.split.title", + component: null, + view: "format", + description: "home.split.desc", + category: "Standard Tools", + subcategory: "Page Formatting" + }, + "split-by-chapters": { + icon: collections_bookmark, + name: "home.splitPdfByChapters.title", + component: null, + view: "format", + description: "home.splitPdfByChapters.desc", + category: "Advanced Tools", + subcategory: "Advanced Formatting" + }, + "split-by-sections": { + icon: grid_on, + name: "home.split-by-sections.title", + component: null, + view: "format", + description: "home.split-by-sections.desc", + category: "Advanced Tools", + subcategory: "Advanced Formatting" + }, + "splitPdf": { + icon: content_cut, + name: "home.split.title", + component: SplitPdfPanel, + view: "split", + description: "home.split.desc", + category: "Standard Tools", + subcategory: "Page Formatting" + }, + "unlock-pdf-forms": { + icon: preview_off, + name: "home.unlockPDFForms.title", + component: null, + view: "security", + description: "home.unlockPDFForms.desc", + category: "Standard Tools", + subcategory: "Document Security" + }, + "validate-pdf-signature": { + icon: verified, + name: "home.validateSignature.title", + component: null, + view: "security", + description: "home.validateSignature.desc", + category: "Standard Tools", + subcategory: "Verification" + }, + "view-pdf": { + icon: article, + name: "home.viewPdf.title", + component: null, + view: "view", + description: "home.viewPdf.desc", + category: "Recommended Tools", + subcategory: null } }; -export const toolEndpoints: Record = { - split: ["split-pages", "split-pdf-by-sections", "split-by-size-or-count", "split-pdf-by-chapters"], +export const toolEndpoints: Record = { + split: ["split-pages", + "split-pdf-by-sections", + "split-by-size-or-count", + "split-pdf-by-chapters"], compressPdfs: ["compress-pdf"], merge: ["merge-pdfs"], // Add more endpoint mappings as needed