Introduce a new Menu feature to manage transaction permissions: adds MenuComponent (template, spec and scss), registers a /home/menu route with ActivityGuard, and adds a side-nav entry. Extend PermissionNode with boolean flags for transaction types and add logic in the component to load default menu data, fetch user permissions, map endpoint URIs to booleans, and save selections by sending endpoint arrays. Add new URI enum keys and corresponding entries in assets/app.uri.json, insert a 'menu' node in sideMenu.json, and add i18n strings for English and Arabic. Also add rootDir to tsconfig and a small whitespace fix in reset-password component's GET subscription.
Introduces a date filter section with quick-select buttons (last 7 days, last 30 days, this month), clear filter, and active filter badge to the transaction logs component. Implements debounced search, date range validation, and updates export to include date filters. Enhances UI/UX with new SCSS styles and adds relevant i18n keys for both English and Arabic.
Improved the transaction logs component with better table UI, pagination, loading/error states, and date filtering. Updated SCSS for responsive design and visual enhancements. Fixed translation keys and placeholders in user management and constants. Adjusted login direction logic and commented out duplicate login check in authentication service.
Replaced user ID input with a dropdown in the reset password form and loaded users dynamically. Added 'resetPasswordButton' permission to side menu and conditionally displayed the reset password button
bugs resolved:
Setup User: No validation applied; the form saves with empty inputs. User ID length validation is not implemented. The role column is not displayed in the table.
Reset Password: No success message is shown after password update. Strong password validation is not applied.
Change Password: No success message is shown after password update. Strong password validation is not applied. Validation to prevent using the same value for old and new passwords is not implemented.