var __rest = (this && this.__rest) || function (s, e) {
    var t = {};
    for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
        t[p] = s[p];
    if (s != null && typeof Object.getOwnPropertySymbols === "function")
        for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
            if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
                t[p[i]] = s[p[i]];
        }
    return t;
};
import React from 'react';
import { Field } from '../../../utilities/form/Field.tsx';
import { TextField, makeStyles } from '@material-ui/core';
const useStyles = makeStyles((theme) => ({
    input: {
        height: 34,
        padding: 0
    },
    formTextInput: {
        fontSize: 14
    },
    labelRoot: {
        fontSize: 14
    }
}));
/**
 * Base component for all property widgets that are based on TextField
 */
export const BaseTextPropertyWidget = (props) => {
    const { propertyType, property, initialData } = props, extraProps = __rest(props, ["propertyType", "property", "initialData"]);
    const { key, label, required } = property;
    const classes = useStyles();
    return (React.createElement(Field, Object.assign({ component: TextField, id: `${propertyType}:${key}`, name: `${propertyType}:${key}`, label: label, variant: "outlined", margin: "dense", color: "primary", size: "small", required: !!required, fullWidth: true, InputProps: {
            classes: {
                root: classes.input,
                input: classes.formTextInput
            }
        }, InputLabelProps: {
            classes: {
                root: classes.labelRoot
            }
        } }, extraProps)));
};
/**
 * `text` property widget
 *
 * Outputs a basic TextField
 */
const TextPropertyWidget = (props) => {
    return React.createElement(BaseTextPropertyWidget, Object.assign({}, props));
};
export default TextPropertyWidget;
//# sourceMappingURL=TextPropertyWidget.js.map