Trek_CN/server
Maurice c0c59b6d80 feat: unified photo provider abstraction layer (#584)
Introduce trek_photos as central photo registry. Frontend uses
/api/photos/:id/:kind instead of provider-specific URLs. Adding
a new photo provider is now backend-only work.

- New trek_photos table (migration 98) with photo_id FK in
  trip_photos and journey_photos
- Unified /api/photos/:id/thumbnail|original|info endpoint
- photoResolverService for central resolution and streaming
- ProviderPicker: add "All Photos" tab, rename tabs, fix i18n
- Localize all hardcoded strings in JourneyDetailPage (14 langs)
- Fix date formatting to use browser locale instead of hardcoded 'en'
- Journey stats as styled tile cards
2026-04-13 20:08:31 +02:00
..
public chore(CRLF): normalize index.html line endings to LF 2026-04-05 04:35:17 +02:00
scripts feat: add encryption key migration script and document it in README 2026-04-01 09:35:32 +02:00
src feat: unified photo provider abstraction layer (#584) 2026-04-13 20:08:31 +02:00
tests fix(tests): align tests to actual working code 2026-04-13 14:48:25 +02:00
.env.example feat(auth): split OIDC_ONLY into granular auth toggles 2026-04-11 20:21:36 +02:00
package-lock.json merge: resolve conflicts with dev, fix 7 Snyk security issues 2026-04-11 19:11:21 +02:00
package.json merge: resolve conflicts with dev, fix 7 Snyk security issues 2026-04-11 19:11:21 +02:00
reset-admin.js Stabilize core: better-sqlite3, versioned migrations, graceful shutdown 2026-03-22 17:52:24 +01:00
tsconfig.json some fixes 2026-03-30 06:59:24 +02:00
vitest.config.ts refactor(mcp): replace direct DB access with service layer calls 2026-04-04 18:12:53 +02:00