Checkboxes-DSmjLBrh.js 7.7 KB

1
  1. import{p as $,bC as W,bD as H,s as P,f as d,aG as Q,bf as U,b4 as D,a3 as V,bE as L,L as B,bF as M,bG as Z,bH as q,ad as J,y as I,O as K,ae as X,z as k,P as N,Q as i,aZ as Y,bm as ee}from"./index-BPRWoLf4.js";var te=Math.max,ae=Math.min;function ne(p,a,e){return p>=ae(a,e)&&p<te(a,e)}var le=ne,se=le,j=W,oe=H;function ie(p,a,e){return a=j(a),e===void 0?(e=a,a=0):e=j(e),p=oe(p),se(p,a,e)}var re=ie;const ce=$(re);var de=function(p){P(a,p);function a(){var e=p!==null&&p.apply(this,arguments)||this;return e.checkboxRef=d.createRef(),e.childRefs=[],e}return a.prototype.doAction=function(e,t,s){var o,n,l=this.props,h=l.resetValue,u=l.onChange,r=l.formStore,b=l.store,m=l.name,f=e==null?void 0:e.actionType;if(f==="clear")u("");else if(f==="reset"){var v=(n=Q((o=r==null?void 0:r.pristine)!==null&&o!==void 0?o:b==null?void 0:b.pristine,m))!==null&&n!==void 0?n:h;u(v??"")}},a.prototype.reload=function(){var e=this.props.reloadOptions;e&&e()},a.prototype.handleAddClick=function(){var e=this.props.onAdd;e&&e()},a.prototype.handleEditClick=function(e,t){var s=this.props.onEdit;e.preventDefault(),e.stopPropagation(),s&&s(t)},a.prototype.handleDeleteClick=function(e,t){var s=this.props.onDelete;e.preventDefault(),e.stopPropagation(),s&&s(t)},a.prototype.componentDidMount=function(){this.updateBorderStyle();var e=U(this.updateBorderStyle,100);this.checkboxRef.current&&(this.checkboxRefObserver=new ResizeObserver(e),this.checkboxRefObserver.observe(this.checkboxRef.current))},a.prototype.componentWillUnmount=function(){var e;(e=this.checkboxRefObserver)===null||e===void 0||e.disconnect()},a.prototype.updateBorderStyle=function(){if(this.props.optionType==="button"&&this.childRefs.length){var e=this.childRefs.map(function(r){return r==null?void 0:r.ref}),t=e[0].labelRef.current.offsetTop,s=[],o=e.length;s[0]="first";for(var n=0,l=1;l<o;l++){var h=e[l],u=h.labelRef.current.offsetTop;s[l]="",u!==t&&(s[l]="first",s[l-1]+=" last",n=l,t=u)}s[o-1]+=" last",s.forEach(function(r,b){b>=n&&(r+=" last-line"),e[b].setClassName(r)})}},a.prototype.renderGroup=function(e,t){var s=this,o,n=this.props,l=n.classnames,h=n.labelField;if(!(!((o=e.children)===null||o===void 0)&&o.length))return null;var u=e.children.map(function(b,m){return s.renderItem(b,m)}),r=this.columnsSplit(u);return d.createElement("div",{key:"group-"+t,className:l("CheckboxesControl-group",e.className)},d.createElement("label",{className:l("CheckboxesControl-groupLabel",e.labelClassName)},e[h||"label"]),r)},a.prototype.addChildRefs=function(e){e&&this.childRefs.push(e)},a.prototype.renderItem=function(e,t){var s=this,o;if(!((o=e.children)===null||o===void 0)&&o.length)return this.renderGroup(e,t);var n=this.props,l=n.render,h=n.itemClassName,u=n.onToggle,r=n.selectedOptions,b=n.disabled,m=n.inline,f=n.labelClassName,v=n.labelField,E=n.removable,T=n.editable,S=n.translate,F=n.optionType,g=n.menuTpl,O=n.data,y=n.testIdBuilder,_=String(e[v||"label"]),A=e.labelClassName,R=y==null?void 0:y.getChild("item-"+_||t);return d.createElement(D,{className:h,key:t,onChange:function(){return u(e)},checked:!!~r.indexOf(e),disabled:b||e.disabled,inline:m,labelClassName:A||f,description:e.description,optionType:F,testIdBuilder:R,ref:this.addChildRefs},g?l("checkboxes/".concat(t),g,{data:V(O,e)}):_,E&&L(e,"removable")?d.createElement("a",{"data-tooltip":S("Select.clear"),"data-position":"left"},d.createElement(B,{icon:"minus",className:"icon",onClick:function(x){return s.handleDeleteClick(x,e)}})):null,T&&L(e,"editable")?d.createElement("a",{"data-tooltip":"编辑","data-position":"left"},d.createElement(B,{icon:"pencil",className:"icon",onClick:function(x){return s.handleEditClick(x,e)}})):null)},a.prototype.columnsSplit=function(e){var t=this.props,s=t.columnsCount,o=t.classnames,n=[],l=[];return e.forEach(function(h){h&&h.key&&String(h.key).startsWith("group")?(l.length&&(n.push(M(l,o,s)),l=[]),n.push(h)):l.push(h)}),l.length&&n.push(M(l,o,s)),n},a.prototype.render=function(){var e=this,t=this.props,s=t.className;t.style;var o=t.disabled,n=t.placeholder,l=t.options,h=t.inline;t.columnsCount;var u=t.selectedOptions;t.onToggle;var r=t.onToggleAll,b=t.checkAll,m=t.checkAllText,f=t.classnames,v=t.itemClassName,E=t.labelClassName,T=t.creatable,S=t.addApi,F=t.createBtnLabel,g=t.translate,O=t.optionType,y=t.loading,_=t.loadingConfig,A=t.themeCss,R=t.id,x=t.env,c=t.classPrefix,C=[];l&&l.length&&(C=l.map(function(z,G){return e.renderItem(z,G)})),b&&C.length&&O==="default"&&C.unshift(d.createElement(D,{key:"checkall",className:v,onChange:r,checked:!!u.length,partial:ce(u.length,0,Z(l).length),disabled:o,inline:h,labelClassName:E},m??g("Checkboxes.selectAll"))),C=this.columnsSplit(C);var w=q(A,"checkboxes");return d.createElement("div",{className:f("CheckboxesControl",s,J(I(I({},this.props),{name:["checkboxesControlClassName","checkboxesControlCheckedClassName","checkboxesClassName","checkboxesCheckedClassName","checkboxesInnerClassName","checkboxesShowClassName"],id:R,themeCss:w}))),ref:this.checkboxRef},C&&C.length?C:y?null:d.createElement("span",{className:"Form-placeholder"},g(n)),y?d.createElement(K,{show:!0,icon:"reload",size:"sm",spinnerClassName:f("Checkboxes-spinner"),loadingConfig:_}):null,(T||S)&&!o?d.createElement("a",{className:f("Checkboxes-addBtn"),onClick:this.handleAddClick},d.createElement(B,{icon:"plus",className:"icon"}),g(F)):null,d.createElement(X,I({},this.props,{config:{themeCss:w,classNames:[{key:"checkboxesControlClassName",weights:{default:{inner:".".concat(c,"Checkbox:not(.checked):not(.disabled)")},hover:{suf:" .".concat(c,"Checkbox:not(.disabled):not(.checked)")},disabled:{inner:".".concat(c,"Checkbox.disabled:not(.checked)")}}},{key:"checkboxesControlCheckedClassName",weights:{default:{inner:".".concat(c,"Checkbox.checked:not(.disabled)")},hover:{suf:" .".concat(c,"Checkbox.checked:not(.disabled)")},disabled:{inner:".".concat(c,"Checkbox.checked.disabled")}}},{key:"checkboxesClassName",weights:{default:{inner:".".concat(c,"Checkbox:not(.checked):not(.disabled) > i")},hover:{suf:" .".concat(c,"Checkbox:not(.disabled):not(.checked)"),inner:"> i"},disabled:{inner:".".concat(c,"Checkbox.disabled:not(.checked) > i")}}},{key:"checkboxesCheckedClassName",weights:{default:{inner:".".concat(c,"Checkbox:not(.disabled) > i")},hover:{suf:" .".concat(c,"Checkbox:not(.disabled)"),inner:"> i"},disabled:{inner:".".concat(c,"Checkbox.disabled > i")}}},{key:"checkboxesInnerClassName",weights:{default:{inner:".".concat(c,"Checkbox:not(.disabled) > i .icon")},hover:{suf:" .".concat(c,"Checkbox:not(.disabled)"),inner:"> i .icon"},disabled:{inner:".".concat(c,"Checkbox.disabled > i .icon")}}},{key:"checkboxesShowClassName",weights:{default:{inner:".".concat(c,"Checkbox > i")}}}],id:R},env:x})))},a.defaultProps={columnsCount:1,multiple:!0,placeholder:"placeholder.noOption",creatable:!1,inline:!0,createBtnLabel:"Select.createLabel",optionType:"default"},k([N,i("design:type",Function),i("design:paramtypes",[]),i("design:returntype",void 0)],a.prototype,"handleAddClick",null),k([N,i("design:type",Function),i("design:paramtypes",[Event,Object]),i("design:returntype",void 0)],a.prototype,"handleEditClick",null),k([N,i("design:type",Function),i("design:paramtypes",[Event,Object]),i("design:returntype",void 0)],a.prototype,"handleDeleteClick",null),k([N,i("design:type",Function),i("design:paramtypes",[]),i("design:returntype",void 0)],a.prototype,"updateBorderStyle",null),k([N,i("design:type",Function),i("design:paramtypes",[Object]),i("design:returntype",void 0)],a.prototype,"addChildRefs",null),k([Y(),i("design:type",Function),i("design:paramtypes",[]),i("design:returntype",void 0)],a.prototype,"render",null),a}(d.Component),pe=function(p){P(a,p);function a(){return p!==null&&p.apply(this,arguments)||this}return a=k([ee({type:"checkboxes",sizeMutable:!1,thin:!0})],a),a}(de);export{pe as CheckboxesControlRenderer,de as default};