Commit Graph

1732 Commits

Author SHA1 Message Date
Sean Morley
97f4a47ffd feat(lodging): implement quick start feature for lodging creation
- Added LodgingQuickStart component to facilitate quick lodging entry.
- Integrated Google Maps support for lodging selection and details enrichment.
- Enhanced LodgingModal to include quick start step and handle prefill from Google Places.
- Introduced utility function to infer lodging type from Google Places data.
- Updated localization files to include new strings for quick start functionality.
2026-04-24 22:12:10 -04:00
Sean Morley
842425371b fix: update default value for ENABLE_RATE_LIMITS in Docker configuration 2026-04-24 18:21:53 -04:00
Johannes Roeßler
7d61a247ea Translated using Weblate (German)
Currently translated at 99.7% (1094 of 1097 strings)

Translation: AdventureLog/Web App
Translate-URL: https://hosted.weblate.org/projects/adventurelog/web-app/de/
2026-04-21 17:14:14 +02:00
Johannes Roeßler
2c807f416a Translated using Weblate (German)
Currently translated at 99.7% (1094 of 1097 strings)

Translation: AdventureLog/Web App
Translate-URL: https://hosted.weblate.org/projects/adventurelog/web-app/de/
2026-04-21 13:55:00 +02:00
Francisco Serrador
aa1748ab1b Translated using Weblate (Spanish)
Currently translated at 100.0% (1097 of 1097 strings)

Translation: AdventureLog/Web App
Translate-URL: https://hosted.weblate.org/projects/adventurelog/web-app/es/
2026-04-15 14:43:34 +02:00
Sean Morley
8a574cf675 fix: format code for better readability in LocationQuickStart component 2026-04-04 22:26:39 -04:00
Sean Morley
f1548d1fb0 fix: improve error handling for image import and permission validation 2026-04-04 22:24:43 -04:00
Sean Morley
fe127b5097 fix: update PR handling to ignore dependabot in addition to maintainer 2026-04-04 22:19:37 -04:00
Sean Morley
0758871582 feat: enhance API key security with PBKDF2 hashing and configurable iterations 2026-04-04 22:17:21 -04:00
Matthias Thym
ed673e63c5 fix: typo in backend success response (#1010) 2026-04-04 22:06:35 -04:00
Sean Morley
fed46754b2 Merge pull request #1097 from seanmorley15/quickadd
Quickadd
2026-04-04 21:24:48 -04:00
Sean Morley
f5e294f81b fix: Remove unused API keys section from Norwegian and Polish locale files 2026-04-04 21:24:28 -04:00
Sean Morley
194a5c278a Merge branch 'development' into quickadd 2026-04-04 21:23:59 -04:00
Sean Morley
5291c8ad3a API Key, Webkit Fixes, Rate Limit Support & Other Misc. Fixes (#1094)
* Refactor AdventureLog Bot workflow to improve issue validation handling and encapsulate comment and close logic

* feat: add API key management to settings page

- Implemented API key creation, deletion, and display functionality.
- Updated the settings page to fetch and show existing API keys.
- Added UI elements for creating new API keys and copying them to clipboard.
- Enhanced request handling to ensure proper trailing slashes for API endpoints.

* feat: add API Keys documentation and update contributing guidelines

* fix: update appVersion to reflect the latest build

* fix: update @tailwindcss/typography to version 0.5.19

* fix: update @tailwindcss/typography to version 0.5.19

* chore: update dependencies in pnpm-lock.yaml

- dompurify: upgraded from 3.3.1 to 3.3.3
- emoji-picker-element: upgraded from 1.29.0 to 1.29.1
- @sveltejs/adapter-node: updated to use @sveltejs/kit@2.55.0
- @sveltejs/adapter-vercel: updated to use @sveltejs/kit@2.55.0
- @sveltejs/kit: upgraded from 2.53.3 to 2.55.0
- @types/node: upgraded from 22.19.13 to 22.19.15
- autoprefixer: updated postcss version from 8.5.6 to 8.5.8
- baseline-browser-mapping: upgraded from 2.10.0 to 2.10.8
- daisyui: updated postcss version from 8.5.6 to 8.5.8
- prettier-plugin-svelte: upgraded from 3.5.0 to 3.5.1
- svelte-check: updated postcss version from 8.5.6 to 8.5.8
- devalue: upgraded from 5.6.3 to 5.6.4
- electron-to-chromium: upgraded from 1.5.302 to 1.5.313
- caniuse-lite: upgraded from 1.0.30001774 to 1.0.30001780
- mlly: upgraded from 1.8.0 to 1.8.1
- node-releases: upgraded from 2.0.27 to 2.0.36
- tar: upgraded from 7.5.9 to 7.5.11
- tinyexec: upgraded from 1.0.2 to 1.0.4

* fix: update appVersion to include the latest build identifier

* fix: enhance authentication fallback for protected media access

* feat(auth): add 'mobile-qr' to trailing slash list for URL handling

* Translated using Weblate (French)

Currently translated at 99.9% (1091 of 1092 strings)

Translation: AdventureLog/Web App
Translate-URL: https://hosted.weblate.org/projects/adventurelog/web-app/fr/

* Translated using Weblate (Korean)

Currently translated at 100.0% (1092 of 1092 strings)

Translation: AdventureLog/Web App
Translate-URL: https://hosted.weblate.org/projects/adventurelog/web-app/ko/

* Translated using Weblate (German)

Currently translated at 100.0% (1092 of 1092 strings)

Translation: AdventureLog/Web App
Translate-URL: https://hosted.weblate.org/projects/adventurelog/web-app/de/

* Translated using Weblate (Swedish)

Currently translated at 100.0% (1092 of 1092 strings)

Translation: AdventureLog/Web App
Translate-URL: https://hosted.weblate.org/projects/adventurelog/web-app/sv/

* Added translation using Weblate (Catalan)

* Translated using Weblate (Catalan)

Currently translated at 1.2% (14 of 1092 strings)

Translation: AdventureLog/Web App
Translate-URL: https://hosted.weblate.org/projects/adventurelog/web-app/ca/

* Docs: Reorder immich API permissions to natural order (#1086)

* Refactor AdventureLog Bot workflow to improve issue validation handling and encapsulate comment and close logic (#1068)

* Reorder immich API permissions to natural order

---------

Co-authored-by: Sean Morley <git@seanmorley.com>

* Translated using Weblate (Turkish)

Currently translated at 100.0% (1093 of 1093 strings)

Translation: AdventureLog/Web App
Translate-URL: https://hosted.weblate.org/projects/adventurelog/web-app/tr/

* Translated using Weblate (Swedish)

Currently translated at 100.0% (1093 of 1093 strings)

Translation: AdventureLog/Web App
Translate-URL: https://hosted.weblate.org/projects/adventurelog/web-app/sv/

* Translated using Weblate (German)

Currently translated at 100.0% (1093 of 1093 strings)

Translation: AdventureLog/Web App
Translate-URL: https://hosted.weblate.org/projects/adventurelog/web-app/de/

* Add ENABLE_RATE_LIMITS configuration for backend rate limiting

* Set tabindex to -1 for dropdown menus to improve accessibility

* Refactor settings page: Simplify HTML structure and improve date formatting for API keys

* Update DEFAULT_SCHEMA_CLASS to use OpenAPI schema in REST framework settings

* fix: update error message for key copying and enhance usage instructions for API key

* Implement feature X to enhance user experience and fix bug Y in module Z

* feat: add .dockerignore and update Dockerfile for improved build process

* fix: add missing svelte-i18n>esbuild override in pnpm-lock and pnpm-workspace files

* refactor: update frontend CI workflow for improved quality checks and dependency management

* Refactor code structure for improved readability and maintainability

* fix: add vite>esbuild override in pnpm-lock and pnpm-workspace files

* refactor: enhance accessibility and semantics of button elements across multiple components

* feat: update API key deletion confirmation messages in multiple languages and improve server URL configuration

* fix: update djangorestframework version constraint and drf-yasg version in requirements

* fix: update appVersion to v0.12.0-main-040426 and refactor button elements to improve accessibility in CollectionCard and CollectionItineraryPlanner components

* feat: implement developer unlock feature for mobile login in Avatar component

---------

Co-authored-by: lesensei <alain-gh@lespeps.eu>
Co-authored-by: Hosted Weblate user 141821 <clearstripe@users.noreply.hosted.weblate.org>
Co-authored-by: Alex <div@alexe.at>
Co-authored-by: AntonPalmqvist <apq@users.noreply.hosted.weblate.org>
Co-authored-by: Marc Llopart <marc@medullar.com>
Co-authored-by: Stephan Zwicknagl <64196842+stephanzwicknagl@users.noreply.github.com>
Co-authored-by: Orhun <orhunavcu@gmail.com>
Co-authored-by: bittin1ddc447d824349b2 <bittin@reimu.nl>
2026-04-04 21:00:02 -04:00
Sean Morley
482b4498ad feat: Enhance LocationQuickStart component with quick add functionality and location enrichment
- Added quick add feature for locations with category selection.
- Implemented location description enrichment using Google Maps API.
- Improved search functionality and result handling.
- Introduced new utility functions for location saving and validation.
- Updated UI to reflect changes in location selection and quick add status.
- Added toast notifications for user feedback on actions.
- Refactored existing code for better readability and maintainability.

fix: Ensure finite coordinates in LocationSearchMap component

- Added validation for initial selection coordinates to prevent errors.

chore: Update app version to v0.12.0-main-033126

- Updated versioning in config file.

feat: Create location-save module for handling location data saving

- Implemented saveLocation function to handle both new and existing location data.
- Added utility functions for coordinate formatting and link sanitization.
2026-04-03 21:22:16 -04:00
Sean Morley
2313e8ff0e Set tabindex to -1 for dropdown menus to improve accessibility 2026-03-31 22:02:30 -04:00
Sean Morley
e2a7e1886a Add ENABLE_RATE_LIMITS configuration for backend rate limiting 2026-03-31 21:55:28 -04:00
Alex
a7aa1ca636 Translated using Weblate (German)
Currently translated at 100.0% (1093 of 1093 strings)

Translation: AdventureLog/Web App
Translate-URL: https://hosted.weblate.org/projects/adventurelog/web-app/de/
2026-03-31 17:27:18 +02:00
bittin1ddc447d824349b2
b00a04bc2c Translated using Weblate (Swedish)
Currently translated at 100.0% (1093 of 1093 strings)

Translation: AdventureLog/Web App
Translate-URL: https://hosted.weblate.org/projects/adventurelog/web-app/sv/
2026-03-31 17:27:18 +02:00
Orhun
9104809054 Translated using Weblate (Turkish)
Currently translated at 100.0% (1093 of 1093 strings)

Translation: AdventureLog/Web App
Translate-URL: https://hosted.weblate.org/projects/adventurelog/web-app/tr/
2026-03-31 17:27:18 +02:00
Stephan Zwicknagl
6467f1438a Docs: Reorder immich API permissions to natural order (#1086)
* Refactor AdventureLog Bot workflow to improve issue validation handling and encapsulate comment and close logic (#1068)

* Reorder immich API permissions to natural order

---------

Co-authored-by: Sean Morley <git@seanmorley.com>
2026-03-30 11:19:28 -04:00
Marc Llopart
e03c96c9cd Translated using Weblate (Catalan)
Currently translated at 1.2% (14 of 1092 strings)

Translation: AdventureLog/Web App
Translate-URL: https://hosted.weblate.org/projects/adventurelog/web-app/ca/
2026-03-24 16:50:11 +01:00
Marc Llopart
bd9ba3f099 Added translation using Weblate (Catalan) 2026-03-24 16:50:11 +01:00
AntonPalmqvist
4046e4c051 Translated using Weblate (Swedish)
Currently translated at 100.0% (1092 of 1092 strings)

Translation: AdventureLog/Web App
Translate-URL: https://hosted.weblate.org/projects/adventurelog/web-app/sv/
2026-03-24 16:50:11 +01:00
Alex
79ecf1df5e Translated using Weblate (German)
Currently translated at 100.0% (1092 of 1092 strings)

Translation: AdventureLog/Web App
Translate-URL: https://hosted.weblate.org/projects/adventurelog/web-app/de/
2026-03-24 16:50:11 +01:00
Hosted Weblate user 141821
34031d37a0 Translated using Weblate (Korean)
Currently translated at 100.0% (1092 of 1092 strings)

Translation: AdventureLog/Web App
Translate-URL: https://hosted.weblate.org/projects/adventurelog/web-app/ko/
2026-03-24 16:50:11 +01:00
lesensei
b5da5c141e Translated using Weblate (French)
Currently translated at 99.9% (1091 of 1092 strings)

Translation: AdventureLog/Web App
Translate-URL: https://hosted.weblate.org/projects/adventurelog/web-app/fr/
2026-03-24 16:50:11 +01:00
Sean Morley
8fc16d539f feat(auth): add 'mobile-qr' to trailing slash list for URL handling 2026-03-17 23:47:27 -04:00
Sean Morley
b15724f021 fix: enhance authentication fallback for protected media access 2026-03-17 09:22:45 -04:00
Sean Morley
d93027ac1e fix: update appVersion to include the latest build identifier 2026-03-17 09:11:56 -04:00
Sean Morley
65be9734d1 chore: update dependencies in pnpm-lock.yaml
- dompurify: upgraded from 3.3.1 to 3.3.3
- emoji-picker-element: upgraded from 1.29.0 to 1.29.1
- @sveltejs/adapter-node: updated to use @sveltejs/kit@2.55.0
- @sveltejs/adapter-vercel: updated to use @sveltejs/kit@2.55.0
- @sveltejs/kit: upgraded from 2.53.3 to 2.55.0
- @types/node: upgraded from 22.19.13 to 22.19.15
- autoprefixer: updated postcss version from 8.5.6 to 8.5.8
- baseline-browser-mapping: upgraded from 2.10.0 to 2.10.8
- daisyui: updated postcss version from 8.5.6 to 8.5.8
- prettier-plugin-svelte: upgraded from 3.5.0 to 3.5.1
- svelte-check: updated postcss version from 8.5.6 to 8.5.8
- devalue: upgraded from 5.6.3 to 5.6.4
- electron-to-chromium: upgraded from 1.5.302 to 1.5.313
- caniuse-lite: upgraded from 1.0.30001774 to 1.0.30001780
- mlly: upgraded from 1.8.0 to 1.8.1
- node-releases: upgraded from 2.0.27 to 2.0.36
- tar: upgraded from 7.5.9 to 7.5.11
- tinyexec: upgraded from 1.0.2 to 1.0.4
2026-03-17 09:08:22 -04:00
Sean Morley
6cb32beeb8 fix: update @tailwindcss/typography to version 0.5.19 2026-03-17 09:04:44 -04:00
Sean Morley
fa3a5e0314 fix: update @tailwindcss/typography to version 0.5.19 2026-03-17 09:03:26 -04:00
Sean Morley
8c03126920 fix: update appVersion to reflect the latest build 2026-03-17 08:55:39 -04:00
Sean Morley
cd85a7377a feat: add API Keys documentation and update contributing guidelines 2026-03-16 15:34:33 -04:00
Sean Morley
1dcf99be7d feat: add API key management to settings page
- Implemented API key creation, deletion, and display functionality.
- Updated the settings page to fetch and show existing API keys.
- Added UI elements for creating new API keys and copying them to clipboard.
- Enhanced request handling to ensure proper trailing slashes for API endpoints.
2026-03-16 15:14:32 -04:00
Sean Morley
3e886ae0e1 Refactor AdventureLog Bot workflow to improve issue validation handling and encapsulate comment and close logic (#1068) 2026-03-16 11:41:02 -04:00
Sean Morley
5f5830a8a2 Refactor AdventureLog Bot workflow to improve issue validation handling and encapsulate comment and close logic 2026-03-16 11:40:44 -04:00
Sean Morley
87258bac1f Enhance issue reference validation in PRs by improving regex matching and error handling for missing issues (#1066) 2026-03-16 11:28:28 -04:00
Sean Morley
c9715993c5 Refactor label mapping and option selection logic for project status updates (#1064) 2026-03-16 11:14:27 -04:00
Sean Morley
267752a19a Refactor fetchIssueProjectItems function for improved clarity and error handling in project status updates (#1063) 2026-03-16 11:11:26 -04:00
Sean Morley
dd3a67db9c Refactor sync-project-status workflow to improve project item retrieval and enhance logging for unmatched issues (#1062) 2026-03-16 11:05:14 -04:00
Sean Morley
1e4711a6a2 Enhance project item retrieval logic with pagination support (#1061) 2026-03-16 11:02:30 -04:00
Sean Morley
6ebc820630 Refactor sync-project-status workflow for improved readability and efficiency (#1059) 2026-03-16 10:58:05 -04:00
Sean Morley
5821395257 Refine issue templates (#1058)
* Update issue templates: refine version description and add backlog label

* Update appVersion to v0.12.0-main-031626
2026-03-16 10:41:59 -04:00
Sean Morley
9a88f7b093 Enhance money parsing, profile stats, and user experience (#1057)
* Enhance money parsing and normalization in BackupViewSet

* Refactor money parsing in BackupViewSet for schema safety and enhance profile statistics display with new metrics

* Improve throttling handling in auth hooks to enhance user experience during high-load scenarios

* fix(deps):  update countries-states-cities-database v3.1 (#1047)

update countries-states-cities-database to fixed some cities error

* fix: update appVersion to v0.12.0-main-031526

* feat: enhance CategoryFilterDropdown with event dispatching and URL synchronization. Fixes [BUG] Category Filter not working in v0.12.0
Fixes #990

* feat(profile): add record holders for activities and display details in profile page

* feat: restructure issue templates and enhance contribution guidelines

* Potential fix for code scanning alert no. 50: Workflow does not contain permissions

Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>

* Potential fix for code scanning alert no. 51: Workflow does not contain permissions

Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>

---------

Co-authored-by: 橙 <chengjunchao@hotmail.com>
Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
2026-03-16 10:35:38 -04:00
Sean Morley
7ca58202c9 Misc. Bug Fixes and README Improvments (#1053)
* Add account rate limits for allauth authentication actions

* Add Supporters section to README with corporate sponsors and individual supporters

* Remove redundant lines and clean up supporter sections in README

* Update support link in README and ensure Supporters section is included in the Table of Contents
2026-03-13 09:04:25 -04:00
Sean Morley
2b644d3afa Bug Fixes + Romanian Localization (#1034)
* Added translation using Weblate (Romanian)

* Translated using Weblate (Romanian)

Currently translated at 4.1% (45 of 1073 strings)

Translation: AdventureLog/Web App
Translate-URL: https://hosted.weblate.org/projects/adventurelog/web-app/ro/

* Fix Svelte dependencies

* Add Romanian language support by registering locale files

* Update appVersion to 'v0.12.0-main-022726'

---------

Co-authored-by: Hango Bogdan Ioan <hangobogdan@gmail.com>
2026-02-27 15:30:18 -05:00
Sean Morley
c6efdaa75b Version bump for v0.12.0 (#1024)
* Update version to v0.12.0 across documentation, configuration, and Docker files

* Collapse Troubleshooting and Guides sections in documentation config
v0.12.0
2026-02-23 09:00:13 -05:00
Sean Morley
bec90fe2a5 Bug Fixes + Duplicate Support (#1016)
* Update README.md supporter list

* Fix: Multiple bug fixes and features bundle (#888, #991, #617, #984) (#1007)

* fix: resolve location creation failures, broken image uploads, and invalid URL handling

- Add missing addToast import in LocationDetails.svelte for proper error feedback
- Add objectId check and error response handling in ImageManagement.svelte to prevent ghost images
- Add Content-Type check in +page.server.ts image action to handle non-JSON backend responses
- Add client-side URL validation in LocationDetails.svelte (invalid URLs → null)
- Improve Django field error extraction for user-friendly toast messages
- Clean up empty description fields (whitespace → null)
- Update BUGFIX_DOCUMENTATION.md with detailed fix descriptions

* feat: bug fixes and new features bundle

Bug fixes:
- fix: resolve PATCH location with visits (#888)
- fix: Wikipedia/URL image upload via server-side proxy (#991)
- fix: private/public toggle race condition (#617)
- fix: location creation feedback (addToast import)
- fix: invalid URL handling for locations and collections
- fix: world map country highlighting (bg-*-200 -> bg-*-400)
- fix: clipboard API polyfill for HTTP contexts
- fix: MultipleObjectsReturned for duplicate images
- fix: SvelteKit proxy sessionid cookie forwarding

Features:
- feat: duplicate location button (list + detail view)
- feat: duplicate collection button
- feat: i18n translations for 19 languages
- feat: improved error handling and user feedback

Technical:
- Backend: fetch_from_url endpoint with SSRF protection
- Backend: validate_link() for collections
- Backend: file_permissions filter() instead of get()
- Frontend: copyToClipboard() helper function
- Frontend: clipboard polyfill via server-side injection

* chore: switch docker-compose from image to build

Use local source code builds instead of upstream :latest images
to preserve our custom patches and fixes.

* fix: lodging save errors, AI language support, and i18n improvements

- Fix Lodging save: add res.ok checks, error toasts, isSaving state (#984)
- Fix URL validation: silently set invalid URLs to null (Lodging, Transportation)
- Fix AI description language: pass user locale to Wikipedia API
- Fix missing i18n keys: Strava toggle buttons (show/hide)
- Add CHANGELOG.md
- Remove internal documentation from public tracking
- Update .gitignore for Cursor IDE and internal docs

Co-authored-by: Cursor <cursoragent@cursor.com>

* feat: update location duplication handling, improve UI feedback, and enhance localization support

---------

Co-authored-by: AdventureLog Bugfix <bugfix@adventurelog.local>
Co-authored-by: madmp87 <info@so-pa.de>
Co-authored-by: Mathias Ponnwitz <devuser@dockge-dev.fritz.box>
Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Sean Morley <mail@seanmorley.com>

* Enhance duplication functionality for collections and locations; update UI to reflect changes

* Potential fix for code scanning alert no. 49: Information exposure through an exception

Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>

* Update Django and Pillow versions in requirements.txt

* Fix error logging for image fetch timeout in ContentImageViewSet

* Update requirements.txt to include jaraco.context and wheel for security fixes

* Update app version and add security vulnerabilities to .trivyignore

* Update backend/server/adventures/views/collection_view.py

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

* Update frontend/src/lib/types.ts

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

* Reorder build and image directives in docker-compose.yml for clarity

* Refactor code structure for improved readability and maintainability

* Remove inline clipboard polyfill script injection from server hooks (#1019)

* Initial plan

* Remove inline clipboard polyfill script injection from hooks.server.ts

Co-authored-by: seanmorley15 <98704938+seanmorley15@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: seanmorley15 <98704938+seanmorley15@users.noreply.github.com>

* Fix unhandled promise rejections in copyToClipboard click handlers (#1018)

* Initial plan

* Fix: make copyToClipboard handlers async with try/catch error toast

Co-authored-by: seanmorley15 <98704938+seanmorley15@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: seanmorley15 <98704938+seanmorley15@users.noreply.github.com>

* Harden `fetch_from_url` image proxy: require auth, rate-limit, and strengthen SSRF protections (#1017)

* Initial plan

* Harden fetch_from_url: require auth, rate-limit, block non-standard ports, check all IPs, re-validate redirects

Co-authored-by: seanmorley15 <98704938+seanmorley15@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: seanmorley15 <98704938+seanmorley15@users.noreply.github.com>

* Fix subregion filtering in world travel page to exclude null values

* Update package.json to use caret (^) for versioning in overrides

* fix: update package dependencies for compatibility and stability

- Added cookie dependency with version constraint <0.7.0
- Updated svelte dependency to allow versions <=5.51.4
- Updated @sveltejs/adapter-vercel dependency to allow versions <6.3.2

* Refactor code structure for improved readability and maintainability

---------

Co-authored-by: madmp87 <79420509+madmp87@users.noreply.github.com>
Co-authored-by: AdventureLog Bugfix <bugfix@adventurelog.local>
Co-authored-by: madmp87 <info@so-pa.de>
Co-authored-by: Mathias Ponnwitz <devuser@dockge-dev.fritz.box>
Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <198982749+Copilot@users.noreply.github.com>
2026-02-20 20:49:24 -05:00