formsy-semantic-ui-react
Version:
Formsy-React wrappers for Semantic-Ui-React's form Components
3 lines (2 loc) • 8.24 kB
JavaScript
"use strict";function e(e){return e&&"object"==typeof e&&"default"in e?e.default:e}Object.defineProperty(exports,"__esModule",{value:!0});var r=require("formsy-react"),t=e(r),n=e(require("hoist-non-react-statics")),o=require("react"),i=e(o),a=require("semantic-ui-react");function s(){return(s=Object.assign?Object.assign.bind():function(e){for(var r=1;r<arguments.length;r++){var t=arguments[r];for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])}return e}).apply(this,arguments)}function l(e,r){var t,n;e.prototype=Object.create(r.prototype),e.prototype.constructor=e,t=e,n=r,(Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,r){return e.__proto__=r,e})(t,n)}function u(e,r){if(null==e)return{};var t,n,o={},i=Object.keys(e);for(n=0;n<i.length;n++)r.indexOf(t=i[n])>=0||(o[t]=e[t]);return o}var d=["as","attachToForm","defaultChecked","defaultSelected","defaultValue","detachFromForm","error","errorLabel","errorMessage","errorMessages","formRadioGroup","hasValue","inline","innerRef","inputAs","inputClassName","instantValidation","isFormDisabled","isFormSubmitted","isPristine","isRequired","isValid","isValidValue","label","passRequiredToField","resetValue","rootClassName","rootElement","rootStyle","runValidation","setValidations","setValue","showError","showRequired","validate","validationError","validationErrors","validations","value","width"];function p(e){return Object.fromEntries(Object.keys(e).filter((function(e){return!d.includes(e)})).map((function(r){return[r,e[r]]})))}var c=r.withFormsy(function(e){function r(){var r;return(r=e.apply(this,arguments)||this).handleChange=function(e,t){r.props.setValue(t.checked),r.props.onChange&&r.props.onChange(e,t)},r}l(r,e);var t=r.prototype;return t.componentDidMount=function(){var e=this.props;(0,e.setValue)(!!e.defaultChecked,!1)},t.render=function(){var e=this.props,r=e.inputAs,t=void 0===r?a.Checkbox:r,n=e.required,l=e.errorLabel,u=e.errorMessage,d=e.value,c=e.as,h=e.width,m=e.className,f=e.disabled,b=e.inline,v=e.passRequiredToField,E=!e.isPristine&&!e.isValid,g=s({},p(this.props),{label:this.props.label,checked:!!d,onChange:this.handleChange});return t!==a.Checkbox&&t!==a.Radio||(g.error=void 0),i.createElement(a.Form.Field,{as:c,className:m,required:n&&v,error:E,width:h,inline:b,disabled:f},o.createElement(t,s({},g)),E&&l&&o.cloneElement(l,{},u))},r}(o.Component)),h=r.withFormsy(function(e){function r(){var r;return(r=e.apply(this,arguments)||this).state={allowError:!1},r.handleChange=function(e,t){var n=r.props,o=n.value,i=n.setValue,a=n.onChange,l=n.name;n.multiple&&Array.isArray(o)&&Array.isArray(t.value)&&o.length>t.value.length&&r.showError(),i(t.value),a&&a(e,s({},t,{name:l}))},r.handleBlur=function(e,t){var n=r.props.onBlur;n&&n(e,t)},r.handleClose=function(){return r.showError()},r.showError=function(){return r.setState({allowError:!0})},r}l(r,e);var t=r.prototype;return t.componentDidMount=function(){var e=this.props,r=e.defaultValue;r&&(0,e.setValue)(r)},t.componentDidUpdate=function(e){e.isFormSubmitted!==this.props.isFormSubmitted&&this.props.isFormSubmitted&&this.showError()},t.render=function(){var e=this.props,r=e.inputAs,t=void 0===r?a.Dropdown:r,n=e.id,l=e.required,u=e.label,d=e.value,c=e.defaultValue,h=e.multiple,m=e.errorLabel,f=e.errorMessage,b=e.as,v=e.width,E=e.className,g=e.disabled,F=e.inline,w=e.passRequiredToField,C=void 0===w||w,y=t===a.Form.Dropdown||t===a.Form.Select,V=!e.isPristine&&!e.isValid&&this.state.allowError,O=s({},p(this.props),{onChange:this.handleChange,onBlur:this.handleBlur,onClose:this.handleClose,value:d||c||h&&[]||"",error:!g&&V,id:n,name:void 0}),j=y?o.createElement(t,O).props.control:t;return i.createElement(a.Form.Field,{as:b,className:E,required:l&&C,error:!g&&V,width:v,inline:F,disabled:g},y&&u&&i.createElement("label",{htmlFor:n},u),o.createElement(j,s({},O)),V&&m&&o.cloneElement(m,{},f))},r}(o.Component)),m=r.withFormsy(function(e){function r(){var r;return(r=e.apply(this,arguments)||this).state={allowError:!1},r.handleChange=function(e,t){r.props.setValue(t.value),r.props.onChange&&r.props.onChange(e,t),r.props.instantValidation&&r.showError()},r.handleBlur=function(e,t){r.showError(),r.props.onBlur&&r.props.onBlur(e,t)},r.showError=function(){return r.setState({allowError:!0})},r}l(r,e);var t=r.prototype;return t.componentDidMount=function(){var e=this.props,r=e.defaultValue;r&&(0,e.setValue)(r)},t.componentDidUpdate=function(e){e.isFormSubmitted!==this.props.isFormSubmitted&&this.props.isFormSubmitted&&this.showError()},t.render=function(){var e=this.props,r=e.id,t=e.inputAs,n=void 0===t?a.Input:t,l=e.inputClassName,u=e.required,d=e.label,c=e.defaultValue,h=e.value,m=e.isPristine,f=e.errorMessage,b=e.errorLabel,v=e.as,E=e.width,g=e.className,F=e.disabled,w=e.inline,C=e.passRequiredToField,y=void 0===C||C,V=!m&&!e.isValid&&this.state.allowError,O=s({},p(this.props),{value:h||m&&c||"",onChange:this.handleChange,onBlur:this.handleBlur,className:l,error:!F&&V,label:d,id:r}),j=n===a.Form.Input||n===a.Form.TextArea,S=j?o.createElement(n).props.control:n;j&&(O.label=void 0,n===a.Form.TextArea&&(O.error=void 0));var x=!j&&o.isValidElement(n)?o.cloneElement(n,s({},O,n.props)):o.createElement(S,s({},O)),A=j||o.isValidElement(n);return i.createElement(a.Form.Field,{as:v,className:g,required:u&&y,error:!F&&V,width:E,inline:w,disabled:F},A&&d&&i.createElement("label",{htmlFor:r},d),x,!F&&V&&b&&o.cloneElement(b,{},f))},r}(o.Component)),f=r.withFormsy(function(e){function r(){var r;return(r=e.apply(this,arguments)||this).handleChange=function(e,t){r.props.setValue(t.value),r.props.onChange&&r.props.onChange(e,t)},r}l(r,e);var t=r.prototype;return t.componentDidMount=function(){var e=this.props,r=e.defaultSelected;r&&(0,e.setValue)(r)},t.render=function(){var e=this,r=this.props,t=r.label,n=r.children,l=r.name,u=r.value,d=r.errorLabel,p=r.errorMessage,c=r.passRequiredToField,h=r.disabled,m=r.inline,f=void 0===m||m,b=!r.isPristine&&!r.isValid,v={required:r.required&&(void 0===c||c),error:!h&&b,label:t,disabled:h},E={width:r.width,error:!h&&b};return i.createElement(a.Form.Group,Object.assign({},{as:r.as,className:r.className,unstackable:r.unstackable,inline:f,grouped:!f}),t&&i.createElement(a.Form.Field,Object.assign({},v)),o.Children.map(n,(function(r){if(!r)return null;var t={name:l,checked:u===r.props.value,onChange:e.handleChange,disabled:h};return i.createElement(a.Form.Field,Object.assign({},E),o.cloneElement(r,s({},t)))})),b&&d&&o.cloneElement(d,{},p))},r}(o.Component)),b=function(e){return i.createElement(h,Object.assign({inputAs:a.Select},e))},v=function(e){return i.createElement(m,Object.assign({inputAs:a.TextArea},e))},E=["mapping","validationErrors","onValid","onValidSubmit","onInvalid","onInvalidSubmit","onChange","preventExternalInvalidation","onError","onSubmit","forwardedRef"],g=["as","error","inverted","loading","reply","size","success","warning","widths","forwardedRef","className"],F=function(e){function r(){return e.apply(this,arguments)||this}return l(r,e),r.prototype.render=function(){var e=this.props.children,r=this.props,n=r.onSubmit,o=r.forwardedRef,s=u(r,E),l=this.props,d=l.as,p=void 0===d?"div":d,c=u(l,g);return i.createElement(t,Object.assign({noValidate:!0,ref:o,onSubmit:n},c),i.createElement(a.Form,Object.assign({as:p},s),e))},r}(o.Component);F.Button=a.Form.Button,F.Radio=a.Form.Radio,F.Field=a.Form.Field,F.Group=a.Form.Group,F.Checkbox=c,F.Input=function(e){return i.createElement(m,Object.assign({inputAs:a.Form.Input},e))},F.TextArea=function(e){return i.createElement(v,Object.assign({inputAs:a.Form.TextArea},e))},F.Select=function(e){return i.createElement(b,Object.assign({inputAs:a.Form.Select},e))},F.RadioGroup=function(e){return i.createElement(f,Object.assign({},e))},F.Dropdown=function(e){return i.createElement(h,Object.assign({inputAs:a.Form.Dropdown},e))};var w=n(i.forwardRef((function(e,r){return i.createElement(F,Object.assign({},e,{forwardedRef:r}))})),F);exports.Checkbox=c,exports.Dropdown=h,exports.Form=w,exports.Input=m,exports.Radio=function(e){return i.createElement(c,Object.assign({inputAs:a.Radio},e))},exports.RadioGroup=f,exports.Select=b,exports.TextArea=v;
//# sourceMappingURL=formsy-semantic-ui-react.cjs.production.min.js.map