diff options
author | Blaster4385 <[email protected]> | 2022-08-13 21:40:17 +0530 |
---|---|---|
committer | Blaster4385 <[email protected]> | 2022-08-13 21:41:37 +0530 |
commit | ec423572aaf8ecf80a409fd9a03d73b5d31e444f (patch) | |
tree | 8c333eac18de5dea8be9c863a0fc8abd3d0bafff /client/src/components/UpdateInput/UpdateInput.jsx | |
parent | 3673947d4905948de2e466a813019b1de9629bd2 (diff) |
Implemented update UI
Diffstat (limited to 'client/src/components/UpdateInput/UpdateInput.jsx')
-rw-r--r-- | client/src/components/UpdateInput/UpdateInput.jsx | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/client/src/components/UpdateInput/UpdateInput.jsx b/client/src/components/UpdateInput/UpdateInput.jsx new file mode 100644 index 0000000..8fa3ba1 --- /dev/null +++ b/client/src/components/UpdateInput/UpdateInput.jsx @@ -0,0 +1,42 @@ +import React from 'react' +import styles from './UpdateInput.module.css' +import EditButton from '../EditButton/EditButton' + +const UpdateInput = ({ label, id, value, type, name, onChange, placeholder, maxLength, pattern, minLength, onInvalid, onValid, readOnly }) => { + const [editable, setEditable] = React.useState(true) + + const handleEdit = () => { + setEditable(!editable) + } + + return ( + <div className={styles.input}> + <div className={styles.input__container}> + <label htmlFor={id}>{label}</label> + <div className={styles.input__edit}> + <input + className={styles.input__field} + type={type} + id={id} + name={name} + value={value} + onChange={onChange} + required + placeholder={placeholder} + pattern={pattern} + maxLength={maxLength} + minLength={minLength} + onInvalid={onInvalid} + onValid={onValid} + readOnly={editable} + /> + <EditButton + onClick={handleEdit} + enabled={!editable ? '1' : '0' } /> + </div> + </div> + </div> + ) +} + +export default UpdateInput |