openstack-uicore-foundation 4.0.78 → 4.0.79
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/attendance-tracker.js +1 -1
- package/lib/components/clock.js +1 -1
- package/lib/components/extra-questions.js +1 -1
- package/lib/components/forms/rsvp-form.js +1 -1
- package/lib/components/forms/simple-form.js +1 -1
- package/lib/components/free-text-search.js +1 -1
- package/lib/components/index.js +1 -1
- package/lib/components/inputs/access-levels-input.js +1 -1
- package/lib/components/inputs/action-dropdown.js +1 -1
- package/lib/components/inputs/checkbox-list.js +1 -1
- package/lib/components/inputs/company-input.js +1 -1
- package/lib/components/inputs/country-dropdown.js +1 -1
- package/lib/components/inputs/country-input.js +1 -1
- package/lib/components/inputs/datetimepicker.js +1 -1
- package/lib/components/inputs/dropdown.js +1 -1
- package/lib/components/inputs/editor-input.js +1 -1
- package/lib/components/inputs/event-input.js +1 -1
- package/lib/components/inputs/free-multi-text-input.js +1 -1
- package/lib/components/inputs/group-input.js +1 -1
- package/lib/components/inputs/language-input.js +1 -1
- package/lib/components/inputs/member-input.js +1 -1
- package/lib/components/inputs/operator-input.js +1 -1
- package/lib/components/inputs/organization-input.js +1 -1
- package/lib/components/inputs/promocode-input.js +1 -1
- package/lib/components/inputs/radio-list.js +1 -1
- package/lib/components/inputs/registration-company-input.js +1 -1
- package/lib/components/inputs/speaker-input.js +1 -1
- package/lib/components/inputs/sponsor-input.js +1 -1
- package/lib/components/inputs/summit-input.js +1 -1
- package/lib/components/inputs/tag-input.js +1 -1
- package/lib/components/inputs/text-input.js +1 -1
- package/lib/components/inputs/textarea-input.js +1 -1
- package/lib/components/inputs/ticket-types-input.js +1 -1
- package/lib/components/inputs/upload-input-v2.js +1 -1
- package/lib/components/inputs/upload-input.js +1 -1
- package/lib/components/sponsored-project-input.js +1 -1
- package/lib/components/table-editable.js +1 -1
- package/lib/components/table-sortable.js +1 -1
- package/lib/css/components/extra-questions.css +1 -1
- package/lib/css/components/free-text-search.css +1 -1
- package/lib/css/components/index.css +1 -1
- package/lib/security/abstract-auth-callback-route.js +1 -1
- package/lib/security/actions.js +1 -1
- package/lib/security/methods.js +1 -1
- package/lib/security/reducers.js +1 -1
- package/lib/security/session-checker.js +1 -1
- package/lib/utils/actions.js +1 -1
- package/lib/utils/fragment-parser.js +1 -1
- package/lib/utils/methods.js +1 -1
- package/lib/utils/query-actions.js +1 -1
- package/lib/utils/questions-set.js +1 -1
- package/lib/utils/reducers.js +1 -1
- package/package.json +4 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
!function(e,o){"object"==typeof exports&&"object"==typeof module?module.exports=o():"function"==typeof define&&define.amd?define("openstack-uicore-foundation",[],o):"object"==typeof exports?exports["openstack-uicore-foundation"]=o():e["openstack-uicore-foundation"]=o()}(this,(()=>(()=>{"use strict";var e={4341:(e,o,t)=>{t(4656),t(4054),t(6793),t(8576)},1593:(e,o,t)=>{t.d(o,{AUTH_ERROR_ACCESS_TOKEN_EXPIRED:()=>s,AUTH_ERROR_LOCK_ACQUIRE_ERROR:()=>i,AUTH_ERROR_MISSING_AUTH_INFO:()=>
|
|
1
|
+
!function(e,o){"object"==typeof exports&&"object"==typeof module?module.exports=o():"function"==typeof define&&define.amd?define("openstack-uicore-foundation",[],o):"object"==typeof exports?exports["openstack-uicore-foundation"]=o():e["openstack-uicore-foundation"]=o()}(this,(()=>(()=>{"use strict";var e={4341:(e,o,t)=>{t(8779),t(4656),t(4054),t(6793),t(8576)},1593:(e,o,t)=>{t.d(o,{AUTH_ERROR_ACCESS_TOKEN_EXPIRED:()=>s,AUTH_ERROR_LOCK_ACQUIRE_ERROR:()=>i,AUTH_ERROR_MISSING_AUTH_INFO:()=>r,AUTH_ERROR_MISSING_REFRESH_TOKEN:()=>n,AUTH_ERROR_REFRESH_TOKEN_REQUEST_ERROR:()=>a});const r="AUTH_ERROR_MISSING_AUTH_INFO",n="AUTH_ERROR_MISSING_REFRESH_TOKEN",s="AUTH_ERROR_ACCESS_TOKEN_EXPIRED",i="AUTH_ERROR_LOCK_ACQUIRE_ERROR",a="AUTH_ERROR_REFRESH_TOKEN_REQUEST_ERROR"},8576:(e,o,t)=>{t.d(o,{getAccessToken:()=>_});var r=t(6793);t(4824);const n=require("browser-tabs-lock");var s=t.n(n);t(6530),t(3856),t(4341);require("crypto-js/sha256"),require("crypto-js/enc-base64url"),require("crypto-js/enc-hex"),"undefined"!=typeof window&&(window.crypto||window.msCrypto);var i=t(1593);const a=new(s()),c="openstackuicore.lock.getTokenSilently",d="code",u="authInfo",l="nonce",p="pkce",_=async()=>{if(await(0,r.retryPromise)((()=>a.acquireLock(c,5e3)),10))try{let e=f();if(!e)throw Error(i.AUTH_ERROR_MISSING_AUTH_INFO);let{accessToken:o,expiresIn:t,accessTokenUpdatedAt:r,refreshToken:n}=e,s=T(),u=Math.floor(Date.now()/1e3);if(t-=20,u-r>t||null==o){if(console.log("getAccessToken access token expired"),s===d&&y()){if(!n)throw w(),Error(i.AUTH_ERROR_MISSING_REFRESH_TOKEN);let e=await R(n),{access_token:o,expires_in:t,refresh_token:r}=e;return void 0===r&&(r=null),E(o,t,r),o}throw w(),Error(i.AUTH_ERROR_ACCESS_TOKEN_EXPIRED)}return o}finally{await a.releaseLock(c)}throw Error(i.AUTH_ERROR_LOCK_ACQUIRE_ERROR)},R=async e=>{let o=S(),t=m();const n={grant_type:"refresh_token",client_id:encodeURI(t),refresh_token:e};try{const e=await fetch(`${o}/oauth2/token`,{method:"POST",headers:{Accept:"application/json","Content-Type":"application/json"},body:JSON.stringify(n)}).then((e=>{if(400===e.status){(0,r.getCurrentPathName)();throw(0,r.setSessionClearingState)(!0),Error(`${i.AUTH_ERROR_REFRESH_TOKEN_REQUEST_ERROR}: ${e.status} - ${e.statusText}`)}return e})).catch((function(e){throw Error(`${i.AUTH_ERROR_REFRESH_TOKEN_REQUEST_ERROR}: ${e.message}`)})),t=await e.json();let{access_token:s,refresh_token:a,expires_in:c}=t;return{access_token:s,refresh_token:a,expires_in:c}}catch(e){throw console.log(e),e}},E=(e,o,t=null,n=null)=>{let s=f(),i={accessToken:e,expiresIn:o,accessTokenUpdatedAt:Math.floor(Date.now()/1e3)};null===t&&s&&(t=s.refreshToken),null===n&&s&&(n=s.idToken),t&&(i.refreshToken=t),n&&(i.idToken=n),(0,r.putOnLocalStorage)(u,JSON.stringify(i))},f=()=>{try{let e=(0,r.getFromLocalStorage)(u,!1);return e?JSON.parse(e):null}catch(e){return null}},w=()=>{if("undefined"!=typeof window)return(0,r.removeFromLocalStorage)(u),(0,r.removeFromLocalStorage)(l),void(0,r.removeFromLocalStorage)(p)},m=()=>"undefined"!=typeof window?window.OAUTH2_CLIENT_ID:null,T=()=>"undefined"!=typeof window&&window.OAUTH2_FLOW||"token id_token",y=()=>"undefined"==typeof window||new Boolean(window.OAUTH2_USE_REFRESH_TOKEN||!0),S=()=>"undefined"!=typeof window?window.IDP_BASE_URL:null},4054:(e,o,t)=>{t(3838),t(4824),t(6530),t(271),t(4656),t(6793),t(4341),t(8576);const r=e=>o=>({type:e,payload:o});r("RESET_LOADING"),r("START_LOADING"),r("STOP_LOADING")},6793:(e,o,t)=>{t.d(o,{getCurrentPathName:()=>r,getFromLocalStorage:()=>s,putOnLocalStorage:()=>n,removeFromLocalStorage:()=>i,retryPromise:()=>c,setSessionClearingState:()=>a});t(8362),t(6530);const r=()=>"undefined"!=typeof window?window.location.pathname:null,n=(e,o)=>{"undefined"!=typeof window&&window.localStorage.setItem(e,o)},s=(e,o)=>{if("undefined"!=typeof window){let t=window.localStorage.getItem(e);return o&&(console.log(`getFromLocalStorage removing key ${e}`),i(e)),t}return null},i=e=>{"undefined"!=typeof window&&window.localStorage.removeItem(e)},a=e=>{"undefined"!=typeof window&&(window.clearing_session_state=e)},c=async(e,o=3)=>{for(let t=0;t<o;t++)if(await e())return!0;return!1}},8779:e=>{e.exports=require("@babel/runtime/helpers/defineProperty")},3838:e=>{e.exports=require("@babel/runtime/helpers/objectWithoutProperties")},4656:e=>{e.exports=require("i18n-react/dist/i18n-react")},3856:e=>{e.exports=require("idtoken-verifier")},8362:e=>{e.exports=require("moment-timezone")},580:e=>{e.exports=require("prop-types")},6689:e=>{e.exports=require("react")},4824:e=>{e.exports=require("superagent")},271:e=>{e.exports=require("sweetalert2")},6530:e=>{e.exports=require("urijs")}},o={};function t(r){var n=o[r];if(void 0!==n)return n.exports;var s=o[r]={exports:{}};return e[r](s,s.exports,t),s.exports}(()=>{t.n=e=>{var o=e&&e.__esModule?()=>e.default:()=>e;return t.d(o,{a:o}),o}})(),(()=>{t.d=(e,o)=>{for(var r in o)t.o(o,r)&&!t.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:o[r]})}})(),(()=>{t.o=(e,o)=>Object.prototype.hasOwnProperty.call(e,o)})(),(()=>{t.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})}})();var r={};return(()=>{t.r(r),t.d(r,{default:()=>p});var e=t(8779),o=t.n(e),n=t(6689),s=t.n(n),i=t(580),a=t.n(i),c=t(4824),d=t.n(c),u=t(8576);class l extends s().Component{constructor(...e){super(...e),o()(this,"trackEnter",(async()=>{const{apiBaseUrl:e,summitId:o,sourceId:t,sourceName:r}=this.props,n=this.getLocation();try{const s=await(0,u.getAccessToken)();d().put(`${e}/api/v1/summits/${o}/metrics/enter`).send({access_token:s,type:r,source_id:t,location:n}).end((()=>console.log("ENTER PAGE")))}catch(e){console.log(e)}})),o()(this,"trackLeave",(async()=>{const{apiBaseUrl:e,summitId:o,sourceId:t,sourceName:r}=this.props,n=this.getLocation();try{const s=await(0,u.getAccessToken)();d().post(`${e}/api/v1/summits/${o}/metrics/leave`).send({access_token:s,type:r,source_id:t,location:n}).end((()=>console.log("LEFT PAGE")))}catch(e){console.log(e)}})),o()(this,"onBeforeUnload",(async()=>{const{apiBaseUrl:e,summitId:o,sourceId:t,sourceName:r}=this.props,n=this.getLocation();try{const s=await(0,u.getAccessToken)();return void navigator.sendBeacon(`${e}/api/v1/summits/${o}/metrics/leave?access_token=${s}&type=${r}&source_id=${t}&location=${n}`,{})}catch(e){console.log(e)}})),o()(this,"getLocation",(()=>"undefined"!=typeof window?encodeURIComponent(window.location.href):""))}componentDidMount(){const{trackEnter:e,onBeforeUnload:o}=this;e(),"undefined"!=typeof window&&window.addEventListener("beforeunload",o)}componentWillUnmount(){const{trackLeave:e,onBeforeUnload:o}=this;e(),"undefined"!=typeof window&&window.removeEventListener("beforeunload",o)}render(){return null}}l.propTypes={sourceName:a().string,sourceId:a().number,summitId:a().number.isRequired,apiBaseUrl:a().string.isRequired},l.defaultProps={sourceId:0,sourceName:"GENERAL"};const p=l})(),r})()));
|
package/lib/components/clock.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
!function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define("openstack-uicore-foundation",[],e):"object"==typeof exports?exports["openstack-uicore-foundation"]=e():t["openstack-uicore-foundation"]=e()}(this,(()=>(()=>{"use strict";var t={1186:(t,e,r)=>{
|
|
1
|
+
!function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define("openstack-uicore-foundation",[],e):"object"==typeof exports?exports["openstack-uicore-foundation"]=e():t["openstack-uicore-foundation"]=e()}(this,(()=>(()=>{"use strict";var t={1186:(t,e,r)=>{r.d(e,{default:()=>o});var i=r(8779),s=r.n(i);function n(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);e&&(i=i.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),r.push.apply(r,i)}return r}class o{constructor(){this.originalHash="",this.hash={}}convertToHash(t){let e=(t=t.substr(1).toLowerCase()).split("&"),r={};for(let t of e){if(t=t.split("="),2!==t.length)continue;let e=t[1].trim();""!==e&&("true"!==e&&"false"!==e||(t[1]="true"==e),r[t[0]]=t[1])}return r}clearParams(){this.originalHash="",this.hash={}}getParam(t){return"undefined"!=typeof window&&this.originalHash!==window.location.hash&&(this.originalHash=window.location.hash,this.hash=this.convertToHash(this.originalHash)),this.hash.hasOwnProperty(t)?this.hash[t]:null}getParams(){return"undefined"!=typeof window&&this.originalHash!==window.location.hash&&(this.originalHash=window.location.hash,this.hash=this.convertToHash(this.originalHash)),function(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?n(Object(r),!0).forEach((function(e){s()(t,e,r[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):n(Object(r)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))}))}return t}({},this.hash)}deleteParam(t){var e=this.getParams();this.clearParams();for(let r in e)r!=t&&(this.hash[r]=e[r])}deleteParams(t){var e=this.getParams();this.clearParams();for(let r in e)t.includes(r)||(this.hash[r]=e[r])}setParam(t,e){return"undefined"!=typeof window&&this.originalHash!==window.location.hash&&(this.originalHash=window.location.hash,this.hash=this.convertToHash(this.originalHash)),null!==e&&""!==e?this.hash[t]=e:delete this.hash[t],this}serialize(){let t="";for(let e in this.hash){""!==t&&(t+="&"),t+=e+"="+this.hash[e]}return t}}},6793:(t,e,r)=>{r.d(e,{getTimeServiceUrl:()=>i});r(8362),r(6530);const i=()=>"undefined"!=typeof window?window.TIMEINTERVALSINCE1970_API_URL||process.env.TIMEINTERVALSINCE1970_API_URL:null},8779:t=>{t.exports=require("@babel/runtime/helpers/defineProperty")},8362:t=>{t.exports=require("moment-timezone")},6689:t=>{t.exports=require("react")},6530:t=>{t.exports=require("urijs")}},e={};function r(i){var s=e[i];if(void 0!==s)return s.exports;var n=e[i]={exports:{}};return t[i](n,n.exports,r),n.exports}(()=>{r.n=t=>{var e=t&&t.__esModule?()=>t.default:()=>t;return r.d(e,{a:e}),e}})(),(()=>{r.d=(t,e)=>{for(var i in e)r.o(e,i)&&!r.o(t,i)&&Object.defineProperty(t,i,{enumerable:!0,get:e[i]})}})(),(()=>{r.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e)})(),(()=>{r.r=t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})}})();var i={};return(()=>{r.r(i),r.d(i,{default:()=>u});var t=r(8779),e=r.n(t),s=r(6689),n=r.n(s),o=r(8362),a=r.n(o),h=r(1186),l=r(6793);class c extends n().Component{constructor(t){super(t),e()(this,"getServerTime",(async()=>{const t=(0,l.getTimeServiceUrl)();let e=await fetch(`${t}`).catch((t=>(console.log(t),null)));return await e.json()})),e()(this,"tick",(()=>{const{timestamp:t}=this.state;null!==t&&(this.props.onTick(t+1),this.setState({timestamp:t+1}))})),e()(this,"now",(()=>this.state.timestamp)),this.fragmentParser=new h.default,this.interval=null,this.state={timestamp:null}}async componentDidMount(){const{timezone:t="UTC",now:e}=this.props,r=this.fragmentParser.getParam("now"),i=a().tz(r,"YYYY-MM-DD,hh:mm:ss",t);let s;if(i.isValid())s=i.valueOf()/1e3;else if(e)s=e;else{const t=a()().unix(),e=await this.getServerTime(),r=a()().unix();s=e?e.timestamp+(r-t):r}this.setState({timestamp:s}),this.props.onTick(s),this.interval=setInterval(this.tick,1e3)}componentWillUnmount(){clearInterval(this.interval)}render(){const{display:t,timezone:e="UTC"}=this.props,{timestamp:r}=this.state;return t&&r?n().createElement("div",{style:{marginTop:"50px",textAlign:"center",fontSize:"20px"}},a().tz(1e3*r,e).format("YYYY-MM-DD hh:mm:ss")):null}}const u=c})(),i})()));
|
|
@@ -1 +1 @@
|
|
|
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={2230:(e,t,r)=>{r.d(t,{default:()=>m});var a=r(580),n=r.n(a),s=r(6689),l=r.n(s),i=r(4656),o=r.n(i),u=r(418);const c=["onChange","value","className","options","id","children","error","disabled","name","ariaLabelledBy"];function d(e,t){if(null==e)return{};var r,a,n=function(e,t){if(null==e)return{};var r,a,n={},s=Object.keys(e);for(a=0;a<s.length;a++)r=s[a],t.indexOf(r)>=0||(n[r]=e[r]);return n}(e,t);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(a=0;a<s.length;a++)r=s[a],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}class m extends l().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)),r=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);r.push(t)}else r=r.filter((t=>t!=e.target.value));else r=r.filter((e=>t.includes(e))),r.push(e.target.value);let a={target:{id:this.props.id,value:r,type:"checkboxlist"}};this.props.onChange(a)}handleOtherCBChange(e){this.setState({otherChecked:e.target.checked})}render(){let e,t=this.props,{onChange:r,value:a,className:n,options:s,id:i,children:m,error:p,disabled:h,name:b,ariaLabelledBy:f}=t,{otherChecked:y}=(d(t,c),this.state),v=this.props.hasOwnProperty("inline"),g=this.props.hasOwnProperty("html"),_=this.props.hasOwnProperty("allowOther"),O=!!a&&a.find((e=>!s.map((e=>e.value)).includes(e))),E=this.props.hasOwnProperty("error")&&""!==p,w=this.props.hasOwnProperty("disabled")&&1==h;return e=v?{paddingLeft:"22px",marginLeft:"20px",float:"left"}:{paddingLeft:"22px",marginTop:"7px"},l().createElement("div",{id:`chl_wrapper_${i}`,"aria-labelledby":f},l().createElement("div",{className:"checkboxes-div"+(E?" error":"")},s.map((t=>{let r=!!a&&a.includes(t.value);return l().createElement("div",{className:"form-check abc-checkbox",key:"radio_key_"+t.value,style:e},l().createElement("input",{type:"checkbox",id:`cb_${i}_${t.value}`,name:b||i,checked:r,disabled:w,onChange:this.handleChange,className:"form-check-input",value:t.value}),l().createElement("label",{className:"form-check-label",htmlFor:`cb_${i}_${t.value}`},g&&l().createElement(u.default,null,t.label),!g&&t.label))})),_&&l().createElement("div",{className:"form-check abc-checkbox",style:e},l().createElement("input",{type:"checkbox",id:"cb_other"+i,checked:y,disabled:w,onChange:this.handleOtherCBChange,className:"form-check-input",value:"other"}),l().createElement("label",{className:"form-check-label",htmlFor:"cb_other"+i},o().translate("general.other"))),_&&y&&l().createElement("div",{style:{paddingLeft:"22px",width:"50%"}},l().createElement("input",{className:"form-control",disabled:w,onChange:this.handleChange,value:O}))),E&&l().createElement("p",{className:"error-label"},p))}}m.defaultProps={ariaLabelledBy:null},m.propTypes={id:n().string.isRequired}},401:(e,t,r)=>{r.d(t,{default:()=>p});var a=r(6689),n=r.n(a),s=r(1929),l=r.n(s);const i=["onChange","value","className","error","clearable","disabled","overrideCSS","ariaLabelledBy"];function o(){return o=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(e[a]=r[a])}return e},o.apply(this,arguments)}function u(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,a)}return r}function c(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?u(Object(r),!0).forEach((function(t){d(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):u(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function d(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function m(e,t){if(null==e)return{};var r,a,n=function(e,t){if(null==e)return{};var r,a,n={},s=Object.keys(e);for(a=0;a<s.length;a++)r=s[a],t.indexOf(r)>=0||(n[r]=e[r]);return n}(e,t);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(a=0;a<s.length;a++)r=s[a],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}class p extends n().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 r={target:{id:this.props.id,value:t,type:"dropdown"}};this.props.onChange(r)}render(){let e=this.props,{onChange:t,value:r,className:a,error:s,clearable:u,disabled:d,overrideCSS:p,ariaLabelledBy:h}=e,b=m(e,i),f=this.props.hasOwnProperty("error")&&""!=s,y=this.props.hasOwnProperty("clearable"),v=this.props.hasOwnProperty("disabled")&&1==d,g=null,_=a;this.props.hasOwnProperty("overrideCSS")&&0!=p||(_="dropdown "+a+" "+(f?"error":"")),g=this.props.isMulti?this.props.options.filter((e=>r.includes(e.value))):r instanceof Object||null==r?r:this.props.options.find((e=>e.value==r));const O={menu:e=>c(c({},e),{},{zIndex:999})};return n().createElement("div",null,n().createElement(l(),o({className:_,value:g,onChange:this.handleChange,isClearable:y,isDisabled:v,styles:O,"aria-labelledby":h},b)),f&&n().createElement("p",{className:"error-label"},s))}}p.defaultProps={ariaLabelledBy:null}},7027:(e,t,r)=>{r.d(t,{default:()=>c});var a=r(6689),n=r.n(a),s=r(418),l=r(580),i=r.n(l);const o=["onChange","value","className","error","ariaLabelledBy","disabled","options","id","name"];function u(e,t){if(null==e)return{};var r,a,n=function(e,t){if(null==e)return{};var r,a,n={},s=Object.keys(e);for(a=0;a<s.length;a++)r=s[a],t.indexOf(r)>=0||(n[r]=e[r]);return n}(e,t);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(a=0;a<s.length;a++)r=s[a],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}class c extends n().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,r,a,l){return r?n().createElement("label",{className:"form-check-label",htmlFor:`radio_${t}_${e.value}`,style:{display:"inline-block"}},l&&n().createElement(s.default,null,e.label),!l&&e.label):a?n().createElement("label",{className:"form-check-label",htmlFor:`radio_${t}_${e.value}`},e.label):n().createElement("label",{className:"form-check-label",htmlFor:`radio_${t}_${e.value}`,style:{display:"inline-block"}},n().createElement("h4",{style:{marginTop:"0px"}},e.label),n().createElement(s.default,null,e.description))}render(){let e,t=this.props,{onChange:r,value:a,className:s,error:l,ariaLabelledBy:i,disabled:c,options:d,id:m,name:p}=t,h=(u(t,o),this.props.hasOwnProperty("error")&&""!=l),b=this.props.hasOwnProperty("inline"),f=this.props.hasOwnProperty("simple"),y=this.props.hasOwnProperty("html"),v=this.props.hasOwnProperty("disabled")&&1==c;return e=b?{paddingLeft:"22px",marginLeft:"20px",float:"left"}:{paddingLeft:"22px"},n().createElement("div",{id:`rl_wrapper_${m}`,"aria-labelledby":i},d.map((t=>{let r=t.value==a;return n().createElement("div",{className:"form-check abc-radio",key:`radio_key_${m}_${t.value}`,style:e},n().createElement("input",{className:"form-check-input",type:"radio",id:`radio_${m}_${t.value}`,value:t.value,checked:r,onChange:this.handleChange,disabled:v,name:p||`radio_${m}`}),this.getLabel(t,m,b,f,y))})),h&&n().createElement("p",{className:"error-label"},l))}}c.defaultProps={ariaLabelledBy:null},c.propTypes={id:i().string.isRequired}},1833:(e,t,r)=>{r.d(t,{default:()=>o});var a=r(6689),n=r.n(a);const s=["onChange","value","className","error","ariaLabelledBy","containerClassName"];function l(){return l=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(e[a]=r[a])}return e},l.apply(this,arguments)}function i(e,t){if(null==e)return{};var r,a,n=function(e,t){if(null==e)return{};var r,a,n={},s=Object.keys(e);for(a=0;a<s.length;a++)r=s[a],t.indexOf(r)>=0||(n[r]=e[r]);return n}(e,t);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(a=0;a<s.length;a++)r=s[a],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}class o extends n().Component{constructor(e){super(e),this.handleChange=this.handleChange.bind(this)}componentDidUpdate(e,t,r){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:r,className:a,error:o,ariaLabelledBy:u,containerClassName:c}=e,d=i(e,s),m=this.props.hasOwnProperty("error")&&""!==o,p=this.props.hasOwnProperty("className")?a:"form-control",h=this.props.hasOwnProperty("containerClassName")?c:"container-form-control";return n().createElement("div",{className:h},n().createElement("input",l({className:`${p} ${m?"error":""}`,ref:e=>{this.input=e},defaultValue:r,"aria-labelledby":u,onChange:this.handleChange},d)),m&&n().createElement("p",{className:"error-label"},o))}}o.defaultProps={ariaLabelledBy:null}},418:(e,t,r)=>{r.d(t,{default:()=>s});var a=r(6689),n=r.n(a);const s=({children:e,replaceNewLine:t=!1,className:r=""})=>n().createElement("span",{className:r,dangerouslySetInnerHTML:{__html:t?null==e?void 0:e.replace(/\n/g,"<br />"):e}})},1995:(e,t,r)=>{function a(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,a)}return r}function n(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?a(Object(r),!0).forEach((function(t){s(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):a(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function s(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}r.d(t,{default:()=>m});const l="ComboBox",i="CheckBoxList",o="RadioButtonList",u=[l,i,o],c="And",d="Equal";class m{constructor(e,t=[]){s(this,"_parseQuestion",(e=>{if(this.questionByName[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)})),s(this,"_parseQuestions",(()=>{for(let e of this.questions)this._parseQuestion(e)})),s(this,"_allowsValues",(e=>u.includes(e.type))),s(this,"_allowsValue",((e,t)=>{let r=t.value.split(",").map((e=>parseInt(e)));for(let t of r)if(!e.values.map((e=>e.id)).includes(t))return!1;return!0})),s(this,"_getAnswerFor",(e=>{let t=Number.isInteger(e)?e:e.id,r=this.answers[t]||null;return r||null})),s(this,"_hasValue",(e=>""!==e.value)),s(this,"_answerContains",((e,t)=>e.value.split(",").includes(t))),s(this,"_isSubQuestionVisible",(e=>{let t=e.answer_values_operator===c;const r=this._getAnswerFor(e.parent_question_id);if(r)switch(e.visibility_condition){case d:for(let a of e.answer_values)t=e.answer_values_operator===c?t&&this._answerContains(r,a):t||this._answerContains(r,a);break;case"NotEqual":for(let a of e.answer_values)t=e.answer_values_operator===c?t&&!this._answerContains(r,a):t||!this._answerContains(r,a)}else t=e.visibility_condition!==d;return"Visible"===e.visibility?t:!t})),s(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 r of e.parent_rules)if(this._isSubQuestionVisible(this.rules[r]))return!e.mandatory||!!t&&(!!this._hasValue(t)&&!(this._allowsValues(e)&&!this._allowsValue(e,t)));return!0})),s(this,"_checkQuestion",(e=>{let t=this._isAnswered(e);if(e.hasOwnProperty("sub_question_rules"))for(let r of e.sub_question_rules)t=t&&this._checkQuestion(r.sub_question);return t})),s(this,"_formatQuestionAnswer",(e=>{var t;let r={},a=null===(t=this.originalAnswers.find((t=>t.question_id===e.id)))||void 0===t?void 0:t.value;if(a&&("CheckBox"===e.type&&(a="false"!==a&&!!a),e.type!==o&&e.type!==l||(a=parseInt(a)),e.type===i&&(a=a.split(",").map((e=>parseInt(e)))||[])),r[e.name]=a||"",e.type===i&&""===r[e.name]&&(r[e.name]=[]),e.hasOwnProperty("sub_question_rules"))for(let t of e.sub_question_rules){let e=this._formatQuestionAnswer(t.sub_question);r=n(n({},r),e)}return r})),s(this,"formatAnswers",(()=>{let e={};return this.questions.forEach((t=>{let r=this._formatQuestionAnswer(t);e=n(n({},e),r)})),e})),s(this,"completed",(()=>{let e=!0;for(let t of this.questions)e=e&&this._checkQuestion(t);return e})),s(this,"getQuestionByName",(e=>this.questionByName[e]||null)),s(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()}}},4656:e=>{e.exports=require("i18n-react/dist/i18n-react")},580:e=>{e.exports=require("prop-types")},6689:e=>{e.exports=require("react")},1929:e=>{e.exports=require("react-select")}},t={};function r(a){var n=t[a];if(void 0!==n)return n.exports;var s=t[a]={exports:{}};return e[a](s,s.exports,r),s.exports}(()=>{r.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return r.d(t,{a:t}),t}})(),(()=>{r.d=(e,t)=>{for(var a in t)r.o(t,a)&&!r.o(e,a)&&Object.defineProperty(e,a,{enumerable:!0,get:t[a]})}})(),(()=>{r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t)})(),(()=>{r.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})}})();var a={};return(()=>{r.r(a),r.d(a,{default:()=>C});var e=r(6689),t=r.n(e),n=r(580),s=r.n(n),l=r(418),i=r(1833),o=r(401),u=r(7027),c=r(2230),d=r(1995);const m=require("react-final-form"),p=["input","meta","question","className","isDisabled","isRequired"],h=["input","meta","question","isDisabled","isRequired"],b=["input","meta","question","isDisabled","isRequired"],f=["input","meta","question","isDisabled","isRequired","maxValues"];function y(){return y=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(e[a]=r[a])}return e},y.apply(this,arguments)}function v(e,t){if(null==e)return{};var r,a,n=function(e,t){if(null==e)return{};var r,a,n={},s=Object.keys(e);for(a=0;a<s.length;a++)r=s[a],t.indexOf(r)>=0||(n[r]=e[r]);return n}(e,t);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(a=0;a<s.length;a++)r=s[a],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}const g=e=>{let{input:r,meta:a,question:n,className:s,isDisabled:l,isRequired:o}=e,u=v(e,p);return t().createElement(i.default,y({},r,u,{containerClassName:s,name:n.name,ariaLabelledBy:`${n.name} label`,id:n.name,value:r.value,disabled:l,required:o,onChange:r.onChange,placeholder:n.placeholder}))},_=e=>{let{input:r,meta:a,question:n,isDisabled:s,isRequired:l}=e,i=v(e,h);return t().createElement(u.default,y({},r,i,{name:n.name,ariaLabelledBy:`${n.name} label`,id:n.name,overrideCSS:!0,value:r.value,disabled:s,required:l,onChange:r.onChange}))},O=e=>{let{input:r,meta:a,question:n,isDisabled:s,isRequired:l}=e,i=v(e,b);return t().createElement(o.default,y({},r,i,{name:n.name,ariaLabelledBy:`${n.name} label`,id:n.name,overrideCSS:!0,value:r.value,disabled:s,required:l,onChange:r.onChange}))},E=e=>{let{input:r,meta:a,question:n,isDisabled:s,isRequired:l,maxValues:i}=e,o=v(e,f);return t().createElement(c.default,y({},r,o,{id:n.name,name:n.name,ariaLabelledBy:`${n.name} label`,value:r.value,disabled:s,required:l,onChange:e=>{const t=e.target.value;return i>0&&t.length>i?null:r.onChange(e)}}))},w=e=>e?e=>e?void 0:"Required":()=>{},q=t().forwardRef((({extraQuestions:r,userAnswers:a,onAnswerChanges:n,className:s="questions-form",questionContainerClassName:i="question-container",questionLabelContainerClassName:o="question-label-container",questionControlContainerClassName:u="question-control-container",readOnly:c=!1,debug:p=!1,buttonText:h="Submit",RequiredErrorMessage:b="Required",ValidationErrorClassName:f="extra-question-error",allowExtraQuestionsEdit:y=!0,onError:v=(e=>console.log("form errors: ",e))},q)=>{let C=null;const N=(0,e.useRef)({}),[k,x]=(0,e.useState)({});(0,e.useEffect)((()=>{j()}),[r]);const j=()=>{const e=new d.default(r,a);x(e.formatAnswers())},P=({when:e,rule:r,children:a})=>t().createElement(m.Field,{name:e,subscription:{value:!0}},(({input:{value:e}})=>L(r,B(e,r),a))),S=({name:e})=>t().createElement(m.Field,{name:e,subscription:{error:!0,touched:!0}},(({meta:{error:e,touched:r}})=>e&&r?t().createElement("div",{className:f},e):null)),B=(e,t)=>{let r=t.answer_values;if(Array.isArray(e)){if(!e.length)return!1;let a="And"===t.answer_values_operator;return r.forEach((r=>{a="And"===t.answer_values_operator?a&&e.includes(parseInt(r)):a||e.includes(parseInt(r))})),a}return r.includes(e.toString())},L=(e,t,r)=>"Visible"===e.visibility?"Equal"===e.visibility_condition?t?r:(delete N.current[e.sub_question.id],null):t?(delete N.current[e.sub_question.id],null):r:"Equal"===e.visibility_condition?t?(delete N.current[e.sub_question.id],null):r:t?r:(delete N.current[e.sub_question.id],null),$=e=>{const t=String.fromCharCode(160),r=document.createElement("div");r.innerHTML=e.label;const a=r.textContent||r.innerText||"",n=e.mandatory?`${a}${t}<b>*</b>`:a;return`<label id="${e.name} label" htmlFor="${e.name}">\n ${n}\n </label>`},F=r=>{let a=r.values;const n=!y&&((e,t)=>{if(!t.hasOwnProperty(e.name))return!1;const r=t[e.name];return Array.isArray(r)||"string"==typeof r?r.length>0:"number"==typeof r?r>0:"boolean"==typeof r&&r})(r,k);var s,c,d;if("Text"===r.type)return t().createElement(e.Fragment,{key:r.name},t().createElement("div",{ref:e=>N.current[r.id]=e,className:i},t().createElement(l.default,{className:o},$(r)),t().createElement("div",{className:u},t().createElement(m.Field,{name:r.name,question:r,isDisabled:n,isRequired:r.mandatory,validate:w(r.mandatory),component:g}),t().createElement(S,{name:r.name}))),(null===(s=r.sub_question_rules)||void 0===s?void 0:s.length)>0&&r.sub_question_rules.map((e=>t().createElement(P,{key:e.id,when:r.name,rule:e},F(e.sub_question)))));if("TextArea"===r.type)return t().createElement(e.Fragment,{key:r.name},t().createElement("div",{ref:e=>N.current[r.id]=e,className:i},t().createElement(l.default,{className:o},$(r)),t().createElement("div",{className:u},t().createElement(m.Field,{validate:w(r.mandatory),name:r.name,id:r.name,disabled:n,required:r.mandatory,component:"textarea"}),t().createElement(S,{name:r.name}))),(null===(c=r.sub_question_rules)||void 0===c?void 0:c.length)>0&&r.sub_question_rules.map((e=>t().createElement(P,{key:e.id,when:r.name,rule:e},F(e.sub_question)))));if("CheckBox"===r.type)return t().createElement(e.Fragment,{key:r.name},t().createElement("div",{ref:e=>N.current[r.id]=e,style:{display:"flex"},className:i},t().createElement(l.default,{className:`eq-checkbox-label ${o}`},$(r)),t().createElement("div",{className:u},t().createElement("div",{className:"form-check abc-checkbox"},t().createElement(m.Field,{name:r.name,id:r.name,validate:w(r.mandatory),disabled:n,required:r.mandatory,type:"checkbox",className:"form-check-input",component:"input"}),t().createElement("label",{className:"form-check-label",htmlFor:r.name}),t().createElement(S,{name:r.name})))),(null===(d=r.sub_question_rules)||void 0===d?void 0:d.length)>0&&r.sub_question_rules.map((e=>t().createElement(P,{key:e.id,when:r.name,rule:e},F(e.sub_question)))));if("RadioButtonList"===r.type){var p;const s=a.map((e=>({label:e.label,value:e.id})));return t().createElement(e.Fragment,{key:r.name},t().createElement("div",{key:r.name,ref:e=>N.current[r.id]=e,className:i},t().createElement(l.default,{className:o},$(r)),t().createElement("div",{className:u},t().createElement(m.Field,{name:r.name,options:s,question:r,validate:w(r.mandatory),isDisabled:n,isRequired:r.mandatory,component:_}),t().createElement(S,{name:r.name}))),(null===(p=r.sub_question_rules)||void 0===p?void 0:p.length)>0&&r.sub_question_rules.map((e=>t().createElement(P,{key:e.id,when:r.name,rule:e},F(e.sub_question)))))}if("ComboBox"===r.type){var h;const s=a.map((e=>({label:e.label,value:e.id})));return t().createElement(e.Fragment,{key:r.name},t().createElement("div",{ref:e=>N.current[r.id]=e,className:i},t().createElement(l.default,{className:o},$(r)),t().createElement("div",{className:u},t().createElement(m.Field,{name:r.name,options:s,question:r,validate:w(r.mandatory),isDisabled:n,isRequired:r.mandatory,component:O}),t().createElement(S,{name:r.name}))),(null===(h=r.sub_question_rules)||void 0===h?void 0:h.length)>0&&r.sub_question_rules.map((e=>t().createElement(P,{key:e.id,when:r.name,rule:e},F(e.sub_question)))))}if("CheckBoxList"===r.type){var b;const s=a.map((e=>({label:e.label,value:e.id})));return t().createElement(e.Fragment,{key:r.name},t().createElement("div",{ref:e=>N.current[r.id]=e,className:i},t().createElement(l.default,{className:o},$(r)),t().createElement("div",{className:u},t().createElement(m.Field,{name:r.name,className:u,validate:w(r.mandatory),options:s,question:r,maxValues:r.max_selected_values,isDisabled:n,isRequired:r.mandatory,component:E}),t().createElement(S,{name:r.name}))),(null===(b=r.sub_question_rules)||void 0===b?void 0:b.length)>0&&r.sub_question_rules.map((e=>t().createElement(P,{key:e.id,when:r.name,rule:e},F(e.sub_question)))))}return null},R=(e,t,r)=>{var a;e.mandatory&&(e=>!!N.current[e.id])(e)&&(t.hasOwnProperty(e.name)&&""!==t[e.name]&&0!==t[e.name].length||(r[e.name]=b)),null===(a=e.sub_question_rules)||void 0===a||a.forEach((e=>{R(e.sub_question,t,r)}))};if(!Object.keys(k).length)return null;const A=(e,t,r)=>{var a;t.includes(e.name)&&r.push(e),null===(a=e.sub_question_rules)||void 0===a||a.forEach((e=>{A(e.sub_question,t,r)}))};return Object.keys(k).length?t().createElement("div",{className:s},t().createElement(m.Form,{validate:e=>{const t={};return r.forEach((r=>{R(r,e,t)})),Object.keys(t).length>0&&v(t),t},onSubmit:e=>{n(e)},initialValues:k},(({handleSubmit:e,form:a,submitting:n,pristine:s,values:l})=>(C=e,t().createElement("form",{onSubmit:t=>{const n=a.getRegisteredFields().filter((e=>a.getFieldState(e).invalid));n.length>0&&(e=>{const t=[];r.forEach((r=>{A(r,e,t)}));const a=t.sort(((e,t)=>e.order>t.order))[0];N.current[a.id].scrollIntoView({behavior:"smooth",block:"center"})})(n),e(t)},ref:q},c?t().createElement("fieldset",{disabled:"disabled"},r.map((e=>F(e)))):r.map((e=>F(e))),p&&t().createElement("pre",null,JSON.stringify(l,0,2)))))),!q&&t().createElement("button",{type:"submit",onClick:e=>{C(e)},style:{marginTop:10}},h)):null}));q.propTypes={extraQuestions:s().array.isRequired,userAnswers:s().array.isRequired,onAnswerChanges:s().func.isRequired,className:s().string,debug:s().bool,buttonText:s().string,questionContainerClassName:s().string,questionLabelContainerClassName:s().string,questionControlContainerClassName:s().string,RequiredErrorMessage:s().string,ValidationErrorClassName:s().string,allowExtraQuestionsEdit:s().bool};const C=q})(),a})()));
|
|
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={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);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:f}=(n()(t,m),this.state),y=this.props.hasOwnProperty("inline"),v=this.props.hasOwnProperty("html"),_=this.props.hasOwnProperty("allowOther"),q=!!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=y?{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}`},v&&o().createElement(d.default,null,t.label),!v&&t.label))})),_&&o().createElement("div",{className:"form-check abc-checkbox",style:e},o().createElement("input",{type:"checkbox",id:"cb_other"+i,checked:f,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"))),_&&f&&o().createElement("div",{style:{paddingLeft:"22px",width:"50%"}},o().createElement("input",{className:"form-control",disabled:C,onChange:this.handleChange,value:q}))),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,f=this.props.hasOwnProperty("clearable"),y=this.props.hasOwnProperty("disabled")&&1==i,v=null,_=r;this.props.hasOwnProperty("overrideCSS")&&0!=u||(_="dropdown "+r+" "+(g?"error":"")),v=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 q={menu:e=>b(b({},e),{},{zIndex:999})};return c().createElement("div",null,c().createElement(m(),n()({className:_,value:v,onChange:this.handleChange,isClearable:f,isDisabled:y,styles:q,"aria-labelledby":d},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);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,n){return a?l().createElement("label",{className:"form-check-label",htmlFor:`radio_${t}_${e.value}`,style:{display:"inline-block"}},n&&l().createElement(i.default,null,e.label),!n&&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"),f=this.props.hasOwnProperty("html"),y=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:y,name:p||`radio_${m}`}),this.getLabel(t,m,b,g,f))})),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:()=>s});var r=a(6689),n=a.n(r);const s=({children:e,replaceNewLine:t=!1,className:a=""})=>n().createElement("span",{className:a,dangerouslySetInnerHTML:{__html:t?null==e?void 0:e.replace(/\n/g,"<br />"):e}})},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;let a={};const r=(0,s.toSlug)(e.name);let n=null===(t=this.originalAnswers.find((t=>t.question_id===e.id)))||void 0===t?void 0:t.value;if(n&&("CheckBox"===e.type&&(n="false"!==n&&!!n),e.type!==c&&e.type!==o||(n=parseInt(n)),e.type===u&&(n=n.split(",").map((e=>parseInt(e)))||[])),a[r]=n||"",e.type===u&&""===a[r]&&(a[r]=[]),e.hasOwnProperty("sub_question_rules"))for(let t of e.sub_question_rules){let e=this._formatQuestionAnswer(t.sub_question);a=i(i({},a),e)}return a})),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")},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:()=>k});var e=a(8213),t=a.n(e),n=a(3838),s=a.n(n),l=a(6689),i=a.n(l),o=a(580),u=a.n(o),c=a(418),d=a(1833),m=a(401),p=a(7027),h=a(2230),b=a(1995);const g=require("react-final-form");var f=a(6793);const y=["input","meta","question","className","isDisabled","isRequired"],v=["input","meta","question","isDisabled","isRequired"],_=["input","meta","question","isDisabled","isRequired"],q=["input","meta","question","isDisabled","isRequired","maxValues"],E=e=>{let{input:a,meta:r,question:n,className:l,isDisabled:o,isRequired:u}=e,c=s()(e,y);return i().createElement(d.default,t()({},a,c,{containerClassName:l,name:(0,f.toSlug)(n.name),ariaLabelledBy:`${(0,f.toSlug)(n.name)} label`,id:(0,f.toSlug)(n.name),value:a.value,disabled:o,required:u,onChange:a.onChange,placeholder:n.placeholder}))},C=e=>{let{input:a,meta:r,question:n,isDisabled:l,isRequired:o}=e,u=s()(e,v);return i().createElement(p.default,t()({},a,u,{name:(0,f.toSlug)(n.name),ariaLabelledBy:`${(0,f.toSlug)(n.name)} label`,id:(0,f.toSlug)(n.name),overrideCSS:!0,value:a.value,disabled:l,required:o,onChange:a.onChange}))},w=e=>{let{input:a,meta:r,question:n,isDisabled:l,isRequired:o}=e,u=s()(e,_);return i().createElement(m.default,t()({},a,u,{name:(0,f.toSlug)(n.name),ariaLabelledBy:`${(0,f.toSlug)(n.name)} label`,id:(0,f.toSlug)(n.name),overrideCSS:!0,value:a.value,disabled:l,required:o,onChange:a.onChange}))},S=e=>{let{input:a,meta:r,question:n,isDisabled:l,isRequired:o,maxValues:u}=e,c=s()(e,q);return i().createElement(h.default,t()({},a,c,{id:(0,f.toSlug)(n.name),name:(0,f.toSlug)(n.name),ariaLabelledBy:`${(0,f.toSlug)(n.name)} label`,value:a.value,disabled:l,required:o,onChange:e=>{const t=e.target.value;return u>0&&t.length>u?null:a.onChange(e)}}))},N=e=>e?e=>e?void 0:"Required":()=>{},O=i().forwardRef((({extraQuestions:e,userAnswers:t,onAnswerChanges:a,className:r="questions-form",questionContainerClassName:n="question-container",questionLabelContainerClassName:s="question-label-container",questionControlContainerClassName:o="question-control-container",readOnly:u=!1,debug:d=!1,buttonText:m="Submit",RequiredErrorMessage:p="Required",ValidationErrorClassName:h="extra-question-error",allowExtraQuestionsEdit:y=!0,onError:v=(e=>console.log("form errors: ",e))},_)=>{let q=null;const O=(0,l.useRef)({}),[k,x]=(0,l.useState)({});(0,l.useEffect)((()=>{P()}),[e]);const P=()=>{const a=new b.default(e,t);x(a.formatAnswers())},B=({when:e,rule:t,children:a})=>i().createElement(g.Field,{name:e,subscription:{value:!0}},(({input:{value:e}})=>$(t,L(e,t),a))),j=({name:e})=>i().createElement(g.Field,{name:e,subscription:{error:!0,touched:!0}},(({meta:{error:e,touched:t}})=>e&&t?i().createElement("div",{className:h},e):null)),L=(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())},$=(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),F=e=>{const t=String.fromCharCode(160),a=document.createElement("div");a.innerHTML=e.label;const r=a.textContent||a.innerText||"",n=e.mandatory?`${r}${t}<b>*</b>`:r;return`<label id="${(0,f.toSlug)(e.name)} label" htmlFor="${(0,f.toSlug)(e.name)}">\n ${n}\n </label>`},A=e=>{let t=e.values;const a=!y&&((e,t)=>{const a=(0,f.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,k);var r,u,d;if("Text"===e.type)return i().createElement(l.Fragment,{key:(0,f.toSlug)(e.name)},i().createElement("div",{ref:t=>O.current[e.id]=t,className:n},i().createElement(c.default,{className:s},F(e)),i().createElement("div",{className:o},i().createElement(g.Field,{name:(0,f.toSlug)(e.name),question:e,isDisabled:a,isRequired:e.mandatory,validate:N(e.mandatory),component:E}),i().createElement(j,{name:(0,f.toSlug)(e.name)}))),(null===(r=e.sub_question_rules)||void 0===r?void 0:r.length)>0&&e.sub_question_rules.map((t=>i().createElement(B,{key:t.id,when:(0,f.toSlug)(e.name),rule:t},A(t.sub_question)))));if("TextArea"===e.type)return i().createElement(l.Fragment,{key:(0,f.toSlug)(e.name)},i().createElement("div",{ref:t=>O.current[e.id]=t,className:n},i().createElement(c.default,{className:s},F(e)),i().createElement("div",{className:o},i().createElement(g.Field,{validate:N(e.mandatory),name:(0,f.toSlug)(e.name),id:(0,f.toSlug)(e.name),disabled:a,required:e.mandatory,component:"textarea"}),i().createElement(j,{name:(0,f.toSlug)(e.name)}))),(null===(u=e.sub_question_rules)||void 0===u?void 0:u.length)>0&&e.sub_question_rules.map((t=>i().createElement(B,{key:t.id,when:(0,f.toSlug)(e.name),rule:t},A(t.sub_question)))));if("CheckBox"===e.type)return i().createElement(l.Fragment,{key:(0,f.toSlug)(e.name)},i().createElement("div",{ref:t=>O.current[e.id]=t,style:{display:"flex"},className:n},i().createElement(c.default,{className:`eq-checkbox-label ${s}`},F(e)),i().createElement("div",{className:o},i().createElement("div",{className:"form-check abc-checkbox"},i().createElement(g.Field,{name:(0,f.toSlug)(e.name),id:(0,f.toSlug)(e.name),validate:N(e.mandatory),disabled:a,required:e.mandatory,type:"checkbox",className:"form-check-input",component:"input"}),i().createElement("label",{className:"form-check-label",htmlFor:(0,f.toSlug)(e.name)}),i().createElement(j,{name:(0,f.toSlug)(e.name)})))),(null===(d=e.sub_question_rules)||void 0===d?void 0:d.length)>0&&e.sub_question_rules.map((t=>i().createElement(B,{key:t.id,when:(0,f.toSlug)(e.name),rule:t},A(t.sub_question)))));if("RadioButtonList"===e.type){var m;const r=t.map((e=>({label:e.label,value:e.id})));return i().createElement(l.Fragment,{key:(0,f.toSlug)(e.name)},i().createElement("div",{key:(0,f.toSlug)(e.name),ref:t=>O.current[e.id]=t,className:n},i().createElement(c.default,{className:s},F(e)),i().createElement("div",{className:o},i().createElement(g.Field,{name:(0,f.toSlug)(e.name),options:r,question:e,validate:N(e.mandatory),isDisabled:a,isRequired:e.mandatory,component:C}),i().createElement(j,{name:(0,f.toSlug)(e.name)}))),(null===(m=e.sub_question_rules)||void 0===m?void 0:m.length)>0&&e.sub_question_rules.map((t=>i().createElement(B,{key:t.id,when:(0,f.toSlug)(e.name),rule:t},A(t.sub_question)))))}if("ComboBox"===e.type){var p;const r=t.map((e=>({label:e.label,value:e.id})));return i().createElement(l.Fragment,{key:(0,f.toSlug)(e.name)},i().createElement("div",{ref:t=>O.current[e.id]=t,className:n},i().createElement(c.default,{className:s},F(e)),i().createElement("div",{className:o},i().createElement(g.Field,{name:(0,f.toSlug)(e.name),options:r,question:e,validate:N(e.mandatory),isDisabled:a,isRequired:e.mandatory,component:w}),i().createElement(j,{name:(0,f.toSlug)(e.name)}))),(null===(p=e.sub_question_rules)||void 0===p?void 0:p.length)>0&&e.sub_question_rules.map((t=>i().createElement(B,{key:t.id,when:(0,f.toSlug)(e.name),rule:t},A(t.sub_question)))))}if("CheckBoxList"===e.type){var h;const r=t.map((e=>({label:e.label,value:e.id})));return i().createElement(l.Fragment,{key:(0,f.toSlug)(e.name)},i().createElement("div",{ref:t=>O.current[e.id]=t,className:n},i().createElement(c.default,{className:s},F(e)),i().createElement("div",{className:o},i().createElement(g.Field,{name:(0,f.toSlug)(e.name),className:o,validate:N(e.mandatory),options:r,question:e,maxValues:e.max_selected_values,isDisabled:a,isRequired:e.mandatory,component:S}),i().createElement(j,{name:(0,f.toSlug)(e.name)}))),(null===(h=e.sub_question_rules)||void 0===h?void 0:h.length)>0&&e.sub_question_rules.map((t=>i().createElement(B,{key:t.id,when:(0,f.toSlug)(e.name),rule:t},A(t.sub_question)))))}return null},R=(e,t,a)=>{var r;if(e.mandatory&&(e=>!!O.current[e.id])(e)){const r=(0,f.toSlug)(e.name);t.hasOwnProperty((0,f.toSlug)(r))&&""!==t[(0,f.toSlug)(r)]&&0!==t[r].length||(a[r]=p)}null===(r=e.sub_question_rules)||void 0===r||r.forEach((e=>{R(e.sub_question,t,a)}))};if(!Object.keys(k).length)return null;const D=(e,t,a)=>{var r;t.includes((0,f.toSlug)(e.name))&&a.push(e),null===(r=e.sub_question_rules)||void 0===r||r.forEach((e=>{D(e.sub_question,t,a)}))};return Object.keys(k).length?i().createElement("div",{className:r},i().createElement(g.Form,{validate:t=>{const a={};return e.forEach((e=>{R(e,t,a)})),Object.keys(a).length>0&&v(a),a},onSubmit:e=>{a(e)},initialValues:k},(({handleSubmit:t,form:a,submitting:r,pristine:n,values:s})=>(q=t,i().createElement("form",{onSubmit:r=>{const n=a.getRegisteredFields().filter((e=>a.getFieldState(e).invalid));n.length>0&&(t=>{const a=[];e.forEach((e=>{D(e,t,a)}));const r=a.sort(((e,t)=>e.order>t.order))[0];O.current[r.id].scrollIntoView({behavior:"smooth",block:"center"})})(n),t(r)},ref:_},u?i().createElement("fieldset",{disabled:"disabled"},e.map((e=>A(e)))):e.map((e=>A(e))),d&&i().createElement("pre",null,JSON.stringify(s,0,2)))))),!_&&i().createElement("button",{type:"submit",onClick:e=>{q(e)},style:{marginTop:10}},m)):null}));O.propTypes={extraQuestions:u().array.isRequired,userAnswers:u().array.isRequired,onAnswerChanges:u().func.isRequired,className:u().string,debug:u().bool,buttonText:u().string,questionContainerClassName:u().string,questionLabelContainerClassName:u().string,questionControlContainerClassName:u().string,RequiredErrorMessage:u().string,ValidationErrorClassName:u().string,allowExtraQuestionsEdit:u().bool};const k=O})(),r})()));
|
|
@@ -1 +1 @@
|
|
|
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={2230:(e,t,r)=>{r.d(t,{default:()=>u});var a=r(580),l=r.n(a),n=r(6689),s=r.n(n),o=r(4656),i=r.n(o),c=r(418);const p=["onChange","value","className","options","id","children","error","disabled","name","ariaLabelledBy"];function h(e,t){if(null==e)return{};var r,a,l=function(e,t){if(null==e)return{};var r,a,l={},n=Object.keys(e);for(a=0;a<n.length;a++)r=n[a],t.indexOf(r)>=0||(l[r]=e[r]);return l}(e,t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(a=0;a<n.length;a++)r=n[a],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(l[r]=e[r])}return l}class u extends s().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)),r=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);r.push(t)}else r=r.filter((t=>t!=e.target.value));else r=r.filter((e=>t.includes(e))),r.push(e.target.value);let a={target:{id:this.props.id,value:r,type:"checkboxlist"}};this.props.onChange(a)}handleOtherCBChange(e){this.setState({otherChecked:e.target.checked})}render(){let e,t=this.props,{onChange:r,value:a,className:l,options:n,id:o,children:u,error:d,disabled:m,name:b,ariaLabelledBy:f}=t,{otherChecked:v}=(h(t,p),this.state),y=this.props.hasOwnProperty("inline"),g=this.props.hasOwnProperty("html"),O=this.props.hasOwnProperty("allowOther"),C=!!a&&a.find((e=>!n.map((e=>e.value)).includes(e))),E=this.props.hasOwnProperty("error")&&""!==d,w=this.props.hasOwnProperty("disabled")&&1==m;return e=y?{paddingLeft:"22px",marginLeft:"20px",float:"left"}:{paddingLeft:"22px",marginTop:"7px"},s().createElement("div",{id:`chl_wrapper_${o}`,"aria-labelledby":f},s().createElement("div",{className:"checkboxes-div"+(E?" error":"")},n.map((t=>{let r=!!a&&a.includes(t.value);return s().createElement("div",{className:"form-check abc-checkbox",key:"radio_key_"+t.value,style:e},s().createElement("input",{type:"checkbox",id:`cb_${o}_${t.value}`,name:b||o,checked:r,disabled:w,onChange:this.handleChange,className:"form-check-input",value:t.value}),s().createElement("label",{className:"form-check-label",htmlFor:`cb_${o}_${t.value}`},g&&s().createElement(c.default,null,t.label),!g&&t.label))})),O&&s().createElement("div",{className:"form-check abc-checkbox",style:e},s().createElement("input",{type:"checkbox",id:"cb_other"+o,checked:v,disabled:w,onChange:this.handleOtherCBChange,className:"form-check-input",value:"other"}),s().createElement("label",{className:"form-check-label",htmlFor:"cb_other"+o},i().translate("general.other"))),O&&v&&s().createElement("div",{style:{paddingLeft:"22px",width:"50%"}},s().createElement("input",{className:"form-control",disabled:w,onChange:this.handleChange,value:C}))),E&&s().createElement("p",{className:"error-label"},d))}}u.defaultProps={ariaLabelledBy:null},u.propTypes={id:l().string.isRequired}},401:(e,t,r)=>{r.d(t,{default:()=>d});var a=r(6689),l=r.n(a),n=r(1929),s=r.n(n);const o=["onChange","value","className","error","clearable","disabled","overrideCSS","ariaLabelledBy"];function i(){return i=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(e[a]=r[a])}return e},i.apply(this,arguments)}function c(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,a)}return r}function p(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?c(Object(r),!0).forEach((function(t){h(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):c(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function h(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function u(e,t){if(null==e)return{};var r,a,l=function(e,t){if(null==e)return{};var r,a,l={},n=Object.keys(e);for(a=0;a<n.length;a++)r=n[a],t.indexOf(r)>=0||(l[r]=e[r]);return l}(e,t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(a=0;a<n.length;a++)r=n[a],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(l[r]=e[r])}return l}class d extends l().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 r={target:{id:this.props.id,value:t,type:"dropdown"}};this.props.onChange(r)}render(){let e=this.props,{onChange:t,value:r,className:a,error:n,clearable:c,disabled:h,overrideCSS:d,ariaLabelledBy:m}=e,b=u(e,o),f=this.props.hasOwnProperty("error")&&""!=n,v=this.props.hasOwnProperty("clearable"),y=this.props.hasOwnProperty("disabled")&&1==h,g=null,O=a;this.props.hasOwnProperty("overrideCSS")&&0!=d||(O="dropdown "+a+" "+(f?"error":"")),g=this.props.isMulti?this.props.options.filter((e=>r.includes(e.value))):r instanceof Object||null==r?r:this.props.options.find((e=>e.value==r));const C={menu:e=>p(p({},e),{},{zIndex:999})};return l().createElement("div",null,l().createElement(s(),i({className:O,value:g,onChange:this.handleChange,isClearable:v,isDisabled:y,styles:C,"aria-labelledby":m},b)),f&&l().createElement("p",{className:"error-label"},n))}}d.defaultProps={ariaLabelledBy:null}},7027:(e,t,r)=>{r.d(t,{default:()=>p});var a=r(6689),l=r.n(a),n=r(418),s=r(580),o=r.n(s);const i=["onChange","value","className","error","ariaLabelledBy","disabled","options","id","name"];function c(e,t){if(null==e)return{};var r,a,l=function(e,t){if(null==e)return{};var r,a,l={},n=Object.keys(e);for(a=0;a<n.length;a++)r=n[a],t.indexOf(r)>=0||(l[r]=e[r]);return l}(e,t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(a=0;a<n.length;a++)r=n[a],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(l[r]=e[r])}return l}class p 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,r,a,s){return r?l().createElement("label",{className:"form-check-label",htmlFor:`radio_${t}_${e.value}`,style:{display:"inline-block"}},s&&l().createElement(n.default,null,e.label),!s&&e.label):a?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(n.default,null,e.description))}render(){let e,t=this.props,{onChange:r,value:a,className:n,error:s,ariaLabelledBy:o,disabled:p,options:h,id:u,name:d}=t,m=(c(t,i),this.props.hasOwnProperty("error")&&""!=s),b=this.props.hasOwnProperty("inline"),f=this.props.hasOwnProperty("simple"),v=this.props.hasOwnProperty("html"),y=this.props.hasOwnProperty("disabled")&&1==p;return e=b?{paddingLeft:"22px",marginLeft:"20px",float:"left"}:{paddingLeft:"22px"},l().createElement("div",{id:`rl_wrapper_${u}`,"aria-labelledby":o},h.map((t=>{let r=t.value==a;return l().createElement("div",{className:"form-check abc-radio",key:`radio_key_${u}_${t.value}`,style:e},l().createElement("input",{className:"form-check-input",type:"radio",id:`radio_${u}_${t.value}`,value:t.value,checked:r,onChange:this.handleChange,disabled:y,name:d||`radio_${u}`}),this.getLabel(t,u,b,f,v))})),m&&l().createElement("p",{className:"error-label"},s))}}p.defaultProps={ariaLabelledBy:null},p.propTypes={id:o().string.isRequired}},1833:(e,t,r)=>{r.d(t,{default:()=>i});var a=r(6689),l=r.n(a);const n=["onChange","value","className","error","ariaLabelledBy","containerClassName"];function s(){return s=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(e[a]=r[a])}return e},s.apply(this,arguments)}function o(e,t){if(null==e)return{};var r,a,l=function(e,t){if(null==e)return{};var r,a,l={},n=Object.keys(e);for(a=0;a<n.length;a++)r=n[a],t.indexOf(r)>=0||(l[r]=e[r]);return l}(e,t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(a=0;a<n.length;a++)r=n[a],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(l[r]=e[r])}return l}class i extends l().Component{constructor(e){super(e),this.handleChange=this.handleChange.bind(this)}componentDidUpdate(e,t,r){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:r,className:a,error:i,ariaLabelledBy:c,containerClassName:p}=e,h=o(e,n),u=this.props.hasOwnProperty("error")&&""!==i,d=this.props.hasOwnProperty("className")?a:"form-control",m=this.props.hasOwnProperty("containerClassName")?p:"container-form-control";return l().createElement("div",{className:m},l().createElement("input",s({className:`${d} ${u?"error":""}`,ref:e=>{this.input=e},defaultValue:r,"aria-labelledby":c,onChange:this.handleChange},h)),u&&l().createElement("p",{className:"error-label"},i))}}i.defaultProps={ariaLabelledBy:null}},418:(e,t,r)=>{r.d(t,{default:()=>n});var a=r(6689),l=r.n(a);const n=({children:e,replaceNewLine:t=!1,className:r=""})=>l().createElement("span",{className:r,dangerouslySetInnerHTML:{__html:t?null==e?void 0:e.replace(/\n/g,"<br />"):e}})},6471:e=>{e.exports=require("awesome-bootstrap-checkbox/awesome-bootstrap-checkbox.css")},4656:e=>{e.exports=require("i18n-react/dist/i18n-react")},580:e=>{e.exports=require("prop-types")},6689:e=>{e.exports=require("react")},1929:e=>{e.exports=require("react-select")}},t={};function r(a){var l=t[a];if(void 0!==l)return l.exports;var n=t[a]={exports:{}};return e[a](n,n.exports,r),n.exports}(()=>{r.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return r.d(t,{a:t}),t}})(),(()=>{r.d=(e,t)=>{for(var a in t)r.o(t,a)&&!r.o(e,a)&&Object.defineProperty(e,a,{enumerable:!0,get:t[a]})}})(),(()=>{r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t)})(),(()=>{r.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})}})();var a={};return(()=>{r.r(a),r.d(a,{default:()=>p});var e=r(6689),t=r.n(e),l=(r(6471),r(1833)),n=r(401),s=r(418),o=r(2230),i=r(7027);class c extends t().Component{constructor(e){super(e),this.state={answers:e.questions.map((e=>({question_id:e.id,value:null}))),errors:e.errors},this.handleChange=this.handleChange.bind(this),this.hasErrors=this.hasErrors.bind(this),this.handleSubmit=this.handleSubmit.bind(this)}renderQuestion(e){const{answers:r}=this.state,a=r.find((t=>t.question_id===e.id)).value;switch(e.class_name){case"RSVPMemberEmailQuestionTemplate":case"RSVPMemberFirstNameQuestionTemplate":case"RSVPMemberLastNameQuestionTemplate":case"RSVPTextBoxQuestionTemplate":return t().createElement(l.default,{id:e.id,value:a||"",onChange:this.handleChange,className:"form-control",error:this.hasErrors(e.id)});case"RSVPTextAreaQuestionTemplate":return t().createElement("textarea",{id:e.id,value:a||"",className:"form-control",onChange:this.handleChange});case"RSVPLiteralContentQuestionTemplate":return t().createElement("div",null,t().createElement(s.default,null,e.value));case"RSVPCheckBoxListQuestionTemplate":return t().createElement(o.default,{id:e.id,value:a,options:e.values.map((e=>({value:`${e.id}`,label:e.label}))),onChange:this.handleChange,error:this.hasErrors(e.id)});case"RSVPRadioButtonListQuestionTemplate":return t().createElement(i.default,{id:e.id,value:a,onChange:this.handleChange,options:e.values.map((e=>({value:`${e.id}`,label:e.label}))),error:this.hasErrors(e.id),simple:!0});case"RSVPDropDownQuestionTemplate":let r=e.is_country_selector?e.values.map((e=>({value:e.id,label:e.value}))):e.values;return t().createElement(n.default,{id:e.id,isMulti:e.is_multiselect,value:a,onChange:this.handleChange,placeholder:e.empty_string,options:r})}}handleChange(e){let t=[...this.state.answers],{value:r,id:a}=e.target;"datetime"===e.target.type&&(r=r.valueOf()/1e3),t.find((e=>e.question_id===parseInt(a))).value=r,this.setState({answers:t})}hasErrors(e){let{errors:t}=this.state;return e in t?t[e]:""}handleSubmit(e){e.preventDefault();let{onSubmit:t}=this.props,{answers:r}=this.state;t(r)}render(){let{questions:e,onSubmit:r}=this.props;return t().createElement("form",{className:"rsvp-form"},e.map((e=>t().createElement("div",{key:"question_"+e.id,className:"row form-group"},t().createElement("div",{className:"col-md-12"},t().createElement("label",null,t().createElement(s.default,null,e.label)," ",e.is_mandatory&&"*"),this.renderQuestion(e))))),r&&t().createElement("div",{className:"row"},t().createElement("div",{className:"col-md-12"},t().createElement("button",{className:"btn btn-primary",onClick:this.handleSubmit},"Submit"))))}}const p=c})(),a})()));
|
|
1
|
+
!function(e,a){"object"==typeof exports&&"object"==typeof module?module.exports=a():"function"==typeof define&&define.amd?define("openstack-uicore-foundation",[],a):"object"==typeof exports?exports["openstack-uicore-foundation"]=a():e["openstack-uicore-foundation"]=a()}(this,(()=>(()=>{"use strict";var e={2230:(e,a,t)=>{t.d(a,{default:()=>u});var r=t(3838),l=t.n(r),s=t(580),n=t.n(s),o=t(6689),i=t.n(o),h=t(4656),d=t.n(h),p=t(418);const c=["onChange","value","className","options","id","children","error","disabled","name","ariaLabelledBy"];class u extends i().Component{constructor(e){super(e);let a=!!e.value&&e.value.find((a=>!e.options.map((e=>e.value)).includes(a)));this.state={otherChecked:!!a},this.handleChange=this.handleChange.bind(this),this.handleOtherCBChange=this.handleOtherCBChange.bind(this)}handleChange(e){let a=this.props.options.map((e=>e.value)),t=this.props.value?[...this.props.value]:[];if("checkbox"===e.target.type)if(e.target.checked){const a=isNaN(e.target.value)?e.target.value:parseInt(e.target.value);t.push(a)}else t=t.filter((a=>a!=e.target.value));else t=t.filter((e=>a.includes(e))),t.push(e.target.value);let r={target:{id:this.props.id,value:t,type:"checkboxlist"}};this.props.onChange(r)}handleOtherCBChange(e){this.setState({otherChecked:e.target.checked})}render(){let e,a=this.props,{onChange:t,value:r,className:s,options:n,id:o,children:h,error:u,disabled:m,name:b,ariaLabelledBy:v}=a,{otherChecked:f}=(l()(a,c),this.state),g=this.props.hasOwnProperty("inline"),y=this.props.hasOwnProperty("html"),C=this.props.hasOwnProperty("allowOther"),E=!!r&&r.find((e=>!n.map((e=>e.value)).includes(e))),N=this.props.hasOwnProperty("error")&&""!==u,x=this.props.hasOwnProperty("disabled")&&1==m;return e=g?{paddingLeft:"22px",marginLeft:"20px",float:"left"}:{paddingLeft:"22px",marginTop:"7px"},i().createElement("div",{id:`chl_wrapper_${o}`,"aria-labelledby":v},i().createElement("div",{className:"checkboxes-div"+(N?" error":"")},n.map((a=>{let t=!!r&&r.includes(a.value);return i().createElement("div",{className:"form-check abc-checkbox",key:"radio_key_"+a.value,style:e},i().createElement("input",{type:"checkbox",id:`cb_${o}_${a.value}`,name:b||o,checked:t,disabled:x,onChange:this.handleChange,className:"form-check-input",value:a.value}),i().createElement("label",{className:"form-check-label",htmlFor:`cb_${o}_${a.value}`},y&&i().createElement(p.default,null,a.label),!y&&a.label))})),C&&i().createElement("div",{className:"form-check abc-checkbox",style:e},i().createElement("input",{type:"checkbox",id:"cb_other"+o,checked:f,disabled:x,onChange:this.handleOtherCBChange,className:"form-check-input",value:"other"}),i().createElement("label",{className:"form-check-label",htmlFor:"cb_other"+o},d().translate("general.other"))),C&&f&&i().createElement("div",{style:{paddingLeft:"22px",width:"50%"}},i().createElement("input",{className:"form-control",disabled:x,onChange:this.handleChange,value:E}))),N&&i().createElement("p",{className:"error-label"},u))}}u.defaultProps={ariaLabelledBy:null},u.propTypes={id:n().string.isRequired}},401:(e,a,t)=>{t.d(a,{default:()=>v});var r=t(8213),l=t.n(r),s=t(8779),n=t.n(s),o=t(3838),i=t.n(o),h=t(6689),d=t.n(h),p=t(1929),c=t.n(p);const u=["onChange","value","className","error","clearable","disabled","overrideCSS","ariaLabelledBy"];function m(e,a){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);a&&(r=r.filter((function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable}))),t.push.apply(t,r)}return t}function b(e){for(var a=1;a<arguments.length;a++){var t=null!=arguments[a]?arguments[a]:{};a%2?m(Object(t),!0).forEach((function(a){n()(e,a,t[a])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):m(Object(t)).forEach((function(a){Object.defineProperty(e,a,Object.getOwnPropertyDescriptor(t,a))}))}return e}class v extends d().Component{constructor(e){super(e),this.handleChange=this.handleChange.bind(this)}handleChange(e){let a=null;a=this.props.isMulti?e?e.map((e=>e.value)):null:e?e.value:null;let t={target:{id:this.props.id,value:a,type:"dropdown"}};this.props.onChange(t)}render(){let e=this.props,{onChange:a,value:t,className:r,error:s,clearable:n,disabled:o,overrideCSS:h,ariaLabelledBy:p}=e,m=i()(e,u),v=this.props.hasOwnProperty("error")&&""!=s,f=this.props.hasOwnProperty("clearable"),g=this.props.hasOwnProperty("disabled")&&1==o,y=null,C=r;this.props.hasOwnProperty("overrideCSS")&&0!=h||(C="dropdown "+r+" "+(v?"error":"")),y=this.props.isMulti?this.props.options.filter((e=>t.includes(e.value))):t instanceof Object||null==t?t:this.props.options.find((e=>e.value==t));const E={menu:e=>b(b({},e),{},{zIndex:999})};return d().createElement("div",null,d().createElement(c(),l()({className:C,value:y,onChange:this.handleChange,isClearable:f,isDisabled:g,styles:E,"aria-labelledby":p},m)),v&&d().createElement("p",{className:"error-label"},s))}}v.defaultProps={ariaLabelledBy:null}},7027:(e,a,t)=>{t.d(a,{default:()=>p});var r=t(3838),l=t.n(r),s=t(6689),n=t.n(s),o=t(418),i=t(580),h=t.n(i);const d=["onChange","value","className","error","ariaLabelledBy","disabled","options","id","name"];class p extends n().Component{constructor(e){super(e),this.state={value:e.value},this.handleChange=this.handleChange.bind(this)}handleChange(e){let a={target:{id:this.props.id,value:e.target.value,type:"radio"}};this.props.onChange(a)}getLabel(e,a,t,r,l){return t?n().createElement("label",{className:"form-check-label",htmlFor:`radio_${a}_${e.value}`,style:{display:"inline-block"}},l&&n().createElement(o.default,null,e.label),!l&&e.label):r?n().createElement("label",{className:"form-check-label",htmlFor:`radio_${a}_${e.value}`},e.label):n().createElement("label",{className:"form-check-label",htmlFor:`radio_${a}_${e.value}`,style:{display:"inline-block"}},n().createElement("h4",{style:{marginTop:"0px"}},e.label),n().createElement(o.default,null,e.description))}render(){let e,a=this.props,{onChange:t,value:r,className:s,error:o,ariaLabelledBy:i,disabled:h,options:p,id:c,name:u}=a,m=(l()(a,d),this.props.hasOwnProperty("error")&&""!=o),b=this.props.hasOwnProperty("inline"),v=this.props.hasOwnProperty("simple"),f=this.props.hasOwnProperty("html"),g=this.props.hasOwnProperty("disabled")&&1==h;return e=b?{paddingLeft:"22px",marginLeft:"20px",float:"left"}:{paddingLeft:"22px"},n().createElement("div",{id:`rl_wrapper_${c}`,"aria-labelledby":i},p.map((a=>{let t=a.value==r;return n().createElement("div",{className:"form-check abc-radio",key:`radio_key_${c}_${a.value}`,style:e},n().createElement("input",{className:"form-check-input",type:"radio",id:`radio_${c}_${a.value}`,value:a.value,checked:t,onChange:this.handleChange,disabled:g,name:u||`radio_${c}`}),this.getLabel(a,c,b,v,f))})),m&&n().createElement("p",{className:"error-label"},o))}}p.defaultProps={ariaLabelledBy:null},p.propTypes={id:h().string.isRequired}},1833:(e,a,t)=>{t.d(a,{default:()=>d});var r=t(8213),l=t.n(r),s=t(3838),n=t.n(s),o=t(6689),i=t.n(o);const h=["onChange","value","className","error","ariaLabelledBy","containerClassName"];class d extends i().Component{constructor(e){super(e),this.handleChange=this.handleChange.bind(this)}componentDidUpdate(e,a,t){this.props.value!==e.value&&(this.input.value=this.props.value)}handleChange(e){this.props.onChange(e)}render(){let e=this.props,{onChange:a,value:t,className:r,error:s,ariaLabelledBy:o,containerClassName:d}=e,p=n()(e,h),c=this.props.hasOwnProperty("error")&&""!==s,u=this.props.hasOwnProperty("className")?r:"form-control",m=this.props.hasOwnProperty("containerClassName")?d:"container-form-control";return i().createElement("div",{className:m},i().createElement("input",l()({className:`${u} ${c?"error":""}`,ref:e=>{this.input=e},defaultValue:t,"aria-labelledby":o,onChange:this.handleChange},p)),c&&i().createElement("p",{className:"error-label"},s))}}d.defaultProps={ariaLabelledBy:null}},418:(e,a,t)=>{t.d(a,{default:()=>s});var r=t(6689),l=t.n(r);const s=({children:e,replaceNewLine:a=!1,className:t=""})=>l().createElement("span",{className:t,dangerouslySetInnerHTML:{__html:a?null==e?void 0:e.replace(/\n/g,"<br />"):e}})},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")},580:e=>{e.exports=require("prop-types")},6689:e=>{e.exports=require("react")},1929:e=>{e.exports=require("react-select")}},a={};function t(r){var l=a[r];if(void 0!==l)return l.exports;var s=a[r]={exports:{}};return e[r](s,s.exports,t),s.exports}(()=>{t.n=e=>{var a=e&&e.__esModule?()=>e.default:()=>e;return t.d(a,{a}),a}})(),(()=>{t.d=(e,a)=>{for(var r in a)t.o(a,r)&&!t.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:a[r]})}})(),(()=>{t.o=(e,a)=>Object.prototype.hasOwnProperty.call(e,a)})(),(()=>{t.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})}})();var r={};return(()=>{t.r(r),t.d(r,{default:()=>d});var e=t(6689),a=t.n(e),l=(t(6471),t(1833)),s=t(401),n=t(418),o=t(2230),i=t(7027);class h extends a().Component{constructor(e){super(e),this.state={answers:e.questions.map((e=>({question_id:e.id,value:null}))),errors:e.errors},this.handleChange=this.handleChange.bind(this),this.hasErrors=this.hasErrors.bind(this),this.handleSubmit=this.handleSubmit.bind(this)}renderQuestion(e){const{answers:t}=this.state,r=t.find((a=>a.question_id===e.id)).value;switch(e.class_name){case"RSVPMemberEmailQuestionTemplate":case"RSVPMemberFirstNameQuestionTemplate":case"RSVPMemberLastNameQuestionTemplate":case"RSVPTextBoxQuestionTemplate":return a().createElement(l.default,{id:e.id,value:r||"",onChange:this.handleChange,className:"form-control",error:this.hasErrors(e.id)});case"RSVPTextAreaQuestionTemplate":return a().createElement("textarea",{id:e.id,value:r||"",className:"form-control",onChange:this.handleChange});case"RSVPLiteralContentQuestionTemplate":return a().createElement("div",null,a().createElement(n.default,null,e.value));case"RSVPCheckBoxListQuestionTemplate":return a().createElement(o.default,{id:e.id,value:r,options:e.values.map((e=>({value:`${e.id}`,label:e.label}))),onChange:this.handleChange,error:this.hasErrors(e.id)});case"RSVPRadioButtonListQuestionTemplate":return a().createElement(i.default,{id:e.id,value:r,onChange:this.handleChange,options:e.values.map((e=>({value:`${e.id}`,label:e.label}))),error:this.hasErrors(e.id),simple:!0});case"RSVPDropDownQuestionTemplate":let t=e.is_country_selector?e.values.map((e=>({value:e.id,label:e.value}))):e.values;return a().createElement(s.default,{id:e.id,isMulti:e.is_multiselect,value:r,onChange:this.handleChange,placeholder:e.empty_string,options:t})}}handleChange(e){let a=[...this.state.answers],{value:t,id:r}=e.target;"datetime"===e.target.type&&(t=t.valueOf()/1e3),a.find((e=>e.question_id===parseInt(r))).value=t,this.setState({answers:a})}hasErrors(e){let{errors:a}=this.state;return e in a?a[e]:""}handleSubmit(e){e.preventDefault();let{onSubmit:a}=this.props,{answers:t}=this.state;a(t)}render(){let{questions:e,onSubmit:t}=this.props;return a().createElement("form",{className:"rsvp-form"},e.map((e=>a().createElement("div",{key:"question_"+e.id,className:"row form-group"},a().createElement("div",{className:"col-md-12"},a().createElement("label",null,a().createElement(n.default,null,e.label)," ",e.is_mandatory&&"*"),this.renderQuestion(e))))),t&&a().createElement("div",{className:"row"},a().createElement("div",{className:"col-md-12"},a().createElement("button",{className:"btn btn-primary",onClick:this.handleSubmit},"Submit"))))}}const d=h})(),r})()));
|
|
@@ -1 +1 @@
|
|
|
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={1833:(e,t,r)=>{r.d(t,{default:()=>
|
|
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={1833:(e,t,r)=>{r.d(t,{default:()=>p});var a=r(8213),n=r.n(a),s=r(3838),o=r.n(s),l=r(6689),i=r.n(l);const c=["onChange","value","className","error","ariaLabelledBy","containerClassName"];class p extends i().Component{constructor(e){super(e),this.handleChange=this.handleChange.bind(this)}componentDidUpdate(e,t,r){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:r,className:a,error:s,ariaLabelledBy:l,containerClassName:p}=e,h=o()(e,c),m=this.props.hasOwnProperty("error")&&""!==s,u=this.props.hasOwnProperty("className")?a:"form-control",d=this.props.hasOwnProperty("containerClassName")?p:"container-form-control";return i().createElement("div",{className:d},i().createElement("input",n()({className:`${u} ${m?"error":""}`,ref:e=>{this.input=e},defaultValue:r,"aria-labelledby":l,onChange:this.handleChange},h)),m&&i().createElement("p",{className:"error-label"},s))}}p.defaultProps={ariaLabelledBy:null}},6793:(e,t,r)=>{r.d(t,{hasErrors:()=>n,isEmpty:()=>o,scrollToError:()=>a,shallowEqual:()=>s});r(8362),r(6530);const a=e=>{if(Object.keys(e).length>0){const t=Object.keys(e)[0],r=document.getElementById(t);r&&window.scrollTo(0,(e=>{var t=-70;if(e.offsetParent){do{t+=e.offsetTop}while(e=e.offsetParent);return[t]}})(r))}},n=(e,t)=>e in t?t[e]:"",s=(e,t)=>{const r=Object.keys(e),a=Object.keys(t);if(r.length!==a.length)return!1;for(let a of r)if(e[a]!==t[a])return!1;return!0},o=e=>0===Object.keys(e).length},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")},6689:e=>{e.exports=require("react")},6530:e=>{e.exports=require("urijs")}},t={};function r(a){var n=t[a];if(void 0!==n)return n.exports;var s=t[a]={exports:{}};return e[a](s,s.exports,r),s.exports}(()=>{r.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return r.d(t,{a:t}),t}})(),(()=>{r.d=(e,t)=>{for(var a in t)r.o(t,a)&&!r.o(e,a)&&Object.defineProperty(e,a,{enumerable:!0,get:t[a]})}})(),(()=>{r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t)})(),(()=>{r.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})}})();var a={};return(()=>{r.r(a),r.d(a,{default:()=>u});var e=r(8779),t=r.n(e),n=r(6689),s=r.n(n),o=r(4656),l=r.n(o),i=(r(6471),r(1833)),c=r(6793);function p(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,a)}return r}function h(e){for(var r=1;r<arguments.length;r++){var a=null!=arguments[r]?arguments[r]:{};r%2?p(Object(a),!0).forEach((function(r){t()(e,r,a[r])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(a)):p(Object(a)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(a,t))}))}return e}class m extends s().Component{constructor(e){super(e),this.state={entity:h({},e.entity),errors:e.errors},this.handleChange=this.handleChange.bind(this),this.handleSubmit=this.handleSubmit.bind(this)}componentDidUpdate(e,t,r){const a={};(0,c.scrollToError)(this.props.errors),e.entity.id!==this.props.entity.id&&(a.entity=h({},this.props.entity),a.errors={}),(0,c.shallowEqual)(e.errors,this.props.errors)||(a.errors=h({},this.props.errors)),(0,c.isEmpty)(a)||this.setState(h(h({},this.state),a))}handleChange(e){let t=h({},this.state.entity),r=h({},this.state.errors),{value:a,id:n}=e.target;"checkbox"===e.target.type&&(a=e.target.checked),r[n]="",t[n]=a,this.setState({entity:t,errors:r})}handleSubmit(e){h({},this.state.entity);e.preventDefault(),this.props.onSubmit(this.state.entity)}createField(e){let{entity:t,errors:r}=this.state;switch(e.type){case"text":return s().createElement("div",{key:"field_"+e.name,className:"row form-group"},s().createElement("div",{className:"col-md-6"},s().createElement("label",null," ",e.label," "),s().createElement(i.default,{id:e.name,value:t[e.name],onChange:this.handleChange,className:"form-control",error:(0,c.hasErrors)(e.name,r)})));case"textarea":return s().createElement("div",{key:"field_"+e.name,className:"row form-group"},s().createElement("div",{className:"col-md-6"},s().createElement("label",null," ",e.label," "),s().createElement("textarea",{id:e.name,value:t[e.name],onChange:this.handleChange,className:"form-control"})));case"checkbox":return s().createElement("div",{key:"field_"+e.name,className:"row form-group"},s().createElement("div",{className:"col-md-6"},s().createElement("div",{className:"form-check abc-checkbox"},s().createElement("input",{type:"checkbox",id:e.name,checked:t[e.name],onChange:this.handleChange,className:"form-check-input"}),s().createElement("label",{className:"form-check-label",htmlFor:e.name},e.label))))}}render(){let{entity:e}=this.state,{fields:t}=this.props;return s().createElement("form",{className:"simple-form"},s().createElement("input",{type:"hidden",id:"id",value:e.id}),t.map((e=>this.createField(e))),s().createElement("div",{className:"row"},s().createElement("div",{className:"col-md-12 submit-buttons"},s().createElement("input",{type:"button",onClick:this.handleSubmit,className:"btn btn-primary pull-right",value:l().translate("general.save")}))))}}const u=m})(),a})()));
|
|
@@ -1 +1 @@
|
|
|
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={4026:(e,t,r)=>{var a=r(6689),n=r.n(a),s=r(580),l=r.n(s),i=r(418),o=r(1833),u=r(401),c=r(7027),d=r(2230),m=r(1995);const p=require("react-final-form"),h=["input","meta","question","className","isDisabled","isRequired"],b=["input","meta","question","isDisabled","isRequired"],f=["input","meta","question","isDisabled","isRequired"],y=["input","meta","question","isDisabled","isRequired","maxValues"];function v(){return v=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(e[a]=r[a])}return e},v.apply(this,arguments)}function g(e,t){if(null==e)return{};var r,a,n=function(e,t){if(null==e)return{};var r,a,n={},s=Object.keys(e);for(a=0;a<s.length;a++)r=s[a],t.indexOf(r)>=0||(n[r]=e[r]);return n}(e,t);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(a=0;a<s.length;a++)r=s[a],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}const _=e=>{let{input:t,meta:r,question:a,className:s,isDisabled:l,isRequired:i}=e,u=g(e,h);return n().createElement(o.default,v({},t,u,{containerClassName:s,name:a.name,ariaLabelledBy:`${a.name} label`,id:a.name,value:t.value,disabled:l,required:i,onChange:t.onChange,placeholder:a.placeholder}))},E=e=>{let{input:t,meta:r,question:a,isDisabled:s,isRequired:l}=e,i=g(e,b);return n().createElement(c.default,v({},t,i,{name:a.name,ariaLabelledBy:`${a.name} label`,id:a.name,overrideCSS:!0,value:t.value,disabled:s,required:l,onChange:t.onChange}))},O=e=>{let{input:t,meta:r,question:a,isDisabled:s,isRequired:l}=e,i=g(e,f);return n().createElement(u.default,v({},t,i,{name:a.name,ariaLabelledBy:`${a.name} label`,id:a.name,overrideCSS:!0,value:t.value,disabled:s,required:l,onChange:t.onChange}))},C=e=>{let{input:t,meta:r,question:a,isDisabled:s,isRequired:l,maxValues:i}=e,o=g(e,y);return n().createElement(d.default,v({},t,o,{id:a.name,name:a.name,ariaLabelledBy:`${a.name} label`,value:t.value,disabled:s,required:l,onChange:e=>{const r=e.target.value;return i>0&&r.length>i?null:t.onChange(e)}}))},w=e=>e?e=>e?void 0:"Required":()=>{},q=n().forwardRef((({extraQuestions:e,userAnswers:t,onAnswerChanges:r,className:s="questions-form",questionContainerClassName:l="question-container",questionLabelContainerClassName:o="question-label-container",questionControlContainerClassName:u="question-control-container",readOnly:c=!1,debug:d=!1,buttonText:h="Submit",RequiredErrorMessage:b="Required",ValidationErrorClassName:f="extra-question-error",allowExtraQuestionsEdit:y=!0,onError:v=(e=>console.log("form errors: ",e))},g)=>{let q=null;const N=(0,a.useRef)({}),[k,x]=(0,a.useState)({});(0,a.useEffect)((()=>{P()}),[e]);const P=()=>{const r=new m.default(e,t);x(r.formatAnswers())},j=({when:e,rule:t,children:r})=>n().createElement(p.Field,{name:e,subscription:{value:!0}},(({input:{value:e}})=>L(t,B(e,t),r))),S=({name:e})=>n().createElement(p.Field,{name:e,subscription:{error:!0,touched:!0}},(({meta:{error:e,touched:t}})=>e&&t?n().createElement("div",{className:f},e):null)),B=(e,t)=>{let r=t.answer_values;if(Array.isArray(e)){if(!e.length)return!1;let a="And"===t.answer_values_operator;return r.forEach((r=>{a="And"===t.answer_values_operator?a&&e.includes(parseInt(r)):a||e.includes(parseInt(r))})),a}return r.includes(e.toString())},L=(e,t,r)=>"Visible"===e.visibility?"Equal"===e.visibility_condition?t?r:(delete N.current[e.sub_question.id],null):t?(delete N.current[e.sub_question.id],null):r:"Equal"===e.visibility_condition?t?(delete N.current[e.sub_question.id],null):r:t?r:(delete N.current[e.sub_question.id],null),F=e=>{const t=String.fromCharCode(160),r=document.createElement("div");r.innerHTML=e.label;const a=r.textContent||r.innerText||"",n=e.mandatory?`${a}${t}<b>*</b>`:a;return`<label id="${e.name} label" htmlFor="${e.name}">\n ${n}\n </label>`},$=e=>{let t=e.values;const r=!y&&((e,t)=>{if(!t.hasOwnProperty(e.name))return!1;const r=t[e.name];return Array.isArray(r)||"string"==typeof r?r.length>0:"number"==typeof r?r>0:"boolean"==typeof r&&r})(e,k);var s,c,d;if("Text"===e.type)return n().createElement(a.Fragment,{key:e.name},n().createElement("div",{ref:t=>N.current[e.id]=t,className:l},n().createElement(i.default,{className:o},F(e)),n().createElement("div",{className:u},n().createElement(p.Field,{name:e.name,question:e,isDisabled:r,isRequired:e.mandatory,validate:w(e.mandatory),component:_}),n().createElement(S,{name:e.name}))),(null===(s=e.sub_question_rules)||void 0===s?void 0:s.length)>0&&e.sub_question_rules.map((t=>n().createElement(j,{key:t.id,when:e.name,rule:t},$(t.sub_question)))));if("TextArea"===e.type)return n().createElement(a.Fragment,{key:e.name},n().createElement("div",{ref:t=>N.current[e.id]=t,className:l},n().createElement(i.default,{className:o},F(e)),n().createElement("div",{className:u},n().createElement(p.Field,{validate:w(e.mandatory),name:e.name,id:e.name,disabled:r,required:e.mandatory,component:"textarea"}),n().createElement(S,{name:e.name}))),(null===(c=e.sub_question_rules)||void 0===c?void 0:c.length)>0&&e.sub_question_rules.map((t=>n().createElement(j,{key:t.id,when:e.name,rule:t},$(t.sub_question)))));if("CheckBox"===e.type)return n().createElement(a.Fragment,{key:e.name},n().createElement("div",{ref:t=>N.current[e.id]=t,style:{display:"flex"},className:l},n().createElement(i.default,{className:`eq-checkbox-label ${o}`},F(e)),n().createElement("div",{className:u},n().createElement("div",{className:"form-check abc-checkbox"},n().createElement(p.Field,{name:e.name,id:e.name,validate:w(e.mandatory),disabled:r,required:e.mandatory,type:"checkbox",className:"form-check-input",component:"input"}),n().createElement("label",{className:"form-check-label",htmlFor:e.name}),n().createElement(S,{name:e.name})))),(null===(d=e.sub_question_rules)||void 0===d?void 0:d.length)>0&&e.sub_question_rules.map((t=>n().createElement(j,{key:t.id,when:e.name,rule:t},$(t.sub_question)))));if("RadioButtonList"===e.type){var m;const s=t.map((e=>({label:e.label,value:e.id})));return n().createElement(a.Fragment,{key:e.name},n().createElement("div",{key:e.name,ref:t=>N.current[e.id]=t,className:l},n().createElement(i.default,{className:o},F(e)),n().createElement("div",{className:u},n().createElement(p.Field,{name:e.name,options:s,question:e,validate:w(e.mandatory),isDisabled:r,isRequired:e.mandatory,component:E}),n().createElement(S,{name:e.name}))),(null===(m=e.sub_question_rules)||void 0===m?void 0:m.length)>0&&e.sub_question_rules.map((t=>n().createElement(j,{key:t.id,when:e.name,rule:t},$(t.sub_question)))))}if("ComboBox"===e.type){var h;const s=t.map((e=>({label:e.label,value:e.id})));return n().createElement(a.Fragment,{key:e.name},n().createElement("div",{ref:t=>N.current[e.id]=t,className:l},n().createElement(i.default,{className:o},F(e)),n().createElement("div",{className:u},n().createElement(p.Field,{name:e.name,options:s,question:e,validate:w(e.mandatory),isDisabled:r,isRequired:e.mandatory,component:O}),n().createElement(S,{name:e.name}))),(null===(h=e.sub_question_rules)||void 0===h?void 0:h.length)>0&&e.sub_question_rules.map((t=>n().createElement(j,{key:t.id,when:e.name,rule:t},$(t.sub_question)))))}if("CheckBoxList"===e.type){var b;const s=t.map((e=>({label:e.label,value:e.id})));return n().createElement(a.Fragment,{key:e.name},n().createElement("div",{ref:t=>N.current[e.id]=t,className:l},n().createElement(i.default,{className:o},F(e)),n().createElement("div",{className:u},n().createElement(p.Field,{name:e.name,className:u,validate:w(e.mandatory),options:s,question:e,maxValues:e.max_selected_values,isDisabled:r,isRequired:e.mandatory,component:C}),n().createElement(S,{name:e.name}))),(null===(b=e.sub_question_rules)||void 0===b?void 0:b.length)>0&&e.sub_question_rules.map((t=>n().createElement(j,{key:t.id,when:e.name,rule:t},$(t.sub_question)))))}return null},R=(e,t,r)=>{var a;e.mandatory&&(e=>!!N.current[e.id])(e)&&(t.hasOwnProperty(e.name)&&""!==t[e.name]&&0!==t[e.name].length||(r[e.name]=b)),null===(a=e.sub_question_rules)||void 0===a||a.forEach((e=>{R(e.sub_question,t,r)}))};if(!Object.keys(k).length)return null;const A=(e,t,r)=>{var a;t.includes(e.name)&&r.push(e),null===(a=e.sub_question_rules)||void 0===a||a.forEach((e=>{A(e.sub_question,t,r)}))};return Object.keys(k).length?n().createElement("div",{className:s},n().createElement(p.Form,{validate:t=>{const r={};return e.forEach((e=>{R(e,t,r)})),Object.keys(r).length>0&&v(r),r},onSubmit:e=>{r(e)},initialValues:k},(({handleSubmit:t,form:r,submitting:a,pristine:s,values:l})=>(q=t,n().createElement("form",{onSubmit:a=>{const n=r.getRegisteredFields().filter((e=>r.getFieldState(e).invalid));n.length>0&&(t=>{const r=[];e.forEach((e=>{A(e,t,r)}));const a=r.sort(((e,t)=>e.order>t.order))[0];N.current[a.id].scrollIntoView({behavior:"smooth",block:"center"})})(n),t(a)},ref:g},c?n().createElement("fieldset",{disabled:"disabled"},e.map((e=>$(e)))):e.map((e=>$(e))),d&&n().createElement("pre",null,JSON.stringify(l,0,2)))))),!g&&n().createElement("button",{type:"submit",onClick:e=>{q(e)},style:{marginTop:10}},h)):null}));q.propTypes={extraQuestions:l().array.isRequired,userAnswers:l().array.isRequired,onAnswerChanges:l().func.isRequired,className:l().string,debug:l().bool,buttonText:l().string,questionContainerClassName:l().string,questionLabelContainerClassName:l().string,questionControlContainerClassName:l().string,RequiredErrorMessage:l().string,ValidationErrorClassName:l().string,allowExtraQuestionsEdit:l().bool}},2230:(e,t,r)=>{r.d(t,{default:()=>m});var a=r(580),n=r.n(a),s=r(6689),l=r.n(s),i=r(4656),o=r.n(i),u=r(418);const c=["onChange","value","className","options","id","children","error","disabled","name","ariaLabelledBy"];function d(e,t){if(null==e)return{};var r,a,n=function(e,t){if(null==e)return{};var r,a,n={},s=Object.keys(e);for(a=0;a<s.length;a++)r=s[a],t.indexOf(r)>=0||(n[r]=e[r]);return n}(e,t);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(a=0;a<s.length;a++)r=s[a],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}class m extends l().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)),r=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);r.push(t)}else r=r.filter((t=>t!=e.target.value));else r=r.filter((e=>t.includes(e))),r.push(e.target.value);let a={target:{id:this.props.id,value:r,type:"checkboxlist"}};this.props.onChange(a)}handleOtherCBChange(e){this.setState({otherChecked:e.target.checked})}render(){let e,t=this.props,{onChange:r,value:a,className:n,options:s,id:i,children:m,error:p,disabled:h,name:b,ariaLabelledBy:f}=t,{otherChecked:y}=(d(t,c),this.state),v=this.props.hasOwnProperty("inline"),g=this.props.hasOwnProperty("html"),_=this.props.hasOwnProperty("allowOther"),E=!!a&&a.find((e=>!s.map((e=>e.value)).includes(e))),O=this.props.hasOwnProperty("error")&&""!==p,C=this.props.hasOwnProperty("disabled")&&1==h;return e=v?{paddingLeft:"22px",marginLeft:"20px",float:"left"}:{paddingLeft:"22px",marginTop:"7px"},l().createElement("div",{id:`chl_wrapper_${i}`,"aria-labelledby":f},l().createElement("div",{className:"checkboxes-div"+(O?" error":"")},s.map((t=>{let r=!!a&&a.includes(t.value);return l().createElement("div",{className:"form-check abc-checkbox",key:"radio_key_"+t.value,style:e},l().createElement("input",{type:"checkbox",id:`cb_${i}_${t.value}`,name:b||i,checked:r,disabled:C,onChange:this.handleChange,className:"form-check-input",value:t.value}),l().createElement("label",{className:"form-check-label",htmlFor:`cb_${i}_${t.value}`},g&&l().createElement(u.default,null,t.label),!g&&t.label))})),_&&l().createElement("div",{className:"form-check abc-checkbox",style:e},l().createElement("input",{type:"checkbox",id:"cb_other"+i,checked:y,disabled:C,onChange:this.handleOtherCBChange,className:"form-check-input",value:"other"}),l().createElement("label",{className:"form-check-label",htmlFor:"cb_other"+i},o().translate("general.other"))),_&&y&&l().createElement("div",{style:{paddingLeft:"22px",width:"50%"}},l().createElement("input",{className:"form-control",disabled:C,onChange:this.handleChange,value:E}))),O&&l().createElement("p",{className:"error-label"},p))}}m.defaultProps={ariaLabelledBy:null},m.propTypes={id:n().string.isRequired}},401:(e,t,r)=>{r.d(t,{default:()=>p});var a=r(6689),n=r.n(a),s=r(1929),l=r.n(s);const i=["onChange","value","className","error","clearable","disabled","overrideCSS","ariaLabelledBy"];function o(){return o=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(e[a]=r[a])}return e},o.apply(this,arguments)}function u(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,a)}return r}function c(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?u(Object(r),!0).forEach((function(t){d(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):u(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function d(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function m(e,t){if(null==e)return{};var r,a,n=function(e,t){if(null==e)return{};var r,a,n={},s=Object.keys(e);for(a=0;a<s.length;a++)r=s[a],t.indexOf(r)>=0||(n[r]=e[r]);return n}(e,t);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(a=0;a<s.length;a++)r=s[a],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}class p extends n().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 r={target:{id:this.props.id,value:t,type:"dropdown"}};this.props.onChange(r)}render(){let e=this.props,{onChange:t,value:r,className:a,error:s,clearable:u,disabled:d,overrideCSS:p,ariaLabelledBy:h}=e,b=m(e,i),f=this.props.hasOwnProperty("error")&&""!=s,y=this.props.hasOwnProperty("clearable"),v=this.props.hasOwnProperty("disabled")&&1==d,g=null,_=a;this.props.hasOwnProperty("overrideCSS")&&0!=p||(_="dropdown "+a+" "+(f?"error":"")),g=this.props.isMulti?this.props.options.filter((e=>r.includes(e.value))):r instanceof Object||null==r?r:this.props.options.find((e=>e.value==r));const E={menu:e=>c(c({},e),{},{zIndex:999})};return n().createElement("div",null,n().createElement(l(),o({className:_,value:g,onChange:this.handleChange,isClearable:y,isDisabled:v,styles:E,"aria-labelledby":h},b)),f&&n().createElement("p",{className:"error-label"},s))}}p.defaultProps={ariaLabelledBy:null}},7027:(e,t,r)=>{r.d(t,{default:()=>c});var a=r(6689),n=r.n(a),s=r(418),l=r(580),i=r.n(l);const o=["onChange","value","className","error","ariaLabelledBy","disabled","options","id","name"];function u(e,t){if(null==e)return{};var r,a,n=function(e,t){if(null==e)return{};var r,a,n={},s=Object.keys(e);for(a=0;a<s.length;a++)r=s[a],t.indexOf(r)>=0||(n[r]=e[r]);return n}(e,t);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(a=0;a<s.length;a++)r=s[a],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}class c extends n().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,r,a,l){return r?n().createElement("label",{className:"form-check-label",htmlFor:`radio_${t}_${e.value}`,style:{display:"inline-block"}},l&&n().createElement(s.default,null,e.label),!l&&e.label):a?n().createElement("label",{className:"form-check-label",htmlFor:`radio_${t}_${e.value}`},e.label):n().createElement("label",{className:"form-check-label",htmlFor:`radio_${t}_${e.value}`,style:{display:"inline-block"}},n().createElement("h4",{style:{marginTop:"0px"}},e.label),n().createElement(s.default,null,e.description))}render(){let e,t=this.props,{onChange:r,value:a,className:s,error:l,ariaLabelledBy:i,disabled:c,options:d,id:m,name:p}=t,h=(u(t,o),this.props.hasOwnProperty("error")&&""!=l),b=this.props.hasOwnProperty("inline"),f=this.props.hasOwnProperty("simple"),y=this.props.hasOwnProperty("html"),v=this.props.hasOwnProperty("disabled")&&1==c;return e=b?{paddingLeft:"22px",marginLeft:"20px",float:"left"}:{paddingLeft:"22px"},n().createElement("div",{id:`rl_wrapper_${m}`,"aria-labelledby":i},d.map((t=>{let r=t.value==a;return n().createElement("div",{className:"form-check abc-radio",key:`radio_key_${m}_${t.value}`,style:e},n().createElement("input",{className:"form-check-input",type:"radio",id:`radio_${m}_${t.value}`,value:t.value,checked:r,onChange:this.handleChange,disabled:v,name:p||`radio_${m}`}),this.getLabel(t,m,b,f,y))})),h&&n().createElement("p",{className:"error-label"},l))}}c.defaultProps={ariaLabelledBy:null},c.propTypes={id:i().string.isRequired}},1833:(e,t,r)=>{r.d(t,{default:()=>o});var a=r(6689),n=r.n(a);const s=["onChange","value","className","error","ariaLabelledBy","containerClassName"];function l(){return l=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(e[a]=r[a])}return e},l.apply(this,arguments)}function i(e,t){if(null==e)return{};var r,a,n=function(e,t){if(null==e)return{};var r,a,n={},s=Object.keys(e);for(a=0;a<s.length;a++)r=s[a],t.indexOf(r)>=0||(n[r]=e[r]);return n}(e,t);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(a=0;a<s.length;a++)r=s[a],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}class o extends n().Component{constructor(e){super(e),this.handleChange=this.handleChange.bind(this)}componentDidUpdate(e,t,r){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:r,className:a,error:o,ariaLabelledBy:u,containerClassName:c}=e,d=i(e,s),m=this.props.hasOwnProperty("error")&&""!==o,p=this.props.hasOwnProperty("className")?a:"form-control",h=this.props.hasOwnProperty("containerClassName")?c:"container-form-control";return n().createElement("div",{className:h},n().createElement("input",l({className:`${p} ${m?"error":""}`,ref:e=>{this.input=e},defaultValue:r,"aria-labelledby":u,onChange:this.handleChange},d)),m&&n().createElement("p",{className:"error-label"},o))}}o.defaultProps={ariaLabelledBy:null}},418:(e,t,r)=>{r.d(t,{default:()=>s});var a=r(6689),n=r.n(a);const s=({children:e,replaceNewLine:t=!1,className:r=""})=>n().createElement("span",{className:r,dangerouslySetInnerHTML:{__html:t?null==e?void 0:e.replace(/\n/g,"<br />"):e}})},1995:(e,t,r)=>{function a(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,a)}return r}function n(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?a(Object(r),!0).forEach((function(t){s(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):a(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function s(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}r.d(t,{default:()=>m});const l="ComboBox",i="CheckBoxList",o="RadioButtonList",u=[l,i,o],c="And",d="Equal";class m{constructor(e,t=[]){s(this,"_parseQuestion",(e=>{if(this.questionByName[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)})),s(this,"_parseQuestions",(()=>{for(let e of this.questions)this._parseQuestion(e)})),s(this,"_allowsValues",(e=>u.includes(e.type))),s(this,"_allowsValue",((e,t)=>{let r=t.value.split(",").map((e=>parseInt(e)));for(let t of r)if(!e.values.map((e=>e.id)).includes(t))return!1;return!0})),s(this,"_getAnswerFor",(e=>{let t=Number.isInteger(e)?e:e.id,r=this.answers[t]||null;return r||null})),s(this,"_hasValue",(e=>""!==e.value)),s(this,"_answerContains",((e,t)=>e.value.split(",").includes(t))),s(this,"_isSubQuestionVisible",(e=>{let t=e.answer_values_operator===c;const r=this._getAnswerFor(e.parent_question_id);if(r)switch(e.visibility_condition){case d:for(let a of e.answer_values)t=e.answer_values_operator===c?t&&this._answerContains(r,a):t||this._answerContains(r,a);break;case"NotEqual":for(let a of e.answer_values)t=e.answer_values_operator===c?t&&!this._answerContains(r,a):t||!this._answerContains(r,a)}else t=e.visibility_condition!==d;return"Visible"===e.visibility?t:!t})),s(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 r of e.parent_rules)if(this._isSubQuestionVisible(this.rules[r]))return!e.mandatory||!!t&&(!!this._hasValue(t)&&!(this._allowsValues(e)&&!this._allowsValue(e,t)));return!0})),s(this,"_checkQuestion",(e=>{let t=this._isAnswered(e);if(e.hasOwnProperty("sub_question_rules"))for(let r of e.sub_question_rules)t=t&&this._checkQuestion(r.sub_question);return t})),s(this,"_formatQuestionAnswer",(e=>{var t;let r={},a=null===(t=this.originalAnswers.find((t=>t.question_id===e.id)))||void 0===t?void 0:t.value;if(a&&("CheckBox"===e.type&&(a="false"!==a&&!!a),e.type!==o&&e.type!==l||(a=parseInt(a)),e.type===i&&(a=a.split(",").map((e=>parseInt(e)))||[])),r[e.name]=a||"",e.type===i&&""===r[e.name]&&(r[e.name]=[]),e.hasOwnProperty("sub_question_rules"))for(let t of e.sub_question_rules){let e=this._formatQuestionAnswer(t.sub_question);r=n(n({},r),e)}return r})),s(this,"formatAnswers",(()=>{let e={};return this.questions.forEach((t=>{let r=this._formatQuestionAnswer(t);e=n(n({},e),r)})),e})),s(this,"completed",(()=>{let e=!0;for(let t of this.questions)e=e&&this._checkQuestion(t);return e})),s(this,"getQuestionByName",(e=>this.questionByName[e]||null)),s(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()}}},4656:e=>{e.exports=require("i18n-react/dist/i18n-react")},580:e=>{e.exports=require("prop-types")},6689:e=>{e.exports=require("react")},1929:e=>{e.exports=require("react-select")}},t={};function r(a){var n=t[a];if(void 0!==n)return n.exports;var s=t[a]={exports:{}};return e[a](s,s.exports,r),s.exports}(()=>{r.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return r.d(t,{a:t}),t}})(),(()=>{r.d=(e,t)=>{for(var a in t)r.o(t,a)&&!r.o(e,a)&&Object.defineProperty(e,a,{enumerable:!0,get:t[a]})}})(),(()=>{r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t)})(),(()=>{r.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})}})();var a={};return(()=>{r.r(a),r.d(a,{default:()=>u});var e=r(6689),t=r.n(e),n=r(4656),s=r.n(n),l=(r(4026),r(580)),i=r.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})}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},o.propTypes={preventEvents:i().bool};const u=o})(),a})()));
|
|
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={4026:(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(418),m=a(1833),h=a(401),p=a(7027),b=a(2230),g=a(1995);const v=require("react-final-form");var f=a(6793);const y=["input","meta","question","className","isDisabled","isRequired"],_=["input","meta","question","isDisabled","isRequired"],E=["input","meta","question","isDisabled","isRequired"],C=["input","meta","question","isDisabled","isRequired","maxValues"],q=e=>{let{input:t,meta:a,question:r,className:s,isDisabled:i,isRequired:u}=e,c=l()(e,y);return o().createElement(m.default,n()({},t,c,{containerClassName:s,name:(0,f.toSlug)(r.name),ariaLabelledBy:`${(0,f.toSlug)(r.name)} label`,id:(0,f.toSlug)(r.name),value:t.value,disabled:i,required:u,onChange:t.onChange,placeholder:r.placeholder}))},w=e=>{let{input:t,meta:a,question:r,isDisabled:s,isRequired:i}=e,u=l()(e,_);return o().createElement(p.default,n()({},t,u,{name:(0,f.toSlug)(r.name),ariaLabelledBy:`${(0,f.toSlug)(r.name)} label`,id:(0,f.toSlug)(r.name),overrideCSS:!0,value:t.value,disabled:s,required:i,onChange:t.onChange}))},N=e=>{let{input:t,meta:a,question:r,isDisabled:s,isRequired:i}=e,u=l()(e,E);return o().createElement(h.default,n()({},t,u,{name:(0,f.toSlug)(r.name),ariaLabelledBy:`${(0,f.toSlug)(r.name)} label`,id:(0,f.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,maxValues:u}=e,c=l()(e,C);return o().createElement(b.default,n()({},t,c,{id:(0,f.toSlug)(r.name),name:(0,f.toSlug)(r.name),ariaLabelledBy:`${(0,f.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)}}))},k=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:m="Submit",RequiredErrorMessage:h="Required",ValidationErrorClassName:p="extra-question-error",allowExtraQuestionsEdit:b=!0,onError:y=(e=>console.log("form errors: ",e))},_)=>{let E=null;const C=(0,i.useRef)({}),[O,x]=(0,i.useState)({});(0,i.useEffect)((()=>{P()}),[e]);const P=()=>{const a=new g.default(e,t);x(a.formatAnswers())},B=({when:e,rule:t,children:a})=>o().createElement(v.Field,{name:e,subscription:{value:!0}},(({input:{value:e}})=>F(t,L(e,t),a))),j=({name:e})=>o().createElement(v.Field,{name:e,subscription:{error:!0,touched:!0}},(({meta:{error:e,touched:t}})=>e&&t?o().createElement("div",{className:p},e):null)),L=(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())},F=(e,t,a)=>"Visible"===e.visibility?"Equal"===e.visibility_condition?t?a:(delete C.current[e.sub_question.id],null):t?(delete C.current[e.sub_question.id],null):a:"Equal"===e.visibility_condition?t?(delete C.current[e.sub_question.id],null):a:t?a:(delete C.current[e.sub_question.id],null),$=e=>{const t=String.fromCharCode(160),a=document.createElement("div");a.innerHTML=e.label;const r=a.textContent||a.innerText||"",n=e.mandatory?`${r}${t}<b>*</b>`:r;return`<label id="${(0,f.toSlug)(e.name)} label" htmlFor="${(0,f.toSlug)(e.name)}">\n ${n}\n </label>`},A=e=>{let t=e.values;const a=!b&&((e,t)=>{const a=(0,f.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,O);var r,u,c;if("Text"===e.type)return o().createElement(i.Fragment,{key:(0,f.toSlug)(e.name)},o().createElement("div",{ref:t=>C.current[e.id]=t,className:n},o().createElement(d.default,{className:s},$(e)),o().createElement("div",{className:l},o().createElement(v.Field,{name:(0,f.toSlug)(e.name),question:e,isDisabled:a,isRequired:e.mandatory,validate:k(e.mandatory),component:q}),o().createElement(j,{name:(0,f.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(B,{key:t.id,when:(0,f.toSlug)(e.name),rule:t},A(t.sub_question)))));if("TextArea"===e.type)return o().createElement(i.Fragment,{key:(0,f.toSlug)(e.name)},o().createElement("div",{ref:t=>C.current[e.id]=t,className:n},o().createElement(d.default,{className:s},$(e)),o().createElement("div",{className:l},o().createElement(v.Field,{validate:k(e.mandatory),name:(0,f.toSlug)(e.name),id:(0,f.toSlug)(e.name),disabled:a,required:e.mandatory,component:"textarea"}),o().createElement(j,{name:(0,f.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(B,{key:t.id,when:(0,f.toSlug)(e.name),rule:t},A(t.sub_question)))));if("CheckBox"===e.type)return o().createElement(i.Fragment,{key:(0,f.toSlug)(e.name)},o().createElement("div",{ref:t=>C.current[e.id]=t,style:{display:"flex"},className:n},o().createElement(d.default,{className:`eq-checkbox-label ${s}`},$(e)),o().createElement("div",{className:l},o().createElement("div",{className:"form-check abc-checkbox"},o().createElement(v.Field,{name:(0,f.toSlug)(e.name),id:(0,f.toSlug)(e.name),validate:k(e.mandatory),disabled:a,required:e.mandatory,type:"checkbox",className:"form-check-input",component:"input"}),o().createElement("label",{className:"form-check-label",htmlFor:(0,f.toSlug)(e.name)}),o().createElement(j,{name:(0,f.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(B,{key:t.id,when:(0,f.toSlug)(e.name),rule:t},A(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,f.toSlug)(e.name)},o().createElement("div",{key:(0,f.toSlug)(e.name),ref:t=>C.current[e.id]=t,className:n},o().createElement(d.default,{className:s},$(e)),o().createElement("div",{className:l},o().createElement(v.Field,{name:(0,f.toSlug)(e.name),options:r,question:e,validate:k(e.mandatory),isDisabled:a,isRequired:e.mandatory,component:w}),o().createElement(j,{name:(0,f.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(B,{key:t.id,when:(0,f.toSlug)(e.name),rule:t},A(t.sub_question)))))}if("ComboBox"===e.type){var h;const r=t.map((e=>({label:e.label,value:e.id})));return o().createElement(i.Fragment,{key:(0,f.toSlug)(e.name)},o().createElement("div",{ref:t=>C.current[e.id]=t,className:n},o().createElement(d.default,{className:s},$(e)),o().createElement("div",{className:l},o().createElement(v.Field,{name:(0,f.toSlug)(e.name),options:r,question:e,validate:k(e.mandatory),isDisabled:a,isRequired:e.mandatory,component:N}),o().createElement(j,{name:(0,f.toSlug)(e.name)}))),(null===(h=e.sub_question_rules)||void 0===h?void 0:h.length)>0&&e.sub_question_rules.map((t=>o().createElement(B,{key:t.id,when:(0,f.toSlug)(e.name),rule:t},A(t.sub_question)))))}if("CheckBoxList"===e.type){var p;const r=t.map((e=>({label:e.label,value:e.id})));return o().createElement(i.Fragment,{key:(0,f.toSlug)(e.name)},o().createElement("div",{ref:t=>C.current[e.id]=t,className:n},o().createElement(d.default,{className:s},$(e)),o().createElement("div",{className:l},o().createElement(v.Field,{name:(0,f.toSlug)(e.name),className:l,validate:k(e.mandatory),options:r,question:e,maxValues:e.max_selected_values,isDisabled:a,isRequired:e.mandatory,component:S}),o().createElement(j,{name:(0,f.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(B,{key:t.id,when:(0,f.toSlug)(e.name),rule:t},A(t.sub_question)))))}return null},R=(e,t,a)=>{var r;if(e.mandatory&&(e=>!!C.current[e.id])(e)){const r=(0,f.toSlug)(e.name);t.hasOwnProperty((0,f.toSlug)(r))&&""!==t[(0,f.toSlug)(r)]&&0!==t[r].length||(a[r]=h)}null===(r=e.sub_question_rules)||void 0===r||r.forEach((e=>{R(e.sub_question,t,a)}))};if(!Object.keys(O).length)return null;const D=(e,t,a)=>{var r;t.includes((0,f.toSlug)(e.name))&&a.push(e),null===(r=e.sub_question_rules)||void 0===r||r.forEach((e=>{D(e.sub_question,t,a)}))};return Object.keys(O).length?o().createElement("div",{className:r},o().createElement(v.Form,{validate:t=>{const a={};return e.forEach((e=>{R(e,t,a)})),Object.keys(a).length>0&&y(a),a},onSubmit:e=>{a(e)},initialValues:O},(({handleSubmit:t,form:a,submitting:r,pristine:n,values:s})=>(E=t,o().createElement("form",{onSubmit:r=>{const n=a.getRegisteredFields().filter((e=>a.getFieldState(e).invalid));n.length>0&&(t=>{const a=[];e.forEach((e=>{D(e,t,a)}));const r=a.sort(((e,t)=>e.order>t.order))[0];C.current[r.id].scrollIntoView({behavior:"smooth",block:"center"})})(n),t(r)},ref:_},u?o().createElement("fieldset",{disabled:"disabled"},e.map((e=>A(e)))):e.map((e=>A(e))),c&&o().createElement("pre",null,JSON.stringify(s,0,2)))))),!_&&o().createElement("button",{type:"submit",onClick:e=>{E(e)},style:{marginTop:10}},m)):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}},2230:(e,t,a)=>{a.d(t,{default:()=>h});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);const m=["onChange","value","className","options","id","children","error","disabled","name","ariaLabelledBy"];class h 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:h,disabled:p,name:b,ariaLabelledBy:g}=t,{otherChecked:v}=(n()(t,m),this.state),f=this.props.hasOwnProperty("inline"),y=this.props.hasOwnProperty("html"),_=this.props.hasOwnProperty("allowOther"),E=!!r&&r.find((e=>!l.map((e=>e.value)).includes(e))),C=this.props.hasOwnProperty("error")&&""!==h,q=this.props.hasOwnProperty("disabled")&&1==p;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"+(C?" 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:q,onChange:this.handleChange,className:"form-check-input",value:t.value}),o().createElement("label",{className:"form-check-label",htmlFor:`cb_${i}_${t.value}`},y&&o().createElement(d.default,null,t.label),!y&&t.label))})),_&&o().createElement("div",{className:"form-check abc-checkbox",style:e},o().createElement("input",{type:"checkbox",id:"cb_other"+i,checked:v,disabled:q,onChange:this.handleOtherCBChange,className:"form-check-input",value:"other"}),o().createElement("label",{className:"form-check-label",htmlFor:"cb_other"+i},c().translate("general.other"))),_&&v&&o().createElement("div",{style:{paddingLeft:"22px",width:"50%"}},o().createElement("input",{className:"form-control",disabled:q,onChange:this.handleChange,value:E}))),C&&o().createElement("p",{className:"error-label"},h))}}h.defaultProps={ariaLabelledBy:null},h.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 h=["onChange","value","className","error","clearable","disabled","overrideCSS","ariaLabelledBy"];function p(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?p(Object(a),!0).forEach((function(t){l()(e,t,a[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(a)):p(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,p=o()(e,h),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},p)),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);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,n){return a?l().createElement("label",{className:"form-check-label",htmlFor:`radio_${t}_${e.value}`,style:{display:"inline-block"}},n&&l().createElement(i.default,null,e.label),!n&&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:h}=t,p=(n()(t,c),this.props.hasOwnProperty("error")&&""!=i),b=this.props.hasOwnProperty("inline"),g=this.props.hasOwnProperty("simple"),v=this.props.hasOwnProperty("html"),f=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:f,name:h||`radio_${m}`}),this.getLabel(t,m,b,g,v))})),p&&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,h=this.props.hasOwnProperty("className")?r:"form-control",p=this.props.hasOwnProperty("containerClassName")?c:"container-form-control";return o().createElement("div",{className:p},o().createElement("input",n()({className:`${h} ${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:()=>s});var r=a(6689),n=a.n(r);const s=({children:e,replaceNewLine:t=!1,className:a=""})=>n().createElement("span",{className:a,dangerouslySetInnerHTML:{__html:t?null==e?void 0:e.replace(/\n/g,"<br />"):e}})},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:()=>p});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",h="Equal";class p{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 h: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!==h;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;let a={};const r=(0,s.toSlug)(e.name);let n=null===(t=this.originalAnswers.find((t=>t.question_id===e.id)))||void 0===t?void 0:t.value;if(n&&("CheckBox"===e.type&&(n="false"!==n&&!!n),e.type!==c&&e.type!==o||(n=parseInt(n)),e.type===u&&(n=n.split(",").map((e=>parseInt(e)))||[])),a[r]=n||"",e.type===u&&""===a[r]&&(a[r]=[]),e.hasOwnProperty("sub_question_rules"))for(let t of e.sub_question_rules){let e=this._formatQuestionAnswer(t.sub_question);a=i(i({},a),e)}return a})),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")},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(4026),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})}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},o.propTypes={preventEvents:i().bool};const u=o})(),r})()));
|