openstack-uicore-foundation 4.1.98 → 4.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/components/extra-questions.js +1 -1
- package/lib/components/extra-questions.js.map +1 -1
- package/lib/components/free-text-search.js +1 -1
- package/lib/components/free-text-search.js.map +1 -1
- package/lib/components/index.js +1 -1
- package/lib/components/index.js.map +1 -1
- package/lib/components/inputs/access-levels-input.js +1 -1
- package/lib/components/inputs/access-levels-input.js.map +1 -1
- package/lib/components/inputs/attendee-input.js +1 -1
- package/lib/components/inputs/attendee-input.js.map +1 -1
- package/lib/components/inputs/company-input.js +1 -1
- package/lib/components/inputs/company-input.js.map +1 -1
- package/lib/components/inputs/country-dropdown.js +1 -1
- package/lib/components/inputs/country-dropdown.js.map +1 -1
- package/lib/components/inputs/country-input.js +1 -1
- package/lib/components/inputs/country-input.js.map +1 -1
- package/lib/components/inputs/event-input.js +1 -1
- package/lib/components/inputs/event-input.js.map +1 -1
- package/lib/components/inputs/group-input.js +1 -1
- package/lib/components/inputs/group-input.js.map +1 -1
- package/lib/components/inputs/language-input.js +1 -1
- package/lib/components/inputs/language-input.js.map +1 -1
- package/lib/components/inputs/member-input.js +1 -1
- package/lib/components/inputs/member-input.js.map +1 -1
- package/lib/components/inputs/organization-input.js +1 -1
- package/lib/components/inputs/organization-input.js.map +1 -1
- package/lib/components/inputs/promocode-input.js +1 -1
- package/lib/components/inputs/promocode-input.js.map +1 -1
- package/lib/components/inputs/registration-company-input.js +1 -1
- package/lib/components/inputs/registration-company-input.js.map +1 -1
- package/lib/components/inputs/speaker-input.js +1 -1
- package/lib/components/inputs/speaker-input.js.map +1 -1
- package/lib/components/inputs/sponsor-input.js +1 -1
- package/lib/components/inputs/sponsor-input.js.map +1 -1
- package/lib/components/inputs/summit-input.js +1 -1
- package/lib/components/inputs/summit-input.js.map +1 -1
- package/lib/components/inputs/tag-input.js +1 -1
- package/lib/components/inputs/tag-input.js.map +1 -1
- package/lib/components/inputs/ticket-types-input.js +1 -1
- package/lib/components/inputs/ticket-types-input.js.map +1 -1
- package/lib/components/sponsored-project-input.js +1 -1
- package/lib/components/sponsored-project-input.js.map +1 -1
- package/lib/utils/query-actions.js +1 -1
- package/lib/utils/query-actions.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define("openstack-uicore-foundation",[],t):"object"==typeof exports?exports["openstack-uicore-foundation"]=t():e["openstack-uicore-foundation"]=t()}(this,(()=>(()=>{"use strict";var e={3932:(e,t,a)=>{var r=a(8213),n=a.n(r),s=a(3838),l=a.n(s),i=a(6689),o=a.n(i),u=a(580),c=a.n(u),d=a(1833),m=a(401),p=a(7027),h=a(2230),b=a(1995);const g=require("react-final-form");var v=a(6793);const f="CheckBox",y="RadioButton";a(6471);const _=["input","meta","question","className","isDisabled","isRequired"],E=["input","meta","question","isDisabled","isRequired"],C=["input","meta","question","isDisabled","isRequired"],q=["input","meta","question","isDisabled","isRequired","maxValues"],w=e=>{let{input:t,meta:a,question:r,className:s,isDisabled:i,isRequired:u}=e,c=l()(e,_);return o().createElement(d.default,n()({},t,c,{containerClassName:s,name:(0,v.toSlug)(r.name),ariaLabelledBy:`${(0,v.toSlug)(r.name)} label`,id:(0,v.toSlug)(r.name),value:t.value,disabled:i,required:u,onChange:t.onChange,placeholder:r.placeholder}))},N=e=>{let{input:t,meta:a,question:r,isDisabled:s,isRequired:i}=e,u=l()(e,E);return o().createElement(p.default,n()({},t,u,{name:(0,v.toSlug)(r.name),ariaLabelledBy:`${(0,v.toSlug)(r.name)} label`,id:(0,v.toSlug)(r.name),overrideCSS:!0,value:t.value,disabled:s,required:i,onChange:t.onChange}))},S=e=>{let{input:t,meta:a,question:r,isDisabled:s,isRequired:i}=e,u=l()(e,C);return o().createElement(m.default,n()({},t,u,{name:(0,v.toSlug)(r.name),ariaLabelledBy:`${(0,v.toSlug)(r.name)} label`,id:(0,v.toSlug)(r.name),overrideCSS:!0,className:"ddl-extra-questions-container",classNamePrefix:"ddl-extra-questions",value:t.value,disabled:s,required:i,onChange:t.onChange}))},k=e=>{let{input:t,meta:a,question:r,isDisabled:s,isRequired:i,maxValues:u}=e,c=l()(e,q);return o().createElement(h.default,n()({},t,c,{id:(0,v.toSlug)(r.name),name:(0,v.toSlug)(r.name),ariaLabelledBy:`${(0,v.toSlug)(r.name)} label`,value:t.value,disabled:s,required:i,onChange:e=>{const a=e.target.value;return u>0&&a.length>u?null:t.onChange(e)}}))},x=e=>e?e=>e?void 0:"Required":()=>{},O=o().forwardRef((({extraQuestions:e,userAnswers:t,onAnswerChanges:a,className:r="questions-form",questionContainerClassName:n="question-container",questionLabelContainerClassName:s="question-label-container",questionControlContainerClassName:l="question-control-container",readOnly:u=!1,debug:c=!1,buttonText:d="Submit",RequiredErrorMessage:m="Required",ValidationErrorClassName:p="extra-question-error",allowExtraQuestionsEdit:h=!0,onError:_=(e=>console.log("form errors: ",e)),shouldScroll2FirstError:E=!0},C)=>{let q=null;const O=(0,i.useRef)({}),P=(0,i.useRef)(null),[B,L]=(0,i.useState)({});(0,i.useEffect)((()=>{F()}),[e]),(0,i.useImperativeHandle)(C,(()=>({doSubmit(){P.current.dispatchEvent(new Event("submit",{cancelable:!0,bubbles:!0}))},scroll2QuestionById(e){if(O.current.hasOwnProperty(e)){const t=O.current[e];t.focus(),t.scrollIntoView({behavior:"smooth",block:"center"})}}})));const F=()=>{const a=new b.default(e,t);L(a.formatAnswers())},j=({when:e,rule:t,children:a})=>o().createElement(g.Field,{name:e,subscription:{value:!0}},(({input:{value:e}})=>A(t,R(e,t),a))),$=({name:e})=>o().createElement(g.Field,{name:e,subscription:{error:!0,touched:!0}},(({meta:{error:e,touched:t}})=>e&&t?o().createElement("div",{className:p},e):null)),R=(e,t)=>{let a=t.answer_values;if(Array.isArray(e)){if(!e.length)return!1;let r="And"===t.answer_values_operator;return a.forEach((a=>{r="And"===t.answer_values_operator?r&&e.includes(parseInt(a)):r||e.includes(parseInt(a))})),r}return a.includes(e.toString())},A=(e,t,a)=>"Visible"===e.visibility?"Equal"===e.visibility_condition?t?a:(delete O.current[e.sub_question.id],null):t?(delete O.current[e.sub_question.id],null):a:"Equal"===e.visibility_condition?t?(delete O.current[e.sub_question.id],null):a:t?a:(delete O.current[e.sub_question.id],null),D=e=>{var t;const a=String.fromCharCode(160),r=null==e||null===(t=e.label)||void 0===t?void 0:t.replace(/\n/g,"<br />").replace(/<p>(.*)<\/p>/gi,"$1"),n=[f,y],s=e.mandatory&&!n.includes(e.type)?`${r}${a}<b>*</b>`:r;return o().createElement("label",{dangerouslySetInnerHTML:{__html:s},htmlFor:(0,v.toSlug)(e.name),id:`${(0,v.toSlug)(e.name)} label`})},I=e=>{let t=e.values;const a=!h&&((e,t)=>{const a=(0,v.toSlug)(e.name);if(!t.hasOwnProperty(a))return!1;const r=t[a];return Array.isArray(r)||"string"==typeof r?r.length>0:"number"==typeof r?r>0:"boolean"==typeof r&&r})(e,B);var r,u,c,d;if("Text"===e.type)return o().createElement(i.Fragment,{key:(0,v.toSlug)(e.name)},o().createElement("div",{ref:t=>O.current[e.id]=t,className:n},o().createElement("span",{className:s},D(e)),o().createElement("div",{className:l},o().createElement(g.Field,{name:(0,v.toSlug)(e.name),question:e,isDisabled:a,isRequired:e.mandatory,validate:x(e.mandatory),component:w}),o().createElement($,{name:(0,v.toSlug)(e.name)}))),(null===(r=e.sub_question_rules)||void 0===r?void 0:r.length)>0&&e.sub_question_rules.map((t=>o().createElement(j,{key:t.id,when:(0,v.toSlug)(e.name),rule:t},I(t.sub_question)))));if("TextArea"===e.type)return o().createElement(i.Fragment,{key:(0,v.toSlug)(e.name)},o().createElement("div",{ref:t=>O.current[e.id]=t,className:n},o().createElement("span",{className:s},D(e)),o().createElement("div",{className:l},o().createElement(g.Field,{validate:x(e.mandatory),name:(0,v.toSlug)(e.name),id:(0,v.toSlug)(e.name),disabled:a,required:e.mandatory,component:"textarea"}),o().createElement($,{name:(0,v.toSlug)(e.name)}))),(null===(u=e.sub_question_rules)||void 0===u?void 0:u.length)>0&&e.sub_question_rules.map((t=>o().createElement(j,{key:t.id,when:(0,v.toSlug)(e.name),rule:t},I(t.sub_question)))));if(e.type===f)return o().createElement(i.Fragment,{key:(0,v.toSlug)(e.name)},o().createElement("div",{ref:t=>O.current[e.id]=t,className:`${n} checkbox-wrapper`},o().createElement("div",{className:`${l} input-wrapper`},o().createElement("div",{className:"form-check abc-checkbox"},o().createElement(g.Field,{name:(0,v.toSlug)(e.name),id:(0,v.toSlug)(e.name),validate:x(e.mandatory),disabled:a,required:e.mandatory,type:"checkbox",className:"form-check-input",component:"input"}),o().createElement("label",{className:"form-check-label",htmlFor:(0,v.toSlug)(e.name)}),e.mandatory&&o().createElement("span",{className:"checkbox-mandatory"},o().createElement("b",null,"*")))),o().createElement("span",{className:`eq-checkbox-label ${s}`},D(e))),o().createElement($,{name:(0,v.toSlug)(e.name)}),(null===(c=e.sub_question_rules)||void 0===c?void 0:c.length)>0&&e.sub_question_rules.map((t=>o().createElement(j,{key:t.id,when:(0,v.toSlug)(e.name),rule:t},I(t.sub_question)))));if(e.type===y)return o().createElement(i.Fragment,{key:(0,v.toSlug)(e.name)},o().createElement("div",{ref:t=>O.current[e.id]=t,className:`${n} checkbox-wrapper`},o().createElement("div",{className:`${l} input-wrapper`},o().createElement("div",{className:"form-check abc-radio"},o().createElement(g.Field,{name:(0,v.toSlug)(e.name),id:(0,v.toSlug)(e.name),validate:x(e.mandatory),disabled:a,required:e.mandatory,type:"radio",className:"form-check-input",value:"true",component:"input"}),o().createElement("label",{className:"form-check-label",htmlFor:(0,v.toSlug)(e.name)}),e.mandatory&&o().createElement("span",{className:"checkbox-mandatory"},o().createElement("b",null,"*")))),o().createElement("span",{className:`eq-checkbox-label ${s}`},D(e))),o().createElement($,{name:(0,v.toSlug)(e.name)}),(null===(d=e.sub_question_rules)||void 0===d?void 0:d.length)>0&&e.sub_question_rules.map((t=>o().createElement(j,{key:t.id,when:(0,v.toSlug)(e.name),rule:t},I(t.sub_question)))));if("RadioButtonList"===e.type){var m;const r=t.map((e=>({label:e.label,value:e.id})));return o().createElement(i.Fragment,{key:(0,v.toSlug)(e.name)},o().createElement("div",{key:(0,v.toSlug)(e.name),ref:t=>O.current[e.id]=t,className:n},o().createElement("span",{className:s},D(e)),o().createElement("div",{className:l},o().createElement(g.Field,{name:(0,v.toSlug)(e.name),options:r,question:e,validate:x(e.mandatory),isDisabled:a,isRequired:e.mandatory,component:N}),o().createElement($,{name:(0,v.toSlug)(e.name)}))),(null===(m=e.sub_question_rules)||void 0===m?void 0:m.length)>0&&e.sub_question_rules.map((t=>o().createElement(j,{key:t.id,when:(0,v.toSlug)(e.name),rule:t},I(t.sub_question)))))}if("ComboBox"===e.type||"CountryComboBox"===e.type){var p;const r=t.map((e=>({label:e.label,value:e.id})));return o().createElement(i.Fragment,{key:(0,v.toSlug)(e.name)},o().createElement("div",{ref:t=>O.current[e.id]=t,className:n},o().createElement("span",{className:s},D(e)),o().createElement("div",{className:`${l} reactSelectDropdown`},o().createElement(g.Field,{name:(0,v.toSlug)(e.name),options:r,question:e,validate:x(e.mandatory),isDisabled:a,isRequired:e.mandatory,component:S}),o().createElement($,{name:(0,v.toSlug)(e.name)}))),(null===(p=e.sub_question_rules)||void 0===p?void 0:p.length)>0&&e.sub_question_rules.map((t=>o().createElement(j,{key:t.id,when:(0,v.toSlug)(e.name),rule:t},I(t.sub_question)))))}if("CheckBoxList"===e.type){var b;const r=t.map((e=>({label:e.label,value:e.id})));return o().createElement(i.Fragment,{key:(0,v.toSlug)(e.name)},o().createElement("div",{ref:t=>O.current[e.id]=t,className:n},o().createElement("span",{className:s},D(e)),o().createElement("div",{className:l},o().createElement(g.Field,{name:(0,v.toSlug)(e.name),className:l,validate:x(e.mandatory),options:r,question:e,maxValues:e.max_selected_values,isDisabled:a,isRequired:e.mandatory,component:k}),o().createElement($,{name:(0,v.toSlug)(e.name)}))),(null===(b=e.sub_question_rules)||void 0===b?void 0:b.length)>0&&e.sub_question_rules.map((t=>o().createElement(j,{key:t.id,when:(0,v.toSlug)(e.name),rule:t},I(t.sub_question)))))}return null},V=(e,t,a)=>{var r;if(e.mandatory&&(e=>!!O.current[e.id])(e)){const r=(0,v.toSlug)(e.name);t.hasOwnProperty((0,v.toSlug)(r))&&""!==t[(0,v.toSlug)(r)]&&0!==t[r].length||(a[r]=m)}null===(r=e.sub_question_rules)||void 0===r||r.forEach((e=>{V(e.sub_question,t,a)}))};if(!Object.keys(B).length)return null;const Q=(e,t,a)=>{var r;t.includes((0,v.toSlug)(e.name))&&a.push(e),null===(r=e.sub_question_rules)||void 0===r||r.forEach((e=>{Q(e.sub_question,t,a)}))},T=t=>{const a=[];return e.forEach((e=>{Q(e,t,a)})),a.sort(((e,t)=>e.order>t.order))[0]};return Object.keys(B).length?o().createElement("div",{className:r},o().createElement(g.Form,{validate:t=>{const a={};return e.forEach((e=>{V(e,t,a)})),a},onSubmit:e=>{a(e)},initialValues:B},(({handleSubmit:t,form:a,submitting:r,pristine:n,values:s})=>(q=t,o().createElement("form",{onSubmit:e=>{const r=a.getRegisteredFields().filter((e=>a.getFieldState(e).invalid));if(r.length>0){const e=T(r);_(r,O.current[e.id],e.id),E&&(e=>{const t=T(e);O.current[t.id].scrollIntoView({behavior:"smooth",block:"center"})})(r)}t(e)},ref:P},u?o().createElement("fieldset",{disabled:"disabled"},e.map((e=>I(e)))):e.map((e=>I(e))),c&&o().createElement("pre",null,JSON.stringify(s,0,2)))))),!C&&o().createElement("button",{type:"submit",onClick:e=>{q(e)},style:{marginTop:10}},d)):null}));O.propTypes={extraQuestions:c().array.isRequired,userAnswers:c().array.isRequired,onAnswerChanges:c().func.isRequired,className:c().string,debug:c().bool,buttonText:c().string,questionContainerClassName:c().string,questionLabelContainerClassName:c().string,questionControlContainerClassName:c().string,RequiredErrorMessage:c().string,ValidationErrorClassName:c().string,allowExtraQuestionsEdit:c().bool,shouldScroll2FirstError:c().bool,readOnly:c().bool}},2230:(e,t,a)=>{a.d(t,{default:()=>p});var r=a(3838),n=a.n(r),s=a(580),l=a.n(s),i=a(6689),o=a.n(i),u=a(4656),c=a.n(u),d=a(418);a(6471);const m=["onChange","value","className","options","id","children","error","disabled","name","ariaLabelledBy"];class p extends o().Component{constructor(e){super(e);let t=!!e.value&&e.value.find((t=>!e.options.map((e=>e.value)).includes(t)));this.state={otherChecked:!!t},this.handleChange=this.handleChange.bind(this),this.handleOtherCBChange=this.handleOtherCBChange.bind(this)}handleChange(e){let t=this.props.options.map((e=>e.value)),a=this.props.value?[...this.props.value]:[];if("checkbox"===e.target.type)if(e.target.checked){const t=isNaN(e.target.value)?e.target.value:parseInt(e.target.value);a.push(t)}else a=a.filter((t=>t!=e.target.value));else a=a.filter((e=>t.includes(e))),a.push(e.target.value);let r={target:{id:this.props.id,value:a,type:"checkboxlist"}};this.props.onChange(r)}handleOtherCBChange(e){this.setState({otherChecked:e.target.checked})}render(){let e,t=this.props,{onChange:a,value:r,className:s,options:l,id:i,children:u,error:p,disabled:h,name:b,ariaLabelledBy:g}=t,{otherChecked:v}=(n()(t,m),this.state),f=this.props.hasOwnProperty("inline"),y=this.props.hasOwnProperty("allowOther"),_=!!r&&r.find((e=>!l.map((e=>e.value)).includes(e))),E=this.props.hasOwnProperty("error")&&""!==p,C=this.props.hasOwnProperty("disabled")&&1==h;return e=f?{paddingLeft:"22px",marginLeft:"20px",float:"left"}:{paddingLeft:"22px",marginTop:"7px"},o().createElement("div",{id:`chl_wrapper_${i}`,"aria-labelledby":g},o().createElement("div",{className:"checkboxes-div"+(E?" error":"")},l.map((t=>{let a=!!r&&r.includes(t.value);return o().createElement("div",{className:"form-check abc-checkbox",key:"radio_key_"+t.value,style:e},o().createElement("input",{type:"checkbox",id:`cb_${i}_${t.value}`,name:b||i,checked:a,disabled:C,onChange:this.handleChange,className:"form-check-input",value:t.value}),o().createElement("label",{className:"form-check-label",htmlFor:`cb_${i}_${t.value}`},o().createElement(d.default,null,t.label)))})),y&&o().createElement("div",{className:"form-check abc-checkbox",style:e},o().createElement("input",{type:"checkbox",id:"cb_other"+i,checked:v,disabled:C,onChange:this.handleOtherCBChange,className:"form-check-input",value:"other"}),o().createElement("label",{className:"form-check-label",htmlFor:"cb_other"+i},c().translate("general.other"))),y&&v&&o().createElement("div",{style:{paddingLeft:"22px",width:"50%"}},o().createElement("input",{className:"form-control",disabled:C,onChange:this.handleChange,value:_}))),E&&o().createElement("p",{className:"error-label"},p))}}p.defaultProps={ariaLabelledBy:null},p.propTypes={id:l().string.isRequired}},401:(e,t,a)=>{a.d(t,{default:()=>g});var r=a(8213),n=a.n(r),s=a(8779),l=a.n(s),i=a(3838),o=a.n(i),u=a(6689),c=a.n(u),d=a(1929),m=a.n(d);const p=["onChange","value","className","error","clearable","disabled","overrideCSS","ariaLabelledBy"];function h(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,r)}return a}function b(e){for(var t=1;t<arguments.length;t++){var a=null!=arguments[t]?arguments[t]:{};t%2?h(Object(a),!0).forEach((function(t){l()(e,t,a[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(a)):h(Object(a)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(a,t))}))}return e}class g extends c().Component{constructor(e){super(e),this.handleChange=this.handleChange.bind(this)}handleChange(e){let t=null;t=this.props.isMulti?e?e.map((e=>e.value)):null:e?e.value:null;let a={target:{id:this.props.id,value:t,type:"dropdown"}};this.props.onChange(a)}render(){let e=this.props,{onChange:t,value:a,className:r,error:s,clearable:l,disabled:i,overrideCSS:u,ariaLabelledBy:d}=e,h=o()(e,p),g=this.props.hasOwnProperty("error")&&""!=s,v=this.props.hasOwnProperty("clearable"),f=this.props.hasOwnProperty("disabled")&&1==i,y=null,_=r;this.props.hasOwnProperty("overrideCSS")&&0!=u||(_="dropdown "+r+" "+(g?"error":"")),y=this.props.isMulti?this.props.options.filter((e=>a.includes(e.value))):a instanceof Object||null==a?a:this.props.options.find((e=>e.value==a));const E={menu:e=>b(b({},e),{},{zIndex:999})};return c().createElement("div",null,c().createElement(m(),n()({className:_,value:y,onChange:this.handleChange,isClearable:v,isDisabled:f,styles:E,"aria-labelledby":d,formatOptionLabel:e=>c().createElement("span",{dangerouslySetInnerHTML:{__html:e.label}})},h)),g&&c().createElement("p",{className:"error-label"},s))}}g.defaultProps={ariaLabelledBy:null}},7027:(e,t,a)=>{a.d(t,{default:()=>d});var r=a(3838),n=a.n(r),s=a(6689),l=a.n(s),i=a(418),o=a(580),u=a.n(o);a(6471);const c=["onChange","value","className","error","ariaLabelledBy","disabled","options","id","name"];class d extends l().Component{constructor(e){super(e),this.state={value:e.value},this.handleChange=this.handleChange.bind(this)}handleChange(e){let t={target:{id:this.props.id,value:e.target.value,type:"radio"}};this.props.onChange(t)}getLabel(e,t,a,r){return a?l().createElement("label",{className:"form-check-label",htmlFor:`radio_${t}_${e.value}`,style:{display:"inline-block"}},l().createElement(i.default,null,e.label)):r?l().createElement("label",{className:"form-check-label",htmlFor:`radio_${t}_${e.value}`},e.label):l().createElement("label",{className:"form-check-label",htmlFor:`radio_${t}_${e.value}`,style:{display:"inline-block"}},l().createElement("h4",{style:{marginTop:"0px"}},e.label),l().createElement(i.default,null,e.description))}render(){let e,t=this.props,{onChange:a,value:r,className:s,error:i,ariaLabelledBy:o,disabled:u,options:d,id:m,name:p}=t,h=(n()(t,c),this.props.hasOwnProperty("error")&&""!=i),b=this.props.hasOwnProperty("inline"),g=this.props.hasOwnProperty("simple"),v=this.props.hasOwnProperty("disabled")&&1==u;return e=b?{paddingLeft:"22px",marginLeft:"20px",float:"left"}:{paddingLeft:"22px"},l().createElement("div",{id:`rl_wrapper_${m}`,"aria-labelledby":o},d.map((t=>{let a=t.value==r;return l().createElement("div",{className:"form-check abc-radio",key:`radio_key_${m}_${t.value}`,style:e},l().createElement("input",{className:"form-check-input",type:"radio",id:`radio_${m}_${t.value}`,value:t.value,checked:a,onChange:this.handleChange,disabled:v,name:p||`radio_${m}`}),this.getLabel(t,m,b,g))})),h&&l().createElement("p",{className:"error-label"},i))}}d.defaultProps={ariaLabelledBy:null},d.propTypes={id:u().string.isRequired}},1833:(e,t,a)=>{a.d(t,{default:()=>c});var r=a(8213),n=a.n(r),s=a(3838),l=a.n(s),i=a(6689),o=a.n(i);const u=["onChange","value","className","error","ariaLabelledBy","containerClassName"];class c extends o().Component{constructor(e){super(e),this.handleChange=this.handleChange.bind(this)}componentDidUpdate(e,t,a){this.props.value!==e.value&&(this.input.value=this.props.value)}handleChange(e){this.props.onChange(e)}render(){let e=this.props,{onChange:t,value:a,className:r,error:s,ariaLabelledBy:i,containerClassName:c}=e,d=l()(e,u),m=this.props.hasOwnProperty("error")&&""!==s,p=this.props.hasOwnProperty("className")?r:"form-control",h=this.props.hasOwnProperty("containerClassName")?c:"container-form-control";return o().createElement("div",{className:h},o().createElement("input",n()({className:`${p} ${m?"error":""}`,ref:e=>{this.input=e},defaultValue:a,"aria-labelledby":i,onChange:this.handleChange},d)),m&&o().createElement("p",{className:"error-label"},s))}}c.defaultProps={ariaLabelledBy:null}},418:(e,t,a)=>{a.d(t,{default:()=>c});var r=a(8213),n=a.n(r),s=a(3838),l=a.n(s),i=a(6689),o=a.n(i);const u=["children","replaceNewLine","className"],c=e=>{let{children:t,replaceNewLine:a=!1,className:r=""}=e,s=l()(e,u);return o().createElement("span",n()({className:r,dangerouslySetInnerHTML:{__html:a?null==t?void 0:t.replace(/\n/g,"<br />"):t}},s))}},6793:(e,t,a)=>{a.d(t,{toSlug:()=>r});a(8362),a(6530);const r=e=>(e=e.toLowerCase()).replace(/[^a-zA-Z0-9]+/g,"_")},1995:(e,t,a)=>{a.d(t,{default:()=>h});var r=a(8779),n=a.n(r),s=a(6793);function l(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,r)}return a}function i(e){for(var t=1;t<arguments.length;t++){var a=null!=arguments[t]?arguments[t]:{};t%2?l(Object(a),!0).forEach((function(t){n()(e,t,a[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(a)):l(Object(a)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(a,t))}))}return e}const o="ComboBox",u="CheckBoxList",c="RadioButtonList",d=[o,u,c],m="And",p="Equal";class h{constructor(e,t=[]){n()(this,"_parseQuestion",(e=>{if(this.questionByName[(0,s.toSlug)(e.name)]=e,this.questionById[parseInt(e.id)]=e,e.hasOwnProperty("sub_question_rules"))for(let t of e.sub_question_rules)this.rules[parseInt(t.id)]=t,this._parseQuestion(t.sub_question)})),n()(this,"_parseQuestions",(()=>{for(let e of this.questions)this._parseQuestion(e)})),n()(this,"_allowsValues",(e=>d.includes(e.type))),n()(this,"_allowsValue",((e,t)=>{let a=t.value.split(",").map((e=>parseInt(e)));for(let t of a)if(!e.values.map((e=>e.id)).includes(t))return!1;return!0})),n()(this,"_getAnswerFor",(e=>{let t=Number.isInteger(e)?e:e.id,a=this.answers[t]||null;return a||null})),n()(this,"_hasValue",(e=>""!==e.value)),n()(this,"_answerContains",((e,t)=>e.value.split(",").includes(t))),n()(this,"_isSubQuestionVisible",(e=>{let t=e.answer_values_operator===m;const a=this._getAnswerFor(e.parent_question_id);if(a)switch(e.visibility_condition){case p:for(let r of e.answer_values)t=e.answer_values_operator===m?t&&this._answerContains(a,r):t||this._answerContains(a,r);break;case"NotEqual":for(let r of e.answer_values)t=e.answer_values_operator===m?t&&!this._answerContains(a,r):t||!this._answerContains(a,r)}else t=e.visibility_condition!==p;return"Visible"===e.visibility?t:!t})),n()(this,"_isAnswered",(e=>{const t=this._getAnswerFor(e);if("MainQuestion"===e.class)return!e.mandatory||!!t&&(!!this._hasValue(t)&&!(this._allowsValues(e)&&!this._allowsValue(e,t)));for(let a of e.parent_rules)if(this._isSubQuestionVisible(this.rules[a]))return!e.mandatory||!!t&&(!!this._hasValue(t)&&!(this._allowsValues(e)&&!this._allowsValue(e,t)));return!0})),n()(this,"_checkQuestion",(e=>{let t=this._isAnswered(e);if(e.hasOwnProperty("sub_question_rules"))for(let a of e.sub_question_rules)t=t&&this._checkQuestion(a.sub_question);return t})),n()(this,"_formatQuestionAnswer",(e=>{var t,a;let r={};const n=(0,s.toSlug)(e.name);let l=null===(t=this.originalAnswers.find((t=>t.question_id===e.id)))||void 0===t?void 0:t.value;if(!l&&(null==e||null===(a=e.values)||void 0===a?void 0:a.length)>0){const t=e.values.find((e=>e.is_default));t&&(l=t.id.toString())}if(l&&("CheckBox"===e.type&&(l="false"!==l&&!!l),e.type!==c&&e.type!==o||(l=parseInt(l)),e.type===u&&(l=l.split(",").map((e=>parseInt(e)))||[])),r[n]=l||"",e.type===u&&""===r[n]&&(r[n]=[]),e.hasOwnProperty("sub_question_rules"))for(let t of e.sub_question_rules){let e=this._formatQuestionAnswer(t.sub_question);r=i(i({},r),e)}return r})),n()(this,"formatAnswers",(()=>{let e={};return this.questions.forEach((t=>{let a=this._formatQuestionAnswer(t);e=i(i({},e),a)})),e})),n()(this,"completed",(()=>{let e=!0;for(let t of this.questions)e=e&&this._checkQuestion(t);return e})),n()(this,"getQuestionByName",(e=>{const t=(0,s.toSlug)(e);return this.questionByName[e]||this.questionByName[t]||null})),n()(this,"getQuestionById",(e=>this.questionById[parseInt(e)]||null)),this.questions=e,this.originalAnswers=t,this.answers=[];for(let e of this.originalAnswers)this.answers[e.question_id]=e;this.questionByName={},this.questionById={},this.rules={},this._parseQuestions()}}},8779:e=>{e.exports=require("@babel/runtime/helpers/defineProperty")},8213:e=>{e.exports=require("@babel/runtime/helpers/extends")},3838:e=>{e.exports=require("@babel/runtime/helpers/objectWithoutProperties")},6471:e=>{e.exports=require("awesome-bootstrap-checkbox/awesome-bootstrap-checkbox.css")},4656:e=>{e.exports=require("i18n-react/dist/i18n-react")},8362:e=>{e.exports=require("moment-timezone")},580:e=>{e.exports=require("prop-types")},6689:e=>{e.exports=require("react")},1929:e=>{e.exports=require("react-select")},6530:e=>{e.exports=require("urijs")}},t={};function a(r){var n=t[r];if(void 0!==n)return n.exports;var s=t[r]={exports:{}};return e[r](s,s.exports,a),s.exports}(()=>{a.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return a.d(t,{a:t}),t}})(),(()=>{a.d=(e,t)=>{for(var r in t)a.o(t,r)&&!a.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})}})(),(()=>{a.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t)})(),(()=>{a.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})}})();var r={};return(()=>{a.r(r),a.d(r,{default:()=>u});var e=a(6689),t=a.n(e),n=a(4656),s=a.n(n),l=(a(3932),a(580)),i=a.n(l);class o extends t().Component{constructor(e){super(e),this.onSearchClick=this.onSearchClick.bind(this),this.onClearClick=this.onClearClick.bind(this),this.onKeyPressed=this.onKeyPressed.bind(this),this.onChange=this.onChange.bind(this),this.state={value:e.value}}onSearchClick(e){let{preventEvents:t}=this.props;t&&e.preventDefault(),this.doFiltering(this.state.value)}onClearClick(e){let{preventEvents:t}=this.props;t&&e.preventDefault(),this.doFiltering(""),this.setState({value:""})}doFiltering(e){this.props.onSearch(e.trim())}onKeyPressed(e){13===(e.keyCode||e.which)&&this.doFiltering(this.state.value)}onChange(e){this.setState({value:e.target.value}),this.props.onChange&&this.props.onChange(e.target.value)}render(){let{value:e}=this.state;return t().createElement("div",{className:"row search-container"},t().createElement("div",{className:"col-md-12"},t().createElement("div",{className:"input-group"},t().createElement("input",{type:"text",value:e,className:"form-control",placeholder:this.props.placeholder,onKeyPress:this.onKeyPressed,onChange:this.onChange}),t().createElement("span",{className:"input-group-btn",style:{width:"5%"}},t().createElement("button",{onClick:this.onSearchClick,className:"btn btn-default",title:s().translate("general.search")},t().createElement("i",{className:"fa fa-search"})),t().createElement("button",{onClick:this.onClearClick,className:"btn btn-default",title:s().translate("general.clear")},t().createElement("i",{className:"fa fa-times"}))))))}}o.defaultProps={preventEvents:!1,onChange:null},o.propTypes={preventEvents:i().bool,onChange:i().func};const u=o})(),r})()));
|
|
1
|
+
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define("openstack-uicore-foundation",[],t):"object"==typeof exports?exports["openstack-uicore-foundation"]=t():e["openstack-uicore-foundation"]=t()}(this,(()=>(()=>{"use strict";var e={3932:(e,t,a)=>{var r=a(8213),n=a.n(r),s=a(3838),l=a.n(s),i=a(6689),o=a.n(i),u=a(580),c=a.n(u),d=a(1833),m=a(401),p=a(7027),h=a(2230),b=a(1995);const g=require("react-final-form");var v=a(6793);const f="CheckBox",y="RadioButton";a(6471);const _=["input","meta","question","className","isDisabled","isRequired"],E=["input","meta","question","isDisabled","isRequired"],C=["input","meta","question","isDisabled","isRequired"],q=["input","meta","question","isDisabled","isRequired","maxValues"],w=e=>{let{input:t,meta:a,question:r,className:s,isDisabled:i,isRequired:u}=e,c=l()(e,_);return o().createElement(d.default,n()({},t,c,{containerClassName:s,name:(0,v.toSlug)(r.name),ariaLabelledBy:`${(0,v.toSlug)(r.name)} label`,id:(0,v.toSlug)(r.name),value:t.value,disabled:i,required:u,onChange:t.onChange,placeholder:r.placeholder}))},N=e=>{let{input:t,meta:a,question:r,isDisabled:s,isRequired:i}=e,u=l()(e,E);return o().createElement(p.default,n()({},t,u,{name:(0,v.toSlug)(r.name),ariaLabelledBy:`${(0,v.toSlug)(r.name)} label`,id:(0,v.toSlug)(r.name),overrideCSS:!0,value:t.value,disabled:s,required:i,onChange:t.onChange}))},S=e=>{let{input:t,meta:a,question:r,isDisabled:s,isRequired:i}=e,u=l()(e,C);return o().createElement(m.default,n()({},t,u,{name:(0,v.toSlug)(r.name),ariaLabelledBy:`${(0,v.toSlug)(r.name)} label`,id:(0,v.toSlug)(r.name),overrideCSS:!0,className:"ddl-extra-questions-container",classNamePrefix:"ddl-extra-questions",value:t.value,disabled:s,required:i,onChange:t.onChange}))},k=e=>{let{input:t,meta:a,question:r,isDisabled:s,isRequired:i,maxValues:u}=e,c=l()(e,q);return o().createElement(h.default,n()({},t,c,{id:(0,v.toSlug)(r.name),name:(0,v.toSlug)(r.name),ariaLabelledBy:`${(0,v.toSlug)(r.name)} label`,value:t.value,disabled:s,required:i,onChange:e=>{const a=e.target.value;return u>0&&a.length>u?null:t.onChange(e)}}))},x=e=>e?e=>e?void 0:"Required":()=>{},O=o().forwardRef((({extraQuestions:e,userAnswers:t,onAnswerChanges:a,className:r="questions-form",questionContainerClassName:n="question-container",questionLabelContainerClassName:s="question-label-container",questionControlContainerClassName:l="question-control-container",readOnly:u=!1,debug:c=!1,buttonText:d="Submit",RequiredErrorMessage:m="Required",ValidationErrorClassName:p="extra-question-error",allowExtraQuestionsEdit:h=!0,onError:_=(e=>console.log("form errors: ",e)),shouldScroll2FirstError:E=!0},C)=>{let q=null;const O=(0,i.useRef)({}),P=(0,i.useRef)(null),[B,F]=(0,i.useState)({});(0,i.useEffect)((()=>{j()}),[e]),(0,i.useImperativeHandle)(C,(()=>({doSubmit(){var e;null===(e=P.current)||void 0===e||e.dispatchEvent(new Event("submit",{cancelable:!0,bubbles:!0}))},scroll2QuestionById(e){K(e)}})));const L=e=>(O.current[e]||(O.current[e]=o().createRef()),O.current[e]),j=()=>{const a=new b.default(e,t);F(a.formatAnswers())},$=({when:e,rule:t,children:a})=>o().createElement(g.Field,{name:e,subscription:{value:!0}},(({input:{value:e}})=>D(t,A(e,t),a))),R=({name:e})=>o().createElement(g.Field,{name:e,subscription:{error:!0,touched:!0,submitFailed:!0}},(({meta:{error:e,touched:t,submitFailed:a}})=>e&&(t||a)?o().createElement("div",{className:p},e):null)),A=(e,t)=>{let a=t.answer_values;if(Array.isArray(e)){if(!e.length)return!1;let r="And"===t.answer_values_operator;return a.forEach((a=>{r="And"===t.answer_values_operator?r&&e.includes(parseInt(a)):r||e.includes(parseInt(a))})),r}return a.includes(e.toString())},D=(e,t,a)=>"Visible"===e.visibility?"Equal"===e.visibility_condition?t?a:(delete O.current[e.sub_question.id],null):t?(delete O.current[e.sub_question.id],null):a:"Equal"===e.visibility_condition?t?(delete O.current[e.sub_question.id],null):a:t?a:(delete O.current[e.sub_question.id],null),I=e=>{var t;const a=String.fromCharCode(160),r=null==e||null===(t=e.label)||void 0===t?void 0:t.replace(/\n/g,"<br />").replace(/<p>(.*)<\/p>/gi,"$1"),n=[f,y],s=e.mandatory&&!n.includes(e.type)?`${r}${a}<b>*</b>`:r;return o().createElement("label",{dangerouslySetInnerHTML:{__html:s},htmlFor:(0,v.toSlug)(e.name),id:`${(0,v.toSlug)(e.name)} label`})},Q=e=>{let t=e.values;const a=!h&&((e,t)=>{const a=(0,v.toSlug)(e.name);if(!t.hasOwnProperty(a))return!1;const r=t[a];return Array.isArray(r)||"string"==typeof r?r.length>0:"number"==typeof r?r>0:"boolean"==typeof r&&r})(e,B);var r,u,c,d;if("Text"===e.type)return o().createElement(i.Fragment,{key:(0,v.toSlug)(e.name)},o().createElement("div",{ref:L(e.id),className:n},o().createElement("span",{className:s},I(e)),o().createElement("div",{className:l},o().createElement(g.Field,{name:(0,v.toSlug)(e.name),question:e,isDisabled:a,isRequired:e.mandatory,validate:x(e.mandatory),component:w}),o().createElement(R,{name:(0,v.toSlug)(e.name)}))),(null===(r=e.sub_question_rules)||void 0===r?void 0:r.length)>0&&e.sub_question_rules.map((t=>o().createElement($,{key:t.id,when:(0,v.toSlug)(e.name),rule:t},Q(t.sub_question)))));if("TextArea"===e.type)return o().createElement(i.Fragment,{key:(0,v.toSlug)(e.name)},o().createElement("div",{ref:L(e.id),className:n},o().createElement("span",{className:s},I(e)),o().createElement("div",{className:l},o().createElement(g.Field,{validate:x(e.mandatory),name:(0,v.toSlug)(e.name),id:(0,v.toSlug)(e.name),disabled:a,required:e.mandatory,component:"textarea"}),o().createElement(R,{name:(0,v.toSlug)(e.name)}))),(null===(u=e.sub_question_rules)||void 0===u?void 0:u.length)>0&&e.sub_question_rules.map((t=>o().createElement($,{key:t.id,when:(0,v.toSlug)(e.name),rule:t},Q(t.sub_question)))));if(e.type===f)return o().createElement(i.Fragment,{key:(0,v.toSlug)(e.name)},o().createElement("div",{ref:L(e.id),className:`${n} checkbox-wrapper`},o().createElement("div",{className:`${l} input-wrapper`},o().createElement("div",{className:"form-check abc-checkbox"},o().createElement(g.Field,{name:(0,v.toSlug)(e.name),id:(0,v.toSlug)(e.name),validate:x(e.mandatory),disabled:a,required:e.mandatory,type:"checkbox",className:"form-check-input",component:"input"}),o().createElement("label",{className:"form-check-label",htmlFor:(0,v.toSlug)(e.name)}),e.mandatory&&o().createElement("span",{className:"checkbox-mandatory"},o().createElement("b",null,"*")))),o().createElement("span",{className:`eq-checkbox-label ${s}`},I(e))),o().createElement(R,{name:(0,v.toSlug)(e.name)}),(null===(c=e.sub_question_rules)||void 0===c?void 0:c.length)>0&&e.sub_question_rules.map((t=>o().createElement($,{key:t.id,when:(0,v.toSlug)(e.name),rule:t},Q(t.sub_question)))));if(e.type===y)return o().createElement(i.Fragment,{key:(0,v.toSlug)(e.name)},o().createElement("div",{ref:L(e.id),className:`${n} checkbox-wrapper`},o().createElement("div",{className:`${l} input-wrapper`},o().createElement("div",{className:"form-check abc-radio"},o().createElement(g.Field,{name:(0,v.toSlug)(e.name),id:(0,v.toSlug)(e.name),validate:x(e.mandatory),disabled:a,required:e.mandatory,type:"radio",className:"form-check-input",value:"true",component:"input"}),o().createElement("label",{className:"form-check-label",htmlFor:(0,v.toSlug)(e.name)}),e.mandatory&&o().createElement("span",{className:"checkbox-mandatory"},o().createElement("b",null,"*")))),o().createElement("span",{className:`eq-checkbox-label ${s}`},I(e))),o().createElement(R,{name:(0,v.toSlug)(e.name)}),(null===(d=e.sub_question_rules)||void 0===d?void 0:d.length)>0&&e.sub_question_rules.map((t=>o().createElement($,{key:t.id,when:(0,v.toSlug)(e.name),rule:t},Q(t.sub_question)))));if("RadioButtonList"===e.type){var m;const r=t.map((e=>({label:e.label,value:e.id})));return o().createElement(i.Fragment,{key:(0,v.toSlug)(e.name)},o().createElement("div",{ref:L(e.id),className:n},o().createElement("span",{className:s},I(e)),o().createElement("div",{className:l},o().createElement(g.Field,{name:(0,v.toSlug)(e.name),options:r,question:e,validate:x(e.mandatory),isDisabled:a,isRequired:e.mandatory,component:N}),o().createElement(R,{name:(0,v.toSlug)(e.name)}))),(null===(m=e.sub_question_rules)||void 0===m?void 0:m.length)>0&&e.sub_question_rules.map((t=>o().createElement($,{key:t.id,when:(0,v.toSlug)(e.name),rule:t},Q(t.sub_question)))))}if("ComboBox"===e.type||"CountryComboBox"===e.type){var p;const r=t.map((e=>({label:e.label,value:e.id})));return o().createElement(i.Fragment,{key:(0,v.toSlug)(e.name)},o().createElement("div",{ref:L(e.id),className:n},o().createElement("span",{className:s},I(e)),o().createElement("div",{className:`${l} reactSelectDropdown`},o().createElement(g.Field,{name:(0,v.toSlug)(e.name),options:r,question:e,validate:x(e.mandatory),isDisabled:a,isRequired:e.mandatory,component:S}),o().createElement(R,{name:(0,v.toSlug)(e.name)}))),(null===(p=e.sub_question_rules)||void 0===p?void 0:p.length)>0&&e.sub_question_rules.map((t=>o().createElement($,{key:t.id,when:(0,v.toSlug)(e.name),rule:t},Q(t.sub_question)))))}if("CheckBoxList"===e.type){var b;const r=t.map((e=>({label:e.label,value:e.id})));return o().createElement(i.Fragment,{key:(0,v.toSlug)(e.name)},o().createElement("div",{ref:L(e.id),className:n},o().createElement("span",{className:s},I(e)),o().createElement("div",{className:l},o().createElement(g.Field,{name:(0,v.toSlug)(e.name),className:l,validate:x(e.mandatory),options:r,question:e,maxValues:e.max_selected_values,isDisabled:a,isRequired:e.mandatory,component:k}),o().createElement(R,{name:(0,v.toSlug)(e.name)}))),(null===(b=e.sub_question_rules)||void 0===b?void 0:b.length)>0&&e.sub_question_rules.map((t=>o().createElement($,{key:t.id,when:(0,v.toSlug)(e.name),rule:t},Q(t.sub_question)))))}return null},V=(e,t,a)=>{var r;if(e.mandatory&&(e=>!!O.current[e.id])(e)){const r=(0,v.toSlug)(e.name);t.hasOwnProperty((0,v.toSlug)(r))&&""!==t[(0,v.toSlug)(r)]&&0!==t[r].length||(a[r]=m)}null===(r=e.sub_question_rules)||void 0===r||r.forEach((e=>{V(e.sub_question,t,a)}))};if(!Object.keys(B).length)return null;const T=(e,t,a)=>{var r;t.includes((0,v.toSlug)(e.name))&&a.push(e),null===(r=e.sub_question_rules)||void 0===r||r.forEach((e=>{T(e.sub_question,t,a)}))},M=t=>{const a=[];return e.forEach((e=>{T(e,t,a)})),a.sort(((e,t)=>e.order>t.order))[0]},K=e=>{const t=O.current[e];t&&t.current&&(t.current.focus(),t.current.scrollIntoView({behavior:"smooth",block:"center"}))};return Object.keys(B).length?o().createElement("div",{className:r},o().createElement(g.Form,{validate:t=>{const a={};return e.forEach((e=>{V(e,t,a)})),a},onSubmit:e=>{a(e)},initialValues:B},(({handleSubmit:t,form:a,submitting:r,pristine:n,values:s})=>(q=t,o().createElement("form",{onSubmit:e=>{const r=a.getRegisteredFields().filter((e=>a.getFieldState(e).invalid));if(r.length>0){const e=M(r);_(r,O.current[e.id],e.id),E&&(e=>{const t=M(e);t&&K(t.id)})(r)}t(e)},ref:P},u?o().createElement("fieldset",{disabled:"disabled"},e.map((e=>Q(e)))):e.map((e=>Q(e))),c&&o().createElement("pre",null,JSON.stringify(s,0,2)))))),!C&&o().createElement("button",{type:"submit",onClick:e=>{q(e)},style:{marginTop:10}},d)):null}));O.propTypes={extraQuestions:c().array.isRequired,userAnswers:c().array.isRequired,onAnswerChanges:c().func.isRequired,className:c().string,debug:c().bool,buttonText:c().string,questionContainerClassName:c().string,questionLabelContainerClassName:c().string,questionControlContainerClassName:c().string,RequiredErrorMessage:c().string,ValidationErrorClassName:c().string,allowExtraQuestionsEdit:c().bool,shouldScroll2FirstError:c().bool,readOnly:c().bool}},2230:(e,t,a)=>{a.d(t,{default:()=>p});var r=a(3838),n=a.n(r),s=a(580),l=a.n(s),i=a(6689),o=a.n(i),u=a(4656),c=a.n(u),d=a(418);a(6471);const m=["onChange","value","className","options","id","children","error","disabled","name","ariaLabelledBy"];class p extends o().Component{constructor(e){super(e);let t=!!e.value&&e.value.find((t=>!e.options.map((e=>e.value)).includes(t)));this.state={otherChecked:!!t},this.handleChange=this.handleChange.bind(this),this.handleOtherCBChange=this.handleOtherCBChange.bind(this)}handleChange(e){let t=this.props.options.map((e=>e.value)),a=this.props.value?[...this.props.value]:[];if("checkbox"===e.target.type)if(e.target.checked){const t=isNaN(e.target.value)?e.target.value:parseInt(e.target.value);a.push(t)}else a=a.filter((t=>t!=e.target.value));else a=a.filter((e=>t.includes(e))),a.push(e.target.value);let r={target:{id:this.props.id,value:a,type:"checkboxlist"}};this.props.onChange(r)}handleOtherCBChange(e){this.setState({otherChecked:e.target.checked})}render(){let e,t=this.props,{onChange:a,value:r,className:s,options:l,id:i,children:u,error:p,disabled:h,name:b,ariaLabelledBy:g}=t,{otherChecked:v}=(n()(t,m),this.state),f=this.props.hasOwnProperty("inline"),y=this.props.hasOwnProperty("allowOther"),_=!!r&&r.find((e=>!l.map((e=>e.value)).includes(e))),E=this.props.hasOwnProperty("error")&&""!==p,C=this.props.hasOwnProperty("disabled")&&1==h;return e=f?{paddingLeft:"22px",marginLeft:"20px",float:"left"}:{paddingLeft:"22px",marginTop:"7px"},o().createElement("div",{id:`chl_wrapper_${i}`,"aria-labelledby":g},o().createElement("div",{className:"checkboxes-div"+(E?" error":"")},l.map((t=>{let a=!!r&&r.includes(t.value);return o().createElement("div",{className:"form-check abc-checkbox",key:"radio_key_"+t.value,style:e},o().createElement("input",{type:"checkbox",id:`cb_${i}_${t.value}`,name:b||i,checked:a,disabled:C,onChange:this.handleChange,className:"form-check-input",value:t.value}),o().createElement("label",{className:"form-check-label",htmlFor:`cb_${i}_${t.value}`},o().createElement(d.default,null,t.label)))})),y&&o().createElement("div",{className:"form-check abc-checkbox",style:e},o().createElement("input",{type:"checkbox",id:"cb_other"+i,checked:v,disabled:C,onChange:this.handleOtherCBChange,className:"form-check-input",value:"other"}),o().createElement("label",{className:"form-check-label",htmlFor:"cb_other"+i},c().translate("general.other"))),y&&v&&o().createElement("div",{style:{paddingLeft:"22px",width:"50%"}},o().createElement("input",{className:"form-control",disabled:C,onChange:this.handleChange,value:_}))),E&&o().createElement("p",{className:"error-label"},p))}}p.defaultProps={ariaLabelledBy:null},p.propTypes={id:l().string.isRequired}},401:(e,t,a)=>{a.d(t,{default:()=>g});var r=a(8213),n=a.n(r),s=a(8779),l=a.n(s),i=a(3838),o=a.n(i),u=a(6689),c=a.n(u),d=a(1929),m=a.n(d);const p=["onChange","value","className","error","clearable","disabled","overrideCSS","ariaLabelledBy"];function h(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,r)}return a}function b(e){for(var t=1;t<arguments.length;t++){var a=null!=arguments[t]?arguments[t]:{};t%2?h(Object(a),!0).forEach((function(t){l()(e,t,a[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(a)):h(Object(a)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(a,t))}))}return e}class g extends c().Component{constructor(e){super(e),this.handleChange=this.handleChange.bind(this)}handleChange(e){let t=null;t=this.props.isMulti?e?e.map((e=>e.value)):null:e?e.value:null;let a={target:{id:this.props.id,value:t,type:"dropdown"}};this.props.onChange(a)}render(){let e=this.props,{onChange:t,value:a,className:r,error:s,clearable:l,disabled:i,overrideCSS:u,ariaLabelledBy:d}=e,h=o()(e,p),g=this.props.hasOwnProperty("error")&&""!=s,v=this.props.hasOwnProperty("clearable"),f=this.props.hasOwnProperty("disabled")&&1==i,y=null,_=r;this.props.hasOwnProperty("overrideCSS")&&0!=u||(_="dropdown "+r+" "+(g?"error":"")),y=this.props.isMulti?this.props.options.filter((e=>a.includes(e.value))):a instanceof Object||null==a?a:this.props.options.find((e=>e.value==a));const E={menu:e=>b(b({},e),{},{zIndex:999})};return c().createElement("div",null,c().createElement(m(),n()({className:_,value:y,onChange:this.handleChange,isClearable:v,isDisabled:f,styles:E,"aria-labelledby":d,formatOptionLabel:e=>c().createElement("span",{dangerouslySetInnerHTML:{__html:e.label}})},h)),g&&c().createElement("p",{className:"error-label"},s))}}g.defaultProps={ariaLabelledBy:null}},7027:(e,t,a)=>{a.d(t,{default:()=>d});var r=a(3838),n=a.n(r),s=a(6689),l=a.n(s),i=a(418),o=a(580),u=a.n(o);a(6471);const c=["onChange","value","className","error","ariaLabelledBy","disabled","options","id","name"];class d extends l().Component{constructor(e){super(e),this.state={value:e.value},this.handleChange=this.handleChange.bind(this)}handleChange(e){let t={target:{id:this.props.id,value:e.target.value,type:"radio"}};this.props.onChange(t)}getLabel(e,t,a,r){return a?l().createElement("label",{className:"form-check-label",htmlFor:`radio_${t}_${e.value}`,style:{display:"inline-block"}},l().createElement(i.default,null,e.label)):r?l().createElement("label",{className:"form-check-label",htmlFor:`radio_${t}_${e.value}`},e.label):l().createElement("label",{className:"form-check-label",htmlFor:`radio_${t}_${e.value}`,style:{display:"inline-block"}},l().createElement("h4",{style:{marginTop:"0px"}},e.label),l().createElement(i.default,null,e.description))}render(){let e,t=this.props,{onChange:a,value:r,className:s,error:i,ariaLabelledBy:o,disabled:u,options:d,id:m,name:p}=t,h=(n()(t,c),this.props.hasOwnProperty("error")&&""!=i),b=this.props.hasOwnProperty("inline"),g=this.props.hasOwnProperty("simple"),v=this.props.hasOwnProperty("disabled")&&1==u;return e=b?{paddingLeft:"22px",marginLeft:"20px",float:"left"}:{paddingLeft:"22px"},l().createElement("div",{id:`rl_wrapper_${m}`,"aria-labelledby":o},d.map((t=>{let a=t.value==r;return l().createElement("div",{className:"form-check abc-radio",key:`radio_key_${m}_${t.value}`,style:e},l().createElement("input",{className:"form-check-input",type:"radio",id:`radio_${m}_${t.value}`,value:t.value,checked:a,onChange:this.handleChange,disabled:v,name:p||`radio_${m}`}),this.getLabel(t,m,b,g))})),h&&l().createElement("p",{className:"error-label"},i))}}d.defaultProps={ariaLabelledBy:null},d.propTypes={id:u().string.isRequired}},1833:(e,t,a)=>{a.d(t,{default:()=>c});var r=a(8213),n=a.n(r),s=a(3838),l=a.n(s),i=a(6689),o=a.n(i);const u=["onChange","value","className","error","ariaLabelledBy","containerClassName"];class c extends o().Component{constructor(e){super(e),this.handleChange=this.handleChange.bind(this)}componentDidUpdate(e,t,a){this.props.value!==e.value&&(this.input.value=this.props.value)}handleChange(e){this.props.onChange(e)}render(){let e=this.props,{onChange:t,value:a,className:r,error:s,ariaLabelledBy:i,containerClassName:c}=e,d=l()(e,u),m=this.props.hasOwnProperty("error")&&""!==s,p=this.props.hasOwnProperty("className")?r:"form-control",h=this.props.hasOwnProperty("containerClassName")?c:"container-form-control";return o().createElement("div",{className:h},o().createElement("input",n()({className:`${p} ${m?"error":""}`,ref:e=>{this.input=e},defaultValue:a,"aria-labelledby":i,onChange:this.handleChange},d)),m&&o().createElement("p",{className:"error-label"},s))}}c.defaultProps={ariaLabelledBy:null}},418:(e,t,a)=>{a.d(t,{default:()=>c});var r=a(8213),n=a.n(r),s=a(3838),l=a.n(s),i=a(6689),o=a.n(i);const u=["children","replaceNewLine","className"],c=e=>{let{children:t,replaceNewLine:a=!1,className:r=""}=e,s=l()(e,u);return o().createElement("span",n()({className:r,dangerouslySetInnerHTML:{__html:a?null==t?void 0:t.replace(/\n/g,"<br />"):t}},s))}},6793:(e,t,a)=>{a.d(t,{toSlug:()=>r});a(8362),a(6530);const r=e=>(e=e.toLowerCase()).replace(/[^a-zA-Z0-9]+/g,"_")},1995:(e,t,a)=>{a.d(t,{default:()=>h});var r=a(8779),n=a.n(r),s=a(6793);function l(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,r)}return a}function i(e){for(var t=1;t<arguments.length;t++){var a=null!=arguments[t]?arguments[t]:{};t%2?l(Object(a),!0).forEach((function(t){n()(e,t,a[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(a)):l(Object(a)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(a,t))}))}return e}const o="ComboBox",u="CheckBoxList",c="RadioButtonList",d=[o,u,c],m="And",p="Equal";class h{constructor(e,t=[]){n()(this,"_parseQuestion",(e=>{if(this.questionByName[(0,s.toSlug)(e.name)]=e,this.questionById[parseInt(e.id)]=e,e.hasOwnProperty("sub_question_rules"))for(let t of e.sub_question_rules)this.rules[parseInt(t.id)]=t,this._parseQuestion(t.sub_question)})),n()(this,"_parseQuestions",(()=>{for(let e of this.questions)this._parseQuestion(e)})),n()(this,"_allowsValues",(e=>d.includes(e.type))),n()(this,"_allowsValue",((e,t)=>{let a=t.value.split(",").map((e=>parseInt(e)));for(let t of a)if(!e.values.map((e=>e.id)).includes(t))return!1;return!0})),n()(this,"_getAnswerFor",(e=>{let t=Number.isInteger(e)?e:e.id,a=this.answers[t]||null;return a||null})),n()(this,"_hasValue",(e=>""!==e.value)),n()(this,"_answerContains",((e,t)=>e.value.split(",").includes(t))),n()(this,"_isSubQuestionVisible",(e=>{let t=e.answer_values_operator===m;const a=this._getAnswerFor(e.parent_question_id);if(a)switch(e.visibility_condition){case p:for(let r of e.answer_values)t=e.answer_values_operator===m?t&&this._answerContains(a,r):t||this._answerContains(a,r);break;case"NotEqual":for(let r of e.answer_values)t=e.answer_values_operator===m?t&&!this._answerContains(a,r):t||!this._answerContains(a,r)}else t=e.visibility_condition!==p;return"Visible"===e.visibility?t:!t})),n()(this,"_isAnswered",(e=>{const t=this._getAnswerFor(e);if("MainQuestion"===e.class)return!e.mandatory||!!t&&(!!this._hasValue(t)&&!(this._allowsValues(e)&&!this._allowsValue(e,t)));for(let a of e.parent_rules)if(this._isSubQuestionVisible(this.rules[a]))return!e.mandatory||!!t&&(!!this._hasValue(t)&&!(this._allowsValues(e)&&!this._allowsValue(e,t)));return!0})),n()(this,"_checkQuestion",(e=>{let t=this._isAnswered(e);if(e.hasOwnProperty("sub_question_rules"))for(let a of e.sub_question_rules)t=t&&this._checkQuestion(a.sub_question);return t})),n()(this,"_formatQuestionAnswer",(e=>{var t,a;let r={};const n=(0,s.toSlug)(e.name);let l=null===(t=this.originalAnswers.find((t=>t.question_id===e.id)))||void 0===t?void 0:t.value;if(!l&&(null==e||null===(a=e.values)||void 0===a?void 0:a.length)>0){const t=e.values.find((e=>e.is_default));t&&(l=t.id.toString())}if(l&&("CheckBox"===e.type&&(l="false"!==l&&!!l),e.type!==c&&e.type!==o||(l=parseInt(l)),e.type===u&&(l=l.split(",").map((e=>parseInt(e)))||[])),r[n]=l||"",e.type===u&&""===r[n]&&(r[n]=[]),e.hasOwnProperty("sub_question_rules"))for(let t of e.sub_question_rules){let e=this._formatQuestionAnswer(t.sub_question);r=i(i({},r),e)}return r})),n()(this,"formatAnswers",(()=>{let e={};return this.questions.forEach((t=>{let a=this._formatQuestionAnswer(t);e=i(i({},e),a)})),e})),n()(this,"completed",(()=>{let e=!0;for(let t of this.questions)e=e&&this._checkQuestion(t);return e})),n()(this,"getQuestionByName",(e=>{const t=(0,s.toSlug)(e);return this.questionByName[e]||this.questionByName[t]||null})),n()(this,"getQuestionById",(e=>this.questionById[parseInt(e)]||null)),this.questions=e,this.originalAnswers=t,this.answers=[];for(let e of this.originalAnswers)this.answers[e.question_id]=e;this.questionByName={},this.questionById={},this.rules={},this._parseQuestions()}}},8779:e=>{e.exports=require("@babel/runtime/helpers/defineProperty")},8213:e=>{e.exports=require("@babel/runtime/helpers/extends")},3838:e=>{e.exports=require("@babel/runtime/helpers/objectWithoutProperties")},6471:e=>{e.exports=require("awesome-bootstrap-checkbox/awesome-bootstrap-checkbox.css")},4656:e=>{e.exports=require("i18n-react/dist/i18n-react")},8362:e=>{e.exports=require("moment-timezone")},580:e=>{e.exports=require("prop-types")},6689:e=>{e.exports=require("react")},1929:e=>{e.exports=require("react-select")},6530:e=>{e.exports=require("urijs")}},t={};function a(r){var n=t[r];if(void 0!==n)return n.exports;var s=t[r]={exports:{}};return e[r](s,s.exports,a),s.exports}(()=>{a.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return a.d(t,{a:t}),t}})(),(()=>{a.d=(e,t)=>{for(var r in t)a.o(t,r)&&!a.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})}})(),(()=>{a.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t)})(),(()=>{a.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})}})();var r={};return(()=>{a.r(r),a.d(r,{default:()=>u});var e=a(6689),t=a.n(e),n=a(4656),s=a.n(n),l=(a(3932),a(580)),i=a.n(l);class o extends t().Component{constructor(e){super(e),this.onSearchClick=this.onSearchClick.bind(this),this.onClearClick=this.onClearClick.bind(this),this.onKeyPressed=this.onKeyPressed.bind(this),this.onChange=this.onChange.bind(this),this.state={value:e.value}}onSearchClick(e){let{preventEvents:t}=this.props;t&&e.preventDefault(),this.doFiltering(this.state.value)}onClearClick(e){let{preventEvents:t}=this.props;t&&e.preventDefault(),this.doFiltering(""),this.setState({value:""})}doFiltering(e){this.props.onSearch(e.trim())}onKeyPressed(e){13===(e.keyCode||e.which)&&this.doFiltering(this.state.value)}onChange(e){this.setState({value:e.target.value}),this.props.onChange&&this.props.onChange(e.target.value)}render(){let{value:e}=this.state;return t().createElement("div",{className:"row search-container"},t().createElement("div",{className:"col-md-12"},t().createElement("div",{className:"input-group"},t().createElement("input",{type:"text",value:e,className:"form-control",placeholder:this.props.placeholder,onKeyPress:this.onKeyPressed,onChange:this.onChange}),t().createElement("span",{className:"input-group-btn",style:{width:"5%"}},t().createElement("button",{onClick:this.onSearchClick,className:"btn btn-default",title:s().translate("general.search")},t().createElement("i",{className:"fa fa-search"})),t().createElement("button",{onClick:this.onClearClick,className:"btn btn-default",title:s().translate("general.clear")},t().createElement("i",{className:"fa fa-times"}))))))}}o.defaultProps={preventEvents:!1,onChange:null},o.propTypes={preventEvents:i().bool,onChange:i().func};const u=o})(),r})()));
|
|
2
2
|
//# sourceMappingURL=free-text-search.js.map
|