From 8805484de2d48e02ce271f18503890e9a948f3da Mon Sep 17 00:00:00 2001 From: Afiq Date: Fri, 30 May 2025 18:36:50 +0800 Subject: [PATCH] Enhance Process Flow Components with Improved Node and Edge Management - Introduced intelligent synchronization for nodes and edges in ProcessFlowCanvas, preventing unnecessary re-renders and improving performance. - Added state management flags to prevent recursive updates during node and edge changes. - Implemented explicit sync method for manual canvas updates, enhancing control over the rendering process. - Updated ProcessSettingsModal to change the label for JSON export to "Source" for better clarity. - Enhanced VariableManager with improved styling and default value handling, including validation for JSON objects. - Updated navigation to remove unused icons and improve overall UI consistency. - Added support for restoring deleted processes in the API, allowing for better data management and recovery options. - Enhanced process management with new filters and improved loading states in the manage process view. --- components/process-flow/ProcessFlowCanvas.vue | 388 ++++++++++++++---- .../process-flow/ProcessSettingsModal.vue | 2 +- components/process-flow/VariableManager.vue | 207 +++++++--- navigation/index.js | 8 - pages/form-builder/index.vue | 2 +- pages/form-builder/manage.vue | 86 +++- pages/process-builder/index.vue | 117 ++++-- pages/process-builder/manage.vue | 259 ++++++++---- prisma/json/json-schema.json | 7 + prisma/schema.prisma | 1 + server/api/process/[id].delete.js | 31 +- server/api/process/[id].put.js | 50 ++- server/api/process/[id]/restore.post.js | 86 ++++ server/api/process/index.get.js | 12 +- stores/processBuilder.js | 26 +- 15 files changed, 986 insertions(+), 296 deletions(-) create mode 100644 server/api/process/[id]/restore.post.js diff --git a/components/process-flow/ProcessFlowCanvas.vue b/components/process-flow/ProcessFlowCanvas.vue index 6deece2..4eb570e 100644 --- a/components/process-flow/ProcessFlowCanvas.vue +++ b/components/process-flow/ProcessFlowCanvas.vue @@ -1,5 +1,5 @@