mirror of
https://github.com/Stirling-Tools/Stirling-PDF.git
synced 2025-07-23 21:55:21 +00:00

# Description of Changes Added a new feature to add attachments to a PDF document. ### Added: - `AttachmentController`: Endpoint for adding attachments at `/add-attachments` with parameters `fileInput` for the PDF and `attachments` as a list of files to attach - `AttachmentServiceInterface` - `AttachmentService`: Handles the logic of adding attachments to the PDF - `AttachmentUtils`: to handle setting the catalog viewer preferences in the viewer - Add Attachments page - Tests for new feature ### Changes: - `EmlToPdf`: Moved setting of viewer preferences to `AttachmentUtils` - `EndpointConfiguration: Included '/add-attachments' - Updated language files with attachments copy - General clean up Closes #1259 --- ## Checklist ### General - [x] I have read the [Contribution Guidelines](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/CONTRIBUTING.md) - [x] I have read the [Stirling-PDF Developer Guide](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/DeveloperGuide.md) (if applicable) - [x] I have read the [How to add new languages to Stirling-PDF](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/HowToAddNewLanguage.md) (if applicable) - [x] I have performed a self-review of my own code - [x] My changes generate no new warnings ### Documentation - [x] I have updated relevant docs on [Stirling-PDF's doc repo](https://github.com/Stirling-Tools/Stirling-Tools.github.io/blob/main/docs/) (if functionality has heavily changed) - [x] I have read the section [Add New Translation Tags](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/HowToAddNewLanguage.md#add-new-translation-tags) (for new translation tags only) ### UI Changes (if applicable)     - [x] Screenshots or videos demonstrating the UI changes are attached (e.g., as comments or direct attachments in the PR) ### Testing (if applicable) - [x] I have tested my changes locally. Refer to the [Testing Guide](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/DeveloperGuide.md#6-testing) for more details.
34 lines
1.3 KiB
Groovy
34 lines
1.3 KiB
Groovy
// Configure bootRun to disable it or point to a main class
|
|
bootRun {
|
|
enabled = false
|
|
}
|
|
spotless {
|
|
java {
|
|
target sourceSets.main.allJava
|
|
googleJavaFormat(googleJavaFormatVersion).aosp().reorderImports(false)
|
|
|
|
importOrder("java", "javax", "org", "com", "net", "io", "jakarta", "lombok", "me", "stirling")
|
|
toggleOffOn()
|
|
trimTrailingWhitespace()
|
|
leadingTabsToSpaces()
|
|
endWithNewline()
|
|
}
|
|
}
|
|
dependencies {
|
|
api 'org.springframework.boot:spring-boot-starter-web'
|
|
api 'org.springframework.boot:spring-boot-starter-aop'
|
|
api 'org.springframework.boot:spring-boot-starter-thymeleaf'
|
|
api 'com.googlecode.owasp-java-html-sanitizer:owasp-java-html-sanitizer:20240325.1'
|
|
api 'com.fathzer:javaluator:3.0.6'
|
|
api 'com.posthog.java:posthog:1.2.0'
|
|
api 'org.apache.commons:commons-lang3:3.17.0'
|
|
api 'com.drewnoakes:metadata-extractor:2.19.0' // Image metadata extractor
|
|
api 'com.vladsch.flexmark:flexmark-html2md-converter:0.64.8'
|
|
api "org.apache.pdfbox:pdfbox:$pdfboxVersion"
|
|
api 'jakarta.servlet:jakarta.servlet-api:6.1.0'
|
|
api 'org.snakeyaml:snakeyaml-engine:2.9'
|
|
api "org.springdoc:springdoc-openapi-starter-webmvc-ui:2.8.9"
|
|
api 'jakarta.mail:jakarta.mail-api:2.1.3'
|
|
runtimeOnly 'org.eclipse.angus:angus-mail:2.0.3'
|
|
}
|