- Added unit tests for `applyPosAddCustomerSearchResult` to handle autofill field updates, manual overrides, and stale response rejection.
- Implemented a new e2e scenario for preserving manual edits during autofill updates and ignoring stale delayed responses.
- Refactored `mobilePos.js` fixture setup to include CVR search and customer registration mock logic.
- Added and integrated `PosDesktopCustomerConflictModal.vue` for UI handling of customer conflicts.
- Introduced `PosDesktopOrderBookingSelectorModal.vue` to streamline booking selection for desktop POS.
- Added `orderBookingDisplay.js` utility for handling booking display and reference value normalization.
- Created unit test `select-vehicle-form-pos.spec.js` to validate booking selection flow and registration matching.
- Implemented `run-playwright-ci-parallel.mjs` script to optimize Playwright CI with parallel testing.
- Updated styles and responsiveness for enhanced booking modal UX.
- **Internationalization:** Added end-to-end test `i18n.smoke.spec.ts` to validate Danish locale translations. Ensured normalization and removed unexpected strings in the `da` locale file.
- **Orders Table:** Created unit test `orders-table.spec.js` to verify sparse data handling, invoice collection preloading, and rendering correctness.
- **Error Handling:** Enhanced connectivity issue UI (`ConnectivityIssue.vue`) with `data-testid` attributes for improved testability.
- **E2E Playwright Tests:** Updated and simplified e2e test utilities. Replaced `seedAuthenticatedState` with `primeMockSession` for session preparation. Added new tests for `/user/orders` and `/user/invoices` pages focusing on edge cases and maintaining structure consistency.
- Add `unregisterDevServiceWorkers` utility to remove service worker registrations and stale caches during development.
- Disable service worker registration injection in `vite.config.js` for non-production environments.
- Consolidate progress display logic into `SelfServeDepartmentHeader.vue` for better reusability.
- Remove redundant progress headers and styles in `MyWashStart.vue` and `SelfServeTasksStep.vue`.
- Update scoped styles in `SelfServeTasksStep.vue` and `SelfServeDepartmentHeader.vue` to improve layout and readability.
- Fix API URL in `vite.config.js` for version update endpoint.
- Added IDs to buttons in `NewBookingStep5.vue` for better UI automation.
- Removed IDs from buttons in `MyBookingsBook.vue`.
- Updated API URL from `truckwash.dk` to `truckwash.io`.
- Disabled service worker `devOptions` in `vite.config.js`.
- Added `try-catch` block to gracefully handle errors when calling the server API.
- Improved logging for both success and failure cases to aid debugging.
- Introduced `.junie/guidelines.md` to outline project setup, code conventions, and structure.
- Updated `env.d.ts` and `vite.config.js` to standardize `VITE_COMMIT_HASH` usage.
- Updated placeholders and labels in transaction-related templates to use dynamic values from `SessionUser` for better localization support.
- Refactored `IS_DEV` to use `VITE_IS_DEV` environment variable in `main.js` and build scripts for better configuration management.
- Added `wdio.conf.js` for configuring WebdriverIO.
- Introduced `test/specs/sample.spec.js` for initial test case setup to validate home page loading.
- Updated `vite.config.js` to include SCSS preprocessor configuration for improving CSS handling.
- Added required dependencies for WebdriverIO and related services in `package-lock.json`.
- Updated `vite.config.js` to use an absolute base path for PWA manifest alignment.
- Removed unused imports and components for cleaner `collectedOrderInvoice` views.
- Fixed invoice data mapping by updating `raw_data.objects` to `raw_data.orders`.
- Enhanced user feedback with error handling modal in `collectedOrderInvoiceManageEconomic.vue`.
- Introduced `mode` parameter to enable environment-specific logic.
- Enhanced service worker caching rules with updated expiration settings, API handling, and improved static asset matching.
- Improved PWA configuration for relative base paths and manifest alignment.
- Added conditional plugin usage for `viteSingleFile` and `vueDevTools`.
- Streamlined build environment variables and import.meta.env setup.
- Simplified print dialog logic in `PrintInvoiceFromOrderItems.vue` using dynamic URL-based receipts and onload handling.
- Enhanced service worker caching configuration in `vite.config.js` with specific caching rules for assets, API responses, images, and HTML files.
- Updated `ViewportHeader.vue` with visibility toggle and responsiveness improvements.
- Adjusted camera capture delays in `PosDepartmentStepMobileFlow.vue` for better user experience.
- Refactored department order views to manage display states for print receipt mode.
- Integrated build date, version, and commit hash generation in `vite.config.js`.
- Enhanced `MobileNavigation.vue` to display build metadata and development mode info.
- Added type definitions in `env.d.ts` for environment variables.
- Add `PosDepartmentStepMobileFixedBottomControl.vue` for consistent bottom control layout.
- Implement overflow control in `ViewportHeaderSettings.vue` with `isOverflowVisible`.
- Enhance `PosPopup.vue` with `defineComponent` and dynamic popup content.
- Add scroll prevention for mobile scanning views in `PosDepartmentStepMobile1.vue`.
- Improve registration number UI in `PosDepartmentStepMobile1RegistrationNumbers.vue`.
- Refactor service worker updates and PWA behavior in `main.js`.
- Update routing default path in `router.js`.
- Improve scanner UI in `ScannerOutline.vue` with responsive dimensions.
- Integrate `vite-plugin-pwa` with automatic updates and manifest configuration for PWA support.
- Create `PWADownload.vue` component to guide users on installing the app.
- Add `/download` route in `router.js` for accessing the PWA download page.
- Improve responsive layout handling in `DefaultPageWrapper.vue` for better mobile adaptation.
- Update dependencies in `package.json` and `package-lock.json` to reflect PWA integration.
- Integrate `InvoicingBillingPeriodInvoiceProgressBar` for improved visual feedback during invoicing processes.
- Implement reusable date selection components with `PaginationDisplayTemplateDate` and `PaginationDisplayTemplateDates` for enhanced flexibility in date filtering.
- Add `NavigationMenuSuperUser` to improve navigation structure for superuser dashboard.
- Refactor related components with helper methods for better maintainability.
- Include `vue-toast-notification` to provide dynamic notifications.
- Update translations and adjust UI components to align with new functionality.
- General fixes to maintain code modularity and reusability.
Replaced the direct access of `department_id.value` with `getDepartment()` for better encapsulation in `POSDepartmentProcess.vue`. Updated multiple dependencies in `package-lock.json`, including Babel, Vue Flow, and others, to improve functionality and maintain up-to-date libraries.
Introduced Department POS functionality with navigation, orders, and order detail views. Set up routing and middleware for POS operations. Added base styles, assets, and updated package dependencies to support these changes.