Commit Graph

4391 Commits

Author SHA1 Message Date
Reece Browne
a91cec6423
Merge branch 'V2' into feature/v2/selected-pageeditor-rework 2025-11-10 16:47:49 +00:00
Reece Browne
673c99d25c
Update frontend/src/core/components/pageEditor/PageEditor.tsx
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-11-10 15:02:47 +00:00
Reece Browne
ce6b2460d8
Viewer update and autozoom (#4800)
Updated embed PDF
Added Autozoom
Added file page size to metadata for use in calculations for autozoom,
will come in handy elsewhere.

---------

Co-authored-by: James Brunton <jbrunton96@gmail.com>
2025-11-10 13:52:13 +00:00
Anthony Stirling
3cf89b6ede
admin onboarding (#4863)
# Description of Changes

<!--
Please provide a summary of the changes, including:

- What was changed
- Why the change was made
- Any challenges encountered

Closes #(issue_number)
-->

---

## Checklist

### General

- [ ] I have read the [Contribution
Guidelines](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/CONTRIBUTING.md)
- [ ] I have read the [Stirling-PDF Developer
Guide](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/devGuide/DeveloperGuide.md)
(if applicable)
- [ ] I have read the [How to add new languages to
Stirling-PDF](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/devGuide/HowToAddNewLanguage.md)
(if applicable)
- [ ] I have performed a self-review of my own code
- [ ] My changes generate no new warnings

### Documentation

- [ ] 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)
- [ ] I have read the section [Add New Translation
Tags](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/devGuide/HowToAddNewLanguage.md#add-new-translation-tags)
(for new translation tags only)

### Translations (if applicable)

- [ ] I ran
[`scripts/counter_translation.py`](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/docs/counter_translation.md)

### UI Changes (if applicable)

- [ ] Screenshots or videos demonstrating the UI changes are attached
(e.g., as comments or direct attachments in the PR)

### Testing (if applicable)

- [ ] I have tested my changes locally. Refer to the [Testing
Guide](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/devGuide/DeveloperGuide.md#6-testing)
for more details.

---------

Co-authored-by: EthanHealy01 <80844253+EthanHealy01@users.noreply.github.com>
2025-11-10 13:47:43 +00:00
James Brunton
ebf4bab80b
Tidy Tauri code and enable "Open file in Stirling PDF" (#4836)
# Description of Changes
Tidy Tauri code and enable "Open file in Stirling PDF"
2025-11-10 12:15:39 +00:00
ConnorYoh
f4543d26cd
Improvement/V2/generic_obscure_component_wrapper (#4794)
Created PrivateContent Component to be used as wrapper. 

This way all tools that need to obscure contents can update this
wrapper.

---------

Co-authored-by: Connor Yoh <connor@stirlingpdf.com>
Co-authored-by: James Brunton <jbrunton96@gmail.com>
2025-11-10 11:24:14 +00:00
James Brunton
45389340ed
Remove ambiguous translations and fix invalid translations (#4841)
# Description of Changes
`i18next` allows this pattern for translations, which we use quite a few
times in our current translation files:

```json
{
  "a": {
     "b": "hello"
   },
   "a.b": "world"
}
```

This makes it ambiguous when selecting `a.b` which string will be
retrieved. We have seen issues in other languages in the current release
like this:

<img width="325" height="249" alt="image"
src="https://github.com/user-attachments/assets/f24a29f0-550f-49b8-b355-c5e5eb436558"
/>

because we are expecting this:

<img width="1022" height="210" alt="image"
src="https://github.com/user-attachments/assets/b6d5cdd4-96cd-4b2b-8f1a-465da8bf70c8"
/>

but the Spanish file has:

<img width="312" height="136" alt="image"
src="https://github.com/user-attachments/assets/1e13392c-8484-47d1-b0c4-19d52b3ea5eb"
/>

and no `removeDigitalSignature` key on its own. 

This PR resolves all of these ambiguities in the source by restructuring
all of the keys to uniquely target either an object or a string, not
both. It also adds a test which will fail on any keys with a `.` in
their name, therefore making it impossible to add anything ambiguous.
2025-11-10 11:03:18 +00:00
James Brunton
9671f6835e
Make Ghostscript an optional dependency for tools that don't need it (#4840)
# Description of Changes
Make Ghostscript an optional dependency for tools that don't need it.
2025-11-07 15:11:02 +00:00
Anthony Stirling
ac3e10eb99
Add audit system, invite links, and usage analytics (#4749)
# Description of Changes

New Features
Audit System: Complete audit logging with dashboard, event tracking, and
export capabilities

Invite Links: Secure invite system with email notifications and
expiration

Usage Analytics: Endpoint usage statistics and visualization

License Management: User counting with grandfathering and license
enforcement
## Checklist

### General

- [ ] I have read the [Contribution
Guidelines](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/CONTRIBUTING.md)
- [ ] I have read the [Stirling-PDF Developer
Guide](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/devGuide/DeveloperGuide.md)
(if applicable)
- [ ] I have read the [How to add new languages to
Stirling-PDF](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/devGuide/HowToAddNewLanguage.md)
(if applicable)
- [ ] I have performed a self-review of my own code
- [ ] My changes generate no new warnings

### Documentation

- [ ] 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)
- [ ] I have read the section [Add New Translation
Tags](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/devGuide/HowToAddNewLanguage.md#add-new-translation-tags)
(for new translation tags only)

### UI Changes (if applicable)

- [ ] Screenshots or videos demonstrating the UI changes are attached
(e.g., as comments or direct attachments in the PR)

### Testing (if applicable)

- [ ] I have tested my changes locally. Refer to the [Testing
Guide](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/devGuide/DeveloperGuide.md#6-testing)
for more details.

---------

Co-authored-by: James Brunton <jbrunton96@gmail.com>
2025-11-06 17:29:34 +00:00
Dario Ghunney Ware
f5c67a3239
Login Refresh Fix (#4779)
Main Issues Fixed:

  1. Tools Disabled on Initial Login (Required Page Refresh)

Problem: After successful login, all PDF tools appeared grayed
out/disabled until the user refreshed the page.

Root Cause: Race condition where tools checked endpoint availability
before JWT was stored in localStorage.

  Fix:
- Implemented optimistic defaults in useEndpointConfig - assumes
endpoints are enabled when no JWT exists
- Added JWT availability event system (jwt-available event) to notify
components when authentication is ready
- Tools now remain enabled during auth initialization instead of
defaulting to disabled

  2. Session Lost on Page Refresh (Immediate Logout)

Problem: Users were immediately logged out when refreshing the page,
losing their authenticated session.

  Root Causes:
- Spring Security form login was redirecting API calls to /login with
302 responses instead of returning JSON
  - /api/v1/auth/me endpoint was incorrectly in the permitAll list
- JWT filter wasn't allowing /api/v1/config endpoints without
authentication

  Fixes:
- Backend: Disabled form login in v2/JWT mode by adding && !v2Enabled
condition to form login configuration
- Backend: Removed /api/v1/auth/me from permitAll list - it now requires
authentication
  - Backend: Added /api/v1/config to public endpoints in JWT filter
- Backend: Configured proper exception handling for API endpoints to
return JSON (401) instead of HTML redirects (302)

  3. Multiple Duplicate API Calls

Problem: After login, /app-config was called 5+ times,
/endpoints-enabled and /me called multiple times, causing unnecessary
network traffic.

Root Cause: Multiple React components each had their own instance of
useAppConfig and useEndpointConfig hooks, each fetching data
independently.

  Fix:
- Frontend: Created singleton AppConfigContext provider to ensure only
one global config fetch
- Frontend: Added global caching to useEndpointConfig with module-level
cache variables
- Frontend: Implemented fetch deduplication with fetchCount tracking and
globalFetchedSets
- Result: Reduced API calls from 5+ to 1-2 per endpoint (2 in dev due to
React StrictMode)

  Additional Improvements:

  CORS Configuration

  - Added flexible CORS configuration matching SaaS pattern
- Explicitly allows localhost development ports (3000, 5173, 5174, etc.)
  - No hardcoded URLs in application.properties

  Security Handlers Integration

  - Added IP-based account locking without dependency on form login
  - Preserved audit logging with @Audited annotations

  Key Code Changes:

  Backend Files:
- SecurityConfiguration.java - Disabled form login for v2, added CORS
config
- JwtAuthenticationFilter.java - Added /api/v1/config to public
endpoints
  - JwtAuthenticationEntryPoint.java - Returns JSON for API requests

  Frontend Files:
  - AppConfigContext.tsx - New singleton context for app configuration
  - useEndpointConfig.ts - Added global caching and deduplication
  - UseSession.tsx - Removed redundant config checking
- Various hooks - Updated to use context providers instead of direct
fetching

---------

Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: stirlingbot[bot] <stirlingbot[bot]@users.noreply.github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Ludy <Ludy87@users.noreply.github.com>
Co-authored-by: EthanHealy01 <80844253+EthanHealy01@users.noreply.github.com>
Co-authored-by: Ethan <ethan@MacBook-Pro.local>
Co-authored-by: Anthony Stirling <77850077+Frooodle@users.noreply.github.com>
Co-authored-by: stirlingbot[bot] <195170888+stirlingbot[bot]@users.noreply.github.com>
Co-authored-by: ConnorYoh <40631091+ConnorYoh@users.noreply.github.com>
Co-authored-by: Connor Yoh <connor@stirlingpdf.com>
2025-11-06 15:42:22 +00:00
Balázs Szücs
9440e99227
[V2] feat(replaceColor): add CMYK color space conversion option (#4832)
# Description of Changes

TLDR:
- Introduced a new "Convert to CMYK" option in Replace Color settings.
- Added tooltips for the new CMYK conversion feature.
- Updated ReplaceColorParameters to support COLOR_SPACE_CONVERSION
option.

For backend reference see this PR:  #4494

This pull request adds support for converting PDF colors to the CMYK
color space in the Replace Color tool, which is especially useful for
preparing documents for professional printing. The changes include
updates to the user interface, tooltips, and type definitions to
accommodate this new option.

**Replace Color tool: Add CMYK color space conversion option**

* Feature addition:
* Added a new `COLOR_SPACE_CONVERSION` option to the
`replaceAndInvertOption` parameter in the `ReplaceColorParameters` type,
enabling support for CMYK color conversion.
* Updated the `ReplaceColorSettings` component to include "Convert to
CMYK" as a selectable option in the UI.

* User guidance:
* Added a new tooltip entry explaining the "Convert to CMYK" feature,
describing its purpose and use case for professional printing.

### Front-end
<img width="642" height="994" alt="image"
src="https://github.com/user-attachments/assets/fa1df879-f157-45ca-9865-238238afc093"
/>

<!--
Please provide a summary of the changes, including:

- What was changed
- Why the change was made
- Any challenges encountered

Closes #(issue_number)
-->

---

## 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/devGuide/DeveloperGuide.md)
(if applicable)
- [ ] I have read the [How to add new languages to
Stirling-PDF](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/devGuide/HowToAddNewLanguage.md)
(if applicable)
- [x] I have performed a self-review of my own code
- [x] My changes generate no new warnings

### Documentation

- [ ] 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)
- [ ] I have read the section [Add New Translation
Tags](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/devGuide/HowToAddNewLanguage.md#add-new-translation-tags)
(for new translation tags only)

### Translations (if applicable)

- [ ] I ran
[`scripts/counter_translation.py`](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/docs/counter_translation.md)

### 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/devGuide/DeveloperGuide.md#6-testing)
for more details.

---------

Signed-off-by: Balázs Szücs <bszucs1209@gmail.com>
2025-11-06 14:33:34 +00:00
EthanHealy01
138949caa7
Feature/v2/extract pages (#4828)
# Description of Changes

- Add the extract pages tool
- Componentize our bulk selection logic and warning messaages

---

## Checklist

### General

- [ ] I have read the [Contribution
Guidelines](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/CONTRIBUTING.md)
- [ ] I have read the [Stirling-PDF Developer
Guide](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/devGuide/DeveloperGuide.md)
(if applicable)
- [ ] I have read the [How to add new languages to
Stirling-PDF](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/devGuide/HowToAddNewLanguage.md)
(if applicable)
- [ ] I have performed a self-review of my own code
- [ ] My changes generate no new warnings

### Documentation

- [ ] 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)
- [ ] I have read the section [Add New Translation
Tags](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/devGuide/HowToAddNewLanguage.md#add-new-translation-tags)
(for new translation tags only)

### Translations (if applicable)

- [ ] I ran
[`scripts/counter_translation.py`](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/docs/counter_translation.md)

### UI Changes (if applicable)

- [ ] Screenshots or videos demonstrating the UI changes are attached
(e.g., as comments or direct attachments in the PR)

### Testing (if applicable)

- [ ] I have tested my changes locally. Refer to the [Testing
Guide](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/devGuide/DeveloperGuide.md#6-testing)
for more details.
2025-11-06 13:57:31 +00:00
Anthony Stirling
00fb40fb74
Update PR-Auto-Deploy-V2.yml 2025-11-05 23:33:53 +00:00
ConnorYoh
4c0c9b28ef
V2 Tauri integration (#3854)
# Description of Changes

Please provide a summary of the changes, including:

## Add PDF File Association Support for Tauri App

  ### 🎯 **Features Added**
  - PDF file association configuration in Tauri
  - Command line argument detection for opened files
  - Automatic file loading when app is launched via "Open with"
  - Cross-platform support (Windows/macOS)

  ### 🔧 **Technical Changes**
  - Added `fileAssociations` in `tauri.conf.json` for PDF files
  - New `get_opened_file` Tauri command to detect file arguments
  - `fileOpenService` with Tauri fs plugin integration
  - `useOpenedFile` hook for React integration
  - Improved backend health logging during startup (reduced noise)

  ### 🧪 **Testing**
See 
* https://v2.tauri.app/start/prerequisites/
*
[DesktopApplicationDevelopmentGuide.md](DesktopApplicationDevelopmentGuide.md)

  ```bash
  # Test file association during development:
  
  cd frontend
  npm install
  cargo tauri dev --no-watch -- -- "path/to/file.pdf"
  ```

 For production testing:
  1. Build: npm run tauri build
  2. Install the built app
  3. Right-click PDF → "Open with" → Stirling-PDF

  🚀 User Experience

- Users can now double-click PDF files to open them directly in
Stirling-PDF
- Files automatically load in the viewer when opened via file
association
  - Seamless integration with OS file handling

---

## Checklist

### General

- [ ] I have read the [Contribution
Guidelines](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/CONTRIBUTING.md)
- [ ] I have read the [Stirling-PDF Developer
Guide](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/DeveloperGuide.md)
(if applicable)
- [ ] 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)
- [ ] I have performed a self-review of my own code
- [ ] My changes generate no new warnings

### Documentation

- [ ] 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)
- [ ] 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)

- [ ] Screenshots or videos demonstrating the UI changes are attached
(e.g., as comments or direct attachments in the PR)

### Testing (if applicable)

- [ ] 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.

---------

Co-authored-by: Connor Yoh <connor@stirlingpdf.com>
Co-authored-by: James Brunton <james@stirlingpdf.com>
Co-authored-by: James Brunton <jbrunton96@gmail.com>
2025-11-05 11:44:59 +00:00
James Brunton
f3eed4428d
Remove path aliases for the self folder from configs (#4825)
# Description of Changes
Remove path aliases from self folder (e.g. remove `@core` from
`tsconfig.core.json`). It's not necessary and using it means that it's
impossible for the other folders to override the behaviour. The only
reason we should currently be using `@core` is in `proprietary` where we
need to explicitly import the `core` version of the thing we're
overriding so that we can re-expose or use the objects.
2025-11-05 08:55:22 +00:00
Anthony Stirling
8f94c7d7b0
Merge pull request #4660 from Stirling-Tools/mainToV2
Main to v2
2025-11-04 11:29:45 +00:00
Anthony Stirling
1555d24ef9 test fixes 2025-11-04 10:24:00 +00:00
Anthony Stirling
2ed68d25a9 Merge remote-tracking branch 'origin/V2' into mainToV2 2025-11-03 23:01:41 +00:00
Balázs Szücs
bfd6610565
[V2] fix(tooltip): adjust close button position (#4803)
# Description of Changes

- Updated the `top` property of `.tooltip-pin-button` from `-0.5rem` to
`0.5rem` for proper alignment.

### Pictures:

Before:
<img width="903" height="838" alt="image"
src="https://github.com/user-attachments/assets/df2dfab0-9a5d-4d45-9b7b-16a30124af87"
/>
After:
<img width="903" height="838" alt="image"
src="https://github.com/user-attachments/assets/d88f3fad-b281-4dfa-96e1-e56e2639aaf5"
/>
Before:
<img width="903" height="838" alt="image"
src="https://github.com/user-attachments/assets/6406b9f4-8d03-4703-b680-9f70007ecced"
/>
After:
<img width="903" height="838" alt="image"
src="https://github.com/user-attachments/assets/7c548149-ab5d-4364-bee7-9acd55662216"
/>



<!--
Please provide a summary of the changes, including:

- What was changed
- Why the change was made
- Any challenges encountered

Closes #(issue_number)
-->

---

## 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/devGuide/DeveloperGuide.md)
(if applicable)
- [ ] I have read the [How to add new languages to
Stirling-PDF](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/devGuide/HowToAddNewLanguage.md)
(if applicable)
- [x] I have performed a self-review of my own code
- [x] My changes generate no new warnings

### Documentation

- [ ] 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)
- [ ] I have read the section [Add New Translation
Tags](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/devGuide/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/devGuide/DeveloperGuide.md#6-testing)
for more details.
2025-11-02 16:08:25 +00:00
James Brunton
85ec882950
Improve diff for missing translations test (#4790)
# Description of Changes
Improve diff for missing translations test
2025-10-31 14:38:03 +00:00
James Brunton
8060934ee9
Add linting to ensure correct imports style is used (#4759)
# Description of Changes
Add linting to ensure correct imports style is used.

I've disabled the linting for two imports which use relative paths
because the files they're importing are siblings to core and
proprietary. They could probs be imported by `@app/../assets/xxx` but it
seems silly. The other thing we could do is add an explicit `@assets`
path alias or something, but it seemed more complex than just disabling
the lint for those two imports at this stage. We could always do it in
the future if we want to import stuff up there a lot in the future.
2025-10-29 11:58:04 +00:00
Reece Browne
0f551ca504
Update frontend/src/core/components/pageEditor/commands/pageCommands.ts
Co-authored-by: James Brunton <jbrunton96@gmail.com>
2025-10-29 11:13:13 +00:00
Reece Browne
1ad7ed4e17
Update frontend/src/core/components/shared/PageEditorFileDropdown.tsx
Co-authored-by: James Brunton <jbrunton96@gmail.com>
2025-10-29 11:13:03 +00:00
Reece Browne
feb6e32713
Update frontend/src/core/components/pageEditor/commands/pageCommands.ts
Co-authored-by: James Brunton <jbrunton96@gmail.com>
2025-10-29 11:12:11 +00:00
James Brunton
ef177be918
Fix issues with fullscreen tools on Safari (#4757)
# Description of Changes
Fix issues with fullscreen tools not rendering and throwing SVG errors
in the console on Safari.
2025-10-29 09:56:16 +00:00
Reece Browne
12c5f4a375
Merge branch 'V2' into feature/v2/selected-pageeditor-rework 2025-10-29 09:41:13 +00:00
Reece
602e5d91ae merge conflict 2025-10-29 09:36:28 +00:00
Reece
c9e95c8b64 - 2025-10-29 09:27:39 +00:00
Reece
d1067d8639 - 2025-10-29 00:48:55 +00:00
Reece
b69abd8db3 clean 2025-10-29 00:47:04 +00:00
Reece
1c83e703d0 overlay 2025-10-29 00:10:36 +00:00
Reece
a804e8b128 - 2025-10-29 00:04:44 +00:00
Reece
1ab912281b tooling tweak 2025-10-29 00:00:07 +00:00
Reece
0bbd40eba7 clean up 2025-10-28 23:08:03 +00:00
Reece
f95249ee63 revert split 2025-10-28 22:56:09 +00:00
Reece
9f258894e1 - 2025-10-28 22:49:30 +00:00
Reece
06cdc0d120 reducer reduced 2025-10-28 22:05:42 +00:00
Reece
f4dd4deb7b revert rile reducer 2025-10-28 21:37:58 +00:00
Reece
c188cc3a0b revert base params, clean top gap 2025-10-28 21:05:55 +00:00
Reece
039de2dde2 Fixes 2025-10-28 19:38:53 +00:00
Reece
c6c986ade2 Clean up 2025-10-28 18:09:55 +00:00
Reece
3bd1c9f83a Fixes 2025-10-28 15:15:20 +00:00
Anthony Stirling
d0c5d74471
settingsPage Init selfhost (#4734)
# Description of Changes

<!--
Please provide a summary of the changes, including:

- What was changed
- Why the change was made
- Any challenges encountered

Closes #(issue_number)
-->

---

## Checklist

### General

- [ ] I have read the [Contribution
Guidelines](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/CONTRIBUTING.md)
- [ ] I have read the [Stirling-PDF Developer
Guide](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/devGuide/DeveloperGuide.md)
(if applicable)
- [ ] I have read the [How to add new languages to
Stirling-PDF](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/devGuide/HowToAddNewLanguage.md)
(if applicable)
- [ ] I have performed a self-review of my own code
- [ ] My changes generate no new warnings

### Documentation

- [ ] 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)
- [ ] I have read the section [Add New Translation
Tags](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/devGuide/HowToAddNewLanguage.md#add-new-translation-tags)
(for new translation tags only)

### UI Changes (if applicable)

- [ ] Screenshots or videos demonstrating the UI changes are attached
(e.g., as comments or direct attachments in the PR)

### Testing (if applicable)

- [ ] I have tested my changes locally. Refer to the [Testing
Guide](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/devGuide/DeveloperGuide.md#6-testing)
for more details.

---------

Co-authored-by: James Brunton <jbrunton96@gmail.com>
2025-10-28 14:47:41 +00:00
Reece
7de8347472 Squashed commit of the following:
commit f1901a2e56
Author: Reece <reece@stirlingpdf.com>
Date:   Mon Oct 27 18:23:27 2025 +0000

    revert lint

commit 09b0fbefcd
Author: Reece <reece@stirlingpdf.com>
Date:   Mon Oct 27 15:47:38 2025 +0000

    Hide file names in posthog

commit 3497ccd7bd
Author: Reece <reece@stirlingpdf.com>
Date:   Mon Oct 27 12:45:31 2025 +0000

    remove page break settings modal

commit 5e27dc88f8
Author: Reece <reece@stirlingpdf.com>
Date:   Mon Oct 27 12:37:00 2025 +0000

    retain interleaving

commit b276eb5b68
Author: Reece <reece@stirlingpdf.com>
Date:   Mon Oct 27 11:32:31 2025 +0000

    Lint

commit aec1f97ff8
Author: Reece <reece@stirlingpdf.com>
Date:   Sat Oct 25 14:19:32 2025 +0100

    -

commit fbe2dc2958
Author: Reece <reece@stirlingpdf.com>
Date:   Sat Oct 25 13:06:10 2025 +0100

    Fixed file reordering placeholder

commit aaae81c68e
Author: Reece <reece@stirlingpdf.com>
Date:   Fri Oct 24 15:57:30 2025 +0100

    -

commit 3aa77819f2
Author: Reece <reece@stirlingpdf.com>
Date:   Fri Oct 24 15:54:30 2025 +0100

    -

commit 28dab07870
Author: Reece <reece@stirlingpdf.com>
Date:   Fri Oct 24 15:51:37 2025 +0100

    -

commit ed6199de61
Author: Reece <reece@stirlingpdf.com>
Date:   Fri Oct 24 15:51:29 2025 +0100

    lint and revert onboarding

commit 4d59ebfb2a
Author: Reece <reece@stirlingpdf.com>
Date:   Fri Oct 24 15:27:44 2025 +0100

    fixed drag and drop when some files aren't selected in context

commit ea4f37cccf
Author: Reece <reece@stirlingpdf.com>
Date:   Fri Oct 24 15:06:21 2025 +0100

    Merge history change

commit c25131ae9b
Author: Reece <reece@stirlingpdf.com>
Date:   Fri Oct 24 14:48:14 2025 +0100

     lint

commit 25df9410cd
Merge: 494f92421 848ff9688
Author: Reece <reece@stirlingpdf.com>
Date:   Fri Oct 24 14:33:27 2025 +0100

    Merge branch 'V2' of https://github.com/Stirling-Tools/Stirling-PDF into feature/v2/selected-pageeditor

commit 494f92421f
Author: Reece <reece@stirlingpdf.com>
Date:   Fri Oct 24 13:28:50 2025 +0100

    Enhance drag-and-drop functionality with new drop hint resolution and target index calculation; refactor file color mapping in PageEditor and implement dropdown state management for improved file handling.

commit eef5dce849
Author: Reece <reece@stirlingpdf.com>
Date:   Fri Oct 24 11:33:31 2025 +0100

    Drag and drop improvements basic box select

commit ddefe81082
Author: Reece <reece@stirlingpdf.com>
Date:   Thu Oct 23 20:46:58 2025 +0100

    Enhance DragDropGrid and PageEditor with improved undo manager functionality and scroll handling during drag operations

commit be037b727f
Author: Reece <reece@stirlingpdf.com>
Date:   Thu Oct 23 18:15:37 2025 +0100

    File reorder logic

commit 7a56f0504e
Author: Reece <reece@stirlingpdf.com>
Date:   Tue Oct 21 17:35:55 2025 +0100

    Refactor file handling to support StirlingFileStubs and improve drag-and-drop functionality

commit f7c9855489
Author: Reece <reece@stirlingpdf.com>
Date:   Mon Oct 20 21:45:00 2025 +0100

    glow scaling

commit 36a358f907
Author: Reece <reece@stirlingpdf.com>
Date:   Mon Oct 20 21:25:44 2025 +0100

    Visual tweaks

commit 0bcb1810d6
Author: Reece <reece@stirlingpdf.com>
Date:   Mon Oct 20 21:08:18 2025 +0100

    tweak

commit aee535214d
Author: Reece <reece@stirlingpdf.com>
Date:   Mon Oct 20 20:55:45 2025 +0100

    Pretty lights

commit 6d3154a7ae
Author: Reece <reece@stirlingpdf.com>
Date:   Mon Oct 20 20:44:48 2025 +0100

    Update top bar controls visually

commit 658ce2dab9
Author: Reece <reece@stirlingpdf.com>
Date:   Mon Oct 20 18:45:14 2025 +0100

    add file

commit 15df5cf168
Author: Reece <reece@stirlingpdf.com>
Date:   Mon Oct 20 18:05:55 2025 +0100

    -

commit 23d7f38100
Author: Reece <reece@stirlingpdf.com>
Date:   Mon Oct 20 17:24:16 2025 +0100

    lint

commit 472fc2939e
Author: Reece <reece@stirlingpdf.com>
Date:   Mon Oct 20 15:56:54 2025 +0100

    lint 2

commit a21047e8b0
Merge: 8ee03fa1c 3e23dc59b
Author: Reece Browne <74901996+reecebrowne@users.noreply.github.com>
Date:   Mon Oct 20 15:52:23 2025 +0100

    Merge branch 'V2' into feature/v2/selected-pageeditor

commit 8ee03fa1c6
Author: Reece <reece@stirlingpdf.com>
Date:   Mon Oct 20 15:50:14 2025 +0100

    Lint

commit a22913e1e4
Author: Reece <reece@stirlingpdf.com>
Date:   Mon Oct 20 14:16:41 2025 +0100

    page editor fixes post merge

commit b3c0c69a7c
Merge: 2289080f9 3e6236d95
Author: Reece <reece@stirlingpdf.com>
Date:   Mon Oct 20 13:42:08 2025 +0100

    Merge branch 'V2' of https://github.com/Stirling-Tools/Stirling-PDF into feature/v2/selected-pageeditor

commit 2289080f9c
Author: Reece <reece@stirlingpdf.com>
Date:   Fri Oct 17 16:55:29 2025 +0100

    remove buttons

commit a5ec62fa08
Author: Reece <reece@stirlingpdf.com>
Date:   Fri Oct 17 15:24:05 2025 +0100

    Performance improvements

commit e7f7b7e201
Author: Reece <reece@stirlingpdf.com>
Date:   Fri Oct 17 14:15:21 2025 +0100

    improved

commit 74e8388bce
Author: Reece <reece@stirlingpdf.com>
Date:   Wed Oct 15 21:33:54 2025 +0100

    Working mostly

commit e7c6db082c
Author: Reece <reece@stirlingpdf.com>
Date:   Wed Oct 15 16:31:30 2025 +0100

    Rejig arrays

commit 05a7161412
Author: Reece <reece@stirlingpdf.com>
Date:   Wed Oct 15 00:01:30 2025 +0100

    Structural tweaks

commit 39267e795c
Author: Reece <reece@stirlingpdf.com>
Date:   Tue Oct 14 12:41:50 2025 +0100

    Reworked page editor - dirty commit

commit 6acce968a5
Author: Reece <reece@stirlingpdf.com>
Date:   Fri Oct 10 19:32:41 2025 +0100

    fix 2

commit 0722ecc6c4
Author: Reece <reece@stirlingpdf.com>
Date:   Fri Oct 10 19:27:15 2025 +0100

    fix

commit 3597a8b7bd
Author: Reece <reece@stirlingpdf.com>
Date:   Fri Oct 10 19:16:04 2025 +0100

    Initial set up

commit c260394b95
Author: Reece <reece@stirlingpdf.com>
Date:   Fri Oct 10 17:15:07 2025 +0100

    Cleanup

commit 93fcfb280a
Author: Reece <reece@stirlingpdf.com>
Date:   Fri Oct 10 17:09:36 2025 +0100

    Remove logs tweak visuals, use fit text component

commit 69cb8e7aec
Author: Reece <reece@stirlingpdf.com>
Date:   Fri Oct 10 16:54:05 2025 +0100

    Fix signwith tab based system

commit 8e8e06628e
Author: Reece <reece@stirlingpdf.com>
Date:   Fri Oct 10 15:57:41 2025 +0100

    Nav based file select

commit 5d3710260f
Author: Reece <reece@stirlingpdf.com>
Date:   Fri Oct 10 13:37:52 2025 +0100

    Lint

commit ad8789d82a
Author: Reece <reece@stirlingpdf.com>
Date:   Fri Oct 10 13:35:18 2025 +0100

    remove file that came from nowhere

commit 749966a197
Author: Reece <reece@stirlingpdf.com>
Date:   Fri Oct 10 13:30:15 2025 +0100

    Remove mantine theme

commit d9e429aa3a
Merge: ad0b6cf2d b695e3900
Author: Reece <reece@stirlingpdf.com>
Date:   Fri Oct 10 13:00:56 2025 +0100

    Merge branch 'V2' of https://github.com/Stirling-Tools/Stirling-PDF into feature/V2/ViewerTabs

commit ad0b6cf2d6
Author: Reece <reece@stirlingpdf.com>
Date:   Fri Oct 10 12:55:03 2025 +0100

    Viewer tabs, embed update and layout fixes

commit b63f2c16a2
Author: Reece <reece@stirlingpdf.com>
Date:   Wed Oct 8 15:12:39 2025 +0100

    Remove unused legacy text signing Linting errors

commit edcc788d1a
Merge: 5b47ab5bb fdba336c0
Author: Reece <reece@stirlingpdf.com>
Date:   Wed Oct 8 15:02:39 2025 +0100

    Merge branch 'feature/v2/improve-sign' of https://github.com/Stirling-Tools/Stirling-PDF into feature/v2/improve-sign

commit 5b47ab5bbf
Author: Reece <reece@stirlingpdf.com>
Date:   Wed Oct 8 15:02:33 2025 +0100

    Remove debug logs

commit fdba336c05
Author: Reece Browne <74901996+reecebrowne@users.noreply.github.com>
Date:   Wed Oct 8 14:57:29 2025 +0100

    Update frontend/src/components/annotation/shared/DrawingCanvas.tsx

    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

commit 5db6b85fb9
Merge: 70d941a40 13e88943b
Author: Reece <reece@stirlingpdf.com>
Date:   Wed Oct 8 14:56:10 2025 +0100

    Merge branch 'feature/v2/improve-sign' of https://github.com/Stirling-Tools/Stirling-PDF into feature/v2/improve-sign

commit 70d941a400
Author: Reece <reece@stirlingpdf.com>
Date:   Wed Oct 8 14:55:43 2025 +0100

    translations

commit 13e88943b7
Author: Reece Browne <74901996+reecebrowne@users.noreply.github.com>
Date:   Wed Oct 8 14:55:04 2025 +0100

    Update frontend/src/components/tools/sign/SignSettings.tsx

    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

commit 339e5cfb65
Author: Reece Browne <74901996+reecebrowne@users.noreply.github.com>
Date:   Wed Oct 8 14:54:31 2025 +0100

    Update frontend/src/contexts/ViewerContext.tsx

    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

commit 10944d9d57
Author: Reece <reece@stirlingpdf.com>
Date:   Wed Oct 8 14:45:39 2025 +0100

    Remove debug logging

commit 0c9f460fb6
Author: Reece <reece@stirlingpdf.com>
Date:   Wed Oct 8 14:02:43 2025 +0100

    Remove arbitrary timers

commit fa6e01b46e
Author: Reece <reece@stirlingpdf.com>
Date:   Wed Oct 8 12:26:34 2025 +0100

    Clean up

commit 23f85d7267
Author: Reece <reece@stirlingpdf.com>
Date:   Tue Oct 7 22:40:58 2025 +0100

    tweaks

commit f6290c0238
Author: Reece <reece@stirlingpdf.com>
Date:   Tue Oct 7 21:52:40 2025 +0100

    - Refactored signature saving process

commit 991be9ffa2
Author: Reece <reece@stirlingpdf.com>
Date:   Tue Oct 7 21:38:07 2025 +0100

    Add text color and font size options to signature settings and API

commit 07bf79f3ee
Author: Reece <reece@stirlingpdf.com>
Date:   Tue Oct 7 14:54:14 2025 +0100

    Improved canvas mode with signaturepad.js

commit 3a0acd0a21
Author: Reece <reece@stirlingpdf.com>
Date:   Tue Oct 7 12:56:12 2025 +0100

    Single canvas

commit fff637286f
Author: Reece <reece@stirlingpdf.com>
Date:   Tue Oct 7 12:08:32 2025 +0100

    Clean up annotation layer and signature API

    - Remove duplicate imports in LocalEmbedPDF
    - Remove duplicate setAnnotations state declaration
    - Rename enableSignature prop to enableAnnotations for consistency
    - Remove debug console.log statements from SignatureAPIBridge
    - Remove async image preloading wrapper (was debugging code)
    - Clean up formatting

    🤖 Generated with [Claude Code](https://claude.com/claude-code)

    Co-Authored-By: Claude <noreply@anthropic.com>

commit 8f94c8f57e
Merge: 708a296f8 2a29bda34
Author: Reece <reece@stirlingpdf.com>
Date:   Mon Oct 6 22:25:30 2025 +0100

    Merge branch 'V2' of https://github.com/Stirling-Tools/Stirling-PDF into feature/v2/improve-sign

commit 708a296f8d
Author: Reece <reece@stirlingpdf.com>
Date:   Fri Sep 26 19:14:40 2025 +0100

    Auto update canvas signature

commit b486d1270e
Author: Reece <reece@stirlingpdf.com>
Date:   Fri Sep 26 19:03:24 2025 +0100

    Fix flicker on apply

commit 80faf0bc1e
Author: Reece <reece@stirlingpdf.com>
Date:   Fri Sep 26 18:55:09 2025 +0100

    -

commit 6555a9554a
Author: Reece <reece@stirlingpdf.com>
Date:   Fri Sep 26 18:53:16 2025 +0100

    Fix even more linting errors (Thanks James)

commit fdee719c89
Merge: 1be48c276 fd9fb9b97
Author: Reece <reece@stirlingpdf.com>
Date:   Fri Sep 26 18:14:42 2025 +0100

    Merge branch 'feature/v2/sign' of https://github.com/Stirling-Tools/Stirling-PDF into feature/v2/sign

commit 1be48c276b
Author: Reece <reece@stirlingpdf.com>
Date:   Fri Sep 26 18:12:13 2025 +0100

    fix text infinite loop

commit 2b6b7a8e1d
Author: Reece <reece@stirlingpdf.com>
Date:   Fri Sep 26 18:04:01 2025 +0100

    better error handling and killing logs

commit fd9fb9b972
Author: Reece Browne <74901996+reecebrowne@users.noreply.github.com>
Date:   Fri Sep 26 17:58:52 2025 +0100

    Update frontend/src/hooks/tools/sign/useSignParameters.ts

    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

commit d8d6197008
Author: Reece <reece@stirlingpdf.com>
Date:   Fri Sep 26 17:48:41 2025 +0100

    fix page count issue

commit 1edd133e09
Author: Reece <reece@stirlingpdf.com>
Date:   Fri Sep 26 17:31:44 2025 +0100

    license checker use commonJS

commit 8685bf2a7c
Author: Reece <reece@stirlingpdf.com>
Date:   Fri Sep 26 17:26:19 2025 +0100

    gap

commit 36475069de
Author: Reece <reece@stirlingpdf.com>
Date:   Fri Sep 26 17:23:16 2025 +0100

    lint fix

commit 3aa8572c9e
Author: Reece <reece@stirlingpdf.com>
Date:   Fri Sep 26 17:16:17 2025 +0100

    Fix suggestions

commit 2e2d8477b9
Author: Reece <reece@stirlingpdf.com>
Date:   Fri Sep 26 17:01:06 2025 +0100

    Clean up

commit 90880eddf9
Author: Reece Browne <74901996+reecebrowne@users.noreply.github.com>
Date:   Fri Sep 26 16:51:19 2025 +0100

    Update docker/frontend/nginx.conf

    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

commit 31fd6886dc
Merge: 3fdbf425b abc0988fd
Author: Reece Browne <74901996+reecebrowne@users.noreply.github.com>
Date:   Fri Sep 26 16:40:34 2025 +0100

    Merge branch 'V2' into feature/v2/sign

commit 3fdbf425b4
Author: Reece <reece@stirlingpdf.com>
Date:   Fri Sep 26 16:39:38 2025 +0100

    Fix lintineg errors

commit 50e60d4972
Author: Reece <reece@stirlingpdf.com>
Date:   Fri Sep 26 16:27:52 2025 +0100

    Simple export block

commit a22330ebf4
Author: Reece <reece@stirlingpdf.com>
Date:   Fri Sep 26 16:09:20 2025 +0100

    Only flatten current annotations

commit 172f622c5f
Merge: cfd00b2c7 d82b958d9
Author: Reece <reece@stirlingpdf.com>
Date:   Fri Sep 26 15:10:54 2025 +0100

    Merge branch 'feature/v2/sign' of https://github.com/Stirling-Tools/Stirling-PDF into feature/v2/sign

commit cfd00b2c71
Author: Reece <reece@stirlingpdf.com>
Date:   Fri Sep 26 15:10:47 2025 +0100

    Render signature to pdf

commit d82b958d9f
Merge: c94ee388f 0bdc6466c
Author: Reece Browne <74901996+reecebrowne@users.noreply.github.com>
Date:   Fri Sep 26 12:53:54 2025 +0100

    Merge branch 'V2' into feature/v2/sign

commit c94ee388fc
Author: Reece <reece@stirlingpdf.com>
Date:   Fri Sep 26 12:47:32 2025 +0100

    Restructure and bug fix

commit aa5333dcd9
Author: Reece <reece@stirlingpdf.com>
Date:   Fri Sep 26 03:23:59 2025 +0100

    Change to button based placement to avoid performance issue on canvas

commit a8265efff4
Author: Reece <reece@stirlingpdf.com>
Date:   Fri Sep 26 03:19:05 2025 +0100

    Improved performance

commit b9b425aba0
Author: Reece <reece@stirlingpdf.com>
Date:   Fri Sep 26 02:18:47 2025 +0100

    Fix undo/redo

commit 51caad636c
Author: Reece <reece@stirlingpdf.com>
Date:   Fri Sep 26 01:51:17 2025 +0100

    Reduce logs

commit 023fd43b72
Author: Reece <reece@stirlingpdf.com>
Date:   Fri Sep 26 01:49:33 2025 +0100

    Save file

commit a8a0808274
Author: Reece <reece@stirlingpdf.com>
Date:   Thu Sep 25 09:46:20 2025 +0100

    history tweaks

commit 3d2607f72a
Author: Reece <reece@stirlingpdf.com>
Date:   Wed Sep 24 19:01:36 2025 +0100

    fixes

commit f9542a9257
Merge: a12e45757 963787316
Author: Reece <reece@stirlingpdf.com>
Date:   Wed Sep 24 18:35:16 2025 +0100

    Merge branch 'feature/v2/exportpdf' into feature/v2/sign

commit 963787316a
Author: Reece <reece@stirlingpdf.com>
Date:   Wed Sep 24 17:42:58 2025 +0100

    Export with embedpdf

commit a12e457577
Author: Reece Browne <reecebrowne1995@gmail.com>
Date:   Wed Sep 24 14:58:10 2025 +0100

    Add undo/redo functionality and refactor signature settings UI

    - Introduced HistoryAPIBridge for managing undo/redo actions.
    - Updated SignSettings component to include undo/redo buttons.
    - Refactored signature type selection to use Tabs for better UI.
    - Enhanced SignatureAPIBridge to store image data for annotations.
    - Integrated history management into SignatureContext for state handling.

commit bac61c7e9e
Author: Reece Browne <reecebrowne1995@gmail.com>
Date:   Tue Sep 23 18:16:21 2025 +0100

    Delete signature

commit fc2f34ee15
Author: Reece Browne <reecebrowne1995@gmail.com>
Date:   Tue Sep 23 17:18:39 2025 +0100

    fix add image

commit d9798badae
Author: Reece Browne <reecebrowne1995@gmail.com>
Date:   Tue Sep 23 14:06:41 2025 +0100

    Fix sidebar refresh. Updated UI

commit efc0c1aab3
Author: Reece Browne <reecebrowne1995@gmail.com>
Date:   Tue Sep 23 12:24:58 2025 +0100

    text and improved drawing

commit 10672403c9
Author: Reece Browne <reecebrowne1995@gmail.com>
Date:   Mon Sep 22 14:14:35 2025 +0100

    Colours on document draw + translations

commit 32fed96aa7
Author: Reece Browne <reecebrowne1995@gmail.com>
Date:   Mon Sep 22 14:03:49 2025 +0100

    Canvas and dosument draw split, drawing improvements

commit a70472b172
Author: Reece Browne <reecebrowne1995@gmail.com>
Date:   Sat Sep 20 01:59:04 2025 +0100

    Initial set up

commit 3b87ca0c3c
Merge: 0e1da982b 6172351ee
Author: Reece Browne <reecebrowne1995@gmail.com>
Date:   Fri Sep 19 11:38:58 2025 +0100

    Merge branch 'feature/v2/embed-pdf' of https://github.com/Stirling-Tools/Stirling-PDF into feature/v2/embed-pdf

commit 0e1da982b6
Author: Reece Browne <reecebrowne1995@gmail.com>
Date:   Fri Sep 19 11:38:53 2025 +0100

    Fix vite

commit 6172351eed
Merge: 1174b6a4d ae7be50ec
Author: Reece Browne <74901996+reecebrowne@users.noreply.github.com>
Date:   Fri Sep 19 11:23:28 2025 +0100

    Merge branch 'V2' into feature/v2/embed-pdf

commit 1174b6a4da
Merge: a970c44d0 21a2433dd
Author: Reece Browne <reecebrowne1995@gmail.com>
Date:   Fri Sep 19 11:16:22 2025 +0100

    Merge branch 'feature/v2/embed-pdf' of https://github.com/Stirling-Tools/Stirling-PDF into feature/v2/embed-pdf

commit a970c44d03
Author: Reece Browne <reecebrowne1995@gmail.com>
Date:   Fri Sep 19 11:14:58 2025 +0100

    improvements

commit b574cef54a
Author: Reece Browne <reecebrowne1995@gmail.com>
Date:   Fri Sep 19 10:48:29 2025 +0100

    improvements

commit 21a2433dd8
Author: Reece Browne <74901996+reecebrowne@users.noreply.github.com>
Date:   Thu Sep 18 13:14:44 2025 +0100

    Remove marginTop style from Workbench component

commit 07cc250176
Author: Reece Browne <74901996+reecebrowne@users.noreply.github.com>
Date:   Thu Sep 18 13:12:58 2025 +0100

    Remove comment regarding EmbedPDF import

    Removed comment about dynamic import of EmbedPDF.

commit dc71b3007b
Author: Reece Browne <reecebrowne1995@gmail.com>
Date:   Thu Sep 18 12:32:42 2025 +0100

    clean up

commit 1598057ed0
Author: Reece Browne <reecebrowne1995@gmail.com>
Date:   Thu Sep 18 08:44:57 2025 +0100

    Tweaks

commit 312fc2d615
Author: Reece Browne <reecebrowne1995@gmail.com>
Date:   Thu Sep 18 02:14:31 2025 +0100

    Clean up

commit 72375d89d1
Merge: a990ecc02 7ff1c66d0
Author: Reece Browne <74901996+reecebrowne@users.noreply.github.com>
Date:   Thu Sep 18 01:53:59 2025 +0100

    Merge branch 'V2' into feature/v2/embed-pdf

commit a990ecc02a
Merge: da6ecc661 b51c2e42a
Author: Reece Browne <74901996+reecebrowne@users.noreply.github.com>
Date:   Thu Sep 18 01:53:47 2025 +0100

    Merge branch 'V2' into feature/v2/embed-pdf

commit da6ecc6619
Author: Reece Browne <reecebrowne1995@gmail.com>
Date:   Wed Sep 17 14:35:44 2025 +0100

    Fix scroll page identification

commit dac176f0c6
Author: Reece Browne <reecebrowne1995@gmail.com>
Date:   Wed Sep 17 12:07:44 2025 +0100

    Fix colours

commit 41e5a7fbd6
Author: Reece Browne <reecebrowne1995@gmail.com>
Date:   Wed Sep 17 12:00:20 2025 +0100

    Restructure to avoid global variables
    fix zoom

commit b81ed9ec2e
Merge: 9b5c50db0 81c5d8ff4
Author: Reece Browne <reecebrowne1995@gmail.com>
Date:   Tue Sep 16 19:37:50 2025 +0100

    Merge branch 'feature/v2/embed-pdf' of https://github.com/Stirling-Tools/Stirling-PDF into feature/v2/embed-pdf

commit 9b5c50db07
Author: Reece Browne <reecebrowne1995@gmail.com>
Date:   Tue Sep 16 19:36:36 2025 +0100

    Improved Structure with context at root

commit 81c5d8ff46
Author: James Brunton <james@stirlingpdf.com>
Date:   Tue Sep 16 16:06:40 2025 +0100

    Potential fix for mime type issues

commit a67f5199d3
Author: James Brunton <james@stirlingpdf.com>
Date:   Tue Sep 16 16:06:27 2025 +0100

    Improvements for scroll gestures

commit 3755bfde34
Author: Reece Browne <reecebrowne1995@gmail.com>
Date:   Mon Sep 15 18:20:11 2025 +0100

    Set zoom to 140%

commit 2834eec3be
Merge: 19d7111ca d89e1b5b1
Author: Reece Browne <reecebrowne1995@gmail.com>
Date:   Mon Sep 15 17:31:06 2025 +0100

    Merge branch 'feature/v2/embed-pdf' of https://github.com/Stirling-Tools/Stirling-PDF into feature/v2/embed-pdf

commit d89e1b5b1e
Merge: 5d7fb638a a57373b96
Author: Reece Browne <74901996+reecebrowne@users.noreply.github.com>
Date:   Mon Sep 15 17:27:51 2025 +0100

    Merge branch 'V2' into feature/v2/embed-pdf

commit 19d7111cab
Author: Reece Browne <reecebrowne1995@gmail.com>
Date:   Mon Sep 15 17:27:22 2025 +0100

    Remove unused code

commit ca9d7ef465
Author: Reece Browne <reecebrowne1995@gmail.com>
Date:   Mon Sep 15 17:03:52 2025 +0100

    Remove unused code

commit fad4f84c9c
Author: Reece Browne <reecebrowne1995@gmail.com>
Date:   Mon Sep 15 16:53:41 2025 +0100

    translations

commit 35863ac610
Author: Reece Browne <reecebrowne1995@gmail.com>
Date:   Mon Sep 15 16:53:32 2025 +0100

    remove select mode

commit c17dd25069
Author: Reece Browne <reecebrowne1995@gmail.com>
Date:   Mon Sep 15 16:05:19 2025 +0100

    Rotate

commit 5d7fb638af
Merge: 2fb4710dd 7dad484aa
Author: Reece Browne <74901996+reecebrowne@users.noreply.github.com>
Date:   Mon Sep 15 15:31:45 2025 +0100

    Merge branch 'V2' into feature/v2/embed-pdf

commit 2fb4710dd7
Merge: 85a74c1d4 cfdb6eaa1
Author: Reece Browne <74901996+reecebrowne@users.noreply.github.com>
Date:   Mon Sep 15 13:34:00 2025 +0100

    Merge branch 'V2' into feature/v2/embed-pdf

commit 85a74c1d46
Merge: 21a93d6ca 9599bca8a
Author: Reece Browne <reecebrowne1995@gmail.com>
Date:   Mon Sep 15 13:33:45 2025 +0100

    Merge branch 'feature/v2/embed-pdf' of https://github.com/Stirling-Tools/Stirling-PDF into feature/v2/embed-pdf

commit 21a93d6cac
Author: Reece Browne <reecebrowne1995@gmail.com>
Date:   Mon Sep 15 13:33:39 2025 +0100

    Context based right rail controls for viewer

commit 9599bca8a9
Author: Reece Browne <74901996+reecebrowne@users.noreply.github.com>
Date:   Mon Sep 15 12:37:07 2025 +0100

    Update frontend/src/components/viewer/ThumbnailSidebar.tsx

    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

commit 1709ca9049
Author: Reece Browne <reecebrowne1995@gmail.com>
Date:   Fri Sep 12 16:38:29 2025 +0100

    Rems

commit 18e4e03220
Author: Reece Browne <reecebrowne1995@gmail.com>
Date:   Fri Sep 12 16:26:05 2025 +0100

    rename APIBridge

commit 9901771572
Author: Reece Browne <reecebrowne1995@gmail.com>
Date:   Fri Sep 12 16:19:07 2025 +0100

    improve search

commit 514956570c
Author: Reece Browne <reecebrowne1995@gmail.com>
Date:   Fri Sep 12 15:06:06 2025 +0100

    pan state improvements

commit 423617db52
Author: Reece Browne <reecebrowne1995@gmail.com>
Date:   Fri Sep 12 14:21:31 2025 +0100

    thumbnail sidebar

commit 143f0c5031
Author: Reece Browne <reecebrowne1995@gmail.com>
Date:   Fri Sep 12 01:56:51 2025 +0100

    search pdf

commit 368e9801a1
Author: Reece Browne <reecebrowne1995@gmail.com>
Date:   Fri Sep 12 00:35:27 2025 +0100

    Zoom with wheel and +/-

commit afc9ca5858
Author: Reece Browne <reecebrowne1995@gmail.com>
Date:   Thu Sep 11 23:52:38 2025 +0100

    spread/multipage

commit 8815575124
Author: Reece Browne <reecebrowne1995@gmail.com>
Date:   Thu Sep 11 22:51:10 2025 +0100

    pan

commit fb9b01f53b
Author: Reece Browne <reecebrowne1995@gmail.com>
Date:   Thu Sep 11 20:07:43 2025 +0100

    improved scaling and fix grey void

commit 93607937f6
Author: Reece Browne <reecebrowne1995@gmail.com>
Date:   Thu Sep 11 19:38:04 2025 +0100

    selection also

commit 687ab39286
Author: Reece Browne <reecebrowne1995@gmail.com>
Date:   Thu Sep 11 19:36:44 2025 +0100

    Text selection

commit 83a3222cf6
Author: Reece Browne <reecebrowne1995@gmail.com>
Date:   Thu Sep 11 19:08:44 2025 +0100

    Set up
2025-10-28 14:39:11 +00:00
James Brunton
d2b38ef4b8
Restructure frontend code to allow for extensions (#4721)
# Description of Changes
Move frontend code into `core` folder and add infrastructure for
`proprietary` folder to include premium, non-OSS features
2025-10-28 10:29:36 +00:00
ConnorYoh
960d48f80c
Customised Analytics for admins and users (#4687)
Adds granular privacy controls for analytics - splits single
enableAnalytics toggle into separate PostHog and Scarf controls with
improved admin
  UX.

  Backend Changes

  Configuration (ApplicationProperties.java)
  - Added enablePosthog and enableScarf boolean fields
- New methods: isPosthogEnabled(), isScarfEnabled() (null = enabled when
analytics is on)

  Services
- PostHogService: Now checks isPosthogEnabled() instead of
isAnalyticsEnabled()
  - ConfigController: Exposes new flags via API
- SettingsController: Changed endpoint from @RequestBody to
@RequestParam

  Frontend Changes

  Architecture
- Converted useAppConfig hook → AppConfigContext provider for global
access
  - Added refetch() method for config updates without reload

  New Features
1. AdminAnalyticsChoiceModal: First-launch modal when enableAnalytics
=== null
    - Enable/disable without editing YAML
    - Includes documentation link
  2. Scarf Tracking System: Modular utility with React hook wrapper
    - Respects config + per-service cookie consent
    - Works from any code location (React or vanilla JS)
3. Enhanced Cookie Consent: Per-service toggles (PostHog and Scarf
separate)

  Integration
  - App.tsx: Added AppConfigProvider + scarf initializer
  - HomePage.tsx: Shows admin modal when needed
  - index.tsx: PostHog opt-out by default, service-level consent

  Key Benefits

 Backward compatible (null defaults to enabled)
 Granular control per analytics service
 First-launch admin modal (no YAML editing)
 Privacy-focused with opt-out defaults
 API-based config updates

---------

Co-authored-by: Connor Yoh <connor@stirlingpdf.com>
2025-10-27 16:54:59 +00:00
Anthony Stirling
2e932f30bf
docker (#4711)
# Description of Changes

<!--
Please provide a summary of the changes, including:

- What was changed
- Why the change was made
- Any challenges encountered

Closes #(issue_number)
-->

---

## Checklist

### General

- [ ] I have read the [Contribution
Guidelines](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/CONTRIBUTING.md)
- [ ] I have read the [Stirling-PDF Developer
Guide](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/devGuide/DeveloperGuide.md)
(if applicable)
- [ ] I have read the [How to add new languages to
Stirling-PDF](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/devGuide/HowToAddNewLanguage.md)
(if applicable)
- [ ] I have performed a self-review of my own code
- [ ] My changes generate no new warnings

### Documentation

- [ ] 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)
- [ ] I have read the section [Add New Translation
Tags](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/devGuide/HowToAddNewLanguage.md#add-new-translation-tags)
(for new translation tags only)

### UI Changes (if applicable)

- [ ] Screenshots or videos demonstrating the UI changes are attached
(e.g., as comments or direct attachments in the PR)

### Testing (if applicable)

- [ ] I have tested my changes locally. Refer to the [Testing
Guide](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/devGuide/DeveloperGuide.md#6-testing)
for more details.

Co-authored-by: ConnorYoh <40631091+ConnorYoh@users.noreply.github.com>
2025-10-27 16:45:18 +00:00
Ludy
81dec53488
style(frontend): remove redundant React imports in TypeScript components (#4738)
# Description of Changes

This pull request removes unnecessary imports of the default React
object from multiple frontend files. The changes help clean up the
codebase by only importing specific React hooks where needed, rather
than importing the entire React object.

**Code cleanup and import optimization:**

* Removed default `React` imports from component files, retaining only
the necessary React hooks (such as `useEffect`, `useState`, `useMemo`,
etc.) in files like `FileEditor.tsx`, `FullscreenToolList.tsx`,
`ToolPanel.tsx`, `PageNumberPreview.tsx`, `AdjustContrastPreview.tsx`,
`AutomationRun.tsx`, `LocalEmbedPDFWithAnnotations.tsx`,
`ToolRegistryProvider.tsx`, `useTranslatedToolRegistry.tsx`, and
`AdjustContrast.tsx`.
[[1]](diffhunk://#diff-481d0a2d8a1714d34d21181db63a020b08dfccfbfa80bf47ac9af382dff25310L1-R1)
[[2]](diffhunk://#diff-1d6e9507cb0744e03ec0e80c510874bfc5054986b0275ae3b8592eb67b5ec0f2L1-R1)
[[3]](diffhunk://#diff-8ee3da71652291722dc6130f44565c098fe0f9cdf5e8ec0ba3c631be8980b13eL1-R1)
[[4]](diffhunk://#diff-ecc12bf9b557e947ae2f1866d07446b19bad1fbdf143bf231dd3076b1e794826L1-R1)
[[5]](diffhunk://#diff-6ba4ca6f491368b62e160639e97207f5c1d35fee77f4eebd39133630e0ecb7a1L1-R1)
[[6]](diffhunk://#diff-ff7cba3dba3b1f4ec4c8758a9fbe539351f96225284d0c61cca2642ec7a8e486L1-R1)
[[7]](diffhunk://#diff-d99cf54aa50d266c08844fac31c79e73a7f1714adeedb186d1decab8b9fb7f78L1-R1)
[[8]](diffhunk://#diff-3467ae2b00d2ea95c360bc367adfbae124a4fb1d2627e889d12fb00e288bf508L1-R1)
[[9]](diffhunk://#diff-0a3e636736c137356dd9354ff3cacbd302ebda40147545e13c62d073525d1969L1-R1)
[[10]](diffhunk://#diff-2fed64bea41254c30dcc038f6b92943272bcaa771af200b8a3dc1a2cef6b5ca7L2-R2)
* Removed default `React` imports from presentational and settings
components that do not use JSX at the top level, such as
`Workbench.tsx`, `SliderWithInput.tsx`,
`AdjustContrastBasicSettings.tsx`, `AdjustContrastColorSettings.tsx`,
`AdjustContrastSingleStepSettings.tsx`, `FileSummaryHeader.tsx`,
`SignatureSection.tsx`, `SignatureStatusBadge.tsx`, and
`ThumbnailPreview.tsx`.
[[1]](diffhunk://#diff-6ffa9f7048b8e2a454ccf52b712179784cf32d42ecac9c85331c595a4cee39b4L1)
[[2]](diffhunk://#diff-a1159e58f6668bc6de9595b4014fd7b8e0a19f9efa75294ba80184cfe54b601fL1)
[[3]](diffhunk://#diff-ce5bbd748c15bc456e7f01180b7ff04c80c782e3d6662384f28e032af36ed3ccL1)
[[4]](diffhunk://#diff-494006ec5e237eb7b3a16b9bc144a6ed49ed38c547d95b68a89f69a5af6676ceL1)
[[5]](diffhunk://#diff-e61a3e2d98c9601eea868062258b925e6f6d672f49df14e3684b12f736622db4L1)
[[6]](diffhunk://#diff-97df8b451114e347bb3f581ff5c91057601fb821e224479e1106493ce9479dcdL1)
[[7]](diffhunk://#diff-cc070bfc4dc892a4e9a2be725c9f27ab66bdbc821a525fad10e14b27096d4e5aL1)
[[8]](diffhunk://#diff-c179df2634412e4938bcd686f86b3bdbd1a6039d8a8b62c44fd0c085cc58af74L1)
[[9]](diffhunk://#diff-64403230a8c8e90135bd8d7cd275c40d8e22bd3a22ed642dec5451018eec3c10L1)

These changes reduce unnecessary imports and make the codebase cleaner
and more consistent.

---

## Checklist

### General

- [ ] I have read the [Contribution
Guidelines](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/CONTRIBUTING.md)
- [ ] I have read the [Stirling-PDF Developer
Guide](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/devGuide/DeveloperGuide.md)
(if applicable)
- [ ] I have read the [How to add new languages to
Stirling-PDF](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/devGuide/HowToAddNewLanguage.md)
(if applicable)
- [ ] I have performed a self-review of my own code
- [ ] My changes generate no new warnings

### Documentation

- [ ] 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)
- [ ] I have read the section [Add New Translation
Tags](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/devGuide/HowToAddNewLanguage.md#add-new-translation-tags)
(for new translation tags only)

### UI Changes (if applicable)

- [ ] Screenshots or videos demonstrating the UI changes are attached
(e.g., as comments or direct attachments in the PR)

### Testing (if applicable)

- [ ] I have tested my changes locally. Refer to the [Testing
Guide](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/devGuide/DeveloperGuide.md#6-testing)
for more details.

Co-authored-by: ConnorYoh <40631091+ConnorYoh@users.noreply.github.com>
2025-10-27 16:40:43 +00:00
Anthony Stirling
c33d705c32
update terms (#4642)
# Description of Changes

<!--
Please provide a summary of the changes, including:

- What was changed
- Why the change was made
- Any challenges encountered

Closes #(issue_number)
-->

---

## Checklist

### General

- [ ] I have read the [Contribution
Guidelines](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/CONTRIBUTING.md)
- [ ] I have read the [Stirling-PDF Developer
Guide](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/devGuide/DeveloperGuide.md)
(if applicable)
- [ ] I have read the [How to add new languages to
Stirling-PDF](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/devGuide/HowToAddNewLanguage.md)
(if applicable)
- [ ] I have performed a self-review of my own code
- [ ] My changes generate no new warnings

### Documentation

- [ ] 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)
- [ ] I have read the section [Add New Translation
Tags](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/devGuide/HowToAddNewLanguage.md#add-new-translation-tags)
(for new translation tags only)

### UI Changes (if applicable)

- [ ] Screenshots or videos demonstrating the UI changes are attached
(e.g., as comments or direct attachments in the PR)

### Testing (if applicable)

- [ ] I have tested my changes locally. Refer to the [Testing
Guide](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/devGuide/DeveloperGuide.md#6-testing)
for more details.

Co-authored-by: ConnorYoh <40631091+ConnorYoh@users.noreply.github.com>
2025-10-27 16:37:13 +00:00
Ludy
20600ac1c3
ci(deps): pin GitHub Actions to SHAs, upgrade to checkout v5 & setup-* v5/6, adopt Node 22, harden runner, bump docker-compose (#4591)
# Description of Changes

<!--
Please provide a summary of the changes, including:

- What was changed
- Why the change was made
- Any challenges encountered

Closes #(issue_number)
-->

---

## Checklist

### General

- [ ] I have read the [Contribution
Guidelines](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/CONTRIBUTING.md)
- [ ] I have read the [Stirling-PDF Developer
Guide](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/devGuide/DeveloperGuide.md)
(if applicable)
- [ ] I have read the [How to add new languages to
Stirling-PDF](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/devGuide/HowToAddNewLanguage.md)
(if applicable)
- [ ] I have performed a self-review of my own code
- [ ] My changes generate no new warnings

### Documentation

- [ ] 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)
- [ ] I have read the section [Add New Translation
Tags](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/devGuide/HowToAddNewLanguage.md#add-new-translation-tags)
(for new translation tags only)

### UI Changes (if applicable)

- [ ] Screenshots or videos demonstrating the UI changes are attached
(e.g., as comments or direct attachments in the PR)

### Testing (if applicable)

- [ ] I have tested my changes locally. Refer to the [Testing
Guide](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/devGuide/DeveloperGuide.md#6-testing)
for more details.

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-10-27 16:32:45 +00:00