FindGoodEdit.jsx 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. import {useState} from "react";
  2. import {CircularProgress, Container, IconButton, InputAdornment, TextField} from "@mui/material";
  3. import Typography from "@mui/material/Typography";
  4. import SearchIcon from "@material-ui/icons/Search";
  5. import {connect} from "react-redux";
  6. import {actionFullGoodFind} from "../../../actions/ActionGoodFind";
  7. import {actionSearchRemove} from "../../../reducers/SearchReducer";
  8. import {NotFound} from "./NotFound";
  9. import {ItemFound} from "./ItemFound";
  10. const FindGoodEdit = ({searchResult, onSearch, onSearchRemove}) => {
  11. const [value, setValue] = useState('')
  12. const [click, setClick] = useState(false)
  13. return (
  14. <>
  15. <Container maxWidth="md">
  16. <Typography
  17. variant='h5'
  18. fontFamily='sarif'
  19. letterSpacing='3px'
  20. marginBottom='30px'
  21. marginTop='30px'
  22. textAlign='center'
  23. >
  24. WHICH ITEM TO EDIT?
  25. </Typography>
  26. <TextField
  27. color={'primary'}
  28. fullWidth
  29. variant="standard"
  30. value={value}
  31. placeholder="Start typing..."
  32. onChange={(event) => {
  33. setClick(false);
  34. setValue(event.target.value);
  35. onSearchRemove()
  36. }}
  37. InputProps={{
  38. sx: {
  39. padding: '10px',
  40. outline:'none',
  41. color: '#616161',
  42. fontWeight: '300',
  43. letterSpacing: '1px',
  44. marginBottom: '50px'
  45. },
  46. endAdornment: (
  47. <InputAdornment position="end">
  48. <IconButton
  49. onClick={() => {
  50. setClick(true);
  51. onSearchRemove();
  52. onSearch(value)
  53. }}
  54. >
  55. <SearchIcon />
  56. </IconButton>
  57. </InputAdornment>
  58. )
  59. }}
  60. />
  61. {(value !== '' && click) && (searchResult?.searchResult ?
  62. Object.values(searchResult.searchResult).length > 0 ?
  63. Object.values(searchResult.searchResult)
  64. .map(item =>
  65. <ItemFound
  66. key={item?._id}
  67. item={item}
  68. />)
  69. :
  70. <NotFound/>
  71. :
  72. <CircularProgress color="inherit"/>
  73. )}
  74. </Container>
  75. </>
  76. )
  77. }
  78. export const CFindGoodEdit = connect(state=>({searchResult: state.search}),
  79. {onSearch: actionFullGoodFind, onSearchRemove: actionSearchRemove})(FindGoodEdit)