1 |
- import{s as V,cK as w,be as C,f as s,bf as b,y as F,L as j,ag as R,z as r,P as l,Q as t,a1 as T}from"./index-DT8qTvyx.js";var P=[{name:"Font Awesome 4.7",prefix:"fa fa-",icons:["slideshare","snapchat","snapchat-ghost","snapchat-square","soundcloud","spotify","stack-exchange","stack-overflow"]}],B=function(d){V(n,d);function n(){var e=d!==null&&d.apply(this,arguments)||this;return e.state={isOpen:!1,inputValue:"",isFocused:!1,vendorIndex:0},e}return n.prototype.componentDidUpdate=function(e){var a=this.props;e.value!==a.value&&this.setState({inputValue:""})},n.prototype.changeVendor=function(e){this.setState({vendorIndex:e},this.formatOptions)},n.prototype.formatOptions=function(){var e=this.state.vendorIndex||0,a=P[e],i=a.prefix,p=a.icons;return p.map(function(u){return{label:i+u,value:i+u}})},n.prototype.getVendors=function(){return P.map(function(e){return e.name})},n.prototype.inputRef=function(e){this.input=e},n.prototype.focus=function(){if(this.input){this.input.focus();var e=this.input.value.length;e&&this.input.setSelectionRange(e,e)}},n.prototype.handleClick=function(){this.props.disabled||(this.focus(),this.setState({isOpen:!0}))},n.prototype.handleFocus=function(e){this.setState({isOpen:!0,isFocused:!0}),this.props.onFocus&&this.props.onFocus(e)},n.prototype.handleBlur=function(e){var a=this.props,i=a.onBlur,p=a.trimContents,u=a.value,o=a.onChange;this.setState({isFocused:!1},function(){p&&u&&typeof u=="string"&&o(u.trim())}),i&&i(e)},n.prototype.handleInputChange=function(e){var a=e.currentTarget.value;this.setState({inputValue:a})},n.prototype.handleKeyDown=function(e){var a=w(e.keyCode);if(a==="backspace"){var i=this.props.onChange;this.state.inputValue||(i(""),this.setState({inputValue:""}))}},n.prototype.handleChange=function(e){var a=this.props,i=a.onChange,p=a.disabled;p||(i(e),this.setState({isFocused:!1,inputValue:""}))},n.prototype.handleStateChange=function(e){switch(e.type){case C.stateChangeTypes.itemMouseEnter:case C.stateChangeTypes.changeInput:this.setState({isOpen:!0});break;default:var a={};typeof e.isOpen<"u"&&(a.isOpen=e.isOpen),this.state.isOpen&&e.isOpen===!1&&(a.inputValue=""),this.setState(a);break}},n.prototype.handleClear=function(){var e=this,a=this.props,i=a.onChange,p=a.resetValue;i==null||i(p),this.setState({inputValue:p,isFocused:!0},function(){e.focus()})},n.prototype.renderFontIcons=function(){var e=this,a=this.props,i=a.className,p=a.inputOnly,u=a.placeholder,o=a.classnames,N=a.name,c=a.value,S=a.noDataTip,I=a.disabled,E=a.clearable,_=a.translate,k=this.formatOptions(),g=this.getVendors();return s.createElement(C,{isOpen:this.state.isOpen,inputValue:this.state.inputValue,onChange:this.handleChange,onOuterClick:this.handleBlur,onStateChange:this.handleStateChange,selectedItem:[c]},function(m){var x=m.getInputProps,D=m.getItemProps,f=m.isOpen,v=m.inputValue,O=v&&f?b(k,v,{keys:["label","value"],threshold:b.rankings.CONTAINS}):k;return s.createElement("div",{className:o("IconPickerControl-input IconPickerControl-input--withAC",p?i:"",{"is-opened":f}),onClick:e.handleClick},s.createElement("div",{className:o("IconPickerControl-valueWrap")},u&&!c&&!e.state.inputValue?s.createElement("div",{className:o("IconPickerControl-placeholder")},u):null,!c||v&&f?null:s.createElement("div",{className:o("IconPickerControl-value")},s.createElement("i",{className:o(c)}),typeof c=="string"?c:""),s.createElement("input",F({},x({name:N,ref:e.inputRef,onFocus:e.handleFocus,onChange:e.handleInputChange,onKeyDown:e.handleKeyDown,value:e.state.inputValue}),{autoComplete:"off",disabled:I,size:10})),E&&!I&&c?s.createElement("a",{onClick:e.handleClear,className:o("IconPickerControl-clear")},s.createElement(j,{icon:"input-clear",className:"icon"})):null),f?s.createElement("div",{className:o("IconPickerControl-sugsPanel")},g.length>1?s.createElement("div",{className:o("IconPickerControl-tabs")},g.map(function(h,y){return s.createElement("div",{className:o("IconPickerControl-tab",{active:e.state.vendorIndex===y}),onClick:function(){return e.changeVendor(y)},key:y},h)})):null,O.length?s.createElement("div",{className:o("IconPickerControl-sugs",g.length>1?"IconPickerControl-multiVendor":"IconPickerControl-singleVendor")},O.map(function(h,y){return s.createElement("div",F({},D({item:h.value,className:o("IconPickerControl-sugItem",{"is-active":c===h.value})}),{key:y}),s.createElement("i",{className:o("".concat(h.value)),title:"".concat(h.value)}))})):s.createElement("div",{className:o(g.length>1?"IconPickerControl-multiVendor":"IconPickerControl-singleVendor")},_(S))):null)})},n.prototype.render=function(){var e=this.props,a=e.className;e.style;var i=e.classPrefix,p=e.inputOnly,u=e.disabled,o=this.renderFontIcons();return p?o:s.createElement("div",{className:R(a,"".concat(i,"IconPickerControl"),{"is-focused":this.state.isFocused,"is-disabled":u})},o)},n.defaultProps={resetValue:"",placeholder:"",noDataTip:"placeholder.noData"},r([l,t("design:type",Function),t("design:paramtypes",[Number]),t("design:returntype",void 0)],n.prototype,"changeVendor",null),r([l,t("design:type",Function),t("design:paramtypes",[]),t("design:returntype",void 0)],n.prototype,"formatOptions",null),r([l,t("design:type",Function),t("design:paramtypes",[]),t("design:returntype",void 0)],n.prototype,"getVendors",null),r([l,t("design:type",Function),t("design:paramtypes",[Object]),t("design:returntype",void 0)],n.prototype,"inputRef",null),r([l,t("design:type",Function),t("design:paramtypes",[]),t("design:returntype",void 0)],n.prototype,"focus",null),r([l,t("design:type",Function),t("design:paramtypes",[]),t("design:returntype",void 0)],n.prototype,"handleClick",null),r([l,t("design:type",Function),t("design:paramtypes",[Object]),t("design:returntype",void 0)],n.prototype,"handleFocus",null),r([l,t("design:type",Function),t("design:paramtypes",[Object]),t("design:returntype",void 0)],n.prototype,"handleBlur",null),r([l,t("design:type",Function),t("design:paramtypes",[Object]),t("design:returntype",void 0)],n.prototype,"handleInputChange",null),r([l,t("design:type",Function),t("design:paramtypes",[Object]),t("design:returntype",void 0)],n.prototype,"handleKeyDown",null),r([l,t("design:type",Function),t("design:paramtypes",[Object]),t("design:returntype",void 0)],n.prototype,"handleChange",null),r([l,t("design:type",Function),t("design:paramtypes",[Object]),t("design:returntype",void 0)],n.prototype,"handleStateChange",null),r([l,t("design:type",Function),t("design:paramtypes",[]),t("design:returntype",void 0)],n.prototype,"handleClear",null),n}(s.PureComponent),A=function(d){V(n,d);function n(){return d!==null&&d.apply(this,arguments)||this}return n=r([T({type:"icon-picker"})],n),n}(B);export{A as IconPickerControlRenderer,B as default};
|