Commit Graph

225 Commits

Author SHA1 Message Date
Nati
294a8ded6c Refactor exam form handling to support mixed paper types and update related interfaces 2026-08-24 12:37:06 +00:00
Nati
895690de80 Fix for rank selection 2026-08-24 08:20:13 +00:00
Nati
a84177cf12 Fix 2026-08-24 07:49:10 +00:00
Nati
302c0242dd Add rank selection and condition handling to certificate designer and requirements 2026-08-24 07:39:24 +00:00
Nati
f973bff641 Add Rank and Department management to ConfigurationPage with new RankDepartmentTab 2026-08-24 06:13:43 +00:00
Nati
e82714ba1f Enhance exam selection by displaying certification rank in options and remove admission number input from scheduling modal 2026-08-22 06:11:02 +00:00
Nati
c3977897b7 Add rankKey support to certification forms and exams
- Introduced rankKey field in Certification interface and payloads.
- Updated CertificationForm to handle rankKey input.
- Enhanced ScheduleExamModal to filter exams based on rank.
- Added getEligibleExams API query to fetch exams relevant to the application's rank.
- Updated related components and types to accommodate new rankKey functionality.
2026-08-21 19:10:01 +00:00
Nati
21ffca9094 Merge branch 'WorkflowChange' of github.com:Tria-plc/emaui into WorkflowChange 2026-08-21 18:20:02 +00:00
Nati
9f4954b5e8 UI 2026-08-21 18:17:52 +00:00
nati14575
53b8993c72 Merge branch 'WorkflowChange' of https://github.com/Tria-plc/emaui into feature/exam-attempt-domain 2026-08-21 21:04:34 +03:00
Nati
56cb22c7bd Merge branch 'ui_ux' of github.com:Tria-plc/emaui into WorkflowChange 2026-08-21 17:36:09 +00:00
Fistum
81d3ebdcd9 feat(dashboard): enhance dashboard with stat tiles for better data visualization 2026-08-21 13:33:07 +00:00
Fistum
62492e957b backoffice 2026-08-21 13:09:40 +00:00
Fistum
6b5b99f42d ui chnages 2026-08-21 11:16:22 +00:00
fitse-yotor
8f6ebdafb1 feat(a11y): add skip link for improved navigation accessibility 2026-08-21 12:34:00 +03:00
fitse-yotor
659e954306 refactor(theme): share one base theme between backoffice and portal
The two apps had drifted into unrelated themes. The portal's carried a full
type scale, radius scale, shadow ramp and component defaults; the backoffice's
had none of them — 55 lines defining two colour ramps and little else. With
nothing to inherit, its 23 features each invented their own sizing, which is
the real source of the inconsistency the UI reads with.

Promote the portal's structure to `libs/shared` as `baseTheme`, and reduce both
themes to what they should differ on: brand. The backoffice keeps #1e40af and
the portal keeps Coastal Modern — a distinct accent tells an officer which of
the two systems they are in, and the ramps are not interchangeable in contrast.

Both export names are preserved, so no consumer import changes.

Two properties are deliberately held back rather than shared:
- `colors.gray`: the portal's blue-tinted neutrals retint every dimmed label,
  neutral badge and table border. The backoffice adopts them as its own
  reviewed change, not as a side effect of sharing a base.
- `primaryShade.dark`: moves every filled control in dark mode; waits until
  dark mode is verified end to end.

Also fixes a live bug: PageLoader coloured its primary label `navy.9`, which is
defined in neither theme. Mantine drops unresolved colour keys silently, so the
label in a component used by 20 files had been rendering an inherited colour.

Adds a visual-regression harness to make all of this reviewable. It runs
against a static gallery route rather than real pages, so it needs no API,
database or auth — a theme diff cannot be masked by a migration or an expired
token. The portal is the control group: it is pixel-identical across all four
light/dark × desktop/tablet baselines, which is what makes the refactor
provably lossless.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-21 11:25:26 +03:00
estifanos
d4a5ba7673 UI fixes 2026-08-21 07:38:01 +00:00
estifanos
5e671b8ac0 fixes 2026-08-21 07:18:19 +00:00
mihretue
e94ecb3a71 Merge remote-tracking branch 'origin/WorkflowChange' into feature/exam-attempt-domain 2026-08-21 06:58:57 +00:00
estifanos
28dd246c5f fixes 2026-08-21 06:43:42 +00:00
Estifo77
e8c9ad4dd2 Merge branch 'WorkflowChange' of https://github.com/Tria-plc/emaui into estif-branch-1 2026-08-21 08:55:24 +03:00
Nati
357dc3e4d5 feat: add document requirements and form schema management for license types
- Implement DocumentRequirementsTab for managing document upload requirements.
- Create FieldEditorDrawer and SectionEditorDrawer for editing fields and sections in the form schema.
- Develop FormSchemaTab to handle sections and fields for a license type's form schema.
- Introduce CertificateRequirementsPage to serve as the main interface for configuring license type requirements.
- Add hooks for requirement actions to streamline mutation handling and notifications.
- Implement condition handling for fields and sections to manage visibility based on user input.
- Create schema-paths configuration to facilitate condition target collection.
2026-08-20 13:37:26 +00:00
Nati
6901e985fc feat: update exam stage actions and payment flow
- Refactor ExamStageActions component to handle eligibility payment and retake exam actions.
- Update MyApplicationsPage to use new retakeExam mutation instead of requestExamPayment.
- Modify licensing API to include retakeExam mutation for handling exam fee requests for failed candidates.
- Adjust mock data to reflect new application statuses and ensure consistency in eligibility and exam payment states.
- Update licensing helpers to include new status labels and colors for eligibility payment states.
- Revise licensing types to replace ELIGIBILITY_APPROVED with ELIGIBILITY_PAYMENT_PENDING and ELIGIBILITY_PAID for clarity in application status flow.
2026-08-20 12:41:46 +00:00
Estifo77
3ec12fcd89 Merge branch 'WorkflowChange' of https://github.com/Tria-plc/emaui into estif-branch-1 2026-08-20 15:30:37 +03:00
mihretue
c0b5871dc3 Merge remote-tracking branch 'origin/WorkflowChange' into feature/exam-attempt-domain
# Conflicts:
#	apps/portal/src/app/features/exams/pages/ExamsPage/columns.tsx
#	apps/portal/src/app/features/exams/pages/ExamsPage/index.tsx
#	libs/api/src/lib/features/licensing/licensing.helpers.ts
#	libs/auth/src/lib/components/AuthBootstrap.tsx
2026-08-20 11:41:06 +00:00
Nati
558cfe20a1 feat: Refactor medical and sea service verification pages
- Split MedicalVerificationPage into MedicalVerificationPage and SeaServiceVerificationPage for better separation of concerns.
- Update navigation to include separate entries for Sea Service Verification and Medical Verification.
- Enhance sea service columns to display additional vessel information and days served.
- Add translations for new and updated labels in both English and Amharic.
- Introduce seaServiceDays helper function to calculate days served based on engagement and discharge dates.
- Remove deprecated MedicalCertificatePage from the portal.
- Update routing to direct to the new sea service and medical pages.
2026-08-20 11:01:04 +00:00
Nati
f429e717a7 feat: Update permissions and labels for seafarer document review and navigation 2026-08-20 09:06:11 +00:00
estifanos
bc31cec0b2 feat: implement input length constraints and enhanced validation for international phone numbers 2026-08-20 08:58:07 +00:00
Nati
8eb4c38216 feat: Refactor seafarer document application flow
- Remove SeamanBookApplicationPage from router and redirect to Seaman Book page.
- Add new API endpoints for managing seafarer documents, including listing, reviewing, and issuing documents.
- Introduce new SeafarerDocumentQueuePage and SeafarerDocumentReviewPage components for document management.
- Update licensing types to accommodate optional applicationId and documentId in ApplicationPayment.
- Remove unused claimSeafarerRegistration mutation and related constants.
- Update seafarer registration status labels and types to remove 'UNDER_REVIEW'.
- Create new constants and types for seafarer documents, including status labels and colors.
- Implement document payment initiation and confirmation functionalities.
- Enhance UI components for better user experience in document management.
2026-08-20 08:39:17 +00:00
Nati
5a802b5dfc Merge branch 'WorkflowChange' of github.com:Tria-plc/emaui into WorkflowChange 2026-08-20 07:17:12 +00:00
Nati
818964a694 feat: add seafarer registration feature with multi-step form
- Implemented SeafarerRegistrationPage component with five-step registration process.
- Added API endpoints for seafarer registration including start, save, and submit functionalities.
- Created necessary types and constants for seafarer registration.
- Updated router to include new registration paths and permissions.
- Integrated profile defaults to pre-fill registration fields where applicable.
- Added validation and error handling for registration steps.
- Enhanced document upload functionality specific to seafarer registration.
2026-08-20 07:14:57 +00:00
nati14575
524131fe42 Merge branch 'WorkflowChange' of https://github.com/Tria-plc/emaui into estif-branch-1 2026-08-19 16:49:12 +03:00
Nati
688b111b6a feat: define FAMILY_KIND_BY_KEY for SEAFARER_REGISTRATION in licensing helpers 2026-08-19 13:26:03 +00:00
Nati
acbb789960 feat: enhance license queue functionality for logistics and non-logistics applications 2026-08-19 13:20:21 +00:00
Nati
e1d52adb0c change 2026-08-19 11:14:30 +00:00
estifanos
ec28f6456d feat: implement ActiveSessions component and JWT session tracking to manage user device access 2026-08-19 11:00:20 +00:00
estifanos
ff89b9af5e feat: implement two-factor authentication flow during sign-in and add utility hooks for configuration management 2026-08-19 10:42:30 +00:00
estifanos
6117f9c862 UI fixes 2026-08-19 10:42:08 +00:00
estifanos
0fa5566432 UI fixes 2026-08-19 10:22:00 +00:00
estifanos
4121e2a8b1 UI fixes 2026-08-19 10:09:15 +00:00
nati14575
548846a1bd feat: update routing and navigation for Basic Training Certificate and Seaman Book applications 2026-08-19 12:58:24 +03:00
estifanos
4e2f63d4df feat: implement cross-tab idle session timeout and add request collapsing to token refresh logic. 2026-08-19 09:29:02 +00:00
estifanos
439a4963ec fixes 2026-08-19 09:04:28 +00:00
estifanos
b860e57227 feat: integrate PdfPreviewModal across apps 2026-08-19 08:59:08 +00:00
estifanos
4d87d41e55 feat: add PdfPreviewModal component and integrate into DocumentsTab for centralized PDF viewing 2026-08-19 08:48:50 +00:00
Nati
f97eb68e25 Major 2026-08-19 08:35:28 +00:00
estifanos
58f9dd7668 UI Fixes 2026-08-19 08:32:44 +00:00
Estifo77
c377ddf74a Merge branch 'WorkflowChange' of https://github.com/Tria-plc/emaui into estif-branch-1 2026-08-19 10:23:33 +03:00
nati14575
130082dcc4 Refactor LicenseApplicationPage and RequireSeafarerProfile components
- Updated imports for better readability in LicenseApplicationPage.
- Introduced legacy profile sources for backward compatibility in LicenseApplicationPage.
- Enhanced user profile handling by utilizing accountUser in LicenseApplicationPage.
- Improved application state management in LicenseApplicationPage to include accountUser.
- Refactored RequireSeafarerProfile to check for existing applications and handle navigation accordingly.
- Cleaned up navigation items in PortalLayout for better readability and maintainability.
2026-08-19 09:42:23 +03:00
Nati
d44977cbf3 Remove obsolete test artifacts and error context files for seafarer registration tests 2026-08-19 05:14:43 +00:00