- Improved drag-and-drop support in the Process Builder by setting drag data to 'text/plain' for better compatibility, especially on Mac.
- Added visual feedback during drag operations by applying a 'dragging' class to the event target.
- Updated the drop event handler to parse the dragged data correctly and prevent event propagation.
- Introduced a computed property for gateway available variables to enhance node configuration options.
- Adjusted the layout of the properties panel to accommodate a new VariableManager component for better variable management.
- Updated the Form Builder documentation to include integration details with the Process Builder, outlining how to connect forms to processes and manage form data.
- Added a new section on Process Builder integration, detailing API endpoints for form selection and loading forms by URL parameters.
- Improved the Process Builder documentation with instructions for adding form tasks, selecting forms, and handling form data within processes.
- Updated last modified dates for documentation files to reflect recent changes.
- Introduced new components for form selection and gateway condition management within the process builder.
- Implemented a `FormSelector` component for selecting and managing forms, including search functionality and loading states.
- Developed a `GatewayConditionManager` component to manage conditions for gateways, allowing users to define and edit conditions visually.
- Created a `ProcessBuilderComponents` component to facilitate the addition of core components in the process builder.
- Enhanced the `ProcessFlowCanvas` to support new features, including edge selection and improved node management.
- Updated the backend API to handle CRUD operations for forms and processes, including error handling for associated tasks.
- Integrated new database models for forms and processes in Prisma, ensuring proper relationships and data integrity.
- Improved state management in the form builder store to accommodate new features and enhance user experience.
- Created comprehensive documentation for the Process Builder, detailing its features, usage, and components.
- Included a user-friendly overview, quick start guide, and best practices for designing workflows.
- Developed a technical appendix outlining the architecture, technology stack, project structure, and component architecture.
- Documented state management and connection handling within the Process Builder for developers.
- Enhanced troubleshooting and error handling sections to assist users in resolving common issues.
- Introduced a new process builder feature with a dedicated page for managing processes.
- Implemented a `ProcessFlowCanvas` component utilizing Vue Flow for visual process management.
- Created custom node types for the process flow, including Start, Task, Form, Gateway, Script, and End nodes.
- Developed a Pinia store for managing process data, including actions for creating, updating, and deleting processes and nodes.
- Added a search functionality for filtering processes and a confirmation dialog for process deletion.
- Integrated responsive design adjustments for better usability across devices.
- Included styles for custom nodes and flow components to enhance visual representation.
- Updated navigation to include links to the new process builder and management features.
- Modified the globs in `database-models.mdc` to include server-side JavaScript files.
- Updated the globs in `development-guidelines.mdc` to encompass server-side JavaScript files alongside Vue components, enhancing the scope of the documentation.
- Created comprehensive documentation files for backend services, detailing API endpoints, database access, authentication, and middleware.
- Added documentation for Rose UI components and custom FormKit components, including descriptions and usage.
- Documented database models defined in Prisma, outlining core and supporting models with their fields and relationships.
- Established development guidelines for component and form development, state management, API development, and styling.
- Included details on FormKit integration for form handling, plugins, and the form builder feature.
- Provided an overview of the project structure, key configuration files, and routing system with main routes and middleware usage.
- Enhanced state management documentation with key stores and usage guidelines for Pinia.
- Enhanced the Form Builder documentation with a comprehensive overview, getting started guide, and detailed descriptions of available components and their configurations.
- Updated the Technical Appendix to include architecture overview, technology stack, project structure, and component architecture.
- Improved clarity on state management, validation system, and event handling within the Form Builder.
- Added best practices for form design and user experience considerations.
- Last updated date included for both documentation files.
- Implemented a history management system to track actions such as adding, updating, moving, and deleting components.
- Added a new `FormBuilderHistory` component to display action history with undo/redo functionality.
- Updated the `FormBuilderCanvas` and `FormBuilderComponents` to support history tracking and improved component selection.
- Enhanced the form store to manage action history, including limits on history length and state restoration.
- Improved user experience by integrating keyboard shortcuts for undo and redo actions.
- Refactored various components to ensure proper state management and history recording during component modifications.
- Implemented a modal to warn users about unsaved changes when navigating away from the form builder.
- Added computed properties and methods to manage unsaved changes state and navigation confirmation.
- Updated the form management page to include unsaved changes handling when creating new forms.
- Enhanced the form store to track unsaved changes status, ensuring better user experience and data integrity.
- Added functionality for resizing components within the Form Builder, allowing users to adjust widths dynamically.
- Introduced a method to find optimal grid placement for new components, ensuring efficient use of available space.
- Enhanced layout optimization after component addition, deletion, and reordering to maintain a clean and organized interface.
- Updated the FormBuilderConfiguration to include width settings for components, improving customization options.
- Refactored styles for grid layout and component previews to enhance visual consistency and user experience.
- Added a search bar to filter available components in `FormBuilderComponents.vue`.
- Organized components into categories (Basic Inputs, Selection Inputs, Date and Time, Advanced, Layout) for better accessibility.
- Updated styles for improved user experience and interaction feedback.
- Refactored component retrieval logic to streamline rendering based on categories.
- Changed the button background color in `error.vue` to improve visibility.
- Updated the secondary color in `theme.css` for better consistency.
- Refactored border color references in `collapse.css` for clarity.
- Added new fields (`auditAction`, `auditDetails`, `auditUsername`) to the `audit` model in `schema.prisma` for enhanced tracking.
- Updated JSON schema to reflect new audit model fields.
- Introduced `FormBuilderComponents.vue`, `FormBuilderCanvas.vue`, and `FormBuilderConfiguration.vue` for managing form elements.
- Added `ComponentPreview.vue` for rendering previews of form components.
- Implemented state management using Pinia in `stores/formBuilder.js` to handle form components and saved forms.
- Created pages for form builder interface (`index.vue`) and form management (`manage.vue`).
- Integrated toast notifications with `useToast.js` for user feedback.
- Documented the form builder structure and features in `FORM_BUILDER_DOCUMENTATION.md` and `FORM_BUILDER_TECHNICAL_APPENDIX.md`.
- Established a responsive layout and drag-and-drop functionality for a seamless user experience.