Skip to content
Snippets Groups Projects
FormInput.js 3.1 KiB
Newer Older
/*Copyright (C) 2019 Centro de Computacao Cientifica e Software Livre
Departamento de Informatica - Universidade Federal do Parana

This file is part of Plataforma Integrada MEC.

Plataforma Integrada MEC is free software: you can redistribute it and/or modify
it under the terms of the GNU Affero General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

Plataforma Integrada MEC is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU Affero General Public License for more details.

You should have received a copy of the GNU Affero General Public License
along with Plataforma Integrada MEC.  If not, see <http://www.gnu.org/licenses/>.*/

mrp19's avatar
mrp19 committed
import React from "react";
import { makeStyles } from "@material-ui/styles";
import styled from "styled-components";
import TextField from "@material-ui/core/TextField";
    max-width: 100%;
    font-size : 15px;
    font-weight : lighter;
lfr20's avatar
lfr20 committed
    color : white;
lfr20's avatar
lfr20 committed
    width : 100% !important;

    .MuiOutlinedInput-root {
vgm18's avatar
vgm18 committed
        &.Mui-focused fieldset {
            border-color: ${props => props.contrast === "" ? "#00bcd4" : "yellow"};
        }
        fieldset {
            border-color: ${props => props.contrast === "" ? "#666" : "white"};
        }
lfr20's avatar
lfr20 committed
    }

    label{
vgm18's avatar
vgm18 committed
        color: ${props => props.contrast === "" ? "#666" : "white"};
lfr20's avatar
lfr20 committed
    }
vgm18's avatar
vgm18 committed
        color: ${props => props.contrast === "" ? "#00bcd4" : "yellow"};
vgm18's avatar
vgm18 committed

    .MuiFormHelperText-root {
        text-align : left;
        color: ${props => props.contrast === "" ? "#666" : "white"};
    }
vgm18's avatar
vgm18 committed
    container: {
        display: "flex",
        flexWrap: "wrap",
        padding: "2px"
    },
    darkTextField: {
        maxWidth: "100%",
        fontSize: "15px",
        fontWeight: "lighter",
        color: "white",
        width: "100%"
    },
    lightTextField: {
        maxWidth: "100%",
        fontSize: "15px",
        fontWeight: "lighter",
        color: "black",
        width: "100%"
    }
vgm18's avatar
vgm18 committed
    const classes = useStyles();
vgm18's avatar
vgm18 committed
    return (
        <StyledTextField
            contrast={props.contrast}
            label={props.placeholder}
            margin="normal"
            id={props.name}
            name={props.name}
            type={props.inputType}
            value={props.value}
            onChange={props.handleChange}
            variant="outlined"
            rows={props.rows}
            error={props.error}
            rowsMax={props.rowsMax}
            InputProps={props.contrast === "" ? { className: classes.lightTextField } : { className: classes.darkTextField }}
            required={props.required}
            helperText={props.help}
            style={{ width: "100%" }}
            mask={props.mask}
            multiline={props.multi}
        />
    );