UNPKG

@e-group/material-module

Version:
179 lines (151 loc) 6.14 kB
"use strict"; var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard"); var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray")); var _react = _interopRequireWildcard(require("react")); var _core = require("@material-ui/core"); var _Select = _interopRequireDefault(require("@material-ui/core/Select")); var _ListItem = _interopRequireDefault(require("@material-ui/core/ListItem")); var _Typography = _interopRequireDefault(require("@material-ui/core/Typography")); var _Grid = _interopRequireDefault(require("@material-ui/core/Grid")); var _TextField = _interopRequireDefault(require("@material-ui/core/TextField")); const useStyles = (0, _core.makeStyles)(theme => ({ header: { padding: theme.spacing(1.5, 0), marginBottom: theme.spacing(1) }, selectWrapper: { padding: theme.spacing(1, 2) }, textDivider: { margin: theme.spacing(0, 1.5) }, row: { marginBottom: theme.spacing(2), '&:last-child': { marginBottom: 0 } }, label: { width: 20, fontFamily: 'Roboto, Arial,sans-serif;', marginBottom: 2, letterSpacing: 0.2 }, labelInput: { marginLeft: theme.spacing(2) } })); const QuestionRatingEditable = ({ question, onStartChange, onEndChange, onStartInputChange, onEndInputChange }) => { var _question$questionRat, _question$questionRat2, _question$questionRat3, _question$questionRat4; const classes = useStyles(); const _useState = (0, _react.useState)((_question$questionRat = question.questionRatingStartValue) !== null && _question$questionRat !== void 0 ? _question$questionRat : 1), _useState2 = (0, _slicedToArray2.default)(_useState, 2), start = _useState2[0], setStart = _useState2[1]; const _useState3 = (0, _react.useState)((_question$questionRat2 = question.questionRatingEndValue) !== null && _question$questionRat2 !== void 0 ? _question$questionRat2 : 5), _useState4 = (0, _slicedToArray2.default)(_useState3, 2), end = _useState4[0], setEnd = _useState4[1]; const _useState5 = (0, _react.useState)((_question$questionRat3 = question.questionRatingStartName) !== null && _question$questionRat3 !== void 0 ? _question$questionRat3 : ''), _useState6 = (0, _slicedToArray2.default)(_useState5, 2), startInput = _useState6[0], setStartInput = _useState6[1]; const _useState7 = (0, _react.useState)((_question$questionRat4 = question.questionRatingEndName) !== null && _question$questionRat4 !== void 0 ? _question$questionRat4 : ''), _useState8 = (0, _slicedToArray2.default)(_useState7, 2), endInput = _useState8[0], setEndInput = _useState8[1]; const handleStartChange = e => { setStart(Number(e.target.value)); if (onStartChange) { onStartChange(e, question); } }; const handleEndChange = e => { setEnd(Number(e.target.value)); if (onEndChange) { onEndChange(e, question); } }; const handleStartInputChange = e => { setStartInput(e.target.value); if (onStartInputChange) { onStartInputChange(e, question); } }; const handleEndInputChange = e => { setEndInput(e.target.value); if (onEndInputChange) { onEndInputChange(e, question); } }; return /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement("div", { className: classes.header }, /*#__PURE__*/_react.default.createElement(_Grid.default, { container: true, alignItems: "center" }, /*#__PURE__*/_react.default.createElement(_Grid.default, { className: classes.selectWrapper }, /*#__PURE__*/_react.default.createElement(_Select.default, { onChange: handleStartChange, value: start, disableUnderline: true }, Array.from(Array(2).keys()).map(num => /*#__PURE__*/_react.default.createElement(_ListItem.default, { key: num, value: num }, num)))), /*#__PURE__*/_react.default.createElement(_Grid.default, { className: classes.textDivider }, /*#__PURE__*/_react.default.createElement(_Typography.default, { variant: "body1" }, "\u5230")), /*#__PURE__*/_react.default.createElement(_Grid.default, { className: classes.selectWrapper }, /*#__PURE__*/_react.default.createElement(_Select.default, { onChange: handleEndChange, value: end, disableUnderline: true }, Array.from(Array(9).keys()).map(num => { const nnum = num + 2; return /*#__PURE__*/_react.default.createElement(_ListItem.default, { key: nnum, value: nnum }, nnum); }))))), /*#__PURE__*/_react.default.createElement(_Grid.default, { container: true, alignItems: "flex-end", className: classes.row }, /*#__PURE__*/_react.default.createElement(_Grid.default, null, /*#__PURE__*/_react.default.createElement(_Typography.default, { variant: "body1", color: "textSecondary", className: classes.label }, start)), /*#__PURE__*/_react.default.createElement(_Grid.default, null, /*#__PURE__*/_react.default.createElement(_TextField.default, { placeholder: "\u6A19\u7C64 (\u9078\u586B)", className: classes.labelInput, value: startInput, onChange: handleStartInputChange }))), /*#__PURE__*/_react.default.createElement(_Grid.default, { container: true, alignItems: "flex-end", className: classes.row }, /*#__PURE__*/_react.default.createElement(_Grid.default, null, /*#__PURE__*/_react.default.createElement(_Typography.default, { variant: "body1", color: "textSecondary", className: classes.label }, end)), /*#__PURE__*/_react.default.createElement(_Grid.default, null, /*#__PURE__*/_react.default.createElement(_TextField.default, { placeholder: "\u6A19\u7C64 (\u9078\u586B)", className: classes.labelInput, value: endInput, onChange: handleEndInputChange })))); }; var _default = QuestionRatingEditable; exports.default = _default;