mirror of
https://github.com/hexastack/hexabot
synced 2025-06-26 18:27:28 +00:00
Merge pull request #605 from Hexastack/593-issue-when-updating-the-user-account-password
fix: remove unnecessary state change
This commit is contained in:
commit
6ff6c5a756
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright © 2024 Hexastack. All rights reserved.
|
* Copyright © 2025 Hexastack. All rights reserved.
|
||||||
*
|
*
|
||||||
* Licensed under the GNU Affero General Public License v3.0 (AGPLv3) with the following additional terms:
|
* Licensed under the GNU Affero General Public License v3.0 (AGPLv3) with the following additional terms:
|
||||||
* 1. The name "Hexabot" is a trademark of Hexastack. You may not use this name in derivative works without express written permission.
|
* 1. The name "Hexabot" is a trademark of Hexastack. You may not use this name in derivative works without express written permission.
|
||||||
@ -9,34 +9,26 @@
|
|||||||
import VisibilityOffOutlinedIcon from "@mui/icons-material/VisibilityOffOutlined";
|
import VisibilityOffOutlinedIcon from "@mui/icons-material/VisibilityOffOutlined";
|
||||||
import VisibilityOutlinedIcon from "@mui/icons-material/VisibilityOutlined";
|
import VisibilityOutlinedIcon from "@mui/icons-material/VisibilityOutlined";
|
||||||
import { IconButton, InputAdornment, TextFieldProps } from "@mui/material";
|
import { IconButton, InputAdornment, TextFieldProps } from "@mui/material";
|
||||||
import React, { forwardRef, useState } from "react";
|
import { forwardRef, useState } from "react";
|
||||||
|
|
||||||
import { Input } from "./Input";
|
import { Input } from "./Input";
|
||||||
|
|
||||||
export const PasswordInput = forwardRef<any, TextFieldProps>(
|
export const PasswordInput = forwardRef<any, TextFieldProps>(
|
||||||
({ onChange, InputProps, value, ...rest }, ref) => {
|
({ onChange, InputProps, ...rest }, ref) => {
|
||||||
const [password, setPassword] = useState<string>(value as string);
|
|
||||||
const [showPassword, setShowPassword] = useState(false);
|
const [showPassword, setShowPassword] = useState(false);
|
||||||
const handleTogglePasswordVisibility = () => {
|
const handleTogglePasswordVisibility = () => {
|
||||||
setShowPassword(!showPassword);
|
setShowPassword(!showPassword);
|
||||||
};
|
};
|
||||||
const handleChange = (event: React.ChangeEvent<HTMLInputElement>) => {
|
|
||||||
setPassword(event.target.value);
|
|
||||||
if (onChange) {
|
|
||||||
onChange(event);
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<Input
|
<Input
|
||||||
ref={ref}
|
ref={ref}
|
||||||
type={showPassword ? "text" : "password"}
|
type={showPassword ? "text" : "password"}
|
||||||
{...rest}
|
{...rest}
|
||||||
defaultValue={value}
|
onChange={onChange}
|
||||||
onChange={handleChange}
|
|
||||||
InputProps={{
|
InputProps={{
|
||||||
...InputProps,
|
...InputProps,
|
||||||
endAdornment: password && (
|
endAdornment: (
|
||||||
<InputAdornment position="end">
|
<InputAdornment position="end">
|
||||||
<IconButton onClick={handleTogglePasswordVisibility} edge="end">
|
<IconButton onClick={handleTogglePasswordVisibility} edge="end">
|
||||||
{showPassword ? (
|
{showPassword ? (
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user