Skip to content

bugfix: row select in internal tabs in project tabs, fix the list direction on project settings - #1572

Merged
AmrSaleh2234 merged 1 commit into
devfrom
bugfix/horizontal-tabs
Aug 22, 2026
Merged

bugfix: row select in internal tabs in project tabs, fix the list direction on project settings#1572
AmrSaleh2234 merged 1 commit into
devfrom
bugfix/horizontal-tabs

Conversation

@Begad-El3shry

Copy link
Copy Markdown
Collaborator

No description provided.

@github-actions

Copy link
Copy Markdown

Branch Naming Validation Failed

Your branch name does not follow the required naming convention.

Required Pattern:

<type>/<JIRA-TICKET>/<short-description>

Allowed Types:

  • feature - New features
  • bugfix - Bug fixes
  • hotfix - Critical fixes for production
  • release - Release branches
  • chore - Maintenance tasks
  • refactor - Code refactoring
  • docs - Documentation updates
  • test - Test additions or updates

Requirements:

  • Type must be lowercase
  • JIRA ticket must be uppercase (e.g., PROJ-123, CORE-456)
  • Description must be lowercase with hyphens (kebab-case)

Valid Examples:

✅ feature/PROJ-123/user-authentication
✅ bugfix/CORE-456/fix-login-error
✅ hotfix/API-789/critical-security-patch
✅ chore/DEV-101/update-dependencies
✅ refactor/TECH-202/improve-performance
✅ docs/DOC-303/update-readme

Your branch: bugfix/horizontal-tabs

Please rename your branch to follow the naming convention:

git branch -m <new-branch-name>
git push origin -u <new-branch-name>
git push origin --delete bugfix/horizontal-tabs

@AmrSaleh2234
AmrSaleh2234 merged commit 51e1b94 into dev Aug 22, 2026
0 of 2 checks passed
AmrSaleh2234 added a commit that referenced this pull request Aug 22, 2026
* Handle table sttaf (#1445)

* Refactor StaffTab pagination logic

- Updated the data handling in StaffTab to improve pagination by calculating total pages based on the length of all available rows.
- Introduced a memoized data slice for efficient rendering of paginated employee data.
- Enhanced loading state management for employee data based on engagement context.

* Enhance AttendanceProvider with eagerFetch option

- Added an optional `eagerFetch` prop to the `AttendanceProvider` to control data fetching behavior on mount.
- Updated hooks in the attendance context to utilize the `enabled` parameter based on the `eagerFetch` value, allowing for more flexible data loading.
- Modified related hooks (`useAttendanceSummary`, `useBranchesHierarchies`, `useManagements`, `useConstraints`, `useMapTrackingData`, `useTeamAttendance`) to accept an `enabled` option for conditional fetching.

* Update middleware to handle central company redirects based on cookie data

* Feature: finish work-orders tab (#1448)

* Feature: finish work-orders tab (#1450)

* Handle table sttaf (#1452)

* Handle projects doc (#1453)

* Add document requirement messages and enhance DocumentRequirementsTable component

- Added new messages for document requirements in Arabic, including actions like "Add requirement", "Cancel", and frequency options.
- Enhanced DocumentRequirementsTable to manage document requirements with state handling for adding new requirements through a dialog.
- Updated filtering logic to utilize dynamic rows instead of mock data for better data management.

* Refactor StagesView and SubTypeTabs components for improved functionality

- Refactored the StagesView component to enhance the handling of procedure stages, including state management for adding and editing stages.
- Updated the SubTypeTabs component to replace the button for adding stages with an IconButton for better UI consistency.
- Improved the overall structure and readability of the code in both components.

* Refactor StagesView and SubTypeTabs components for enhanced dialog management

- Updated StagesView to manage the opening of DocumentClassificationAddProcedureDialog and DocumentSequenceAddProcedureDialog with improved state handling.
- Refactored SubTypeTabs to enhance the structure and readability, including adjustments to the rendering of procedure selection and action buttons.
- Improved overall user experience by ensuring consistent dialog interactions across components.

* Add job attribute to procedures settings and document classification dialog

- Introduced a new message for "Job attribute" in the procedures settings module, enhancing the localization support in Arabic.
- Updated the ClassificationForm type and default form values to include the new job attribute.
- Modified the DocumentClassificationAddProcedureDialog to incorporate the job attribute in the dialog's structure for better user experience.

* BugFix: headless table top actions (#1456)

* append contractors

* append contractors

* finish work-orders table (#1454)

* update types for project notification

* Refactor redirect logic for user profile based on company type and add utility function for post-login redirection

* create new tabs

* update insertion and update

* update insertion and update

* update insertion and update

* update insertion and update

* update insertion and update

* Bugfix kan 83 (#1466)

* fix problem high cost of routes api traffic aware

* Implement column pinning feature with associated hooks and UI components (#1468)

* Misalignment of the map settings table in Arabic and English (#1469)

* represenrt

* represenrt

* Feat fixed table columns (#1475)

* Implement column pinning feature with associated hooks and UI components

* Add column order functionality with drag-and-drop support

* feature: update from UDS (#1474)

* add work order columns (#1470)

* feature: add columns in work order table (#1477)

* pull

* Add document requirement messages and enhance DocumentRequirementsTable component

- Introduced new messages for document requirements in Arabic, including success and error notifications for requirement submissions.
- Updated the AddDocumentRequirementDialog to handle project ID validation and improved submission handling with loading states.
- Refactored DocumentRequirementsTable to utilize dynamic data fetching instead of mock data, enhancing overall data management and user experience.

* Add error handling and localization improvements for procedures settings

- Introduced a new error message for failed procedure type loading in Arabic.
- Enhanced ProceduresSettingsOuterTab interface with optional label property for better localization support.
- Refactored StagesView and SubTypeTabs components to utilize dynamic tab labels and improved error handling for API calls.
- Updated DocumentClassificationAddProcedureDialog to handle API errors gracefully, ensuring a better user experience during data fetching.

* Refactor AddFileDialog to streamline file attachment process

- Removed unnecessary attachment type fields and related queries to simplify the file upload dialog.
- Enhanced shared companies retrieval by utilizing project shares for better data management.
- Improved error handling for missing project ID during file upload mutation.
- Updated component state management for a more efficient user experience.

* feat(table): implement column grouping functionality

- Added support for column grouping in the table component, allowing users to create, rename, and delete groups of columns.
- Introduced a new hook `createColumnGroupingHook` to manage column group state and interactions.
- Updated the table rendering logic to accommodate grouped columns, including rendering spanning header cells for groups.
- Enhanced the table state management to include column grouping state and related actions.
- Added translations for column grouping actions in the messages file.
- Created utility functions to compute column runs based on grouping, ensuring proper rendering and behavior in the UI.

* change work order tab layers (#1480)

* permits

* present work spaces

* editable

* editable

* Enhance procedures settings with project ID support and localization improvements

- Added project ID handling in procedures settings to support project-specific internal procedures.
- Introduced new classification messages in Arabic for better localization.
- Refactored DocumentClassificationAddProcedureDialog to include cascading folder classifications based on project ID.
- Improved error handling and user feedback in various components related to procedures settings.

* Add project procedures support and enhance procedures settings

- Introduced a new message for "Project procedures" in Arabic for better localization.
- Updated ProceduresSettingsOuterTab interface to include an optional procedureId for internal procedures.
- Enhanced SubTypeTabs component with useEffect to manage selected procedure states effectively.
- Refactored useDocumentSequenceOuterTabs to handle project-specific internal procedures and improve error handling.
- Improved EditStageDialog to ensure proper handling of optional fields during stage updates.

* editable

* Enhance EditStageDialog and API for project ID support

- Integrated project ID handling in EditStageDialog to manage project-specific stage updates.
- Updated ProcedureSettingsApi to streamline the updateStage method by removing unnecessary options.
- Added project_id field to UpdateStageArgs for better API compatibility.

* Enhance DocumentStageCard with management hierarchy support

- Added managementHierarchyType and isDeputyDirector fields to DocumentStageForm for improved data handling.
- Introduced MANAGEMENT_HIERARCHY_TYPE_OPTIONS for selecting management hierarchy types.
- Updated form reset logic to accommodate new fields and ensure proper state management.
- Implemented validation to ensure management hierarchy selection when applicable.
- Enhanced UI with new fields for management hierarchy type and deputy director checkbox.

* Add receiver company support and localization enhancements in procedures settings

- Introduced new messages for loading states and receiver companies in both CRM and HR procedures settings for improved user experience.
- Updated DocumentStageCard to handle receiver company selection, including validation for required fields.
- Enhanced CreateStepArgs and ProcedureStep interfaces to accommodate receiver company IDs for better API integration.
- Improved UI components to reflect changes in state management and data handling for receiver companies.

* Refactor DocumentStageCard for improved receiver company selection and UI enhancements

- Updated the receiver company selection logic to handle empty states and improve user feedback during loading.
- Enhanced the rendering of selected companies with better visual representation using Chips.
- Improved accessibility and user experience by adjusting input label properties and selection handling.
- Refactored StagesView component styles for consistency and clarity in background color settings.

* Refactor StagesView and StepCard components for improved step management and receiver company selection

- Replaced DocumentStageCard with StepCard in StagesView for better consistency in step representation.
- Enhanced StepCard to support receiver company selection, including validation and improved user feedback.
- Updated state management and UI elements to reflect changes in step handling and receiver company integration.
- Improved loading states and accessibility features for a better user experience.

* Refactor SearchableSelect component for improved dropdown handling and UI enhancements

- Replaced dropdownRef with anchorRef for better reference management.
- Introduced ClickAwayListener to handle dropdown closing more effectively.
- Consolidated dropdown closing logic into a separate closeDropdown function for cleaner code.
- Enhanced UI elements for better accessibility and user experience.

* Add upload functionality and submission history for document requirements

- Introduced new messages for file upload requirements, including success and error states.
- Added interfaces for handling upload status and submission previews.
- Implemented upload and submission history dialogs in the DocumentRequirementsTable component.
- Enhanced API integration for creating and listing requirement submissions.
- Updated state management to support file uploads and display latest submission details.

* Refactor AddFileDialog and API to replace attachment_type_id with procedure_setting_id

- Updated AddFileDialog component to use procedure_setting_id instead of attachment_type_id for file uploads.
- Modified API request handling to reflect the change in parameter naming.
- Adjusted TypeScript interface to align with the new parameter structure for attachment requests.

* commit

* Enhance procedures settings with receiver company and project employee support

- Added new messages for selecting a single receiver company and concerned users in both CRM and HR procedures settings.
- Updated StepCard component to handle project employee IDs and improved receiver company selection logic.
- Modified TypeScript interfaces to include project_employee_ids for better API integration.
- Enhanced validation messages for improved user feedback during selection processes.

* feature: create safety tab

* Enhance document requirements with new fields and improved validation

- Added support for document type ID and receiver company IDs in the RequirementEntry interface.
- Updated the AddDocumentRequirementDialog component to include new fields for document type and receiver companies.
- Enhanced validation logic to ensure required fields are properly checked before submission.
- Improved loading states and data fetching for document types and shared companies using React Query.

* Refactor document requirements to include new frequency type and update payload structure

- Added support for a new frequency type "once" in the RequirementFrequencyType.
- Updated the RequirementEntry interface to replace documentTypeId with procedureSettingId for better clarity.
- Enhanced the buildRequirementArgs function to accommodate the new procedureSettingId field.
- Modified AddDocumentRequirementDialog to reflect changes in the entry structure and validation logic.
- Removed the mock data for document requirement stats and integrated dynamic stats fetching in DocumentRequirementsTable.
- Updated RequirementStatsCards to improve visual representation of requirement statuses.

* Refactor shared companies fetching and enhance project context handling

- Updated query keys in DocumentStageCard, StepCard, and AddDocumentRequirementDialog to use "project-shares" for clarity.
- Refactored data fetching logic to list shared companies for projects, ensuring unique company entries.
- Enhanced StepCard and AddDocumentRequirementDialog to include project ID in relevant API calls for better context.
- Modified TypeScript interfaces to include project_id for improved API integration and clarity in step creation arguments.

* feature: create safety reports tab in safety tab

* Integ doc (#1491)

* Enhance procedures settings with new messages and UI improvements

- Added new messages for adding procedures from the top and side lists in both CRM and HR settings.
- Updated StagesView component to include tooltips for button actions based on conditions.
- Improved SubTypeTabs component with a new procedure management feature and optimized tab rendering.

* Refactor SubTypeTabs and related components for improved tab management and fallback handling

- Updated SubTypeTabs to handle cases with no outer tabs and set default values accordingly.
- Simplified outerTabs generation in useDocumentSequenceOuterTabs by removing fallback logic.
- Removed unused getEmptyDocumentSequenceOuterTab function to streamline code.

* solved issue for requiremnts inbox

* Enhance project dashboard with new charts and tabs (#1493)

- Added new messages for the project dashboard, including tabs for requests and indicators.
- Implemented a tabbed interface in the DocumentCycleTab component to switch between AttachmentRequestsTable and AttachmentRequestChartsView.
- Introduced a new API endpoint to fetch chart data for attachment requests, improving data visualization capabilities.

* Integ doc (#1492)

* Enhance procedures settings with new messages and UI improvements

- Added new messages for adding procedures from the top and side lists in both CRM and HR settings.
- Updated StagesView component to include tooltips for button actions based on conditions.
- Improved SubTypeTabs component with a new procedure management feature and optimized tab rendering.

* Refactor SubTypeTabs and related components for improved tab management and fallback handling

- Updated SubTypeTabs to handle cases with no outer tabs and set default values accordingly.
- Simplified outerTabs generation in useDocumentSequenceOuterTabs by removing fallback logic.
- Removed unused getEmptyDocumentSequenceOuterTab function to streamline code.

* Enhance procedures settings with new fields and edit functionality

- Added new fields for attachment types and job attributes in the procedures settings.
- Implemented edit functionality in the DocumentClassificationAddProcedureDialog for better user experience.
- Updated SubTypeTabs to manage both add and edit dialogs for task actions.
- Refactored related components to streamline the handling of procedure data and improve overall code clarity.

* feature: create safety reports

* feature: create indicators tab, apply apis

* .

* fix update

* feature: apply filtration in visits tab

* Re-structure safety services

* fix update

* fix update

* fix update

* fix update

* fix update

* Bugfix: disply notification / order permit number, typeand contractor name, fix the pagination

* Bugfix: disply notification / order permit number, typeand contractor name, fix the pagination

* Bugfix: disply notification / order permit number, typeand contractor name, fix the pagination

* fix

* add AddGroupDialog component and integrate with ColumnVisibilityDialog; export default group colors

* enhance hover effects for DataRow component; implement dynamic background and text color adjustments

* omit permission

* update table constraints table

* Add attendance status and date fields to companies messages; enhance table initialization to include always visible columns for attendance; update user table configuration to support attendance data display and filtering.

* fix search in archieve

* update table constraints table

* feature: add export in maintenance-emergency tab, add download imgs in notification details

* project notification  safty form

* project notification  safty form

* project notification  safty form

* git add .

* project notification  safty form

* integrate tasks widget data from dashboard API

* There are inconsistencies in button sizes when using English, relative to the input fields

* For departments the intable search function does not work when entering the name of any department

* Departments are sorted in descending order by date, so the most recent ones always appear at the top of the table

* The close button appears above the employee editing page title when English is selected

* feature: update work-order from uds

* English language and page orientation not applied within the Business Hours tab

* Do not change text alignment in the Notifications tab when selecting English

* Renaming tabs and adjusting the direction of the Next Steps arrow within the Personnel tab

* An effect appears on all toggle switches when changing a single switch within the Notifications tab

* Issues and improvements in the login page interface

* bugfix: safety violations values

* Adjust the alignment of folders and documents

* Adjust the alignment of folders and documents

* Confirm New Password field with a visibility toggle

* Add-7-cards-to-the-attachments-page (#1528)

* feature: create assigned tasks module with it's forms [ submit site status, end task, confirm location ] (#1529)

Co-authored-by: Amr Saleh <52182013+AmrSaleh2234@users.noreply.github.com>

* fix

* fix date from date to for attendnance

* fix date from date to for attendnance

* feature: add internal tab in assigned tasks, fix violations value (#1535)

* Add-an-actions-button-and-a-report-download-option (#1539)

* feat: enhance approval workflow with new steps and mapping logic

* feat: add project classification handling in forms and API integration

* The-modification-involves-adding-images-to-all-cards-within-the-attac… (#1538)

* The-modification-involves-adding-images-to-all-cards-within-the-attachments-and-not-attaching-PDF

* Try saving an image  identity-data or work permit now  it should work

* feature: add safety violations form, fix end task form (#1540)

* Edit the employee number and add a + sign before it (#1542)

* add type of the attachment column in the document cucle (#1544)

* add type of the attachment column in the document cucle

* add 2 drop lists in add procedures , applypermissions on sub-projects like settings

* fix shares compoanies drop list, fix overflowTabBar icon (#1546)

* fix approval time line translation issue

* bugfix : attachment approve color

* appply filter into project

* feature: Safety reports tab (#1549)

* feature: Safety reports tab

* feature: create safety report, dispaly in table

* bugfix: handle all history cases, fix sorting (#1553)

* fix

* bugfix: fix document cycle table

* bugfix: show fully and partially declined and

* Filter work-order by name and oprder-permit_id befor add

* fix a problem

* fix a problem

* Download Makkah and Geddah reports

* Standardizing Cadre Job Titles

* English language and page orientation not applied within the Business Hours tab

* upload stamp in project details and use it in apryse webView, add download UDS model in work orders, display previos notes in fileViewer dialog (#1563)

* display project details tab

* apply stamp in apryse

* upload stamp in project details and use it in apryse webView, add download UDS model in work orders, display previos notes in fileViewer dialog ,

* Add sticky header and max height options to table component

* Feature: add [ safety -  constructions - order permits - managements ] on project settings

* featue: save custom stamps and signatures in apryse webviewr

* Reset project stats bar values to zero and load contractors from stakeholders API.

Co-authored-by: Cursor <cursoragent@cursor.com>

* make filter collabasaple

* make filter collabasaple

* bugfix: row select in internal tabs in project tabs, fix the list direction on project settings (#1572)

---------

Co-authored-by: Abdel-Rahman Fathy <105522928+Abdel-Rahman112000@users.noreply.github.com>
Co-authored-by: RustedMiind <alisolimanworks@gmail.com>
Co-authored-by: Begad-El3shry <89875491+Begad-El3shry@users.noreply.github.com>
Co-authored-by: Mohammed  AbdulLatif <mah01010533395@gmail.com>
Co-authored-by: Abdel-Rahman112000 <abdelrahman30688@gmail.com>
Co-authored-by: Begad-El3shry <begadelashry7@gmail.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
AmrSaleh2234 added a commit that referenced this pull request Aug 22, 2026
* Handle table sttaf (#1445)

* Refactor StaffTab pagination logic

- Updated the data handling in StaffTab to improve pagination by calculating total pages based on the length of all available rows.
- Introduced a memoized data slice for efficient rendering of paginated employee data.
- Enhanced loading state management for employee data based on engagement context.

* Enhance AttendanceProvider with eagerFetch option

- Added an optional `eagerFetch` prop to the `AttendanceProvider` to control data fetching behavior on mount.
- Updated hooks in the attendance context to utilize the `enabled` parameter based on the `eagerFetch` value, allowing for more flexible data loading.
- Modified related hooks (`useAttendanceSummary`, `useBranchesHierarchies`, `useManagements`, `useConstraints`, `useMapTrackingData`, `useTeamAttendance`) to accept an `enabled` option for conditional fetching.

* Update middleware to handle central company redirects based on cookie data

* Feature: finish work-orders tab (#1448)

* Feature: finish work-orders tab (#1450)

* Handle table sttaf (#1452)

* Handle projects doc (#1453)

* Add document requirement messages and enhance DocumentRequirementsTable component

- Added new messages for document requirements in Arabic, including actions like "Add requirement", "Cancel", and frequency options.
- Enhanced DocumentRequirementsTable to manage document requirements with state handling for adding new requirements through a dialog.
- Updated filtering logic to utilize dynamic rows instead of mock data for better data management.

* Refactor StagesView and SubTypeTabs components for improved functionality

- Refactored the StagesView component to enhance the handling of procedure stages, including state management for adding and editing stages.
- Updated the SubTypeTabs component to replace the button for adding stages with an IconButton for better UI consistency.
- Improved the overall structure and readability of the code in both components.

* Refactor StagesView and SubTypeTabs components for enhanced dialog management

- Updated StagesView to manage the opening of DocumentClassificationAddProcedureDialog and DocumentSequenceAddProcedureDialog with improved state handling.
- Refactored SubTypeTabs to enhance the structure and readability, including adjustments to the rendering of procedure selection and action buttons.
- Improved overall user experience by ensuring consistent dialog interactions across components.

* Add job attribute to procedures settings and document classification dialog

- Introduced a new message for "Job attribute" in the procedures settings module, enhancing the localization support in Arabic.
- Updated the ClassificationForm type and default form values to include the new job attribute.
- Modified the DocumentClassificationAddProcedureDialog to incorporate the job attribute in the dialog's structure for better user experience.

* BugFix: headless table top actions (#1456)

* append contractors

* append contractors

* finish work-orders table (#1454)

* update types for project notification

* Refactor redirect logic for user profile based on company type and add utility function for post-login redirection

* create new tabs

* update insertion and update

* update insertion and update

* update insertion and update

* update insertion and update

* update insertion and update

* Bugfix kan 83 (#1466)

* fix problem high cost of routes api traffic aware

* Implement column pinning feature with associated hooks and UI components (#1468)

* Misalignment of the map settings table in Arabic and English (#1469)

* represenrt

* represenrt

* Feat fixed table columns (#1475)

* Implement column pinning feature with associated hooks and UI components

* Add column order functionality with drag-and-drop support

* feature: update from UDS (#1474)

* add work order columns (#1470)

* feature: add columns in work order table (#1477)

* pull

* Add document requirement messages and enhance DocumentRequirementsTable component

- Introduced new messages for document requirements in Arabic, including success and error notifications for requirement submissions.
- Updated the AddDocumentRequirementDialog to handle project ID validation and improved submission handling with loading states.
- Refactored DocumentRequirementsTable to utilize dynamic data fetching instead of mock data, enhancing overall data management and user experience.

* Add error handling and localization improvements for procedures settings

- Introduced a new error message for failed procedure type loading in Arabic.
- Enhanced ProceduresSettingsOuterTab interface with optional label property for better localization support.
- Refactored StagesView and SubTypeTabs components to utilize dynamic tab labels and improved error handling for API calls.
- Updated DocumentClassificationAddProcedureDialog to handle API errors gracefully, ensuring a better user experience during data fetching.

* Refactor AddFileDialog to streamline file attachment process

- Removed unnecessary attachment type fields and related queries to simplify the file upload dialog.
- Enhanced shared companies retrieval by utilizing project shares for better data management.
- Improved error handling for missing project ID during file upload mutation.
- Updated component state management for a more efficient user experience.

* feat(table): implement column grouping functionality

- Added support for column grouping in the table component, allowing users to create, rename, and delete groups of columns.
- Introduced a new hook `createColumnGroupingHook` to manage column group state and interactions.
- Updated the table rendering logic to accommodate grouped columns, including rendering spanning header cells for groups.
- Enhanced the table state management to include column grouping state and related actions.
- Added translations for column grouping actions in the messages file.
- Created utility functions to compute column runs based on grouping, ensuring proper rendering and behavior in the UI.

* change work order tab layers (#1480)

* permits

* present work spaces

* editable

* editable

* Enhance procedures settings with project ID support and localization improvements

- Added project ID handling in procedures settings to support project-specific internal procedures.
- Introduced new classification messages in Arabic for better localization.
- Refactored DocumentClassificationAddProcedureDialog to include cascading folder classifications based on project ID.
- Improved error handling and user feedback in various components related to procedures settings.

* Add project procedures support and enhance procedures settings

- Introduced a new message for "Project procedures" in Arabic for better localization.
- Updated ProceduresSettingsOuterTab interface to include an optional procedureId for internal procedures.
- Enhanced SubTypeTabs component with useEffect to manage selected procedure states effectively.
- Refactored useDocumentSequenceOuterTabs to handle project-specific internal procedures and improve error handling.
- Improved EditStageDialog to ensure proper handling of optional fields during stage updates.

* editable

* Enhance EditStageDialog and API for project ID support

- Integrated project ID handling in EditStageDialog to manage project-specific stage updates.
- Updated ProcedureSettingsApi to streamline the updateStage method by removing unnecessary options.
- Added project_id field to UpdateStageArgs for better API compatibility.

* Enhance DocumentStageCard with management hierarchy support

- Added managementHierarchyType and isDeputyDirector fields to DocumentStageForm for improved data handling.
- Introduced MANAGEMENT_HIERARCHY_TYPE_OPTIONS for selecting management hierarchy types.
- Updated form reset logic to accommodate new fields and ensure proper state management.
- Implemented validation to ensure management hierarchy selection when applicable.
- Enhanced UI with new fields for management hierarchy type and deputy director checkbox.

* Add receiver company support and localization enhancements in procedures settings

- Introduced new messages for loading states and receiver companies in both CRM and HR procedures settings for improved user experience.
- Updated DocumentStageCard to handle receiver company selection, including validation for required fields.
- Enhanced CreateStepArgs and ProcedureStep interfaces to accommodate receiver company IDs for better API integration.
- Improved UI components to reflect changes in state management and data handling for receiver companies.

* Refactor DocumentStageCard for improved receiver company selection and UI enhancements

- Updated the receiver company selection logic to handle empty states and improve user feedback during loading.
- Enhanced the rendering of selected companies with better visual representation using Chips.
- Improved accessibility and user experience by adjusting input label properties and selection handling.
- Refactored StagesView component styles for consistency and clarity in background color settings.

* Refactor StagesView and StepCard components for improved step management and receiver company selection

- Replaced DocumentStageCard with StepCard in StagesView for better consistency in step representation.
- Enhanced StepCard to support receiver company selection, including validation and improved user feedback.
- Updated state management and UI elements to reflect changes in step handling and receiver company integration.
- Improved loading states and accessibility features for a better user experience.

* Refactor SearchableSelect component for improved dropdown handling and UI enhancements

- Replaced dropdownRef with anchorRef for better reference management.
- Introduced ClickAwayListener to handle dropdown closing more effectively.
- Consolidated dropdown closing logic into a separate closeDropdown function for cleaner code.
- Enhanced UI elements for better accessibility and user experience.

* Add upload functionality and submission history for document requirements

- Introduced new messages for file upload requirements, including success and error states.
- Added interfaces for handling upload status and submission previews.
- Implemented upload and submission history dialogs in the DocumentRequirementsTable component.
- Enhanced API integration for creating and listing requirement submissions.
- Updated state management to support file uploads and display latest submission details.

* Refactor AddFileDialog and API to replace attachment_type_id with procedure_setting_id

- Updated AddFileDialog component to use procedure_setting_id instead of attachment_type_id for file uploads.
- Modified API request handling to reflect the change in parameter naming.
- Adjusted TypeScript interface to align with the new parameter structure for attachment requests.

* commit

* Enhance procedures settings with receiver company and project employee support

- Added new messages for selecting a single receiver company and concerned users in both CRM and HR procedures settings.
- Updated StepCard component to handle project employee IDs and improved receiver company selection logic.
- Modified TypeScript interfaces to include project_employee_ids for better API integration.
- Enhanced validation messages for improved user feedback during selection processes.

* feature: create safety tab

* Enhance document requirements with new fields and improved validation

- Added support for document type ID and receiver company IDs in the RequirementEntry interface.
- Updated the AddDocumentRequirementDialog component to include new fields for document type and receiver companies.
- Enhanced validation logic to ensure required fields are properly checked before submission.
- Improved loading states and data fetching for document types and shared companies using React Query.

* Refactor document requirements to include new frequency type and update payload structure

- Added support for a new frequency type "once" in the RequirementFrequencyType.
- Updated the RequirementEntry interface to replace documentTypeId with procedureSettingId for better clarity.
- Enhanced the buildRequirementArgs function to accommodate the new procedureSettingId field.
- Modified AddDocumentRequirementDialog to reflect changes in the entry structure and validation logic.
- Removed the mock data for document requirement stats and integrated dynamic stats fetching in DocumentRequirementsTable.
- Updated RequirementStatsCards to improve visual representation of requirement statuses.

* Refactor shared companies fetching and enhance project context handling

- Updated query keys in DocumentStageCard, StepCard, and AddDocumentRequirementDialog to use "project-shares" for clarity.
- Refactored data fetching logic to list shared companies for projects, ensuring unique company entries.
- Enhanced StepCard and AddDocumentRequirementDialog to include project ID in relevant API calls for better context.
- Modified TypeScript interfaces to include project_id for improved API integration and clarity in step creation arguments.

* feature: create safety reports tab in safety tab

* Integ doc (#1491)

* Enhance procedures settings with new messages and UI improvements

- Added new messages for adding procedures from the top and side lists in both CRM and HR settings.
- Updated StagesView component to include tooltips for button actions based on conditions.
- Improved SubTypeTabs component with a new procedure management feature and optimized tab rendering.

* Refactor SubTypeTabs and related components for improved tab management and fallback handling

- Updated SubTypeTabs to handle cases with no outer tabs and set default values accordingly.
- Simplified outerTabs generation in useDocumentSequenceOuterTabs by removing fallback logic.
- Removed unused getEmptyDocumentSequenceOuterTab function to streamline code.

* solved issue for requiremnts inbox

* Enhance project dashboard with new charts and tabs (#1493)

- Added new messages for the project dashboard, including tabs for requests and indicators.
- Implemented a tabbed interface in the DocumentCycleTab component to switch between AttachmentRequestsTable and AttachmentRequestChartsView.
- Introduced a new API endpoint to fetch chart data for attachment requests, improving data visualization capabilities.

* Integ doc (#1492)

* Enhance procedures settings with new messages and UI improvements

- Added new messages for adding procedures from the top and side lists in both CRM and HR settings.
- Updated StagesView component to include tooltips for button actions based on conditions.
- Improved SubTypeTabs component with a new procedure management feature and optimized tab rendering.

* Refactor SubTypeTabs and related components for improved tab management and fallback handling

- Updated SubTypeTabs to handle cases with no outer tabs and set default values accordingly.
- Simplified outerTabs generation in useDocumentSequenceOuterTabs by removing fallback logic.
- Removed unused getEmptyDocumentSequenceOuterTab function to streamline code.

* Enhance procedures settings with new fields and edit functionality

- Added new fields for attachment types and job attributes in the procedures settings.
- Implemented edit functionality in the DocumentClassificationAddProcedureDialog for better user experience.
- Updated SubTypeTabs to manage both add and edit dialogs for task actions.
- Refactored related components to streamline the handling of procedure data and improve overall code clarity.

* feature: create safety reports

* feature: create indicators tab, apply apis

* .

* fix update

* feature: apply filtration in visits tab

* Re-structure safety services

* fix update

* fix update

* fix update

* fix update

* fix update

* Bugfix: disply notification / order permit number, typeand contractor name, fix the pagination

* Bugfix: disply notification / order permit number, typeand contractor name, fix the pagination

* Bugfix: disply notification / order permit number, typeand contractor name, fix the pagination

* fix

* add AddGroupDialog component and integrate with ColumnVisibilityDialog; export default group colors

* enhance hover effects for DataRow component; implement dynamic background and text color adjustments

* omit permission

* update table constraints table

* Add attendance status and date fields to companies messages; enhance table initialization to include always visible columns for attendance; update user table configuration to support attendance data display and filtering.

* fix search in archieve

* update table constraints table

* feature: add export in maintenance-emergency tab, add download imgs in notification details

* project notification  safty form

* project notification  safty form

* project notification  safty form

* git add .

* project notification  safty form

* integrate tasks widget data from dashboard API

* There are inconsistencies in button sizes when using English, relative to the input fields

* For departments the intable search function does not work when entering the name of any department

* Departments are sorted in descending order by date, so the most recent ones always appear at the top of the table

* The close button appears above the employee editing page title when English is selected

* feature: update work-order from uds

* English language and page orientation not applied within the Business Hours tab

* Do not change text alignment in the Notifications tab when selecting English

* Renaming tabs and adjusting the direction of the Next Steps arrow within the Personnel tab

* An effect appears on all toggle switches when changing a single switch within the Notifications tab

* Issues and improvements in the login page interface

* bugfix: safety violations values

* Adjust the alignment of folders and documents

* Adjust the alignment of folders and documents

* Confirm New Password field with a visibility toggle

* Add-7-cards-to-the-attachments-page (#1528)

* feature: create assigned tasks module with it's forms [ submit site status, end task, confirm location ] (#1529)

Co-authored-by: Amr Saleh <52182013+AmrSaleh2234@users.noreply.github.com>

* fix

* fix date from date to for attendnance

* fix date from date to for attendnance

* feature: add internal tab in assigned tasks, fix violations value (#1535)

* Add-an-actions-button-and-a-report-download-option (#1539)

* feat: enhance approval workflow with new steps and mapping logic

* feat: add project classification handling in forms and API integration

* The-modification-involves-adding-images-to-all-cards-within-the-attac… (#1538)

* The-modification-involves-adding-images-to-all-cards-within-the-attachments-and-not-attaching-PDF

* Try saving an image  identity-data or work permit now  it should work

* feature: add safety violations form, fix end task form (#1540)

* Edit the employee number and add a + sign before it (#1542)

* add type of the attachment column in the document cucle (#1544)

* add type of the attachment column in the document cucle

* add 2 drop lists in add procedures , applypermissions on sub-projects like settings

* fix shares compoanies drop list, fix overflowTabBar icon (#1546)

* fix approval time line translation issue

* bugfix : attachment approve color

* appply filter into project

* feature: Safety reports tab (#1549)

* feature: Safety reports tab

* feature: create safety report, dispaly in table

* bugfix: handle all history cases, fix sorting (#1553)

* fix

* bugfix: fix document cycle table

* bugfix: show fully and partially declined and

* Filter work-order by name and oprder-permit_id befor add

* fix a problem

* fix a problem

* Download Makkah and Geddah reports

* Standardizing Cadre Job Titles

* English language and page orientation not applied within the Business Hours tab

* upload stamp in project details and use it in apryse webView, add download UDS model in work orders, display previos notes in fileViewer dialog (#1563)

* display project details tab

* apply stamp in apryse

* upload stamp in project details and use it in apryse webView, add download UDS model in work orders, display previos notes in fileViewer dialog ,

* Add sticky header and max height options to table component

* Feature: add [ safety -  constructions - order permits - managements ] on project settings

* featue: save custom stamps and signatures in apryse webviewr

* Reset project stats bar values to zero and load contractors from stakeholders API.

Co-authored-by: Cursor <cursoragent@cursor.com>

* make filter collabasaple

* make filter collabasaple

* bugfix: row select in internal tabs in project tabs, fix the list direction on project settings (#1572)

* make filter collabasaple

* fix apryse

---------

Co-authored-by: Abdel-Rahman Fathy <105522928+Abdel-Rahman112000@users.noreply.github.com>
Co-authored-by: RustedMiind <alisolimanworks@gmail.com>
Co-authored-by: Begad-El3shry <89875491+Begad-El3shry@users.noreply.github.com>
Co-authored-by: Mohammed  AbdulLatif <mah01010533395@gmail.com>
Co-authored-by: Abdel-Rahman112000 <abdelrahman30688@gmail.com>
Co-authored-by: Begad-El3shry <begadelashry7@gmail.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
AmrSaleh2234 added a commit that referenced this pull request Aug 22, 2026
* Handle table sttaf (#1445)

* Refactor StaffTab pagination logic

- Updated the data handling in StaffTab to improve pagination by calculating total pages based on the length of all available rows.
- Introduced a memoized data slice for efficient rendering of paginated employee data.
- Enhanced loading state management for employee data based on engagement context.

* Enhance AttendanceProvider with eagerFetch option

- Added an optional `eagerFetch` prop to the `AttendanceProvider` to control data fetching behavior on mount.
- Updated hooks in the attendance context to utilize the `enabled` parameter based on the `eagerFetch` value, allowing for more flexible data loading.
- Modified related hooks (`useAttendanceSummary`, `useBranchesHierarchies`, `useManagements`, `useConstraints`, `useMapTrackingData`, `useTeamAttendance`) to accept an `enabled` option for conditional fetching.

* Update middleware to handle central company redirects based on cookie data

* Feature: finish work-orders tab (#1448)

* Feature: finish work-orders tab (#1450)

* Handle table sttaf (#1452)

* Handle projects doc (#1453)

* Add document requirement messages and enhance DocumentRequirementsTable component

- Added new messages for document requirements in Arabic, including actions like "Add requirement", "Cancel", and frequency options.
- Enhanced DocumentRequirementsTable to manage document requirements with state handling for adding new requirements through a dialog.
- Updated filtering logic to utilize dynamic rows instead of mock data for better data management.

* Refactor StagesView and SubTypeTabs components for improved functionality

- Refactored the StagesView component to enhance the handling of procedure stages, including state management for adding and editing stages.
- Updated the SubTypeTabs component to replace the button for adding stages with an IconButton for better UI consistency.
- Improved the overall structure and readability of the code in both components.

* Refactor StagesView and SubTypeTabs components for enhanced dialog management

- Updated StagesView to manage the opening of DocumentClassificationAddProcedureDialog and DocumentSequenceAddProcedureDialog with improved state handling.
- Refactored SubTypeTabs to enhance the structure and readability, including adjustments to the rendering of procedure selection and action buttons.
- Improved overall user experience by ensuring consistent dialog interactions across components.

* Add job attribute to procedures settings and document classification dialog

- Introduced a new message for "Job attribute" in the procedures settings module, enhancing the localization support in Arabic.
- Updated the ClassificationForm type and default form values to include the new job attribute.
- Modified the DocumentClassificationAddProcedureDialog to incorporate the job attribute in the dialog's structure for better user experience.

* BugFix: headless table top actions (#1456)

* append contractors

* append contractors

* finish work-orders table (#1454)

* update types for project notification

* Refactor redirect logic for user profile based on company type and add utility function for post-login redirection

* create new tabs

* update insertion and update

* update insertion and update

* update insertion and update

* update insertion and update

* update insertion and update

* Bugfix kan 83 (#1466)

* fix problem high cost of routes api traffic aware

* Implement column pinning feature with associated hooks and UI components (#1468)

* Misalignment of the map settings table in Arabic and English (#1469)

* represenrt

* represenrt

* Feat fixed table columns (#1475)

* Implement column pinning feature with associated hooks and UI components

* Add column order functionality with drag-and-drop support

* feature: update from UDS (#1474)

* add work order columns (#1470)

* feature: add columns in work order table (#1477)

* pull

* Add document requirement messages and enhance DocumentRequirementsTable component

- Introduced new messages for document requirements in Arabic, including success and error notifications for requirement submissions.
- Updated the AddDocumentRequirementDialog to handle project ID validation and improved submission handling with loading states.
- Refactored DocumentRequirementsTable to utilize dynamic data fetching instead of mock data, enhancing overall data management and user experience.

* Add error handling and localization improvements for procedures settings

- Introduced a new error message for failed procedure type loading in Arabic.
- Enhanced ProceduresSettingsOuterTab interface with optional label property for better localization support.
- Refactored StagesView and SubTypeTabs components to utilize dynamic tab labels and improved error handling for API calls.
- Updated DocumentClassificationAddProcedureDialog to handle API errors gracefully, ensuring a better user experience during data fetching.

* Refactor AddFileDialog to streamline file attachment process

- Removed unnecessary attachment type fields and related queries to simplify the file upload dialog.
- Enhanced shared companies retrieval by utilizing project shares for better data management.
- Improved error handling for missing project ID during file upload mutation.
- Updated component state management for a more efficient user experience.

* feat(table): implement column grouping functionality

- Added support for column grouping in the table component, allowing users to create, rename, and delete groups of columns.
- Introduced a new hook `createColumnGroupingHook` to manage column group state and interactions.
- Updated the table rendering logic to accommodate grouped columns, including rendering spanning header cells for groups.
- Enhanced the table state management to include column grouping state and related actions.
- Added translations for column grouping actions in the messages file.
- Created utility functions to compute column runs based on grouping, ensuring proper rendering and behavior in the UI.

* change work order tab layers (#1480)

* permits

* present work spaces

* editable

* editable

* Enhance procedures settings with project ID support and localization improvements

- Added project ID handling in procedures settings to support project-specific internal procedures.
- Introduced new classification messages in Arabic for better localization.
- Refactored DocumentClassificationAddProcedureDialog to include cascading folder classifications based on project ID.
- Improved error handling and user feedback in various components related to procedures settings.

* Add project procedures support and enhance procedures settings

- Introduced a new message for "Project procedures" in Arabic for better localization.
- Updated ProceduresSettingsOuterTab interface to include an optional procedureId for internal procedures.
- Enhanced SubTypeTabs component with useEffect to manage selected procedure states effectively.
- Refactored useDocumentSequenceOuterTabs to handle project-specific internal procedures and improve error handling.
- Improved EditStageDialog to ensure proper handling of optional fields during stage updates.

* editable

* Enhance EditStageDialog and API for project ID support

- Integrated project ID handling in EditStageDialog to manage project-specific stage updates.
- Updated ProcedureSettingsApi to streamline the updateStage method by removing unnecessary options.
- Added project_id field to UpdateStageArgs for better API compatibility.

* Enhance DocumentStageCard with management hierarchy support

- Added managementHierarchyType and isDeputyDirector fields to DocumentStageForm for improved data handling.
- Introduced MANAGEMENT_HIERARCHY_TYPE_OPTIONS for selecting management hierarchy types.
- Updated form reset logic to accommodate new fields and ensure proper state management.
- Implemented validation to ensure management hierarchy selection when applicable.
- Enhanced UI with new fields for management hierarchy type and deputy director checkbox.

* Add receiver company support and localization enhancements in procedures settings

- Introduced new messages for loading states and receiver companies in both CRM and HR procedures settings for improved user experience.
- Updated DocumentStageCard to handle receiver company selection, including validation for required fields.
- Enhanced CreateStepArgs and ProcedureStep interfaces to accommodate receiver company IDs for better API integration.
- Improved UI components to reflect changes in state management and data handling for receiver companies.

* Refactor DocumentStageCard for improved receiver company selection and UI enhancements

- Updated the receiver company selection logic to handle empty states and improve user feedback during loading.
- Enhanced the rendering of selected companies with better visual representation using Chips.
- Improved accessibility and user experience by adjusting input label properties and selection handling.
- Refactored StagesView component styles for consistency and clarity in background color settings.

* Refactor StagesView and StepCard components for improved step management and receiver company selection

- Replaced DocumentStageCard with StepCard in StagesView for better consistency in step representation.
- Enhanced StepCard to support receiver company selection, including validation and improved user feedback.
- Updated state management and UI elements to reflect changes in step handling and receiver company integration.
- Improved loading states and accessibility features for a better user experience.

* Refactor SearchableSelect component for improved dropdown handling and UI enhancements

- Replaced dropdownRef with anchorRef for better reference management.
- Introduced ClickAwayListener to handle dropdown closing more effectively.
- Consolidated dropdown closing logic into a separate closeDropdown function for cleaner code.
- Enhanced UI elements for better accessibility and user experience.

* Add upload functionality and submission history for document requirements

- Introduced new messages for file upload requirements, including success and error states.
- Added interfaces for handling upload status and submission previews.
- Implemented upload and submission history dialogs in the DocumentRequirementsTable component.
- Enhanced API integration for creating and listing requirement submissions.
- Updated state management to support file uploads and display latest submission details.

* Refactor AddFileDialog and API to replace attachment_type_id with procedure_setting_id

- Updated AddFileDialog component to use procedure_setting_id instead of attachment_type_id for file uploads.
- Modified API request handling to reflect the change in parameter naming.
- Adjusted TypeScript interface to align with the new parameter structure for attachment requests.

* commit

* Enhance procedures settings with receiver company and project employee support

- Added new messages for selecting a single receiver company and concerned users in both CRM and HR procedures settings.
- Updated StepCard component to handle project employee IDs and improved receiver company selection logic.
- Modified TypeScript interfaces to include project_employee_ids for better API integration.
- Enhanced validation messages for improved user feedback during selection processes.

* feature: create safety tab

* Enhance document requirements with new fields and improved validation

- Added support for document type ID and receiver company IDs in the RequirementEntry interface.
- Updated the AddDocumentRequirementDialog component to include new fields for document type and receiver companies.
- Enhanced validation logic to ensure required fields are properly checked before submission.
- Improved loading states and data fetching for document types and shared companies using React Query.

* Refactor document requirements to include new frequency type and update payload structure

- Added support for a new frequency type "once" in the RequirementFrequencyType.
- Updated the RequirementEntry interface to replace documentTypeId with procedureSettingId for better clarity.
- Enhanced the buildRequirementArgs function to accommodate the new procedureSettingId field.
- Modified AddDocumentRequirementDialog to reflect changes in the entry structure and validation logic.
- Removed the mock data for document requirement stats and integrated dynamic stats fetching in DocumentRequirementsTable.
- Updated RequirementStatsCards to improve visual representation of requirement statuses.

* Refactor shared companies fetching and enhance project context handling

- Updated query keys in DocumentStageCard, StepCard, and AddDocumentRequirementDialog to use "project-shares" for clarity.
- Refactored data fetching logic to list shared companies for projects, ensuring unique company entries.
- Enhanced StepCard and AddDocumentRequirementDialog to include project ID in relevant API calls for better context.
- Modified TypeScript interfaces to include project_id for improved API integration and clarity in step creation arguments.

* feature: create safety reports tab in safety tab

* Integ doc (#1491)

* Enhance procedures settings with new messages and UI improvements

- Added new messages for adding procedures from the top and side lists in both CRM and HR settings.
- Updated StagesView component to include tooltips for button actions based on conditions.
- Improved SubTypeTabs component with a new procedure management feature and optimized tab rendering.

* Refactor SubTypeTabs and related components for improved tab management and fallback handling

- Updated SubTypeTabs to handle cases with no outer tabs and set default values accordingly.
- Simplified outerTabs generation in useDocumentSequenceOuterTabs by removing fallback logic.
- Removed unused getEmptyDocumentSequenceOuterTab function to streamline code.

* solved issue for requiremnts inbox

* Enhance project dashboard with new charts and tabs (#1493)

- Added new messages for the project dashboard, including tabs for requests and indicators.
- Implemented a tabbed interface in the DocumentCycleTab component to switch between AttachmentRequestsTable and AttachmentRequestChartsView.
- Introduced a new API endpoint to fetch chart data for attachment requests, improving data visualization capabilities.

* Integ doc (#1492)

* Enhance procedures settings with new messages and UI improvements

- Added new messages for adding procedures from the top and side lists in both CRM and HR settings.
- Updated StagesView component to include tooltips for button actions based on conditions.
- Improved SubTypeTabs component with a new procedure management feature and optimized tab rendering.

* Refactor SubTypeTabs and related components for improved tab management and fallback handling

- Updated SubTypeTabs to handle cases with no outer tabs and set default values accordingly.
- Simplified outerTabs generation in useDocumentSequenceOuterTabs by removing fallback logic.
- Removed unused getEmptyDocumentSequenceOuterTab function to streamline code.

* Enhance procedures settings with new fields and edit functionality

- Added new fields for attachment types and job attributes in the procedures settings.
- Implemented edit functionality in the DocumentClassificationAddProcedureDialog for better user experience.
- Updated SubTypeTabs to manage both add and edit dialogs for task actions.
- Refactored related components to streamline the handling of procedure data and improve overall code clarity.

* feature: create safety reports

* feature: create indicators tab, apply apis

* .

* fix update

* feature: apply filtration in visits tab

* Re-structure safety services

* fix update

* fix update

* fix update

* fix update

* fix update

* Bugfix: disply notification / order permit number, typeand contractor name, fix the pagination

* Bugfix: disply notification / order permit number, typeand contractor name, fix the pagination

* Bugfix: disply notification / order permit number, typeand contractor name, fix the pagination

* fix

* add AddGroupDialog component and integrate with ColumnVisibilityDialog; export default group colors

* enhance hover effects for DataRow component; implement dynamic background and text color adjustments

* omit permission

* update table constraints table

* Add attendance status and date fields to companies messages; enhance table initialization to include always visible columns for attendance; update user table configuration to support attendance data display and filtering.

* fix search in archieve

* update table constraints table

* feature: add export in maintenance-emergency tab, add download imgs in notification details

* project notification  safty form

* project notification  safty form

* project notification  safty form

* git add .

* project notification  safty form

* integrate tasks widget data from dashboard API

* There are inconsistencies in button sizes when using English, relative to the input fields

* For departments the intable search function does not work when entering the name of any department

* Departments are sorted in descending order by date, so the most recent ones always appear at the top of the table

* The close button appears above the employee editing page title when English is selected

* feature: update work-order from uds

* English language and page orientation not applied within the Business Hours tab

* Do not change text alignment in the Notifications tab when selecting English

* Renaming tabs and adjusting the direction of the Next Steps arrow within the Personnel tab

* An effect appears on all toggle switches when changing a single switch within the Notifications tab

* Issues and improvements in the login page interface

* bugfix: safety violations values

* Adjust the alignment of folders and documents

* Adjust the alignment of folders and documents

* Confirm New Password field with a visibility toggle

* Add-7-cards-to-the-attachments-page (#1528)

* feature: create assigned tasks module with it's forms [ submit site status, end task, confirm location ] (#1529)

Co-authored-by: Amr Saleh <52182013+AmrSaleh2234@users.noreply.github.com>

* fix

* fix date from date to for attendnance

* fix date from date to for attendnance

* feature: add internal tab in assigned tasks, fix violations value (#1535)

* Add-an-actions-button-and-a-report-download-option (#1539)

* feat: enhance approval workflow with new steps and mapping logic

* feat: add project classification handling in forms and API integration

* The-modification-involves-adding-images-to-all-cards-within-the-attac… (#1538)

* The-modification-involves-adding-images-to-all-cards-within-the-attachments-and-not-attaching-PDF

* Try saving an image  identity-data or work permit now  it should work

* feature: add safety violations form, fix end task form (#1540)

* Edit the employee number and add a + sign before it (#1542)

* add type of the attachment column in the document cucle (#1544)

* add type of the attachment column in the document cucle

* add 2 drop lists in add procedures , applypermissions on sub-projects like settings

* fix shares compoanies drop list, fix overflowTabBar icon (#1546)

* fix approval time line translation issue

* bugfix : attachment approve color

* appply filter into project

* feature: Safety reports tab (#1549)

* feature: Safety reports tab

* feature: create safety report, dispaly in table

* bugfix: handle all history cases, fix sorting (#1553)

* fix

* bugfix: fix document cycle table

* bugfix: show fully and partially declined and

* Filter work-order by name and oprder-permit_id befor add

* fix a problem

* fix a problem

* Download Makkah and Geddah reports

* Standardizing Cadre Job Titles

* English language and page orientation not applied within the Business Hours tab

* upload stamp in project details and use it in apryse webView, add download UDS model in work orders, display previos notes in fileViewer dialog (#1563)

* display project details tab

* apply stamp in apryse

* upload stamp in project details and use it in apryse webView, add download UDS model in work orders, display previos notes in fileViewer dialog ,

* Add sticky header and max height options to table component

* Feature: add [ safety -  constructions - order permits - managements ] on project settings

* featue: save custom stamps and signatures in apryse webviewr

* Reset project stats bar values to zero and load contractors from stakeholders API.

Co-authored-by: Cursor <cursoragent@cursor.com>

* make filter collabasaple

* make filter collabasaple

* bugfix: row select in internal tabs in project tabs, fix the list direction on project settings (#1572)

* make filter collabasaple

* fix apryse

* fix apryse

---------

Co-authored-by: Abdel-Rahman Fathy <105522928+Abdel-Rahman112000@users.noreply.github.com>
Co-authored-by: RustedMiind <alisolimanworks@gmail.com>
Co-authored-by: Begad-El3shry <89875491+Begad-El3shry@users.noreply.github.com>
Co-authored-by: Mohammed  AbdulLatif <mah01010533395@gmail.com>
Co-authored-by: Abdel-Rahman112000 <abdelrahman30688@gmail.com>
Co-authored-by: Begad-El3shry <begadelashry7@gmail.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
AmrSaleh2234 added a commit that referenced this pull request Aug 22, 2026
* Handle table sttaf (#1445)

* Refactor StaffTab pagination logic

- Updated the data handling in StaffTab to improve pagination by calculating total pages based on the length of all available rows.
- Introduced a memoized data slice for efficient rendering of paginated employee data.
- Enhanced loading state management for employee data based on engagement context.

* Enhance AttendanceProvider with eagerFetch option

- Added an optional `eagerFetch` prop to the `AttendanceProvider` to control data fetching behavior on mount.
- Updated hooks in the attendance context to utilize the `enabled` parameter based on the `eagerFetch` value, allowing for more flexible data loading.
- Modified related hooks (`useAttendanceSummary`, `useBranchesHierarchies`, `useManagements`, `useConstraints`, `useMapTrackingData`, `useTeamAttendance`) to accept an `enabled` option for conditional fetching.

* Update middleware to handle central company redirects based on cookie data

* Feature: finish work-orders tab (#1448)

* Feature: finish work-orders tab (#1450)

* Handle table sttaf (#1452)

* Handle projects doc (#1453)

* Add document requirement messages and enhance DocumentRequirementsTable component

- Added new messages for document requirements in Arabic, including actions like "Add requirement", "Cancel", and frequency options.
- Enhanced DocumentRequirementsTable to manage document requirements with state handling for adding new requirements through a dialog.
- Updated filtering logic to utilize dynamic rows instead of mock data for better data management.

* Refactor StagesView and SubTypeTabs components for improved functionality

- Refactored the StagesView component to enhance the handling of procedure stages, including state management for adding and editing stages.
- Updated the SubTypeTabs component to replace the button for adding stages with an IconButton for better UI consistency.
- Improved the overall structure and readability of the code in both components.

* Refactor StagesView and SubTypeTabs components for enhanced dialog management

- Updated StagesView to manage the opening of DocumentClassificationAddProcedureDialog and DocumentSequenceAddProcedureDialog with improved state handling.
- Refactored SubTypeTabs to enhance the structure and readability, including adjustments to the rendering of procedure selection and action buttons.
- Improved overall user experience by ensuring consistent dialog interactions across components.

* Add job attribute to procedures settings and document classification dialog

- Introduced a new message for "Job attribute" in the procedures settings module, enhancing the localization support in Arabic.
- Updated the ClassificationForm type and default form values to include the new job attribute.
- Modified the DocumentClassificationAddProcedureDialog to incorporate the job attribute in the dialog's structure for better user experience.

* BugFix: headless table top actions (#1456)

* append contractors

* append contractors

* finish work-orders table (#1454)

* update types for project notification

* Refactor redirect logic for user profile based on company type and add utility function for post-login redirection

* create new tabs

* update insertion and update

* update insertion and update

* update insertion and update

* update insertion and update

* update insertion and update

* Bugfix kan 83 (#1466)

* fix problem high cost of routes api traffic aware

* Implement column pinning feature with associated hooks and UI components (#1468)

* Misalignment of the map settings table in Arabic and English (#1469)

* represenrt

* represenrt

* Feat fixed table columns (#1475)

* Implement column pinning feature with associated hooks and UI components

* Add column order functionality with drag-and-drop support

* feature: update from UDS (#1474)

* add work order columns (#1470)

* feature: add columns in work order table (#1477)

* pull

* Add document requirement messages and enhance DocumentRequirementsTable component

- Introduced new messages for document requirements in Arabic, including success and error notifications for requirement submissions.
- Updated the AddDocumentRequirementDialog to handle project ID validation and improved submission handling with loading states.
- Refactored DocumentRequirementsTable to utilize dynamic data fetching instead of mock data, enhancing overall data management and user experience.

* Add error handling and localization improvements for procedures settings

- Introduced a new error message for failed procedure type loading in Arabic.
- Enhanced ProceduresSettingsOuterTab interface with optional label property for better localization support.
- Refactored StagesView and SubTypeTabs components to utilize dynamic tab labels and improved error handling for API calls.
- Updated DocumentClassificationAddProcedureDialog to handle API errors gracefully, ensuring a better user experience during data fetching.

* Refactor AddFileDialog to streamline file attachment process

- Removed unnecessary attachment type fields and related queries to simplify the file upload dialog.
- Enhanced shared companies retrieval by utilizing project shares for better data management.
- Improved error handling for missing project ID during file upload mutation.
- Updated component state management for a more efficient user experience.

* feat(table): implement column grouping functionality

- Added support for column grouping in the table component, allowing users to create, rename, and delete groups of columns.
- Introduced a new hook `createColumnGroupingHook` to manage column group state and interactions.
- Updated the table rendering logic to accommodate grouped columns, including rendering spanning header cells for groups.
- Enhanced the table state management to include column grouping state and related actions.
- Added translations for column grouping actions in the messages file.
- Created utility functions to compute column runs based on grouping, ensuring proper rendering and behavior in the UI.

* change work order tab layers (#1480)

* permits

* present work spaces

* editable

* editable

* Enhance procedures settings with project ID support and localization improvements

- Added project ID handling in procedures settings to support project-specific internal procedures.
- Introduced new classification messages in Arabic for better localization.
- Refactored DocumentClassificationAddProcedureDialog to include cascading folder classifications based on project ID.
- Improved error handling and user feedback in various components related to procedures settings.

* Add project procedures support and enhance procedures settings

- Introduced a new message for "Project procedures" in Arabic for better localization.
- Updated ProceduresSettingsOuterTab interface to include an optional procedureId for internal procedures.
- Enhanced SubTypeTabs component with useEffect to manage selected procedure states effectively.
- Refactored useDocumentSequenceOuterTabs to handle project-specific internal procedures and improve error handling.
- Improved EditStageDialog to ensure proper handling of optional fields during stage updates.

* editable

* Enhance EditStageDialog and API for project ID support

- Integrated project ID handling in EditStageDialog to manage project-specific stage updates.
- Updated ProcedureSettingsApi to streamline the updateStage method by removing unnecessary options.
- Added project_id field to UpdateStageArgs for better API compatibility.

* Enhance DocumentStageCard with management hierarchy support

- Added managementHierarchyType and isDeputyDirector fields to DocumentStageForm for improved data handling.
- Introduced MANAGEMENT_HIERARCHY_TYPE_OPTIONS for selecting management hierarchy types.
- Updated form reset logic to accommodate new fields and ensure proper state management.
- Implemented validation to ensure management hierarchy selection when applicable.
- Enhanced UI with new fields for management hierarchy type and deputy director checkbox.

* Add receiver company support and localization enhancements in procedures settings

- Introduced new messages for loading states and receiver companies in both CRM and HR procedures settings for improved user experience.
- Updated DocumentStageCard to handle receiver company selection, including validation for required fields.
- Enhanced CreateStepArgs and ProcedureStep interfaces to accommodate receiver company IDs for better API integration.
- Improved UI components to reflect changes in state management and data handling for receiver companies.

* Refactor DocumentStageCard for improved receiver company selection and UI enhancements

- Updated the receiver company selection logic to handle empty states and improve user feedback during loading.
- Enhanced the rendering of selected companies with better visual representation using Chips.
- Improved accessibility and user experience by adjusting input label properties and selection handling.
- Refactored StagesView component styles for consistency and clarity in background color settings.

* Refactor StagesView and StepCard components for improved step management and receiver company selection

- Replaced DocumentStageCard with StepCard in StagesView for better consistency in step representation.
- Enhanced StepCard to support receiver company selection, including validation and improved user feedback.
- Updated state management and UI elements to reflect changes in step handling and receiver company integration.
- Improved loading states and accessibility features for a better user experience.

* Refactor SearchableSelect component for improved dropdown handling and UI enhancements

- Replaced dropdownRef with anchorRef for better reference management.
- Introduced ClickAwayListener to handle dropdown closing more effectively.
- Consolidated dropdown closing logic into a separate closeDropdown function for cleaner code.
- Enhanced UI elements for better accessibility and user experience.

* Add upload functionality and submission history for document requirements

- Introduced new messages for file upload requirements, including success and error states.
- Added interfaces for handling upload status and submission previews.
- Implemented upload and submission history dialogs in the DocumentRequirementsTable component.
- Enhanced API integration for creating and listing requirement submissions.
- Updated state management to support file uploads and display latest submission details.

* Refactor AddFileDialog and API to replace attachment_type_id with procedure_setting_id

- Updated AddFileDialog component to use procedure_setting_id instead of attachment_type_id for file uploads.
- Modified API request handling to reflect the change in parameter naming.
- Adjusted TypeScript interface to align with the new parameter structure for attachment requests.

* commit

* Enhance procedures settings with receiver company and project employee support

- Added new messages for selecting a single receiver company and concerned users in both CRM and HR procedures settings.
- Updated StepCard component to handle project employee IDs and improved receiver company selection logic.
- Modified TypeScript interfaces to include project_employee_ids for better API integration.
- Enhanced validation messages for improved user feedback during selection processes.

* feature: create safety tab

* Enhance document requirements with new fields and improved validation

- Added support for document type ID and receiver company IDs in the RequirementEntry interface.
- Updated the AddDocumentRequirementDialog component to include new fields for document type and receiver companies.
- Enhanced validation logic to ensure required fields are properly checked before submission.
- Improved loading states and data fetching for document types and shared companies using React Query.

* Refactor document requirements to include new frequency type and update payload structure

- Added support for a new frequency type "once" in the RequirementFrequencyType.
- Updated the RequirementEntry interface to replace documentTypeId with procedureSettingId for better clarity.
- Enhanced the buildRequirementArgs function to accommodate the new procedureSettingId field.
- Modified AddDocumentRequirementDialog to reflect changes in the entry structure and validation logic.
- Removed the mock data for document requirement stats and integrated dynamic stats fetching in DocumentRequirementsTable.
- Updated RequirementStatsCards to improve visual representation of requirement statuses.

* Refactor shared companies fetching and enhance project context handling

- Updated query keys in DocumentStageCard, StepCard, and AddDocumentRequirementDialog to use "project-shares" for clarity.
- Refactored data fetching logic to list shared companies for projects, ensuring unique company entries.
- Enhanced StepCard and AddDocumentRequirementDialog to include project ID in relevant API calls for better context.
- Modified TypeScript interfaces to include project_id for improved API integration and clarity in step creation arguments.

* feature: create safety reports tab in safety tab

* Integ doc (#1491)

* Enhance procedures settings with new messages and UI improvements

- Added new messages for adding procedures from the top and side lists in both CRM and HR settings.
- Updated StagesView component to include tooltips for button actions based on conditions.
- Improved SubTypeTabs component with a new procedure management feature and optimized tab rendering.

* Refactor SubTypeTabs and related components for improved tab management and fallback handling

- Updated SubTypeTabs to handle cases with no outer tabs and set default values accordingly.
- Simplified outerTabs generation in useDocumentSequenceOuterTabs by removing fallback logic.
- Removed unused getEmptyDocumentSequenceOuterTab function to streamline code.

* solved issue for requiremnts inbox

* Enhance project dashboard with new charts and tabs (#1493)

- Added new messages for the project dashboard, including tabs for requests and indicators.
- Implemented a tabbed interface in the DocumentCycleTab component to switch between AttachmentRequestsTable and AttachmentRequestChartsView.
- Introduced a new API endpoint to fetch chart data for attachment requests, improving data visualization capabilities.

* Integ doc (#1492)

* Enhance procedures settings with new messages and UI improvements

- Added new messages for adding procedures from the top and side lists in both CRM and HR settings.
- Updated StagesView component to include tooltips for button actions based on conditions.
- Improved SubTypeTabs component with a new procedure management feature and optimized tab rendering.

* Refactor SubTypeTabs and related components for improved tab management and fallback handling

- Updated SubTypeTabs to handle cases with no outer tabs and set default values accordingly.
- Simplified outerTabs generation in useDocumentSequenceOuterTabs by removing fallback logic.
- Removed unused getEmptyDocumentSequenceOuterTab function to streamline code.

* Enhance procedures settings with new fields and edit functionality

- Added new fields for attachment types and job attributes in the procedures settings.
- Implemented edit functionality in the DocumentClassificationAddProcedureDialog for better user experience.
- Updated SubTypeTabs to manage both add and edit dialogs for task actions.
- Refactored related components to streamline the handling of procedure data and improve overall code clarity.

* feature: create safety reports

* feature: create indicators tab, apply apis

* .

* fix update

* feature: apply filtration in visits tab

* Re-structure safety services

* fix update

* fix update

* fix update

* fix update

* fix update

* Bugfix: disply notification / order permit number, typeand contractor name, fix the pagination

* Bugfix: disply notification / order permit number, typeand contractor name, fix the pagination

* Bugfix: disply notification / order permit number, typeand contractor name, fix the pagination

* fix

* add AddGroupDialog component and integrate with ColumnVisibilityDialog; export default group colors

* enhance hover effects for DataRow component; implement dynamic background and text color adjustments

* omit permission

* update table constraints table

* Add attendance status and date fields to companies messages; enhance table initialization to include always visible columns for attendance; update user table configuration to support attendance data display and filtering.

* fix search in archieve

* update table constraints table

* feature: add export in maintenance-emergency tab, add download imgs in notification details

* project notification  safty form

* project notification  safty form

* project notification  safty form

* git add .

* project notification  safty form

* integrate tasks widget data from dashboard API

* There are inconsistencies in button sizes when using English, relative to the input fields

* For departments the intable search function does not work when entering the name of any department

* Departments are sorted in descending order by date, so the most recent ones always appear at the top of the table

* The close button appears above the employee editing page title when English is selected

* feature: update work-order from uds

* English language and page orientation not applied within the Business Hours tab

* Do not change text alignment in the Notifications tab when selecting English

* Renaming tabs and adjusting the direction of the Next Steps arrow within the Personnel tab

* An effect appears on all toggle switches when changing a single switch within the Notifications tab

* Issues and improvements in the login page interface

* bugfix: safety violations values

* Adjust the alignment of folders and documents

* Adjust the alignment of folders and documents

* Confirm New Password field with a visibility toggle

* Add-7-cards-to-the-attachments-page (#1528)

* feature: create assigned tasks module with it's forms [ submit site status, end task, confirm location ] (#1529)

Co-authored-by: Amr Saleh <52182013+AmrSaleh2234@users.noreply.github.com>

* fix

* fix date from date to for attendnance

* fix date from date to for attendnance

* feature: add internal tab in assigned tasks, fix violations value (#1535)

* Add-an-actions-button-and-a-report-download-option (#1539)

* feat: enhance approval workflow with new steps and mapping logic

* feat: add project classification handling in forms and API integration

* The-modification-involves-adding-images-to-all-cards-within-the-attac… (#1538)

* The-modification-involves-adding-images-to-all-cards-within-the-attachments-and-not-attaching-PDF

* Try saving an image  identity-data or work permit now  it should work

* feature: add safety violations form, fix end task form (#1540)

* Edit the employee number and add a + sign before it (#1542)

* add type of the attachment column in the document cucle (#1544)

* add type of the attachment column in the document cucle

* add 2 drop lists in add procedures , applypermissions on sub-projects like settings

* fix shares compoanies drop list, fix overflowTabBar icon (#1546)

* fix approval time line translation issue

* bugfix : attachment approve color

* appply filter into project

* feature: Safety reports tab (#1549)

* feature: Safety reports tab

* feature: create safety report, dispaly in table

* bugfix: handle all history cases, fix sorting (#1553)

* fix

* bugfix: fix document cycle table

* bugfix: show fully and partially declined and

* Filter work-order by name and oprder-permit_id befor add

* fix a problem

* fix a problem

* Download Makkah and Geddah reports

* Standardizing Cadre Job Titles

* English language and page orientation not applied within the Business Hours tab

* upload stamp in project details and use it in apryse webView, add download UDS model in work orders, display previos notes in fileViewer dialog (#1563)

* display project details tab

* apply stamp in apryse

* upload stamp in project details and use it in apryse webView, add download UDS model in work orders, display previos notes in fileViewer dialog ,

* Add sticky header and max height options to table component

* Feature: add [ safety -  constructions - order permits - managements ] on project settings

* featue: save custom stamps and signatures in apryse webviewr

* Reset project stats bar values to zero and load contractors from stakeholders API.

Co-authored-by: Cursor <cursoragent@cursor.com>

* make filter collabasaple

* make filter collabasaple

* bugfix: row select in internal tabs in project tabs, fix the list direction on project settings (#1572)

* make filter collabasaple

* fix apryse

* fix apryse

* fix apryse

---------

Co-authored-by: Abdel-Rahman Fathy <105522928+Abdel-Rahman112000@users.noreply.github.com>
Co-authored-by: RustedMiind <alisolimanworks@gmail.com>
Co-authored-by: Begad-El3shry <89875491+Begad-El3shry@users.noreply.github.com>
Co-authored-by: Mohammed  AbdulLatif <mah01010533395@gmail.com>
Co-authored-by: Abdel-Rahman112000 <abdelrahman30688@gmail.com>
Co-authored-by: Begad-El3shry <begadelashry7@gmail.com>
Co-authored-by: Cursor <cursoragent@cursor.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