UNPKG

react-form-builder-devextreme

Version:

A complete form builder for react. Some changes to design

1 lines 26.7 kB
"use strict";(self.webpackChunkReactFormBuilder=self.webpackChunkReactFormBuilder||[]).push([[219],{58219:(e,t,n)=>{n.r(t),n.d(t,{default:()=>z});var l=n(15671),a=n(43144),o=n(79340),r=n(82963),i=n(61120),s=n(90359),c=n.n(s),m=n(87462),p=n(63366),d=n(73469),u=function(e,t){"function"!=typeof e?e.current=t:e(t)};var h={"min-height":"0","max-height":"none",height:"0",visibility:"hidden",overflow:"hidden",position:"absolute","z-index":"-1000",top:"0",right:"0"},E=function(e){Object.keys(h).forEach((function(t){e.style.setProperty(t,h[t],"important")}))},v=null,f=function(e,t){var n=e.scrollHeight;return"border-box"===t.sizingStyle.boxSizing?n+t.borderSize:n-t.paddingSize},b=function(){},y=["borderBottomWidth","borderLeftWidth","borderRightWidth","borderTopWidth","boxSizing","fontFamily","fontSize","fontStyle","fontWeight","letterSpacing","lineHeight","paddingBottom","paddingLeft","paddingRight","paddingTop","tabSize","textIndent","textRendering","textTransform","width","wordBreak"],g=!!document.documentElement.currentStyle;function N(e,t,n){var l,a,o=(l=n,a=s.useRef(l),(0,d.Z)((function(){a.current=l})),a);s.useLayoutEffect((function(){var n=function(e){return o.current(e)};if(e)return e.addEventListener(t,n),function(){return e.removeEventListener(t,n)}}),[])}var w=["cacheMeasurements","maxRows","minRows","onChange","onHeightChange"],k=function(e,t){var n,l=e.cacheMeasurements,a=e.maxRows,o=e.minRows,r=e.onChange,i=void 0===r?b:r,c=e.onHeightChange,d=void 0===c?b:c,h=(0,p.Z)(e,w),k=void 0!==h.value,x=s.useRef(null),P=function(e,t){var n=(0,s.useRef)();return(0,s.useCallback)((function(l){e.current=l,n.current&&u(n.current,null),n.current=t,t&&u(t,l)}),[t])}(x,t),O=s.useRef(0),C=s.useRef(),S=function(){var e=x.current,t=l&&C.current?C.current:function(e){var t=window.getComputedStyle(e);if(null===t)return null;var n,l=(n=t,y.reduce((function(e,t){return e[t]=n[t],e}),{})),a=l.boxSizing;return""===a?null:(g&&"border-box"===a&&(l.width=parseFloat(l.width)+parseFloat(l.borderRightWidth)+parseFloat(l.borderLeftWidth)+parseFloat(l.paddingRight)+parseFloat(l.paddingLeft)+"px"),{sizingStyle:l,paddingSize:parseFloat(l.paddingBottom)+parseFloat(l.paddingTop),borderSize:parseFloat(l.borderBottomWidth)+parseFloat(l.borderTopWidth)})}(e);if(t){C.current=t;var n=function(e,t,n,l){void 0===n&&(n=1),void 0===l&&(l=1/0),v||((v=document.createElement("textarea")).setAttribute("tabindex","-1"),v.setAttribute("aria-hidden","true"),E(v)),null===v.parentNode&&document.body.appendChild(v);var a=e.paddingSize,o=e.borderSize,r=e.sizingStyle,i=r.boxSizing;Object.keys(r).forEach((function(e){var t=e;v.style[t]=r[t]})),E(v),v.value=t;var s=f(v,e);v.value=t,s=f(v,e),v.value="x";var c=v.scrollHeight-a,m=c*n;"border-box"===i&&(m=m+a+o),s=Math.max(m,s);var p=c*l;return"border-box"===i&&(p=p+a+o),[s=Math.min(p,s),c]}(t,e.value||e.placeholder||"x",o,a),r=n[0],i=n[1];O.current!==r&&(O.current=r,e.style.setProperty("height",r+"px","important"),d(r,{rowHeight:i}))}};return s.useLayoutEffect(S),N(window,"resize",S),n=S,N(document.fonts,"loadingdone",n),s.createElement("textarea",(0,m.Z)({},h,{onChange:function(e){k||S(),i(e)},ref:P}))},x=s.forwardRef(k),P=n(9041),O=n(89265),C=n.n(O),S=n(35108),Z=n(69333),F=n.n(Z),B=n(74152);var T=function(e){(0,o.Z)(m,e);var t,n,s=(t=m,n=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,l=(0,i.Z)(t);if(n){var a=(0,i.Z)(this).constructor;e=Reflect.construct(l,arguments,a)}else e=l.apply(this,arguments);return(0,r.Z)(this,e)});function m(e){var t;return(0,l.Z)(this,m),(t=s.call(this,e)).state={element:t.props.element,data:t.props.data,dirty:!1},t}return(0,a.Z)(m,[{key:"_setValue",value:function(e){return e.replace(/[^A-Z0-9]+/gi,"_").toLowerCase()}},{key:"editOption",value:function(e,t){var n=this.state.element,l=n.options[e].value!==this._setValue(n.options[e].text)?n.options[e].value:this._setValue(t.target.value);n.options[e].text=t.target.value,n.options[e].value=l,this.setState({element:n,dirty:!0})}},{key:"editValue",value:function(e,t){var n=this.state.element,l=""===t.target.value?this._setValue(n.options[e].text):t.target.value;n.options[e].value=l,this.setState({element:n,dirty:!0})}},{key:"editOptionCorrect",value:function(e,t){var n=this.state.element;n.options[e].hasOwnProperty("correct")?delete n.options[e].correct:n.options[e].correct=!0,this.setState({element:n}),this.props.updateElement.call(this.props.preview,n)}},{key:"updateOption",value:function(){var e=this.state.element;this.state.dirty&&(this.props.updateElement.call(this.props.preview,e),this.setState({dirty:!1}))}},{key:"addOption",value:function(e){var t=this.state.element;t.options.splice(e+1,0,{value:"",text:"",key:F().uuid()}),this.props.updateElement.call(this.props.preview,t)}},{key:"removeOption",value:function(e){var t=this.state.element;t.options.splice(e,1),this.props.updateElement.call(this.props.preview,t)}},{key:"render",value:function(){var e=this;return this.state.dirty&&(this.state.element.dirty=!0),c().createElement("div",{className:"dynamic-option-list"},c().createElement("ul",null,c().createElement("li",null,c().createElement("div",{className:"row"},c().createElement("div",{className:"col-sm-6"},c().createElement("b",null,c().createElement(B.Z,{id:"options"}))),this.props.canHaveOptionValue&&c().createElement("div",{className:"col-sm-2"},c().createElement("b",null,c().createElement(B.Z,{id:"value"}))),this.props.canHaveOptionValue&&this.props.canHaveOptionCorrect&&c().createElement("div",{className:"col-sm-4"},c().createElement("b",null,c().createElement(B.Z,{id:"correct"}))))),this.props.element.options.map((function(t,n){var l="edit_".concat(t.key),a=t.value!==e._setValue(t.text)?t.value:"";return c().createElement("li",{className:"clearfix",key:l},c().createElement("div",{className:"row"},c().createElement("div",{className:"col-sm-6"},c().createElement("input",{tabIndex:n+1,className:"form-control",style:{width:"100%"},type:"text",name:"text_".concat(n),placeholder:"Option text",value:t.text,onBlur:e.updateOption.bind(e),onChange:e.editOption.bind(e,n)})),e.props.canHaveOptionValue&&c().createElement("div",{className:"col-sm-2"},c().createElement("input",{className:"form-control",type:"text",name:"value_".concat(n),value:a,onChange:e.editValue.bind(e,n)})),e.props.canHaveOptionValue&&e.props.canHaveOptionCorrect&&c().createElement("div",{className:"col-sm-1"},c().createElement("input",{className:"form-control",type:"checkbox",value:"1",onChange:e.editOptionCorrect.bind(e,n),checked:t.hasOwnProperty("correct")})),c().createElement("div",{className:"col-sm-3"},c().createElement("div",{className:"dynamic-options-actions-buttons"},c().createElement("button",{onClick:e.addOption.bind(e,n),className:"btn btn-success"},c().createElement("i",{className:"fas fa-plus-circle"})),n>0&&c().createElement("button",{onClick:e.removeOption.bind(e,n),className:"btn btn-danger"},c().createElement("i",{className:"fas fa-minus-circle"}))))))}))))}}]),m}(c().Component),R=n(72083),H=n(90872),V=n(3966);var _={options:["inline","list","textAlign","fontSize","link","history"],inline:{inDropdown:!1,className:void 0,options:["bold","italic","underline","superscript","subscript"]}},z=function(e){(0,o.Z)(m,e);var t,n,s=(t=m,n=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,l=(0,i.Z)(t);if(n){var a=(0,i.Z)(this).constructor;e=Reflect.construct(l,arguments,a)}else e=l.apply(this,arguments);return(0,r.Z)(this,e)});function m(e){var t;return(0,l.Z)(this,m),(t=s.call(this,e)).state={element:t.props.element,data:t.props.data,dirty:!1},t}return(0,a.Z)(m,[{key:"toggleRequired",value:function(){}},{key:"editElementProp",value:function(e,t,n){var l=this,a=this.state.element;a[e]=n.target[t],this.setState({element:a,dirty:!0},(function(){"checked"===t&&l.updateElement()}))}},{key:"onEditorStateChange",value:function(e,t,n){var l=C()((0,P.convertToRaw)(n.getCurrentContent())).replace(/<p>/g,"").replace(/<\/p>/g,"").replace(/&nbsp;/g," ").replace(/(?:\r\n|\r|\n)/g," "),a=this.state.element;a[t]=l,this.setState({element:a,dirty:!0})}},{key:"updateElement",value:function(){var e=this.state.element;this.state.dirty&&(this.props.updateElement.call(this.props.preview,e),this.setState({dirty:!1}))}},{key:"convertFromHTML",value:function(e){var t=(0,P.convertFromHTML)(e);if(!t.contentBlocks||!t.contentBlocks.length)return P.EditorState.createEmpty();var n=P.ContentState.createFromBlockArray(t);return P.EditorState.createWithContent(n)}},{key:"addOptions",value:function(){var e=this,t=document.getElementById("optionsApiUrl").value;t&&(0,R.U)(t).then((function(t){e.props.element.options=[];var n=e.props.element.options;t.forEach((function(e){e.key=F().uuid(),n.push(e)}));var l=e.state.element;e.setState({element:l,dirty:!0})}))}},{key:"render",value:function(){this.state.dirty&&(this.props.element.dirty=!0);var e,t=!!this.props.element.hasOwnProperty("required")&&this.props.element.required,n=!!this.props.element.hasOwnProperty("readOnly")&&this.props.element.readOnly,l=!!this.props.element.hasOwnProperty("defaultToday")&&this.props.element.defaultToday,a=!!this.props.element.hasOwnProperty("showTimeSelect")&&this.props.element.showTimeSelect,o=!!this.props.element.hasOwnProperty("showTimeSelectOnly")&&this.props.element.showTimeSelectOnly,r=!!this.props.element.hasOwnProperty("showTimeInput")&&this.props.element.showTimeInput,i=!!this.props.element.hasOwnProperty("inline")&&this.props.element.inline,s=!!this.props.element.hasOwnProperty("bold")&&this.props.element.bold,m=!!this.props.element.hasOwnProperty("italic")&&this.props.element.italic,p=!!this.props.element.hasOwnProperty("center")&&this.props.element.center,d=!!this.props.element.hasOwnProperty("pageBreakBefore")&&this.props.element.pageBreakBefore,u=!this.props.element.hasOwnProperty("visible")||this.props.element.visible,h=!!this.props.element.hasOwnProperty("alternateForm")&&this.props.element.alternateForm,E=this.props.element,v=E.canHavePageBreakBefore,f=E.canHaveAlternateForm,b=E.canHaveDisplayHorizontal,y=E.canHaveOptionCorrect,g=E.canHaveOptionValue,N="Image"===this.state.element.element||"Camera"===this.state.element.element,w=this.props.files.length?this.props.files:[];return(w.length<1||w.length>0&&""!==w[0].id)&&w.unshift({id:"",file_name:""}),this.props.element.hasOwnProperty("content")&&(e=this.convertFromHTML(this.props.element.content)),this.props.element.hasOwnProperty("label")&&(e=this.convertFromHTML(this.props.element.label)),c().createElement("div",null,c().createElement("div",{className:"edit-panel"}),c().createElement(H.Popup,{visible:!0,dragEnabled:!1,hideOnOutsideClick:!0,showCloseButton:!0,showTitle:!0,title:this.props.element.text,container:".edit-panel",width:600,height:600,onHiding:this.props.manualEditModeOff},c().createElement(H.Position,{at:"center",my:"center",collision:"fit"}),c().createElement(V.pf,null,this.props.element.hasOwnProperty("content")&&c().createElement("div",{className:"form-group"},c().createElement("label",{className:"control-label"},c().createElement(B.Z,{id:"text-to-display"}),":"),c().createElement(S.Editor,{toolbar:_,defaultEditorState:e,onBlur:this.updateElement.bind(this),onEditorStateChange:this.onEditorStateChange.bind(this,0,"content"),stripPastedStyles:!0})),this.props.element.hasOwnProperty("file_path")&&c().createElement("div",{className:"form-group"},c().createElement("label",{className:"control-label",htmlFor:"fileSelect"},c().createElement(B.Z,{id:"choose-file"}),":"),c().createElement("select",{id:"fileSelect",className:"form-control",defaultValue:this.props.element.file_path,onBlur:this.updateElement.bind(this),onChange:this.editElementProp.bind(this,"file_path","value")},w.map((function(e){var t="file_".concat(e.id);return c().createElement("option",{value:e.id,key:t},e.file_name)})))),this.props.element.hasOwnProperty("href")&&c().createElement("div",{className:"form-group"},c().createElement(x,{type:"text",className:"form-control",defaultValue:this.props.element.href,onBlur:this.updateElement.bind(this),onChange:this.editElementProp.bind(this,"href","value")})),this.props.element.hasOwnProperty("label")&&c().createElement("div",{className:"form-group"},c().createElement("label",null,c().createElement(B.Z,{id:"display-label"})),c().createElement(S.Editor,{toolbar:_,defaultEditorState:e,onBlur:this.updateElement.bind(this),onEditorStateChange:this.onEditorStateChange.bind(this,0,"label"),stripPastedStyles:!0}),c().createElement("br",null),c().createElement("div",{className:"custom-control custom-checkbox"},c().createElement("input",{id:"is-required",className:"custom-control-input",type:"checkbox",checked:t,value:!0,onChange:this.editElementProp.bind(this,"required","checked")}),c().createElement("label",{className:"custom-control-label",htmlFor:"is-required"},c().createElement(B.Z,{id:"required"}))),this.props.element.hasOwnProperty("readOnly")&&c().createElement("div",{className:"custom-control custom-checkbox"},c().createElement("input",{id:"is-read-only",className:"custom-control-input",type:"checkbox",checked:n,value:!0,onChange:this.editElementProp.bind(this,"readOnly","checked")}),c().createElement("label",{className:"custom-control-label",htmlFor:"is-read-only"},c().createElement(B.Z,{id:"read-only"}))),this.props.element.hasOwnProperty("defaultToday")&&c().createElement("div",{className:"custom-control custom-checkbox"},c().createElement("input",{id:"is-default-to-today",className:"custom-control-input",type:"checkbox",checked:l,value:!0,onChange:this.editElementProp.bind(this,"defaultToday","checked")}),c().createElement("label",{className:"custom-control-label",htmlFor:"is-default-to-today"},c().createElement(B.Z,{id:"default-to-today"}),"?")),this.props.element.hasOwnProperty("showTimeSelect")&&c().createElement("div",{className:"custom-control custom-checkbox"},c().createElement("input",{id:"show-time-select",className:"custom-control-input",type:"checkbox",checked:a,value:!0,onChange:this.editElementProp.bind(this,"showTimeSelect","checked")}),c().createElement("label",{className:"custom-control-label",htmlFor:"show-time-select"},c().createElement(B.Z,{id:"show-time-select"}),"?")),a&&this.props.element.hasOwnProperty("showTimeSelectOnly")&&c().createElement("div",{className:"custom-control custom-checkbox"},c().createElement("input",{id:"show-time-select-only",className:"custom-control-input",type:"checkbox",checked:o,value:!0,onChange:this.editElementProp.bind(this,"showTimeSelectOnly","checked")}),c().createElement("label",{className:"custom-control-label",htmlFor:"show-time-select-only"},c().createElement(B.Z,{id:"show-time-select-only"}),"?")),this.props.element.hasOwnProperty("showTimeInput")&&c().createElement("div",{className:"custom-control custom-checkbox"},c().createElement("input",{id:"show-time-input",className:"custom-control-input",type:"checkbox",checked:r,value:!0,onChange:this.editElementProp.bind(this,"showTimeInput","checked")}),c().createElement("label",{className:"custom-control-label",htmlFor:"show-time-input"},c().createElement(B.Z,{id:"show-time-input"}),"?")),("RadioButtons"===this.state.element.element||"Checkboxes"===this.state.element.element)&&b&&c().createElement("div",{className:"custom-control custom-checkbox"},c().createElement("input",{id:"display-horizontal",className:"custom-control-input",type:"checkbox",checked:i,value:!0,onChange:this.editElementProp.bind(this,"inline","checked")}),c().createElement("label",{className:"custom-control-label",htmlFor:"display-horizontal"},c().createElement(B.Z,{id:"display-horizontal"})))),this.props.element.hasOwnProperty("src")&&c().createElement("div",null,c().createElement("div",{className:"form-group"},c().createElement("label",{className:"control-label",htmlFor:"srcInput"},c().createElement(B.Z,{id:"link-to"}),":"),c().createElement("input",{id:"srcInput",type:"text",className:"form-control",defaultValue:this.props.element.src,onBlur:this.updateElement.bind(this),onChange:this.editElementProp.bind(this,"src","value")}))),N&&c().createElement("div",null,c().createElement("div",{className:"form-group"},c().createElement("div",{className:"custom-control custom-checkbox"},c().createElement("input",{id:"do-center",className:"custom-control-input",type:"checkbox",checked:p,value:!0,onChange:this.editElementProp.bind(this,"center","checked")}),c().createElement("label",{className:"custom-control-label",htmlFor:"do-center"},c().createElement(B.Z,{id:"center"}),"?"))),c().createElement("div",{className:"row"},c().createElement("div",{className:"col-sm-3"},c().createElement("label",{className:"control-label",htmlFor:"elementWidth"},c().createElement(B.Z,{id:"width"}),":"),c().createElement("input",{id:"elementWidth",type:"text",className:"form-control",defaultValue:this.props.element.width,onBlur:this.updateElement.bind(this),onChange:this.editElementProp.bind(this,"width","value")})),c().createElement("div",{className:"col-sm-3"},c().createElement("label",{className:"control-label",htmlFor:"elementHeight"},c().createElement(B.Z,{id:"height"}),":"),c().createElement("input",{id:"elementHeight",type:"text",className:"form-control",defaultValue:this.props.element.height,onBlur:this.updateElement.bind(this),onChange:this.editElementProp.bind(this,"height","value")})))),"FileUpload"===this.state.element.element&&c().createElement("div",null,c().createElement("div",{className:"form-group"},c().createElement("label",{className:"control-label",htmlFor:"fileType"},c().createElement(B.Z,{id:"choose-file-type"}),":"),c().createElement("select",{id:"fileType",className:"form-control",onBlur:this.updateElement.bind(this),onChange:this.editElementProp.bind(this,"fileType","value")},[{type:"image, application/pdf, application/msword, application/vnd.openxmlformats-officedocument.wordprocessingml.document, application/vnd.ms-excel, application/vnd.openxmlformats-officedocument.spreadsheetml.sheet, application/vnd.ms-powerpoint, application/vnd.openxmlformats-officedocument.presentationml.presentation, video/mp4,video/x-m4v,video/*",typeName:"All File Type"},{type:"image",typeName:"Image"},{type:"application/pdf",typeName:"PDF"},{type:"application/msword, application/vnd.openxmlformats-officedocument.wordprocessingml.document",typeName:"Word"},{type:"application/vnd.ms-excel, application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",typeName:"Excel"},{type:"application/vnd.ms-powerpoint, application/vnd.openxmlformats-officedocument.presentationml.presentation",typeName:"Powerpoint"},{type:"video/mp4,video/x-m4v,video/*",typeName:"Videos"}].map((function(e,t){return c().createElement("option",{value:e.type,key:t},e.typeName)}))))),"Signature"===this.state.element.element&&this.props.element.readOnly?c().createElement("div",{className:"form-group"},c().createElement("label",{className:"control-label",htmlFor:"variableKey"},c().createElement(B.Z,{id:"variable-key"}),":"),c().createElement("input",{id:"variableKey",type:"text",className:"form-control",defaultValue:this.props.element.variableKey,onBlur:this.updateElement.bind(this),onChange:this.editElementProp.bind(this,"variableKey","value")}),c().createElement("p",{className:"help-block"},c().createElement(B.Z,{id:"variable-key-desc"}),".")):c().createElement("div",null),v&&c().createElement("div",{className:"form-group"},c().createElement("label",{className:"control-label"},c().createElement(B.Z,{id:"print-options"})),c().createElement("div",{className:"custom-control custom-checkbox"},c().createElement("input",{id:"page-break-before-element",className:"custom-control-input",type:"checkbox",checked:d,value:!0,onChange:this.editElementProp.bind(this,"pageBreakBefore","checked")}),c().createElement("label",{className:"custom-control-label",htmlFor:"page-break-before-element"},c().createElement(B.Z,{id:"page-break-before-elements"}),"?"))),c().createElement("div",{className:"form-group"},c().createElement("label",{className:"control-label"},c().createElement(B.Z,{id:"visible"})),c().createElement("div",{className:"custom-control custom-checkbox"},c().createElement("input",{id:"element-visible",className:"custom-control-input",type:"checkbox",checked:u,value:!0,onChange:this.editElementProp.bind(this,"visible","checked")}),c().createElement("label",{className:"custom-control-label",htmlFor:"element-visible"},c().createElement(B.Z,{id:"element-visible"}),"?"))),f&&c().createElement("div",{className:"form-group"},c().createElement("label",{className:"control-label"},c().createElement(B.Z,{id:"alternate-signature-page"})),c().createElement("div",{className:"custom-control custom-checkbox"},c().createElement("input",{id:"display-on-alternate",className:"custom-control-input",type:"checkbox",checked:h,value:!0,onChange:this.editElementProp.bind(this,"alternateForm","checked")}),c().createElement("label",{className:"custom-control-label",htmlFor:"display-on-alternate"},c().createElement(B.Z,{id:"display-on-alternate-signature-page"}),"?"))),this.props.element.hasOwnProperty("step")&&c().createElement("div",{className:"form-group"},c().createElement("div",{className:"form-group-range"},c().createElement("label",{className:"control-label",htmlFor:"rangeStep"},c().createElement(B.Z,{id:"step"})),c().createElement("input",{id:"rangeStep",type:"number",className:"form-control",defaultValue:this.props.element.step,onBlur:this.updateElement.bind(this),onChange:this.editElementProp.bind(this,"step","value")}))),this.props.element.hasOwnProperty("min_value")&&c().createElement("div",{className:"form-group"},c().createElement("div",{className:"form-group-range"},c().createElement("label",{className:"control-label",htmlFor:"rangeMin"},c().createElement(B.Z,{id:"min"})),c().createElement("input",{id:"rangeMin",type:"number",className:"form-control",defaultValue:this.props.element.min_value,onBlur:this.updateElement.bind(this),onChange:this.editElementProp.bind(this,"min_value","value")}),c().createElement("input",{type:"text",className:"form-control",defaultValue:this.props.element.min_label,onBlur:this.updateElement.bind(this),onChange:this.editElementProp.bind(this,"min_label","value")}))),this.props.element.hasOwnProperty("max_value")&&c().createElement("div",{className:"form-group"},c().createElement("div",{className:"form-group-range"},c().createElement("label",{className:"control-label",htmlFor:"rangeMax"},c().createElement(B.Z,{id:"max"})),c().createElement("input",{id:"rangeMax",type:"number",className:"form-control",defaultValue:this.props.element.max_value,onBlur:this.updateElement.bind(this),onChange:this.editElementProp.bind(this,"max_value","value")}),c().createElement("input",{type:"text",className:"form-control",defaultValue:this.props.element.max_label,onBlur:this.updateElement.bind(this),onChange:this.editElementProp.bind(this,"max_label","value")}))),this.props.element.hasOwnProperty("default_value")&&c().createElement("div",{className:"form-group"},c().createElement("div",{className:"form-group-range"},c().createElement("label",{className:"control-label",htmlFor:"defaultSelected"},c().createElement(B.Z,{id:"default-selected"})),c().createElement("input",{id:"defaultSelected",type:"number",className:"form-control",defaultValue:this.props.element.default_value,onBlur:this.updateElement.bind(this),onChange:this.editElementProp.bind(this,"default_value","value")}))),this.props.element.hasOwnProperty("static")&&this.props.element.static&&c().createElement("div",{className:"form-group"},c().createElement("label",{className:"control-label"},c().createElement(B.Z,{id:"text-style"})),c().createElement("div",{className:"custom-control custom-checkbox"},c().createElement("input",{id:"do-bold",className:"custom-control-input",type:"checkbox",checked:s,value:!0,onChange:this.editElementProp.bind(this,"bold","checked")}),c().createElement("label",{className:"custom-control-label",htmlFor:"do-bold"},c().createElement(B.Z,{id:"bold"}))),c().createElement("div",{className:"custom-control custom-checkbox"},c().createElement("input",{id:"do-italic",className:"custom-control-input",type:"checkbox",checked:m,value:!0,onChange:this.editElementProp.bind(this,"italic","checked")}),c().createElement("label",{className:"custom-control-label",htmlFor:"do-italic"},c().createElement(B.Z,{id:"italic"})))),this.props.element.showDescription&&c().createElement("div",{className:"form-group"},c().createElement("label",{className:"control-label",htmlFor:"questionDescription"},c().createElement(B.Z,{id:"description"})),c().createElement(x,{type:"text",className:"form-control",id:"questionDescription",defaultValue:this.props.element.description,onBlur:this.updateElement.bind(this),onChange:this.editElementProp.bind(this,"description","value")})),this.props.showCorrectColumn&&this.props.element.canHaveAnswer&&!this.props.element.hasOwnProperty("options")&&c().createElement("div",{className:"form-group"},c().createElement("label",{className:"control-label",htmlFor:"correctAnswer"},c().createElement(B.Z,{id:"correct-answer"})),c().createElement("input",{id:"correctAnswer",type:"text",className:"form-control",defaultValue:this.props.element.correct,onBlur:this.updateElement.bind(this),onChange:this.editElementProp.bind(this,"correct","value")})),this.props.element.canPopulateFromApi&&this.props.element.hasOwnProperty("options")&&c().createElement("div",{className:"form-group"},c().createElement("label",{className:"control-label",htmlFor:"optionsApiUrl"},c().createElement(B.Z,{id:"populate-options-from-api"})),c().createElement("div",{className:"row"},c().createElement("div",{className:"col-sm-6"},c().createElement("input",{className:"form-control",style:{width:"100%"},type:"text",id:"optionsApiUrl",placeholder:"http://localhost:8080/api/optionsdata"})),c().createElement("div",{className:"col-sm-6"},c().createElement("button",{onClick:this.addOptions.bind(this),className:"btn btn-success"},c().createElement(B.Z,{id:"populate"}))))),this.props.element.hasOwnProperty("options")&&c().createElement(T,{showCorrectColumn:this.props.showCorrectColumn,canHaveOptionCorrect:y,canHaveOptionValue:g,data:this.props.preview.state.data,updateElement:this.props.updateElement,preview:this.props.preview,element:this.props.element,key:this.props.element.options.length}))))}}]),m}(c().Component);z.defaultProps={className:"edit-element-fields"}}}]);