PDF Text editor (#4724)

## Summary
- add a `PdfJsonConversionService` that serializes PDF text, fonts, and
metadata to JSON and rebuilds a PDF from the same structure
- expose REST endpoints for `/pdf/json` and `/json/pdf` conversions
using the existing convert API infrastructure
- define JSON model classes capturing document metadata, font
information, and positioned text elements

## Testing
- `./gradlew spotlessApply` *(fails: plugin
org.springframework.boot:3.5.4 unavailable in build environment)*
- `./gradlew build` *(fails: plugin org.springframework.boot:3.5.4
unavailable in build environment)*

------
https://chatgpt.com/codex/tasks/task_b_68f8e98d94ac8328a0e499e541528b6f

---------

Co-authored-by: EthanHealy01 <[email protected]>
This commit is contained in:
Anthony Stirling
2025-11-24 14:15:02 +00:00
committed by GitHub
co-authored by EthanHealy01
parent d42065e338
commit b0397da19e
253 changed files with 26069 additions and 111 deletions
@@ -0,0 +1,19 @@
/**
* Proprietary URL mappings.
* This file overrides src/core/utils/urlMapping.ts
* to add proprietary-specific URL mappings.
*/
import { ToolId } from '@app/types/toolId';
import { URL_TO_TOOL_MAP as CORE_URL_TO_TOOL_MAP } from '@core/utils/urlMapping';
// Proprietary URL mappings
const PROPRIETARY_URL_MAPPINGS: Record<string, ToolId> = {
'/pdf-text-editor': 'pdfTextEditor',
};
// Merge core and proprietary mappings
export const URL_TO_TOOL_MAP: Record<string, ToolId> = {
...CORE_URL_TO_TOOL_MAP,
...PROPRIETARY_URL_MAPPINGS,
};