Commit Graph
100 Commits
Author SHA1 Message Date
Jeppe Bundgaard 2b9bf8cd42 Relax statistics merge source assertion 2026-04-23 14:36:05 +02:00
Jeppe Bundgaard c031f28541 Format workspace spec with pinned Prettier 2026-04-23 14:24:00 +02:00
Jeppe Bundgaard a92bad7485 Format edge gateway workspace regression spec 2026-04-23 14:16:15 +02:00
Jeppe Bundgaard 1faf311787 Preserve staged gateway version in statistics 2026-04-23 14:09:57 +02:00
Jeppe Bundgaard f568270c9f Normalize rotated edge gateway credentials 2026-04-23 13:50:58 +02:00
Jeppe Bundgaard 69fc59b546 Update edge gateway smoke landing expectations 2026-04-23 13:37:06 +02:00
Jeppe Bundgaard f111541056 Restore Vite dependency discovery for Playwright 2026-04-23 13:21:59 +02:00
Jeppe Bundgaard 20183b36e1 Update edge gateway workflow helper contract 2026-04-23 12:42:43 +02:00
Jeppe Bundgaard 1a2218704d Format updated edge gateway unit specs 2026-04-23 12:32:30 +02:00
Jeppe Bundgaard 90eb67ba8c Align edge gateway workspace with route contract 2026-04-23 12:20:33 +02:00
Jeppe Bundgaard 85f24bdb0c Improve readability in edge gateway tests and helper functions through consistent formatting adjustments 2026-04-23 09:02:41 +02:00
Jeppe Bundgaard 0f8b0273c1 Merge remote-tracking branch 'origin/master'
# Conflicts:
#	src/features/edgeGateways/EdgeGatewayManager.vue
2026-04-23 09:01:11 +02:00
Jeppe Bundgaard 7efa9f172c Introduce Edge Gateway management pages and implement WebSocket session handling 2026-04-23 09:00:43 +02:00
Jeppe Bundgaard b576465f50 Stabilize tablet admin auth mocks 2026-04-22 19:38:41 +02:00
Jeppe Bundgaard 8094356488 Make edge gateway inventory reactive 2026-04-22 19:01:10 +02:00
Jeppe Bundgaard 0432564367 Force refresh gateway discovery polling 2026-04-22 18:45:49 +02:00
Jeppe Bundgaard 8391557f2d Repair gateway workspace event wiring 2026-04-22 18:31:50 +02:00
Jeppe Bundgaard c3381aea39 Hydrate stored sessions before guarded routes 2026-04-22 18:02:57 +02:00
Jeppe Bundgaard c72da3879b Repair edge gateway manage page contract 2026-04-22 17:00:38 +02:00
Jeppe Bundgaard f6c8e8123a Match edge gateway service endpoint literals 2026-04-22 16:43:53 +02:00
Jeppe Bundgaard 03bb16309a Fix edge gateway unit contracts 2026-04-22 16:39:15 +02:00
Jeppe Bundgaard b5f9210c42 Restore edge gateway service compatibility 2026-04-22 16:30:48 +02:00
Jeppe Bundgaard bee7d699d3 Introduce Edge Gateway module with configuration support and API refinements. 2026-04-22 16:24:54 +02:00
Jeppe Bundgaard ab1d52da0f Align edge gateway smoke fixture container health 2026-04-22 16:11:01 +02:00
Jeppe Bundgaard 40f1b0e208 Stabilize edge gateway smoke operation sequencing 2026-04-22 16:00:29 +02:00
Jeppe Bundgaard 04ee87b3ad Fix encoding issue in EdgeGatewayOverviewPage by replacing non-standard character with a proper middle dot (·). 2026-04-22 15:42:00 +02:00
Jeppe Bundgaard ba1288ae10 Add tests for new container services, health status, and "Cancel Operation" flow in Edge Gateway operations 2026-04-22 15:39:55 +02:00
Jeppe Bundgaard 7ebcac6fa0 Add tests for "Cancel Operation" behavior and UI elements in Edge Gateway services and workspace. Fix formatting in E2E network tests. 2026-04-22 15:35:37 +02:00
Jeppe Bundgaard 1e21df7c68 Add "Cancel Operation" functionality for Edge Gateways with UI, API, and state management integration. 2026-04-22 15:35:17 +02:00
Jeppe Bundgaard dfea80034a Update Danish localization for "select_customer_invoice" field in i18n files 2026-04-22 15:05:16 +02:00
Jeppe Bundgaard c4af52ad39 Add readJsonFile helper to strip UTF-8 BOM and refactor tests to use it for consistent JSON parsing 2026-04-22 14:47:30 +02:00
Jeppe Bundgaard ce2a18d203 Fix formatting issues across multiple E2E test files to standardize indentation, string quoting, and line breaks, aligning with project conventions. 2026-04-22 14:28:39 +02:00
Jeppe Bundgaard bff949a1f0 Add "Copy Last Wash" matched state with visual feedback and localization adjustments in mobile POS flow. 2026-04-22 14:04:32 +02:00
Jeppe Bundgaard f139cd1001 Improve focus styles and platform consistency for interactive elements in PosDepartmentStepMobile2LastOrder.vue and PosDepartmentStepMobile2Product.vue. 2026-04-22 13:44:07 +02:00
Jeppe Bundgaard 2380b64758 Cache edge gateway data locally, enhance fleet revalidation logic, optimize gateway operations, and improve layout in PosDepartmentStepMobile2Product.vue. 2026-04-22 13:32:24 +02:00
Jeppe Bundgaard 21c42fa443 Introduce caching and workspace persistence for Edge Gateways, optimize API requests with in-flight request tracking, and implement UI layout adjustments in PosDepartmentStepMobile2Product.vue. 2026-04-22 13:25:19 +02:00
Jeppe Bundgaard c03603f3f3 Refactor PosDepartmentStepMobile2Product.vue to improve layout consistency, introduce vehicle-card__additional-items-status container, and ensure responsive design; add bounding box assertions to validate button dimensions in mobile order flow E2E tests. 2026-04-22 13:10:50 +02:00
Jeppe Bundgaard 94f56d9cd0 Standardize and fix formatting issues in PosDepartmentStepMobileFlow.vue, including consistent spacing, indentation, semicolon usage, and string quoting styles, ensuring adherence to project conventions. 2026-04-22 13:05:11 +02:00
Jeppe Bundgaard a24bb41df2 Implement long-press functionality for mobile POS actions, including "Copy Last Wash" and primary product selection, with localization and visual feedback enhancements. 2026-04-22 12:42:21 +02:00
Jeppe Bundgaard d7832910e0 Enhance Playwright dev server setup, add Linux-specific process handling, introduce server output buffering, and expand edge gateway diagnostics and E2E tests. 2026-04-22 12:02:03 +02:00
Jeppe Bundgaard 9cee2f70ba Merge remote-tracking branch 'origin/run-tests-and-fix-issues' into run-tests-and-fix-issues
# Conflicts:
#	playwright.global-setup.mjs
2026-04-22 11:50:27 +02:00
Jeppe Bundgaard 6e3506ff28 Refactor: Remove unused readJsonFile helper, improve server process handling in Playwright setup, and optimize superuser booking and draft count logic. 2026-04-22 11:49:44 +02:00
Jeppe Bundgaard 827d8a3c39 Classify full E2E draft and superuser specs 2026-04-22 09:42:01 +02:00
Jeppe Bundgaard 892471bd3a Classify full E2E draft and superuser specs 2026-04-22 09:39:37 +02:00
Jeppe Bundgaard 75b8dff0f8 Fix Playwright dev server startup on runner 2026-04-21 22:27:33 +02:00
Jeppe Bundgaard 9f9d6de03f Clean up: Remove unused styles in PosDepartmentStepMobile2Product.vue. 2026-04-21 15:32:05 +02:00
Jeppe Bundgaard 83bfdf5f0a Self-heal legacy POS snapshots to preserve normalized vehicle shape. 2026-04-21 15:23:35 +02:00
Jeppe Bundgaard 817c174e0e Add unit tests for Orders navigation count refresh and fallback customer caching, update POS mobile accessibility labels:
- Introduced `orders-draft-count-refresh.spec.js` for testing `Orders` navigation hooks on customer changes and order deletions.
- Enhanced `use-draft-transaction-customer.spec.js` with tests for clearing cached fallback customers.
- Updated POS mobile components with accessibility labels and localization for image viewer and customer suggestion buttons.
- Added support for `vehicleCustomerSuggestionsGet` handling in e2e mocks and tests.
2026-04-21 15:20:50 +02:00
Jeppe Bundgaard 44f77eadc1 Restrict draft export action to superusers and update localization for "send to e-conomic". 2026-04-21 15:04:33 +02:00
Jeppe Bundgaard 46bf518a0e Add E2E tests and harness for customer assignment modal:
- Implemented end-to-end test cases for validating `AssignDraftOrderCustomerModal` workflows, including error handling and behavior consistency.
- Introduced test harness in `change-customer-modal.html` and `change-customer-modal.ts` to facilitate testing of modal interactions.
- Added supporting unit tests for modal behavior and integration with session data.
2026-04-21 14:52:22 +02:00
Jeppe Bundgaard 84e3b0e982 Add Stripe invoice actions and order booking counts:
- Introduced support for managing Stripe invoices in `DepartmentPosOrder.vue`, including helper functions for status handling, action visibility, and cancellation.
- Added `isStripeHostedInvoiceOpen` and `shouldShowStripeInvoiceAction` checks to control panel visibility.
- Enhanced `fetchSuperUserBookingCounts` with a new endpoint for department-scoped booking totals and streamlined logic for grouped counts.
- Updated e2e tests to reflect booking badge tooltips and streamlined department-based count requests.
2026-04-21 13:38:26 +02:00
Jeppe Bundgaard 1bd1b992a2 Add assign draft order customer modal and related e2e tests:
- Introduced `AssignDraftOrderCustomerModal` component with supporting localization for managing customer assignments.
- Added e2e harness for modal testing in `assign-draft-order-customer-modal.html` and `assign-draft-order-customer-modal.ts`.
- Implemented e2e test cases for customer assignment workflows in `assign-draft-order-modal-create.spec.ts` and `assign-draft-order-modal-layout.spec.ts`.
2026-04-21 13:16:22 +02:00
Jeppe Bundgaard 72fdc4c490 Remove EdgeGatewayManager and related assets:
- Deleted `EdgeGatewayManager.vue` alongside its components, templates, styles, and functionality.
- Added tests for `fetchDepartmentOrderBookingCount`.
- Introduced `adminBookingCount.js` for department booking count logic.
2026-04-21 12:46:58 +02:00
Jeppe Bundgaard d7ff64bf4e Add encoding repair utilities and tests:
- Introduced `repairText` and `containsSuspiciousEncoding` utilities for handling corrupted text encodings.
- Added unit tests (`encoding-repair.spec.js`) to validate encoding repair and encoding marker detection.
- Integrated encoding check into unit test workflows (`text:check-encoding` and `text:fix-encoding` scripts).
- Replaced corrupted strings across multiple components and locales with proper UTF-8 encodings.
2026-04-21 10:24:35 +02:00
Jeppe Bundgaard 1a784bbbfd Remove edge gateway components and templates associated with outdated workflows. 2026-04-20 14:51:53 +02:00
Jeppe Bundgaard 5d30690dfd Remove deprecated edge gateway components and associated unit tests:
- Deleted `EdgeGatewayAdvancedOperations.vue` and `EdgeGatewayContextPanel.vue`.
- Removed related unit tests in `use-edge-gateway-terminal.spec.js`.
- Cleaned up unused exports in `useEdgeGatewayTerminal.js`.
2026-04-20 11:20:27 +02:00
Jeppe Bundgaard f3f6237c16 Add step validation for desktop POS workflow and update e2e tests:
- Added `isDesktopStep1Active` computed property to validate step context in `SelectVehicleFormPOS.vue`.
- Updated booking state resolution methods and watchers to respect step validation.
- Extended e2e tests in `pos-desktop-card-payments.spec.js` to validate order reference visibility.
2026-04-20 10:01:45 +02:00
Jeppe Bundgaard 031b1e7563 Hydrate customer details in POS orders and add e2e tests:
- Updated `POSDepartmentProcess.vue` to resolve and hydrate customer details during order processing.
- Added validation and fallback logic for customer state management.
- Introduced new e2e test cases to ensure customer data persists after reloading.
2026-04-20 09:55:44 +02:00
Jeppe Bundgaard 56282a8093 Add Stripe Terminal Reader selection and unit tests:
- Introduced `StripeTerminalReaderSelect` component for terminal reader management.
- Implemented utility functions for normalizing, sorting, and selecting Stripe readers.
- Added unit tests for reader status mapping, normalization, and preferred reader selection.
- Updated `PayWithStripeButton` with new reader selection logic and localization.
2026-04-20 09:46:50 +02:00
Jeppe Bundgaard e0d6f44d0b Update PayWithStripeButton layout for improved responsiveness:
- Added `is-full` and `is-fullwidth` classes to columns and buttons for consistent spacing and alignment.
- Improved readability and visual hierarchy within payment flow states and action buttons.
2026-04-20 09:22:05 +02:00
Jeppe Bundgaard faa7ebae48 Remove redundant context panel references from edge gateway workspace tests 2026-04-16 14:59:48 +02:00
Jeppe Bundgaard 4071363454 Refactor and format test files for edge gateway workflows:
- Improved readability for conditional expressions and multiline function calls in `network.js`.
- Reformatted unit tests in `edge-gateway-workspace.spec.js` for consistent string handling and clarity.
- Enhanced e2e smoke test descriptions and multiline parameter formatting in `edge-gateways.smoke.spec.js`.
2026-04-16 14:46:38 +02:00
Jeppe Bundgaard bef9eaeb72 Add unit tests and new components for edge gateway workflows:
- Introduced unit tests for edge gateway workflow helpers, including workflow step resolution, incident action mapping, relay health row formatting, and workspace state merging.
- Added new components for advanced operations, configuration panel, context panel, fleet rail, and health summary.
- Enhanced gateway management UI with support for advanced actions, fallback operations, relay health visualization, and device binding features.
2026-04-16 13:44:36 +02:00
Jeppe Bundgaard 2d94322021 Refactor hasConnectivityIssue for improved readability and error handling 2026-04-16 10:55:56 +02:00
Jeppe Bundgaard 28bee86ce9 Merge remote-tracking branch 'origin/master' 2026-04-16 10:53:07 +02:00
Jeppe Bundgaard 6c4b9cb599 Add and improve e2e tests for Edge Gateway flows and configure pre-commit hooks:
- Introduced live smoke tests for Edge Gateways, verifying gateway routes and destructive-action prevention.
- Added e2e scenarios for deep-link navigation, unavailable gateway recovery, token rotation, and background page refresh.
- Refactored test helpers for streamlined functional validation in gateway scenarios.
- Updated `EdgeGatewayTerminal.vue` with test IDs for enhanced testability.
- Added and configured Husky pre-commit hooks for automated test file formatting and validation.
2026-04-16 10:52:56 +02:00
Jeppe Bundgaard c06808af33 Update e2e-full workflow to use default_branch for conditional checks 2026-04-15 12:41:22 +02:00
Jeppe Bundgaard a9a5137515 Add pre-commit formatting hooks for test files and configure Husky integration:
- Added Husky pre-commit hook to enforce formatting on JavaScript and TypeScript test files.
- Implemented `pre-commit-format-tests.mjs` to check for unstaged changes, format test files using Prettier, and re-stage them.
- Included `prepare-husky.mjs` to verify Husky installation in the git worktree.
- Updated `package-lock.json` to include `husky` as a dependency.
2026-04-15 12:18:49 +02:00
Jeppe Bundgaard a0c8574399 Add edge agent update handling and verification mechanisms
Refactored the edge agent to include robust update handling, verification, and rollback procedures. Enhanced test coverage for critical update flows and introduced support for background edge gateway refresh without disrupting current user actions.
2026-04-15 12:07:32 +02:00
Jeppe Bundgaard 71b8272eb8 Add tests and functionality for edge gateway updates and lifecycle
This commit introduces unit tests, E2E tests, and implementation updates related to edge gateway lifecycle management, including update handling, artifact validation, and rollback mechanisms. It also refines routing, component interaction, and backend methods to improve update tracking, status transitions, and artifact management.
2026-04-15 11:53:45 +02:00
Jeppe Bundgaard 95a8f114bc Refactor e2e test fixtures and formatting for consistency:
- Removed unnecessary string quotes from numeric keys in `cvrSearchResponses` across `mobilePos.js` and related test files.
- Reformatted multiline function chaining and object initialization for improved readability.
- Enhanced fixture setup logic to ensure consistent mock data handling across test scenarios.
2026-04-15 09:23:25 +02:00
Jeppe Bundgaard 6b91097f98 Add unit and e2e tests for auto-selecting non-barred customer suggestions and update POS vehicle forms:
- Implemented unit tests for `VehicleCustomerSuggestionsPos` to validate auto-selection and manual override behaviors.
- Added e2e scenarios to verify auto-application of non-barred customer suggestions in desktop POS.
- Refactored customer suggestion handling logic to support new `selectionSource`.
- Updated POS and booking components to improve multi-department booking handling and prevent cross-department conflicts.
- Enhanced booking match validation and streamlined customer suggestion methods.
2026-04-15 09:16:43 +02:00
Jeppe Bundgaard 00151ec237 Add unit tests and e2e coverage for POS mobile add-customer autofill functionality:
- 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.
2026-04-15 08:56:30 +02:00
Jeppe Bundgaard b5a8199472 Reduce default Vitest batch size to 5, enforce single-threaded execution, and refactor unit test wait conditions:
- Adjusted `run-vitest-unit-batches.mjs` to lower default batch size from 10 to 5 and enforce single-threaded execution for more predictable test behavior.
- Updated GitHub workflows to align with new batch size defaults.
- Introduced `waitForCondition` helper in unit tests to replace arbitrary delays with predicate-based waiting.
- Refactored `useEdgeGatewayTerminal` for improved session handling, including idle delay for shell polling and cleanup of request queuing logic.
2026-04-14 17:55:38 +02:00
Jeppe Bundgaard c8f917ac30 Add batch support for Vitest unit tests and update workflows:
- Introduced `run-vitest-unit-batches.mjs` script for running unit tests in batches with configurable batch size.
- Updated `package.json` to replace `test:unit` command with the batch runner and added `test:unit:single` for direct execution.
- Tweaked GitHub workflows (`tests.yml`, `code_quality.yml`) to use updated actions and support batch testing.
- Minor formatting improvements in Vue components and workflows for consistent style.
2026-04-14 17:46:00 +02:00
Jeppe Bundgaard 586aba8531 Refactor collectedOrderInvoiceManageStripe.vue to integrate economic queue job for Stripe invoice booking:
- Replaced refs with computed properties for status determination (paid, draft, booked, etc.).
- Integrated `useEconomicQueueJob` for stripe transfer management, including enqueue, retry, and transport error handling.
- Streamlined Stripe payment data mapping with `computed` for enhanced maintainability.
- Updated template to include improved UI elements for transfer status and error feedback.
- Added progress indicators and notifications for queue operations.
2026-04-14 17:34:46 +02:00
Jeppe Bundgaard bf7c01ce25 Update Vite SCSS config: enable quietDeps and expand silenceDeprecations list 2026-04-14 17:30:39 +02:00
Jeppe Bundgaard 1236770513 Refactor e2e tests for improved readability and formatting consistency:
- Reformatted callback and function parameters across booking flow, POS, and visual test files.
- Enhanced readability by aligning multiline arguments with consistent indentation.
- Updated test messages for clarity and better context.
2026-04-14 17:24:54 +02:00
Jeppe Bundgaard 3d8203945d Skip unstable test scenarios for Firefox desktop and WebKit mobile; update visual snapshots. 2026-04-14 17:10:28 +02:00
Jeppe Bundgaard 2be33c89a7 Add Edge Broker service and configuration defaults
Introduced the Edge Broker service in the Docker Compose setup, configured to run on port 4300. Updated `.env.example` to include default environment variables for the Edge Broker and adjusted tests to validate the new configuration. Updated visual snapshot tests to reflect related UI changes.
2026-04-14 16:48:40 +02:00
Jeppe Bundgaard 631e9c4488 Enhance POS mobile e2e tests:
- Added fallback actions to handle missing customer selection and attachment toggles.
- Introduced visibility checks for crucial elements (e.g., "Take Picture" and "Close" actions).
- Updated visual test snapshots for duplicate warnings on desktop.
2026-04-14 16:32:16 +02:00
Jeppe Bundgaard 1afdda2650 Refactor POS workflows and improve booking flow:
- Updated `PayWithStripeButton` to handle setup requirements and improved error state handling.
- Enhanced POS mobile popup completion flow with added callback support and fallback actions.
- Introduced booking safety seal and improved step navigation logic.
- Added new e2e tests for booking confirmation, order completion, and error scenarios.
- Adjusted POS e2e and visual tests for updated workflows and UI changes.
- Refactored POS component logic for consistency and improved readability.
2026-04-14 16:19:11 +02:00
Jeppe Bundgaard 6f23941ea4 Add unit tests for ActionSettingsWheelButton i18n key coverage:
- Introduced validation to ensure all literal translation keys in the component are present across active locales.
- Enhanced coverage by integrating locale JSONs and adding missing key detection.
- Refactored button test setup with extracted `SETTINGS_WHEEL_TRANSLATION_KEYS` and reusable helper methods.
2026-04-14 14:32:01 +02:00
Jeppe Bundgaard 983585ede7 Refactor and cleanup:
- Migrate postinstall script to `postinstall-sync-playwright-root-links.mjs` for streamlined path resolution.
- Replace `axios` v1.15.0 with v1.13.5 and downgrade `vite` from v8.0.5 to v7.1.11.
- Update testing code for consistent formatting and enhanced readability (e.g., `poll` and `catch` calls).
- Remove unused or redundant dependency flags and align `package-lock.json` with new configuration.
2026-04-14 14:17:28 +02:00
Jeppe Bundgaard b01f400d2c Add e2e visual snapshots for Edge Gateways and POS workflows. 2026-04-14 13:50:25 +02:00
Jeppe Bundgaard ecec624aea Update axios to v1.15.0 and vite to v8.0.5; modify dependency flags for improved build configuration. 2026-04-14 13:48:43 +02:00
Jeppe Bundgaard bbbad2c634 Remove dependency on the ws module.
Deleted the entire `ws` library and its associated files. This likely reflects a move away from the WebSocket library, possibly signaling an alternate implementation or unused/legacy code cleanup.
2026-04-14 13:45:15 +02:00
Jeppe Bundgaard 4963fed0b5 Add unit and e2e tests for POS mobile popups:
- Introduced `headerCloseTestId` and `showHeaderClose` properties in visible-header popups for improved testability.
- Added unit tests to validate header close button behavior across popups.
- Enhanced e2e tests to verify popup visibility and header close functionality in mobile workflows.
2026-04-14 10:58:27 +02:00
Jeppe Bundgaard a4676f8f87 Add e2e and unit tests for i18n coverage and POS workflows:
- Introduced i18n key usage validation with `tests/e2e/i18n.views.spec.ts` for deterministic locale coverage.
- Added `viewI18nKeyScanner` utility to scan and validate view translation keys.
- Created `PosDepartmentStep1` unit tests for duplicate warnings and booking selection flow.
- Enhanced POS mobile popup with `SelectOrderBookingPopupProps` and new header close options.
- Updated e2e tests with scenarios to verify booking selections, duplicate handling, and locale alignment.
- Added new `test:e2e:i18n:views` npm script for targeted i18n test execution.
2026-04-14 10:49:20 +02:00
Jeppe Bundgaard 7533622fb1 Please provide the corresponding diff so I can generate an appropriate commit message. 2026-04-14 10:28:46 +02:00
Jeppe Bundgaard 90518308f8 Add e2e tests for POS desktop card payment flow:
- Added tests for handling misconfigured terminal locations with superuser and operator guidance.
- Verified behavior for zero readers, existing payment intents (`requires_capture` and `succeeded`), and happy path payment flows.
- Introduced `bootDesktopCardPayment` helper for streamlined test setup.
2026-04-14 10:28:29 +02:00
Jeppe Bundgaard e88c2d14d5 Refactor POS booking flow and error handling:
- Improved error state management with `normalizeErrorState` and `clearErrorState` utilities.
- Enhanced Stripe payment flow with clear status messaging and support for terminal setup requirements.
- Updated POS component templates (`PosDepartmentStep3.vue`, `PayWithStripeButton.vue`) for better error messages and UX.
- Added `pos-step-4` navigation and tests in e2e flows.
- Introduced utility `toPositiveInteger` for robust numeric validation in bookings.
2026-04-14 10:27:29 +02:00
Jeppe Bundgaard c14f0cc1c4 Add utilities and tests for mobile order management and Subuser navigation:
- Introduced `mobileOrderCompletion.js` for mobile order metadata handling with safety seal syncing, metadata persistence, and booking linking utilities.
- Added tests for Subuser navigation menu (`navigation-menu-items-user-subusers.spec.js`) to validate links and permission gating.
- Created unit and end-to-end tests for Subuser grant permissions and management, including permission nodes and invites (`subuser-grant-permission-nodes.spec.js`, `subuser-management.spec.ts`).
- Implemented `SubuserCompleteRegistrationPage.vue` with validation, token handling, and registration flow for Subuser setup.
- Enhanced Playwright e2e tests for Subuser features (`subuserCompleteRegistration.spec.ts`).
2026-04-14 10:09:10 +02:00
Jeppe Bundgaard a93b0dc954 Add tests and utilities for dynamic booking preload handling in POS flow:
- Introduced logic and utilities to fetch exact plate bookings beyond initial preload (`ensureVehiclePlateBookingsLoaded`, `mergePendingBookings`).
- Enhanced booking dropdown and chooser to handle dynamically loaded data for desktop POS.
- Updated e2e tests (`pos-flow.spec.js`) with scenarios for exact and partial plate matches in booking preload handling.
- Refactored `network.js` to support paginated and filtered responses for bookings based on registration fields.
- Improved UX and display logic in booking selectors (`LicensePlateReg1Input.vue`, `PosDepartmentProcess.vue`).
2026-04-13 21:53:16 +02:00
Jeppe Bundgaard 6549eb5015 Refactor POS booking flow and dropdown logic:
- Enhanced order booking sorting with improved date handling and validation (`getOrderBookingSortDateValue`, `hasOrderBookingSortDateValue`).
- Updated dropdown interaction in `LicensePlateReg1Input.vue` for better selection behavior and UX.
- Revamped test data and assertions in e2e tests with added coverage for new booking scenarios.
- Improved dropdown styling and responsiveness in `LicensePlateReg1Input.vue`.
2026-04-13 21:42:18 +02:00
Jeppe Bundgaard 0f37b0632a Add POS order booking modal and utilities with tests:
- 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.
2026-04-13 21:12:34 +02:00
Jeppe Bundgaard 7d9d928a2d Normalize license plate input value handling in LicensePlateInput.vue:
- Ensured input field values are updated consistently with `props.actualValue`.
- Replaced raw `newValue` usage with normalized string values for better data integrity.
- Improved checks for synchronization and validation logic (`checkLicensePlateValid`, `searchCustomerRegistrationNumbers`).
2026-04-13 18:02:06 +02:00
Jeppe Bundgaard ce049d9196 Enhance POS booking flow logic and tests:
- Added support for trailers (`reg_2`) in booking selection and vehicle matching logic.
- Implemented logic to prioritize bookings from registered vehicles and trailers.
- Enhanced booking dropdown with date labels and validation for booked vehicles.
- Improved e2e tests to cover booking date, trailer registration, and vehicle-search scenarios.
- Refactored Vue components for consistency in booking handling and dropdown interaction.
2026-04-13 17:56:19 +02:00
Jeppe Bundgaard 8f3ec2cf09 Add booking selection popup and refactor POS booking flow logic:
- Introduced `PosDepartmentStepMobilePopupSelectOrderBooking.vue` for mobile booking selection.
- Refactored vehicle and booking handling in `SelectVehicleFormPOS.vue` with better plate matching, booking persistence, and customer association logic.
- Updated `PosVehicle` object type to include booking matches.
- Enhanced POS transaction history and booking views with improved readability, functionality, and `data-testid` attributes.
- Adjusted `PosPopup.vue` components to support the new booking popup.
2026-04-13 17:27:37 +02:00
Jeppe Bundgaard ecfe27571c Refactor booking flow tests and enhance product category filtering logic:
- Improved vehicle type selection handling with better validation and polling in `bookingFlow.ts`.
- Updated product card selectors for enhanced visibility and interaction in booking flow tests.
- Added `matchesProductCategory` utility in `network.js` for flexible and accurate product category filtering.
2026-04-13 15:44:15 +02:00