Skip to content

Feat: Add Back to in Review functionality and Enhance Reports - #3

Open
ilzhoefer wants to merge 12 commits into
mainfrom
dev
Open

Feat: Add Back to in Review functionality and Enhance Reports#3
ilzhoefer wants to merge 12 commits into
mainfrom
dev

Conversation

@ilzhoefer

Copy link
Copy Markdown

No description provided.

@Strehk
Strehk self-requested a review December 1, 2025 08:30
Strehk and others added 7 commits June 26, 2026 21:49
* chore(deps): bump nodemailer from 7.0.6 to 7.0.7 in /backend (david-loe#292)

Bumps [nodemailer](https://github.com/nodemailer/nodemailer) from 7.0.6 to 7.0.7.
- [Release notes](https://github.com/nodemailer/nodemailer/releases)
- [Changelog](https://github.com/nodemailer/nodemailer/blob/master/CHANGELOG.md)
- [Commits](nodemailer/nodemailer@v7.0.6...v7.0.7)

---
updated-dependencies:
- dependency-name: nodemailer
  dependency-version: 7.0.7
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps): bump the patch-deps group across 1 directory with 3 updates (david-loe#291)

Bumps the patch-deps group with 3 updates in the /frontend directory: [vue](https://github.com/vuejs/core), [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) and [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite).


Updates `vue` from 3.5.21 to 3.5.22
- [Release notes](https://github.com/vuejs/core/releases)
- [Changelog](https://github.com/vuejs/core/blob/main/CHANGELOG.md)
- [Commits](vuejs/core@v3.5.21...v3.5.22)

Updates `@types/node` from 22.18.6 to 22.18.8
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

Updates `vite` from 7.1.6 to 7.1.9
- [Release notes](https://github.com/vitejs/vite/releases)
- [Changelog](https://github.com/vitejs/vite/blob/main/packages/vite/CHANGELOG.md)
- [Commits](https://github.com/vitejs/vite/commits/v7.1.9/packages/vite)

---
updated-dependencies:
- dependency-name: vue
  dependency-version: 3.5.22
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: patch-deps
- dependency-name: "@types/node"
  dependency-version: 22.18.8
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: patch-deps
- dependency-name: vite
  dependency-version: 7.1.9
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: patch-deps
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* ci(deps): bump docker/login-action in the actions-deps group (david-loe#290)

Bumps the actions-deps group with 1 update: [docker/login-action](https://github.com/docker/login-action).


Updates `docker/login-action` from 3.5.0 to 3.6.0
- [Release notes](https://github.com/docker/login-action/releases)
- [Commits](docker/login-action@184bdaa...5e57cd1)

---
updated-dependencies:
- dependency-name: docker/login-action
  dependency-version: 3.6.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: actions-deps
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* fix: correct type and use optional chaining operator (david-loe#294)

Fixes david-loe#293

* bump version to 2.1.13

* Implement Button for removing approval and change fields in reports (#1)

* feat: add back to inReview functionality for Expense Reports and Travel, including API endpoints and UI updates

* fix: adjust conditional rendering for buttons in ExpenseReportPage to improve UI behavior

* fix: restore approvedOn and approvedBy fields in ReportPrint summary for advances

* fix: update conditional rendering for backToinReview button in ExpenseReportPage and TravelPage to ensure proper functionality

* Feat: Add back to review button; Add ammount to PDF report (#2)

* feat: add back to inReview functionality for Expense Reports and Travel, including API endpoints and UI updates

* fix: adjust conditional rendering for buttons in ExpenseReportPage to improve UI behavior

* fix: restore approvedOn and approvedBy fields in ReportPrint summary for advances

* fix: update conditional rendering for backToinReview button in ExpenseReportPage and TravelPage to ensure proper functionality

* feat: add amount field to receipt entries in PDF generation and report printing

* chore: refactor printer, fonts, vue3 composition api and update node to v24 (david-loe#306)

* feat: Add event bus and global font styles; refactor formatter and logger

- Introduced an event bus for better event handling across components.
- Added global font styles in `fonts.css` to standardize typography.
- Refactored formatter to remove Vue plugin installation and simplified its usage.
- Updated logger import paths for consistency.
- Cleaned up main application entry point by removing unused imports and components.
- Enhanced router setup by importing the app instance directly.
- Added utility function `setLast` to manage recent items in a list.
- Introduced mobile detection logic for responsive design considerations.

* chore: update node 22 to 24 and biome

* bump version to 2.1.14

* fix: add missing space to footer

* chore: update packages

* fix: correct types in AdvanceSelector

* feat: apply tnum class for consistent number formatting across components

* feat: add setting to prevent owners from deleting reports after review completion (david-loe#309)

* feat: add setting to prevent owners from deleting reports after review completion

* feat: enhance delete functionality to prevent deletion of historic reports and ensure owner verification

* chore(deps): bump eslint (david-loe#313)

Bumps the minor-deps group with 1 update in the /frontend directory: [eslint](https://github.com/eslint/eslint).


Updates `eslint` from 9.38.0 to 9.39.0
- [Release notes](https://github.com/eslint/eslint/releases)
- [Commits](eslint/eslint@v9.38.0...v9.39.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-version: 9.39.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: minor-deps
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps): bump the patch-deps group across 2 directories with 3 updates (david-loe#312)

Bumps the patch-deps group with 1 update in the /backend directory: [express-rate-limit](https://github.com/express-rate-limit/express-rate-limit).
Bumps the patch-deps group with 2 updates in the /frontend directory: [@vueform/vueform](https://vueform.com) and [vue-tsc](https://github.com/vuejs/language-tools/tree/HEAD/packages/tsc).


Updates `express-rate-limit` from 8.2.0 to 8.2.1
- [Release notes](https://github.com/express-rate-limit/express-rate-limit/releases)
- [Commits](express-rate-limit/express-rate-limit@v8.2.0...v8.2.1)

Updates `@vueform/vueform` from 1.13.5 to 1.13.6

Updates `vue-tsc` from 3.1.2 to 3.1.3
- [Release notes](https://github.com/vuejs/language-tools/releases)
- [Changelog](https://github.com/vuejs/language-tools/blob/master/CHANGELOG.md)
- [Commits](https://github.com/vuejs/language-tools/commits/v3.1.3/packages/tsc)

---
updated-dependencies:
- dependency-name: express-rate-limit
  dependency-version: 8.2.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: patch-deps
- dependency-name: "@vueform/vueform"
  dependency-version: 1.13.6
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: patch-deps
- dependency-name: vue-tsc
  dependency-version: 3.1.3
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: patch-deps
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps): bump tar from 7.5.1 to 7.5.2 in /backend (david-loe#311)

Bumps [tar](https://github.com/isaacs/node-tar) from 7.5.1 to 7.5.2.
- [Release notes](https://github.com/isaacs/node-tar/releases)
- [Changelog](https://github.com/isaacs/node-tar/blob/main/CHANGELOG.md)
- [Commits](isaacs/node-tar@v7.5.1...v7.5.2)

---
updated-dependencies:
- dependency-name: tar
  dependency-version: 7.5.2
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* feat: split balance into advance and total for 'in work' report list

* feat: add global search and reference for reports (david-loe#310)

* feat: add reference number handling for new documents and update related models

* fix: implement history tracking for documents and update reference handling

* fix: Remove unused imports

* fix: use addHistory also on advances

* feat: display reference string

* feat: add ref string to modal titles

* feat: add search bar to nav bar

* fix: improve style

* feat: implement search endpoint

* feat: implement search functionality and improve routing for report pages

* feat: show advance via route

* feat: add _id props to booking sites

* feat: add ref string to pdf

* feat: add ref string to booked page tables

* fix: correct user reference replacement (david-loe#314)

* fix: hide Ref on all tables but booking

* bump version to 2.2.0

* feat: allow users to add deductions (david-loe#317)

* feat: allow users to add deductions

* fix: remove light flash in dark mode

* fix: convert also negative amount

* chore(deps): bump tar from 7.5.1 to 7.5.2 in /common (david-loe#315)

Bumps [tar](https://github.com/isaacs/node-tar) from 7.5.1 to 7.5.2.
- [Release notes](https://github.com/isaacs/node-tar/releases)
- [Changelog](https://github.com/isaacs/node-tar/blob/main/CHANGELOG.md)
- [Commits](isaacs/node-tar@v7.5.1...v7.5.2)

---
updated-dependencies:
- dependency-name: tar
  dependency-version: 7.5.2
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* bump version to 2.2.1

* fix: stop using vehicle registration in pdf report when turned of by settings (david-loe#319)

* fix: stop using vehicle registration in pdf report when turned of by settings
Fixes david-loe#318

* fix: fix receipt number handling and adjust column width of purpose

* feat: add webhooks (david-loe#325)

* feat: add webhooks

* feat: implement webhook management with CRUD operations and UI integration

* feat: add redis

* feat: integrate BullMQ 

* feat: enhance Docker setup with entrypoint script and worker service, update app initialization

* fix: print too long cells instead of run endless loop (david-loe#327)

Fixes david-loe#320

* bump version to 2.3.0

* feat: enhance printer settings (david-loe#328)

* fix: update note for report saving in environment config

* fix: remove webhook test controller

* ci(deps): bump the actions-deps group with 2 updates (david-loe#322)

Bumps the actions-deps group with 2 updates: [docker/setup-qemu-action](https://github.com/docker/setup-qemu-action) and [docker/metadata-action](https://github.com/docker/metadata-action).


Updates `docker/setup-qemu-action` from 3.6.0 to 3.7.0
- [Release notes](https://github.com/docker/setup-qemu-action/releases)
- [Commits](docker/setup-qemu-action@2910929...c7c5346)

Updates `docker/metadata-action` from 5.8.0 to 5.9.0
- [Release notes](https://github.com/docker/metadata-action/releases)
- [Commits](docker/metadata-action@c1e5197...318604b)

---
updated-dependencies:
- dependency-name: docker/setup-qemu-action
  dependency-version: 3.7.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: actions-deps
- dependency-name: docker/metadata-action
  dependency-version: 5.9.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: actions-deps
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps): bump vite (david-loe#324)

Bumps the minor-deps group with 1 update in the /frontend directory: [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite).


Updates `vite` from 7.1.12 to 7.2.2
- [Release notes](https://github.com/vitejs/vite/releases)
- [Changelog](https://github.com/vitejs/vite/blob/main/packages/vite/CHANGELOG.md)
- [Commits](https://github.com/vitejs/vite/commits/v7.2.2/packages/vite)

---
updated-dependencies:
- dependency-name: vite
  dependency-version: 7.2.2
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: minor-deps
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* fix: correctly handle sessions of deleted users

* bump version to 2.3.1

* fix: update printer settings after migration

* Feature: add usage endpoints (david-loe#348)

* fix: only apply expand logic on book table
fixes david-loe#352

* chore: bump version to 2.3.2

* Feature: Add Admin Tools to edit ANY report on own risk (david-loe#353)

* feat: add Admin tools

* feat: enhance AdminTools with search functionality and loading indicator

* feat: enhance AdminTools with report management features and improved UI elements

* fix: ensure proper error handling in deleteReport method

* feat: update lump sums structure to include validUntil (david-loe#357)

* New Crowdin updates (david-loe#359)

* New translations de.json (French)

* New translations de.json (Spanish)

* New translations de.json (Russian)

* New translations de.json (Kazakh)

* chore(deps): bump connect-mongo (david-loe#356)

Bumps the major-deps group with 1 update in the /backend directory: [connect-mongo](https://github.com/jdesboeufs/connect-mongo).


Updates `connect-mongo` from 5.1.0 to 6.0.0
- [Release notes](https://github.com/jdesboeufs/connect-mongo/releases)
- [Changelog](https://github.com/jdesboeufs/connect-mongo/blob/master/CHANGELOG.md)
- [Commits](jdesboeufs/connect-mongo@v5.1.0...v6.0.0)

---
updated-dependencies:
- dependency-name: connect-mongo
  dependency-version: 6.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: major-deps
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* fix: removed circular dependencies (david-loe#360)

* ci(deps): bump the actions-deps group across 1 directory with 2 updates (david-loe#339)

Bumps the actions-deps group with 2 updates in the / directory: [actions/checkout](https://github.com/actions/checkout) and [docker/metadata-action](https://github.com/docker/metadata-action).


Updates `actions/checkout` from 5.0.0 to 6.0.0
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](actions/checkout@08c6903...1af3b93)

Updates `docker/metadata-action` from 5.9.0 to 5.10.0
- [Release notes](https://github.com/docker/metadata-action/releases)
- [Commits](docker/metadata-action@318604b...c299e40)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: 6.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: actions-deps
- dependency-name: docker/metadata-action
  dependency-version: 5.10.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: actions-deps
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps): bump eslint (david-loe#354)

Bumps the patch-deps group with 1 update in the /frontend directory: [eslint](https://github.com/eslint/eslint).


Updates `eslint` from 9.39.1 to 9.39.2
- [Release notes](https://github.com/eslint/eslint/releases)
- [Commits](eslint/eslint@v9.39.1...v9.39.2)

---
updated-dependencies:
- dependency-name: eslint
  dependency-version: 9.39.2
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: patch-deps
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore: bump version to 2.3.3

* fix: missing ._id getter

* fix: disable migration-test

* revert: enable migration-test again

* feat: update email address

* Feature: add more Languages (fr, es, ru and kk) (david-loe#365)

* Feature: Sanitize connection settings secrets (david-loe#366)

* Add subject support to manual advance offsets (david-loe#363)

* fix: update log handling n to prevent overwriting existing log entries
fixes david-loe#367

* chore: bump version to 2.4.0

* fix: add 'validUntil' to localizations

* Vorschuss-Empfangsbestätigung hinzufügen (david-loe#377)

* chore: bump version to 2.4.1 and update dependencies

* fix: only show applied for date in report when really applied for

* ci(deps): bump docker/setup-buildx-action in the actions-deps group (david-loe#369)

Bumps the actions-deps group with 1 update: [docker/setup-buildx-action](https://github.com/docker/setup-buildx-action).


Updates `docker/setup-buildx-action` from 3.11.1 to 3.12.0
- [Release notes](https://github.com/docker/setup-buildx-action/releases)
- [Commits](docker/setup-buildx-action@e468171...8d2750c)

---
updated-dependencies:
- dependency-name: docker/setup-buildx-action
  dependency-version: 3.12.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: actions-deps
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore: make Ports optional env vars

* chore: add option to provide connection settings via ENV

* feat: backend i18n update on display settings changes

* fix: migration test

* chore: bump version to 2.4.2

* fix: include whole to day in report usage

* ci(deps): bump biomejs/setup-biome in the actions-deps group (david-loe#379)

Bumps the actions-deps group with 1 update: [biomejs/setup-biome](https://github.com/biomejs/setup-biome).


Updates `biomejs/setup-biome` from 2.6.0 to 2.7.0
- [Release notes](https://github.com/biomejs/setup-biome/releases)
- [Commits](biomejs/setup-biome@454fa0d...29711cb)

---
updated-dependencies:
- dependency-name: biomejs/setup-biome
  dependency-version: 2.7.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: actions-deps
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Feat: add hint for not used advance (david-loe#380)

* feat: add production initialization for admin user via env

* feat: only display login options that are configured in connection settings

* fix: remove type declaration from travelSettings import

* fix: only show unused advance info when review not completed

* chore: bump version to 2.4.3 and update dependencies

- Updated @types/node from 24.10.4 to 24.10.8
- Updated vite from 7.3.0 to 7.3.1
- Updated vue-tsc from 3.2.1 to 3.2.2

* fix: include all auth types in display settings form again
fixes david-loe#385

* feat: add REDIS_PREFIX configuration for consistent Redis key prefixing

* Feature: add OAuth2 Settings to SMTP (david-loe#405)

* chore: ui and test (david-loe#406)

* Feature: Buchungsvermerk auf dem PDF Report kann über Druckeinstellungen ein oder ausgeschaltet werden (david-loe#407)

* Fix: (<)(>) Buttons in Auslagenabrechnung folgen jetzt der Sortierung der Tabelle (david-loe#408)

* chore: bump version to 2.5.0 and update packages

* Chore: Migrate to mongoose v9 (david-loe#410)

* Refactor: remove 'this' context from schema methods and hooks for consistency

* Refactor: update mongoose types to use QueryFilter for consistency across models and controllers

* Refactor: update mongoose filter types to use QueryFilter for consistency across controllers

* Feature: Add webhook retry configuration options to environment settings (david-loe#414)

* Feature: Add configurable TTL for magic login tokens (david-loe#415)

* Enhancement: More precise labels (david-loe#416)

* Enhancement: Update user form layout (david-loe#417)

* docs: Update badge in README

* Feature: Add 'Additional Details' field to user (printable) (david-loe#419)

* Feature: Implement image rotation functionality (david-loe#422)

* chore: bump version to 2.5.1 and update dependencies

* Feature: Add warning for negative total (david-loe#440)

* ci(deps): bump the actions-deps group across 1 directory with 3 updates (david-loe#424)

* chore: bump version to 2.5.2 and update dependencies

* chore: add container health checks

* Feature: Beleg Nummern halten interne PDF Links zu den Belegen (david-loe#454)

* chore: update Dockerfiles and configuration to run containers as non-root user (david-loe#455)

* chore: bump version to 2.5.3 and update dependencies

* Chore: start integration platform (david-loe#467)

* Chore: Refactor integrations (david-loe#489)

* Fix: integration settings scheduler save (david-loe#490)

* fix: remove empty header columns from csv import (david-loe#491)

Fixes david-loe#487

* Feature: show stages affected by travel date changes (david-loe#492)

Closes david-loe#484

* ci(deps): bump the actions-deps (david-loe#464)

* Feature: Introduce validation issue handling (david-loe#502)

* chore: bump version to 2.6.0 and update packages

fix: replace import path for vue3-easy-data-table styles

- Change import path from 'vue3-easy-data-table/dist/style.css' to '@/vendor/vue3-easy-data-table.css' in ListElement.vue and TableElement.vue
- Add vendored copy of vue3-easy-data-table.css to fix invalid CSS issue

refactor: remove allowSyntheticDefaultImports from tsconfig.json

* fix: enhance travel validation to correctly handle vehicle registration for own car usage (david-loe#506)

* fix: implement roundAmount using big.js for consistent currency rounding (david-loe#507)

* Feature: delete advances while not linked or booked (david-loe#508)

* chore: bump version to 2.6.1 and update dependencies

* Fix: correctly calculate exchange rates for advances (david-loe#542)

* chore: bump version to 2.6.2 and update packages

* ci(deps): bump the actions-deps group across 1 directory with 5 updates (david-loe#535)

* Feature: add CSV export functionality for reports (david-loe#545)

* ci(deps): bump docker/setup-qemu-action in the actions-deps group (david-loe#546)

* chore: update packages

* Feature: add exchange rates from Frankfurter (david-loe#548)

* chore: bump version to 2.6.3

* fix: update publish-images.yml for improved Docker setup and registry usage (#6)

* Tidy Up (david-loe#584)

* update packages

* refactor: remove deprecated disk report integration

* fix: harden backend runtime consistency

* feat: secure offline access and optimize frontend delivery

* chore: slim production backend image

* chore: update biome to 2.5.5

* feat: add description for uploadTokenExpireAfterSeconds

* fix: set NODE_ENV to production for frontend build

* fix: adjust migration check to immutable production image

* Feature: show report type on pdf report (david-loe#588)

* feat: implement magic login synchronization (david-loe#589)

* ci(deps): bump the actions-deps

* fix: fix frontend bundles, enhance API error handling and add tests for authentication scenarios

* feat: implement withdraw approval functionality for advances and travels (david-loe#590)

* Feature: Introduce bookings (david-loe#591)

* feat: implement LedgerAccount

* feat: add booking model

* feat: enhance category management with 'for' field

* refactor: remove BookingState

* refactor: put bookings inside reports

* feat: split cost in positions and add VAT

* feat: implement booking calculations

* feat: add SEPA XML export, bank accounts and user settings

* fix: simplify tests

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: david-loe <56305409+david-loe@users.noreply.github.com>
Co-authored-by: maximilianilzhoefer <55856340+maximilianilzhoefer@users.noreply.github.com>
Co-authored-by: Claude Sonnet 5 <noreply@anthropic.com>
- Enhanced report printing to include bank account information (IBAN and BIC) if available.
- Updated report summary to display total amounts for negative totals.
- Added createdAt field to comments in reports.
- Introduced validation for travel to check for valid bank account details.
- Modified comment handling in various components (Advance, ExpenseReport, HealthCareCost, Travel) to allow users to add comments.
- Updated AddUpTable and CostPositionsEditor components for better user experience and data handling.
- Adjusted validation issue alerts to include missing bank account notifications.
…kflow (#8)

Split the single sequential job into a matrix job so backend and
frontend images build concurrently on separate runners instead of
one after another, and add GHA layer caching (cache-from/cache-to)
so repeat builds reuse unchanged layers.

Co-authored-by: Claude Sonnet 5 <noreply@anthropic.com>
sw.ts imported the shared frontend logger, which transitively pulls in
env.ts and calls cleanFrontendEnv(). That validation reads
globalThis.__ABRECHNUNG_ENV__, which is only injected into the page's
global scope via index.html's runtime-config.js <script> tag - never
into the service worker's own global scope - and production builds
don't bake VITE_BACKEND_URL/VITE_FRONTEND_URL into import.meta.env
either (they're injected at container runtime). So the SW module threw
"Environment validation failed" at the top of evaluation on every
install, in every browser, before self.skipWaiting() even ran.

Browsers with no previously-installed SW (e.g. incognito) just run
without one - fetches go straight to network. Browsers with an older,
working SW already registered keep that stale worker active forever
(clientsClaim() never gets a chance to hand off to the new one), since
the update always fails to install.

Construct the logger directly from the SW's own IS_DEV_SERVICE_WORKER
flag instead, avoiding the env.ts dependency entirely.

Co-authored-by: Claude Sonnet 5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants