UNPKG

@talend/react-forms

Version:

React forms library based on json schema form.

73 lines (72 loc) 2.05 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _propTypes = _interopRequireDefault(require("prop-types")); var _designSystem = require("@talend/design-system"); var _properties = require("../../utils/properties"); var _jsxRuntime = require("react/jsx-runtime"); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } function ToggleWidget(props) { const { id, isValid, errorMessage, onChange, onFinish, schema, value, valueIsUpdating } = props; const { autoFocus, description, disabled = false, title } = schema; return /*#__PURE__*/(0, _jsxRuntime.jsx)(_designSystem.Form.ToggleSwitch, { // eslint-disable-next-line jsx-a11y/no-autofocus autoFocus: autoFocus, checked: value, disabled: disabled || valueIsUpdating, id: id, label: title, onChange: event => { onChange(event, { schema, value: !value }); onFinish(event, { schema, value: !value }); }, required: schema.required, hasError: !isValid, description: errorMessage || description, "aria-invalid": !isValid, "aria-required": schema.required, ...(0, _properties.extractDataAttributes)(schema) }); } if (process.env.NODE_ENV !== 'production') { ToggleWidget.propTypes = { id: _propTypes.default.string, isValid: _propTypes.default.bool, errorMessage: _propTypes.default.string, onChange: _propTypes.default.func.isRequired, onFinish: _propTypes.default.func.isRequired, schema: _propTypes.default.shape({ autoFocus: _propTypes.default.bool, description: _propTypes.default.string, disabled: _propTypes.default.bool, required: _propTypes.default.bool, title: _propTypes.default.string }), value: _propTypes.default.bool, valueIsUpdating: _propTypes.default.bool }; } var _default = exports.default = ToggleWidget; //# sourceMappingURL=Toggle.component.js.map