Commit Graph

492 Commits

Author SHA1 Message Date
chamikaJ
03b3f55400 fix(project-list): enhance grouped request parameters handling
- Updated the initialization of grouped request parameters to use a proper groupBy value.
- Improved the effect dependencies to include groupBy, ensuring correct state management.
- Enhanced the logic for fetching grouped projects, ensuring parameters are set correctly and data is retrieved when necessary.
- Added comments for clarity on the conditions for fetching grouped projects.
2025-07-08 12:43:00 +05:30
chamikaJ
a44b276269 feat(email-templates): update release note template for Worklenz 2.1.0
- Added a title and meta subject for the release note template.
- Enhanced styling for better readability and user experience, including background color, font adjustments, and button styles.
- Introduced new sections for features, including a new tasks list, kanban board, group view, language support, and bug fixes.
- Improved responsiveness and dark mode support for the email template.
2025-07-08 11:59:17 +05:30
chamikaJ
b0253135e5 feat(project-drawer): enhance project data fetching and error handling
- Updated project data fetching logic in the project drawer and related components to ensure the drawer opens only after successful data retrieval.
- Added detailed logging for successful and failed fetch attempts to improve debugging and user feedback.
- Introduced error handling to maintain user experience by allowing the drawer to open even if data fetching fails, displaying an error state.
- Refactored project list and project view components to optimize search functionality and improve loading states.
- Removed deprecated components related to task management to streamline the project view.
2025-07-07 17:07:45 +05:30
chamikaJ
978d9158c0 feat(database): add performance indexes and materialized view for optimization
- Created multiple new indexes in the performance-indexes.sql file to enhance query performance for tasks, team members, and related tables.
- Added a materialized view for team member information in 3_views.sql to pre-calculate expensive joins, improving data retrieval efficiency.
- Introduced a function to refresh the materialized view, ensuring up-to-date information while optimizing performance.
- Implemented an optimized method in tasks-controller-v2.ts to split complex queries into focused segments, significantly improving response times and overall performance.
2025-07-07 15:01:11 +05:30
chamikaJ
134899114d refactor(index.html): update production tracking ID logic
- Simplified the logic for determining the production tracking ID by removing the check for the 'worklenz.com' hostname.
- Ensured that the tracking ID is now solely based on the 'app.worklenz.com' hostname, streamlining the analytics loading process.
2025-07-07 14:50:01 +05:30
chamikaJ
8533a440bc refactor(tasks-controller): enhance getTasksV3 method for performance and clarity
- Improved logging for performance tracking in the getTasksV3 method.
- Streamlined progress refresh logic and removed unnecessary calculations to optimize initial load times.
- Unified query handling by aligning with the getList method for consistency.
- Transformed response structure to maintain compatibility with V3 format while ensuring efficient data processing.
- Added memoized selectors in the frontend for better performance and reduced re-renders.
2025-07-07 14:30:19 +05:30
chamikaJ
9ec422c6e2 Merge branch 'release/v2.0.4-bug-fix' of https://github.com/Worklenz/worklenz into release/v2.0.4-bug-fix 2025-07-07 14:10:36 +05:30
Chamika J
6c03bf71c2 Merge pull request #243 from shancds/test/row-kanban-board-v1.1.3
Test/row kanban board v1.1.3
2025-07-07 14:10:06 +05:30
chamikaJ
3887cc477d refactor(tasks-controller): enhance SQL query structure and improve task filtering
- Updated SQL queries in TasksControllerV2 to use table aliases for clarity and consistency.
- Improved filtering logic for project IDs and assignees to ensure accurate task retrieval.
- Refactored JSON object construction in SQL queries for better readability and maintainability.
- Adjusted parameter handling in query execution to streamline data retrieval processes.
2025-07-07 14:10:04 +05:30
chamikaJ
0b96d59285 refactor(tasks-controller): remove Redis caching logic for task retrieval
- Eliminated caching logic from the TasksControllerV2 to streamline task retrieval and improve performance.
- Updated response handling to directly return task data without caching, enhancing clarity and reducing complexity.
- Removed cache invalidation method to simplify the controller's responsibilities.
2025-07-07 13:22:17 +05:30
chamikaJ
a3f317cbeb refactor(vite.config): simplify chunking strategy and optimize asset naming
- Updated the chunking strategy to keep React and related libraries together, improving compatibility and reducing context issues.
- Simplified asset naming conventions for better caching and consistency, removing unnecessary hash lengths.
- Adjusted optimization settings to ensure critical libraries are included while excluding heavy libraries for lazy loading.
2025-07-07 13:16:26 +05:30
shancds
5a9ceb4a94 feat(EnhancedKanbanBoard): add task dependency check during drag-and-drop
- Implemented a check for task dependencies when moving tasks between groups in the EnhancedKanbanBoard component.
- Integrated alert notifications to inform users if a task cannot be moved due to incomplete dependencies, enhancing user experience and task management integrity.
2025-07-07 13:12:50 +05:30
chamikaJ
bdc3050a5e feat(database): add performance indexes for optimized task queries
- Introduced a new SQL migration file to create various performance indexes on tasks, task_assignees, task_phase, and related tables.
- These indexes aim to enhance query performance for task filtering, status joins, assignees lookup, and other operations, improving overall application efficiency.
2025-07-07 13:10:27 +05:30
chamikaJ
bc085926a6 refactor(vite.config): clean up unnecessary whitespace in configuration file 2025-07-07 12:47:19 +05:30
chamikaJ
aa1fb1c6f5 feat(performance): optimize resource loading and initialization
- Added resource hints in index.html for improved loading performance, including preconnect and dns-prefetch links.
- Implemented preload for critical JSON resources to enhance initial load times.
- Optimized Google Analytics and HubSpot script loading to defer execution and reduce blocking during initial render.
- Refactored app initialization in App.tsx to defer non-critical operations, improving perceived performance.
- Introduced lazy loading for chart components and TinyMCE editor to minimize initial bundle size and enhance user experience.
- Enhanced Vite configuration for optimized chunking strategy and improved caching with shorter hash lengths.
2025-07-07 12:41:23 +05:30
chamikaJ
26b47aac53 refactor(i18n): optimize translation loading and initialization
- Updated ensureTranslationsLoaded function to prevent duplicate requests by caching loaded translations and managing loading promises.
- Simplified translation preloading on app startup to only load essential namespaces for the current language.
- Adjusted useTranslationPreloader hook to avoid multiple requests for translations and ensure efficient loading state management.
2025-07-07 12:31:11 +05:30
shancds
8dcd0295e5 refactor(EnhancedKanbanBoard): improve drag-and-drop handling and task index management
- Updated drag-and-drop event handlers in EnhancedKanbanBoard to support null task indices, enhancing flexibility during task interactions.
- Adjusted KanbanGroup component to reflect changes in task index handling, ensuring consistent behavior when dragging tasks over empty drop zones.
- Enhanced the visual structure of the KanbanGroup to improve user experience during task creation and management.
2025-07-07 12:05:05 +05:30
shancds
3206af160a refactor(TaskCard): enhance subtask visibility animation and styling
- Updated the TaskCard component to improve the visibility and animation of subtasks, adding a smooth transition effect for better user experience.
- Adjusted the rendering logic to conditionally display the subtasks container based on the task's state, enhancing the overall UI interaction.
2025-07-07 10:31:33 +05:30
shancds
b500c801ee refactor(KanbanGroup, TaskCard): simplify card creation logic and enhance drag-and-drop functionality
- Removed conditional checks for user roles when displaying the new task card options in KanbanGroup, streamlining the UI for task creation.
- Updated TaskCard component to improve the drag-and-drop indicator styling and structure, enhancing the user experience during task interactions.
2025-07-07 10:11:56 +05:30
chamikaJ
a6f9046b42 feat(task-management): add all_labels support and improve label handling
- Introduced all_labels property in task management to provide a complete list of labels for selection logic.
- Updated TasksControllerV2, TaskRow, and LabelsSelector components to utilize all_labels for enhanced label management.
- Improved checkbox handling in LabelsSelector to prevent event propagation and ensure better user interaction.
- Enhanced useTaskSocketHandlers to manage temporary subtasks effectively, preventing duplication during optimistic updates.
2025-07-07 09:40:56 +05:30
Chamika J
2cf91bddea Merge pull request #240 from Worklenz/fix/task-drag-and-drop-improvement
refactor(TaskRow): improve layout and styling for task indicators and…
2025-07-07 07:22:13 +05:30
chamiakJ
e1e4187ded refactor(TaskRow): improve layout and styling for task indicators and subtasks
- Enhanced the layout of the TaskRow component to ensure better spacing and alignment for task indicators and subtasks.
- Updated CSS classes to prevent compression of elements and maintain consistent visual presentation.
- Improved tooltip functionality for task display names and indicators, ensuring better accessibility and user experience.
2025-07-07 07:20:45 +05:30
Chamika J
e02796c310 Merge pull request #239 from Worklenz/fix/task-drag-and-drop-improvement
refactor(components): enhance component structure and add forwardRef …
2025-07-07 07:16:57 +05:30
chamiakJ
5d9e96033e refactor(components): enhance component structure and add forwardRef support
- Refactored CustomAvatar, CustomColordLabel, CustomNumberLabel, and ProjectStatusIcon components to utilize React.forwardRef for improved ref handling.
- Introduced TooltipWrapper component to avoid findDOMNode warnings in React StrictMode, ensuring better compatibility with Ant Design's Tooltip.
- Updated TaskRow component to enhance layout and tooltip functionality for task display names, improving user experience and accessibility.
2025-07-07 07:16:10 +05:30
Chamika J
cc618960e6 Merge pull request #238 from Worklenz/fix/task-drag-and-drop-improvement
Fix/task drag and drop improvement
2025-07-07 07:05:59 +05:30
chamiakJ
f9926e7a5d feat(task-list): add tooltips for task indicators and enhance localization
- Introduced tooltips for subtasks, comments, attachments, subscribers, dependencies, and recurring tasks across various components to improve user experience.
- Enhanced localization by adding new translation keys for these indicators in multiple languages, ensuring consistent messaging for users.
- Updated components such as TaskRow, KanbanTaskCard, and EnhancedKanbanTaskCard to utilize the new tooltip functionality, improving clarity and accessibility.
2025-07-07 07:05:29 +05:30
chamiakJ
03fc2fb7ee refactor(task-list): update subtask and indicator visibility logic
- Modified subtask visibility conditions across TaskCard, EnhancedKanbanTaskCard, KanbanTaskCard, and TaskRow components to only display when the count is greater than 1.
- Enhanced task indicators for comments and attachments to follow the same visibility logic.
- Added new dependencies for task management types to support subscriber and attachment features.
2025-07-07 06:33:22 +05:30
chamiakJ
b6efa3f37e feat(task-filters): enhance search filter functionality and UI interactions
- Implemented synchronization of local search value with external value prop to maintain expanded state during searches.
- Updated button styles for better visibility in dark mode and improved user experience.
- Refactored search handling to ensure consistent use of taskReducer for search actions across different views.
- Enhanced filter section visibility logic to improve user interaction during data loading.
2025-07-07 05:52:07 +05:30
chamiakJ
85f20eaf1c refactor(task-list): update custom column handling and improve UI interactions
- Renamed CSS class for focused custom column cells to enhance clarity and consistency.
- Implemented optimistic updates in TaskListV2 for immediate UI feedback when updating custom column values.
- Adjusted rendering logic to support sticky headers and improved layout for task list components.
- Enhanced loading state management in SelectionCustomColumnCell for better user experience during updates.
2025-07-07 05:39:09 +05:30
chamiakJ
411147efce fix(task-list): update styling and improve task handling
- Adjusted color styling for the CreateStatusButton based on theme mode.
- Enhanced TaskGroupHeader with improved border styling and spacing for better visual consistency.
- Increased width and padding for the AddCustomColumnButton to improve usability.
- Updated TaskRow to include additional dependencies for task labels and phase updates in socket handling.
- Refactored task management slice to ensure accurate label and phase updates during real-time interactions.
- Removed unnecessary debug logging from CustomColumnModal and SelectionTypeColumn components for cleaner code.
2025-07-07 05:07:05 +05:30
chamiakJ
48c3d58f7e feat(task-list): enhance TaskListV2 with scroll synchronization and custom column handling
- Added scroll synchronization between header and content sections using refs for improved user experience.
- Refactored custom column handling to prioritize UUIDs for API interactions, ensuring accurate updates and data retrieval.
- Introduced a message display for empty task groups, enhancing user feedback when no tasks are available.
- Updated rendering logic for task groups and tasks to improve performance and maintainability.
2025-07-07 04:21:09 +05:30
chamiakJ
746d38017f feat(task-list): refine task list components and improve UI consistency
- Updated SubtaskLoadingSkeleton and TaskRow components for better spacing and visual consistency.
- Simplified TaskGroupHeader by removing unnecessary elements and enhancing the display of group names.
- Adjusted TaskListV2 to improve column rendering and added state management for field visibility synchronization with the database.
- Enhanced AddTaskRow and AddSubtaskRow components for improved user interaction and layout.
- Updated placeholder texts in CustomColumnComponents for better clarity.
2025-07-07 03:39:39 +05:30
chamiakJ
01298928c7 feat(task-filters): enhance localization and UI for task filters
- Added new translation keys for task filter functionalities across multiple languages, improving user experience and accessibility.
- Updated the ImprovedTaskFilters component to utilize localized strings for search placeholders, loading states, and filter messages.
- Enhanced styling for filter buttons and dropdowns to ensure consistency in both light and dark modes.
- Introduced a description column in task management components, improving the display of task details.
2025-07-07 03:04:16 +05:30
Chamika J
13ee16452b Merge pull request #237 from Worklenz/fix/task-drag-and-drop-improvement
Fix/task drag and drop improvement
2025-07-07 02:40:15 +05:30
chamiakJ
9a57413624 feat(task-filters): enhance archived task handling in task management
- Introduced state management for archived tasks in the task management slice, allowing for better control over task visibility.
- Updated ImprovedTaskFilters component to utilize the new archived state, enabling toggling of archived tasks based on the current view (list or kanban).
- Refactored related functions to ensure proper dispatching of archived state changes, improving user experience and task management efficiency.
2025-07-07 02:38:50 +05:30
chamiakJ
8d8250bc17 feat(task-list): enhance bulk action functionality with improved task handling
- Updated TaskListV2 to pass selected task IDs to bulk action handlers, improving functionality and user experience.
- Refactored useBulkActions hook to implement detailed handling for bulk status, priority, phase changes, and other actions, ensuring proper task management.
- Added loading states for individual bulk actions to provide visual feedback during processing.
- Implemented error handling and alerts for task dependency checks before executing bulk actions, enhancing reliability.
- Introduced new methods for bulk assigning members, adding labels, archiving, deleting, and duplicating tasks, streamlining task management processes.
2025-07-07 02:38:42 +05:30
chamiakJ
174c6bcedf feat(custom-columns): enhance task management with custom column support
- Added custom column values to task responses in the API for better task management flexibility.
- Implemented custom column components in the frontend, including dropdowns and date pickers, to improve user interaction.
- Updated TaskListV2 and TaskRow components to handle custom columns, ensuring proper rendering and functionality.
- Introduced a new PeopleDropdown component for selecting team members in custom columns, enhancing usability.
- Enhanced styling for custom column components to support both light and dark modes, improving visual consistency.
2025-07-07 02:04:05 +05:30
chamiakJ
c70f8e7b6d feat(task-statuses): add category update functionality and enhance localization
- Implemented updateCategory method in TaskStatusesController to allow updating task status categories.
- Added corresponding route for category updates in statusesApiRouter.
- Enhanced task management localization by adding new translation keys for category-related actions in multiple languages.
- Updated TaskGroupHeader component to support category changes with a modal for selecting categories.
2025-07-06 16:54:11 +05:30
chamiakJ
6ba1ff57b2 refactor(task-list): streamline task addition and socket handling
- Removed local socket listener from AddTaskRow, delegating task addition to the global socket handler for real-time updates.
- Simplified the handleTaskAdded function in TaskListV2, eliminating the need for refetching tasks upon addition.
- Updated useTaskSocketHandlers to handle task data more efficiently, ensuring proper integration with the Redux store.
2025-07-06 15:42:12 +05:30
chamiakJ
a5291483f7 feat(task-list): enhance task creation and UI components
- Improved the on_quick_task function to handle empty task names and emit null when no task is created, ensuring better user feedback.
- Updated SubtaskLoadingSkeleton and TaskRow components for improved styling and spacing, enhancing visual consistency.
- Introduced AddTaskRow component for streamlined task addition, integrating socket communication for real-time updates.
- Refactored TaskListV2 to optimize rendering and improve performance, including adjustments to column headers and task display.
- Added custom column components for enhanced task management flexibility and user interaction.
2025-07-06 14:51:22 +05:30
chamikaJ
e3a9618dc9 feat(task-list): improve layout and scrolling behavior in TaskListV2 component
- Adjusted the layout to ensure fixed heights for the task list and table container, enhancing usability.
- Implemented horizontal scrolling for the table container and ensured the bulk action bar is positioned absolutely for better accessibility.
- Updated styles for column headers and task list content to improve visual consistency and user experience.
2025-07-04 20:54:11 +05:30
chamikaJ
f30fde553d feat(task-management): enhance task grouping and localization support
- Implemented unmapped task grouping for better organization of tasks without valid phases.
- Updated task distribution logic to handle unmapped tasks and added a corresponding group in the response.
- Enhanced localization by adding translations for "noTasksInGroup" in multiple languages.
- Improved task list components to support custom columns and better task management features.
- Refactored task management slice to include loading states for columns and custom columns.
2025-07-04 20:41:03 +05:30
Chamika J
f9c1537ca0 Merge pull request #236 from shancds/test/row-kanban-board-v1.1.2
Test/row kanban board v1.1.2
2025-07-04 17:31:02 +05:30
shancds
208a6db1a6 feat(AssigneeSelector): add kanbanMode prop for enhanced task assignment
- Introduced kanbanMode prop to AssigneeSelector and LazyAssigneeSelectorWrapper for improved functionality in Kanban view.
- Updated EnhancedKanbanTaskCard and TaskCard components to utilize the new kanbanMode prop.
- Adjusted task sorting logic to handle cases where sort_order may be undefined, ensuring robust behavior during task updates.
2025-07-04 17:13:56 +05:30
shancds
9e1798cc3e fix(TaskCard): improve UI and interaction for subtasks
- Adjusted styling for task and subtask elements to enhance visual consistency.
- Updated subtask rendering to include priority color indicators based on theme mode.
- Added click handling for subtask items to improve user interaction.
- Refined layout and spacing for better usability and readability.
2025-07-04 15:41:52 +05:30
chamikaJ
9e29031703 feat(task-list): update column labels for localization and improve task count display
- Changed column labels to be more descriptive for localization support.
- Integrated translation functionality for column headers using `useTranslation`.
- Updated task count display to reflect actual task counts instead of collapsed counts.
2025-07-04 14:38:26 +05:30
shancds
3626192f31 Merge branch 'release/v2.0.4' of https://github.com/Worklenz/worklenz into test/row-kanban-board-v1.1.2 2025-07-04 14:23:44 +05:30
shancds
d246f8e3ed feat(TaskCard): add subtask expansion functionality and improve UI interactions
- Implemented subtask expansion logic with dispatch actions for toggling visibility and fetching subtasks.
- Enhanced UI to include a button for showing/hiding subtasks, improving user interaction.
- Updated task display to show subtask counts and loading states, ensuring better feedback during data fetching.
2025-07-04 14:23:23 +05:30
Chamika J
3ddf6900c9 Merge pull request #235 from Worklenz/fix/task-drag-and-drop-improvement
feat(task-management): enhance task management UI with subtask functi…
2025-07-04 13:25:42 +05:30
chamikaJ
aab3ffe262 feat(task-management): enhance task management UI with subtask functionality
- Updated task list components to support subtasks, including TaskRowWithSubtasks for rendering tasks with their subtasks.
- Introduced AddSubtaskRow for adding new subtasks directly within the task list.
- Enhanced TaskRow to handle task expansion and display subtask counts.
- Implemented optimistic updates for subtask creation to improve user experience.
- Added loading states for subtasks to provide visual feedback during data fetching.
- Refactored task management slice to manage subtasks and their loading states effectively.
2025-07-04 13:24:41 +05:30