openstack-uicore-foundation
Version:
ui reactjs components for openstack marketing site
2 lines • 2.1 kB
JavaScript
!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={2015:e=>{e.exports=require("react")}},t={};function o(a){var r=t[a];if(void 0!==r)return r.exports;var n=t[a]={exports:{}};return e[a](n,n.exports,o),n.exports}(()=>{o.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return o.d(t,{a:t}),t}})(),(()=>{o.d=(e,t)=>{for(var a in t)o.o(t,a)&&!o.o(e,a)&&Object.defineProperty(e,a,{enumerable:!0,get:t[a]})}})(),(()=>{o.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t)})(),(()=>{o.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})}})();var a={};o.r(a),o.d(a,{default:()=>s});var r=o(2015),n=o.n(r);const l=({value:e,label:t,options:o})=>[n().createElement("option",{key:"group"+e,className:"option-group",value:e},t),o.map(((e,t)=>n().createElement("option",{className:"option-child",key:e.value,value:e.value}," - ",e.label)))];class s extends n().Component{constructor(e){super(e),this.state={value:e.value},this.handleChange=this.handleChange.bind(this)}componentDidUpdate(e,t,o){this.props.value!==e.value&&this.setState({value:this.props.value})}handleChange(e){this.props.onChange(e)}render(){let{id:e,options:t,placeholder:o,className:a,error:r}=this.props,s=this.props.hasOwnProperty("error")&&""!=r,{value:p}=this.state;return n().createElement("div",null,n().createElement("select",{id:e,className:a+" form-control "+(s?"error":""),value:p,onChange:this.handleChange},n().createElement("option",{value:"",disabled:!0},o),t.map(((e,t)=>void 0!==e.options?n().createElement(l,{key:"group_opt_"+t,label:e.label,value:e.value,options:e.options}):n().createElement("option",{key:e.value,value:e.value},e.label)))),s&&n().createElement("p",{className:"error-label"},r))}}return a})()));
//# sourceMappingURL=grouped-dropdown.js.map