Proyectos de Subversion LeadersLinked - SPA

Rev

Rev 2073 | Rev 2078 | Ir a la última revisión | | Comparar con el anterior | Ultima modificación | Ver Log |

Rev Autor Línea Nro. Línea
2073 stevensc 1
import React from 'react'
2077 stevensc 2
import { InputAdornment, TextField, styled } from '@mui/material'
2073 stevensc 3
 
2077 stevensc 4
const AppInput = styled(TextField)(({ theme }) => ({
5
  '& .MuiInputBase-input': {
6
    borderRadius: 4,
7
    position: 'relative',
8
    backgroundColor: theme.palette.background.default,
9
    border: `1px solid var(--border-primary)`,
10
    fontSize: 14,
11
    padding: '5px 10px',
12
    transition: theme.transitions.create([
13
      'border-color',
14
      'background-color',
15
      'box-shadow'
16
    ])
2073 stevensc 17
  },
18
  '& svg': {
19
    fontSize: '1.3rem'
20
  }
21
}))
22
 
2077 stevensc 23
const Input = ({
24
  label = '',
25
  inputRef = null,
26
  icon: Icon = null,
27
  error = null,
28
  name = '',
29
  onChange = () => {},
30
  value = '',
31
  type = 'text',
32
  placeholder = '',
33
  accept = ''
34
}) => {
35
  return (
36
    <AppInput
37
      label={label}
38
      helperText={error}
39
      error={Boolean(error)}
40
      ref={inputRef}
41
      id={name}
42
      name={name}
43
      fullWidth
44
      placeholder={placeholder}
45
      onChange={onChange}
46
      value={value}
47
      InputProps={{
48
        startAdornment: Icon ? (
49
          <InputAdornment position='start'>
50
            <Icon />
51
          </InputAdornment>
52
        ) : null
53
      }}
54
      inputProps={{
55
        accept
56
      }}
57
      type={type}
58
    />
59
  )
2073 stevensc 60
}
61
 
62
export default Input