Ver Fonte

removed save button and replaced by cancel

jnfrati há 3 anos atrás
pai
commit
1f23cc2a93

+ 13 - 6
dashboard/src/main/home/cluster-dashboard/stacks/ExpandedStack/_SourceConfig.tsx

@@ -136,26 +136,33 @@ const SourceConfigItem = ({
   disabled: boolean;
 }) => {
   const [editNameMode, toggleEditNameMode] = useReducer((prev) => !prev, false);
+  const prevName = useRef(sourceConfig.name);
   const [name, setName] = useState(sourceConfig.name);
 
-  const handleNameChange = () => {
-    handleChange({ ...sourceConfig, name });
+  const handleNameChange = (newName: string) => {
+    setName(newName);
+    handleChange({ ...sourceConfig, name: newName });
+  };
 
+  const handleNameChangeCancel = () => {
+    setName(prevName.current);
+    handleChange({ ...sourceConfig, name: prevName.current });
     toggleEditNameMode();
   };
 
   return (
     <SourceConfigStyles.ItemContainer>
-      {editNameMode ? (
+      {editNameMode && !disabled ? (
         <>
           <SourceConfigStyles.ItemTitle>
             <PlainTextInput
               value={name}
-              onChange={(e) => setName(e.target.value)}
+              onChange={(e) => handleNameChange(e.target.value)}
               type="text"
+              disabled={disabled}
             />
-            <EditButton onClick={handleNameChange}>
-              <i className="material-icons">save</i>
+            <EditButton onClick={handleNameChangeCancel}>
+              <i className="material-icons-outlined">close</i>
             </EditButton>
           </SourceConfigStyles.ItemTitle>
         </>