2b750b6d29
* refactor(ModelEditContent): enhance model capabilities management and introduce uniqueObjectArray utility - Updated ModelEditContent to improve handling of model capabilities, ensuring user selections are accurately reflected. - Introduced a new utility function, uniqueObjectArray, to filter out duplicate objects in arrays, enhancing data integrity. - Refactored logic for updating model capabilities to utilize the new utility, streamlining the process and improving code clarity. * refactor(ModelEditContent): enhance model capabilities management with useEffect and improved type handling - Added useEffect to manage model capabilities based on user selections and showMoreSettings state. - Refactored logic to streamline the handling of default and selected model types, improving clarity and maintainability. - Utilized useRef to track changed types, ensuring accurate updates to model capabilities during user interactions. * refactor(ModelEditContent): optimize model capabilities update logic with getUnion utility - Enhanced the model capabilities management by integrating the getUnion utility to streamline the merging of selected types and unselected capabilities. - Improved clarity in the useEffect hook for managing model capabilities based on user selections and the showMoreSettings state. - Refactored condition checks for updating user selections to ensure accurate handling of model capabilities during interactions. * refactor(ModelEditContent): improve model capabilities reset logic and enhance debugging - Introduced a cloneDeep utility to preserve original model capabilities for reset functionality. - Updated the handleResetTypes function to restore original capabilities instead of clearing them. - Added console logs for better debugging and tracking of model capabilities during updates. * feat(ModelEditContent): track user modifications for model capabilities - Added a state variable to track if the user has modified model capabilities. - Updated the handleTypeChange function to set the modification flag when types are changed. - Modified the reset button to only display when there are user modifications, enhancing the user interface and interaction clarity.