1 |
- import{s as ue,bd as ve,cF as pe,y,E as R,G as T,v as be,w as Ie,bX as $,bY as V,ao as ye,aC as se,cG as ee,f as F,k as Y,L as Q,aw as ge,z as ce,P as xe,Q as te,a1 as we,aF as fe,cg as ne,X as J,a3 as W,aT as Ce,bl as oe,aU as Ee,cH as Pe,ah as Ae,aG as L,aH as U,cI as le,cn as de,bU as Fe,aA as he,K as Be}from"./index-DT8qTvyx.js";var q="__isPlaceholder",ke=function(X){ue(g,X);function g(t){var e=X.call(this,t)||this;e.entityId=1,e.subForms={},e.subFormItems={},e.rowPrinstine=[],e.editting={},e.toDispose=[],e.lazyEmitValue=ve(e.emitValue.bind(e),50,{trailing:!0,leading:!1}),e.emittedValue=null;var i=t.addHook;return e.state={columns:e.buildColumns(t),editIndex:"",items:Array.isArray(t.value)?t.value.concat():[]},e.entries=new pe,e.buildItemProps=e.buildItemProps.bind(e),e.confirmEdit=e.confirmEdit.bind(e),e.cancelEdit=e.cancelEdit.bind(e),e.handleSaveTableOrder=e.handleSaveTableOrder.bind(e),e.handleTableSave=e.handleTableSave.bind(e),e.handleRadioChange=e.handleRadioChange.bind(e),e.getEntryId=e.getEntryId.bind(e),e.subFormRef=e.subFormRef.bind(e),e.subFormItemRef=e.subFormItemRef.bind(e),e.handlePageChange=e.handlePageChange.bind(e),e.emitValue=e.emitValue.bind(e),e.tableRef=e.tableRef.bind(e),e.flush=e.flush.bind(e),i&&e.toDispose.push(i(e.flush,"flush")),e}return g.prototype.componentDidUpdate=function(t,e){var i=this.props,n=null;if(t.disabled!==i.disabled||t.static!==i.static||i.$schema.disabled!==t.$schema.disabled||i.$schema.static!==t.$schema.static){var r=this.state.items.filter(function(s){return!s.hasOwnProperty(q)});n=y(y({},n),{items:r,editIndex:"",columns:this.buildColumns(i)})}i.columns!==t.columns&&(n=y(y({},n),{columns:this.buildColumns(i)})),i.value!==t.value&&i.value!==this.emittedValue&&(n=y(y({},n),{items:Array.isArray(i.value)?i.value.concat():[],editIndex:""})),n&&this.setState(n)},g.prototype.componentWillUnmount=function(){this.entries.dispose(),this.lazyEmitValue.cancel(),this.toDispose.forEach(function(t){return t()}),this.toDispose=[]},g.prototype.flush=function(){return R(this,void 0,void 0,function(){var t,e,i=this;return T(this,function(n){switch(n.label){case 0:return t=[],Object.keys(this.subForms).forEach(function(r){return i.subForms[r]&&t.push(i.subForms[r])}),[4,Promise.all(t.map(function(r){return r.flush()}))];case 1:return n.sent(),e=[],Object.keys(this.subFormItems).forEach(function(r){return i.subFormItems[r]&&e.push(i.subFormItems[r])}),[4,Promise.all(e.map(function(r){var s,c;return(c=(s=r.props).onFlushChange)===null||c===void 0?void 0:c.call(s)}))];case 2:return n.sent(),[4,this.lazyEmitValue.flush()];case 3:return n.sent(),[2]}})})},g.prototype.resolveVariableProps=function(t,e){var i={minLength:0,maxLength:1/0},n=t[e];if(!n)return i[e];if(typeof n=="string")if(be(n)){var r=Ie(n,t.data,"| raw");n=typeof r=="number"&&r>=0?r:i[e]}else{var s=parseInt(n,10);n=isNaN(s)?i[e]:s}return n},g.prototype.subFormRef=function(t,e,i){this.subForms["".concat(e,"-").concat(i)]=t},g.prototype.subFormItemRef=function(t,e,i){this.subFormItems["".concat(e,"-").concat(i)]=t},g.prototype.validate=function(){return R(this,void 0,void 0,function(){var t,e,i,n,r,s,c,m,o,h,v,d,p,w=this;return T(this,function(b){switch(b.label){case 0:return t=this.props,e=t.value,i=t.translate,n=t.columns,r=this.resolveVariableProps(this.props,"minLength"),s=this.resolveVariableProps(this.props,"maxLength"),this.state.editIndex?[2,i("Table.editing")]:r&&(!Array.isArray(e)||e.length<r)?[2,i("Combo.minLength",{minLength:r})]:[3,1];case 1:return s&&Array.isArray(e)&&e.length>s?[2,i("Combo.maxLength",{maxLength:s})]:[3,2];case 2:return c=[],Object.keys(this.subForms).forEach(function(u){return w.subForms[u]&&c.push(w.subForms[u])}),c.length?[4,Promise.all(c.map(function(u){return u.validate()}))]:[3,4];case 3:if(m=b.sent(),o=~m.indexOf(!1)?i("Form.validateFailed"):"",h="",!o&&Array.isArray(n)&&Array.isArray(e)&&n.some(function(u){if(u.unique&&u.name){var l=[];return e.some(function(I){var a=fe(I,u.name);return~l.indexOf(a)?(h="".concat(u.label||u.name),!0):(l.push(a),!1)})}return!1})&&(o=i("InputTable.uniqueError",{label:h})),o)return[2,o];b.label=4;case 4:return v=[],Object.keys(this.subFormItems).forEach(function(u){return w.subFormItems[u]&&v.push(w.subFormItems[u])}),[4,Promise.all(v.map(function(u){return u.props.onValidate()}))];case 5:return d=b.sent(),p=~d.indexOf(!1)?i("Form.validateFailed"):"",[2,p]}})})},g.prototype.emitValue=function(t){return R(this,void 0,void 0,function(){var e,i,n;return T(this,function(r){switch(r.label){case 0:return e=t??this.state.items.filter(function(s){return!s.hasOwnProperty(q)}),i=this.props.onChange,[4,this.dispatchEvent("change")];case 1:return n=r.sent(),n||(this.emittedValue=e,i==null||i(e)),[2,n]}})})},g.prototype.doAction=function(t,e){for(var i,n,r=[],s=2;s<arguments.length;s++)r[s-2]=arguments[s];return R(this,void 0,void 0,function(){var c,m,o,h,v,d,p,w,b,u,l,I,a,f,x,C,P,A=this;return T(this,function(k){switch(k.label){case 0:return c=this.props,m=c.onAction,o=c.valueField,h=c.env,v=c.needConfirm,d=c.addable,p=c.addApi,w=c.translate,b=c.onChange,u=t.actionType,u!=="add"?[3,6]:d===!1?[2]:(l=this.state.items.concat(),p||t.payload?(I=null,J(p,e)?[4,h.fetcher(p,e)]:[3,2]):[3,4]);case 1:return a=k.sent(),a&&!a.ok?(!(p!=null&&p.silent)&&h.notify("error",(n=(i=p==null?void 0:p.messages)===null||i===void 0?void 0:i.failed)!==null&&n!==void 0?n:a.msg||w("fetchFailed")),[2]):(a&&a.ok&&(I=a.data),[3,3]);case 2:I=ne(t.payload,e),k.label=3;case 3:return I=Array.isArray(I)?I:[I],I.forEach(function(E){(!o||!he(l,function(B){return B[o]==E[o]}))&&(l.push(E),v!==!1&&Reflect.set(E,q,!0))}),this.setState({items:l},function(){I.length===1&&v!==!1?A.startEdit("".concat(l.length-1),!0):b==null||b(l)}),[2];case 4:return[2,this.addItem("".concat(l.length-1),!1)];case 5:return[3,7];case 6:if(u==="remove"||u==="delete"){if(o){if(!t.payload)return[2,h.alert(w("Table.playload"))]}else return[2,h.alert(w("Table.valueField"))];return f=this.state.items.concat(),x=ne(t.payload,e),x=Array.isArray(x)?x:[x],x.forEach(function(E){var B=Fe(f,function(S){return S[o]==E[o]});B!=null&&B.length&&(f=V(f,B,1))}),this.setState({items:f},function(){b==null||b(f)}),[2]}else u==="initDrag"?(C=this.table).doAction.apply(C,L([t,e],U(r),!1)):u==="cancelDrag"&&(P=this.table).doAction.apply(P,L([t,e],U(r),!1));k.label=7;case 7:return[2,m&&m.apply(void 0,L([t,e],U(r),!1))]}})})},g.prototype.copyItem=function(t){return R(this,void 0,void 0,function(){var e,i,n,r,s,c,m,o,h,v,d,p,w=this;return T(this,function(b){return e=this.props,i=e.needConfirm,n=e.data,r=e.copyData,s=r===void 0?{"&":"$$"}:r,c=this.state.items.concat(),m=t.split(".").map(function(u){return parseInt(u,10)}),o=m.concat(),o[o.length-1]+=1,h=c,v=$(c,m),d=ne(s,W(n,v)),i===!1?c=V(c,o,0,d):c=V(c,o,0,y(y({},d),(p={},p[q]=!0,p))),this.reUseRowId(c,h,o),this.setState({items:c},function(){return R(w,void 0,void 0,function(){var u;return T(this,function(l){switch(l.label){case 0:return[4,this.dispatchEvent("add",{index:o[o.length-1],indexPath:o.join("."),item:d})];case 1:return u=l.sent(),u?[2]:(i===!1?this.emitValue():this.startEdit(o.join("."),!0),[2])}})})}),[2]})})},g.prototype.addItem=function(t,e,i){return e===void 0&&(e=!0),R(this,void 0,void 0,function(){var n,r,s,c,m,o,h,v,d,p,w,b=this;return T(this,function(u){return t=t||"".concat(this.state.items.length-1),n=this.props,r=n.needConfirm,s=n.scaffold,c=n.columns,m=n.data,o=this.state.items.concat(),h=(w={},w[q]=!0,w),Array.isArray(c)&&c.forEach(function(l){if(typeof l.value<"u"&&typeof l.name=="string")if("type"in l&&(l.type==="input-date"||l.type==="input-datetime"||l.type==="input-time"||l.type==="input-month"||l.type==="input-quarter"||l.type==="input-year")){if(!(typeof l.value=="string"&&l.value.trim()==="")){var I=Ce(l.value,m,l.format||"X");oe(h,l.name,(l.utc?Ee.utc(I):I).format(l.format||"X"))}}else Pe(l.value)||oe(h,l.name,l.value)}),h=y(y({},h),s),r===!1&&Reflect.deleteProperty(h,q),v=t.split(".").map(function(l){return parseInt(l,10)}),d=v.concat(),d[d.length-1]+=1,p=o,o=V(o,d,0,h),this.reUseRowId(o,p,d),this.setState(y({items:o},r===!1?{}:{editIndex:d.join("."),isCreateMode:!0,columns:this.buildColumns(this.props,!0,"".concat(t))}),function(){return R(b,void 0,void 0,function(){return T(this,function(l){switch(l.label){case 0:return e?[4,this.dispatchEvent("add",{index:d[d.length-1],indexPath:d.join("."),item:h})]:[3,2];case 1:l.sent(),l.label=2;case 2:return r===!1&&this.emitValue(),i==null||i(),[2]}})})}),[2,!1]})})},g.prototype.subAddItem=function(t,e,i){return e===void 0&&(e=!0),R(this,void 0,void 0,function(){return T(this,function(n){return[2,this.addItem(t+".-1",e,function(){i==null||i.setExpanded(!0)})]})})},g.prototype.editItem=function(t){return R(this,void 0,void 0,function(){var e,i,n,r;return T(this,function(s){switch(s.label){case 0:return e=this.state.items,i=t.split(".").map(function(c){return parseInt(c,10)}),n=$(e,i),[4,this.dispatchEvent("edit",{index:i[i.length-1],indexPath:i.join("."),item:n})];case 1:return r=s.sent(),!r&&this.startEdit(t,!0),[2]}})})},g.prototype.dispatchEvent=function(t,e){return e===void 0&&(e={}),R(this,void 0,void 0,function(){var i,n,r;return T(this,function(s){switch(s.label){case 0:return i=this.props.dispatchEvent,n=this.state.items,[4,i(t,Ae(this.props,y({value:L([],U(n),!1)},e)))];case 1:return r=s.sent(),[2,!!(r!=null&&r.prevented)]}})})},g.prototype.startEdit=function(t,e){e===void 0&&(e=!1),this.setState({editIndex:t,isCreateMode:e,columns:this.buildColumns(this.props,e,t)})},g.prototype.confirmEdit=function(){var t,e,i;return R(this,void 0,void 0,function(){var n,r,s,c,m,o,h,v,d,p,w,b,u,l,I,a,f,x,C,P,A=this;return T(this,function(k){switch(k.label){case 0:return n=this.props,r=n.addApi,s=n.updateApi,c=n.data,m=n.env,o=n.translate,h=[],Object.keys(this.subForms).forEach(function(E){return A.subForms[E]&&h.push(A.subForms[E])}),h.forEach(function(E){return E.flush()}),v=[],Object.keys(this.subFormItems).forEach(function(E){return A.subFormItems[E]&&v.push(A.subFormItems[E])}),v.forEach(function(E){var B,S;return(S=(B=E.props).onFlushChange)===null||S===void 0?void 0:S.call(B)}),d=h,[4,Promise.all(d.map(function(E){return E.validate()}).concat(v.map(function(E){return E.props.onValidate()})))];case 1:return p=k.sent(),~p.indexOf(!1)?[2]:(w=this.state.items.concat(),b=this.state.editIndex.split(".").map(function(E){return parseInt(E,10)}),u=y({},$(w,b)),l=u.hasOwnProperty(q),I=l?"addConfirm":"editConfirm",[4,this.dispatchEvent(I,{index:b[b.length-1],indexPath:b.join("."),item:u})]);case 2:return a=k.sent(),a?[2]:(f=null,x=void 0,l&&J(r,W(c,u))?[4,m.fetcher(r,W(c,u))]:[3,4]);case 3:return f=k.sent(),x=(t=r==null?void 0:r.messages)===null||t===void 0?void 0:t.failed,[3,6];case 4:return J(s,W(c,u))?[4,m.fetcher(s,W(c,u))]:[3,6];case 5:f=k.sent(),x=(e=s==null?void 0:s.messages)===null||e===void 0?void 0:e.failed,k.label=6;case 6:return f&&!f.ok?(!(!((i=l?r:s)===null||i===void 0)&&i.silent)&&m.notify("error",x??(f.msg||o("saveFailed"))),C=l?"addFail":"editFail",this.dispatchEvent(C,{index:b[b.length-1],indexPath:b.join("."),item:u,error:f}),[2]):(f&&f.ok&&(u=y(y({},(l?r:s).replaceData?{}:u),f.data)),Reflect.deleteProperty(u,q),P=w,w=V(w,b,1,u),this.reUseRowId(w,P,b),this.setState({editIndex:"",items:w,columns:this.buildColumns(this.props)},function(){return R(A,void 0,void 0,function(){var E,B;return T(this,function(S){switch(S.label){case 0:return[4,this.emitValue()];case 1:return E=S.sent(),E?[2]:(B=l?"addSuccess":"editSuccess",this.dispatchEvent(B,{index:b[b.length-1],indexPath:b.join("."),item:u}),[2])}})})}),[2])}})})},g.prototype.cancelEdit=function(){var t=this.state.items.concat(),e=this.state.lastModifiedRow,i=this.state.editIndex.split(".").map(function(c){return parseInt(c,10)}),n=y({},$(t,i)),r=n.hasOwnProperty(q),s=t;r?t=V(t,i,1):e&&~(e==null?void 0:e.index)&&ye(e==null?void 0:e.data)&&(t=V(t,i,1,y(y({},n),e.data))),this.reUseRowId(t,s,i),this.setState({editIndex:"",items:t,columns:this.buildColumns(this.props),lastModifiedRow:void 0},this.emitValue)},g.prototype.removeItem=function(t){var e,i;return R(this,void 0,void 0,function(){var n,r,s,c,m,o,h,v,d,p,w,b,u,l,I,a=this;return T(this,function(f){switch(f.label){case 0:return n=this.props,r=n.value,n.onChange,s=n.deleteApi,c=n.deleteConfirmText,m=n.env,o=n.data,h=n.translate,v=Array.isArray(r)?r.concat():[],d=t.split(".").map(function(x){return parseInt(x,10)}),p=$(v,d),p?[4,this.dispatchEvent("delete",{index:d[d.length-1],indexPath:d.join("."),item:p})]:[2];case 1:return w=f.sent(),w?[2]:(b=W(o,p),J(s,b)?[4,m.confirm(c?Be(c,b):h("deleteConfirm"))]:[3,4]);case 2:return u=f.sent(),u?[4,m.fetcher(s,b)]:[2];case 3:if(l=f.sent(),!l.ok)return!(s!=null&&s.silent)&&m.notify("error",(i=(e=s==null?void 0:s.messages)===null||e===void 0?void 0:e.failed)!==null&&i!==void 0?i:h("deleteFailed")),this.dispatchEvent("deleteFail",{index:d[d.length-1],indexPath:d.join("."),item:p,error:l}),[2];f.label=4;case 4:return this.removeEntry(p),I=v,v=V(v,d,1),this.reUseRowId(v,I,d),this.setState({items:v},function(){return R(a,void 0,void 0,function(){var x;return T(this,function(C){switch(C.label){case 0:return[4,this.emitValue(v)];case 1:return x=C.sent(),x?[2]:(this.dispatchEvent("deleteSuccess",{value:v,index:d[d.length-1],indexPath:d.join("."),item:p}),[2])}})})}),[2]}})})},g.prototype.rowPathPlusOffset=function(t,e){e===void 0&&(e=0);var i=t.split(".").map(function(n){return parseInt(n,10)});return i[0]+=e,i.join(".")},g.prototype.reUseRowId=function(t,e,i){for(var n=e,r=t,s=0,c=i.length;s<c;s++){var m=i[s];if(!(n!=null&&n[m])||!(r!=null&&r[m]))break;this.entries.set(r[m],this.entries.get(n[m])||this.entityId++),this.entries.delete(n[m]),r=r[m].children,n=n[m].children}},g.prototype.buildItemProps=function(t,e){var i={},n=this.resolveVariableProps(this.props,"minLength"),r=this.resolveVariableProps(this.props,"maxLength");if(i.inputTableCanAddItem=r?r>this.state.items.length:!0,i.inputTableCanRemoveItem=n?n<this.state.items.length:!0,this.props.needConfirm===!1)return i.quickEditEnabled=!0,i;if(!this.props.editable&&!this.props.addable&&!this.state.isCreateMode)return i;var s=this.props.perPage,c=this.state.page||1,m=0;return typeof s=="number"&&s&&(m=(c-1)*s),i.quickEditEnabled=this.state.editIndex===this.rowPathPlusOffset(t.path,m),i},g.prototype.buildColumns=function(t,e,i){var n=this;e===void 0&&(e=!1);var r=this.props,s=r.env,c=r.enableStaticTransform,m=r.mobileUI,o=r.testIdBuilder,h=Array.isArray(t.columns)?t.columns.concat():[],v=this.props.classPrefix,d=this.props.translate,p=this.props.needConfirm,w=this.props.showIndex,b=this.props.static,u=this.props.disabled,l=[];if(!b&&t.addable&&t.showTableAddBtn!==!1&&l.push({children:function(a){var f=a.key,x=a.rowIndex,C=a.rowIndexPath,P=a.offset,A=a.inputTableCanAddItem;return n.state.editIndex&&p!==!1||!A?null:F.createElement(Y,{classPrefix:v,size:"sm",key:f,level:"link",tooltip:d("Table.addRow"),tooltipContainer:t.popOverContainer||s.getModalContainer,disabled:u,onClick:n.addItem.bind(n,n.rowPathPlusOffset(C,P),void 0,void 0),testIdBuilder:o==null?void 0:o.getChild("addRow-".concat(x+P))},t.addBtnIcon?F.createElement(Q,{cx:t.classnames,icon:t.addBtnIcon,className:"icon"}):null,t.addBtnLabel?F.createElement("span",null,t.addBtnLabel):null)}}),!b&&t.childrenAddable&&t.showTableAddBtn!==!1&&l.push({children:function(a){var f=a.key,x=a.rowIndex,C=a.rowIndexPath,P=a.offset,A=a.row;return n.state.editIndex&&p!==!1?null:F.createElement(Y,{classPrefix:v,size:"sm",key:f,level:"link",tooltip:d("Table.subAddRow"),tooltipContainer:t.popOverContainer||s.getModalContainer,disabled:u,onClick:n.subAddItem.bind(n,n.rowPathPlusOffset(C,P),void 0,A),testIdBuilder:o==null?void 0:o.getChild("subAddRow-".concat(x+P))},t.subAddBtnIcon?F.createElement(Q,{cx:t.classnames,icon:t.subAddBtnIcon,className:"icon"}):null,t.subAddBtnLabel?F.createElement("span",null,t.subAddBtnLabel):null)}}),!b&&t.copyable&&t.showCopyBtn!==!1&&l.push({children:function(a){var f=a.key,x=a.rowIndex,C=a.rowIndexPath,P=a.offset;return n.state.editIndex&&p!==!1?null:F.createElement(Y,{classPrefix:v,size:"sm",key:f,level:"link",tooltip:d("Table.copyRow"),tooltipContainer:t.popOverContainer||s.getModalContainer,disabled:u,onClick:n.copyItem.bind(n,n.rowPathPlusOffset(C,P),void 0),testIdBuilder:o==null?void 0:o.getChild("copyRow-".concat(x+P))},t.copyBtnIcon?F.createElement(Q,{cx:t.classnames,icon:t.copyBtnIcon,className:"icon"}):null,t.copyBtnLabel?F.createElement("span",null,t.copyBtnLabel):null)}}),t.needConfirm===!1?h=h.map(function(a){var f=a.quickEdit;return f===!1?se(a,["quickEdit"]):y(y({},a),a.type==="operation"?{}:{quickEdit:y(y(y({},n.columnToQuickEdit(a)),f),{visibleOn:"",hiddenOn:"",visible:!0,hidden:!1,saveImmediately:!0,mode:"inline",disabled:u,static:b||a.static})})}):b!==!0&&(t.addable||t.editable||e)?(h=h.map(function(a,f){var x=!e&&a.hasOwnProperty("quickEditOnUpdate")?a.quickEditOnUpdate:a.quickEdit,C=ee(a==null?void 0:a.type);return y(y({},x===!1?se(a,["quickEdit"]):y(y({},a),{quickEdit:y(y(y({},n.columnToQuickEdit(a)),x),{visibleOn:"",hiddenOn:"",visible:!0,hidden:!1,isQuickEditFormMode:!!(C!=null&&C.isFormItem),saveImmediately:!0,mode:"inline",disabled:u})})),c&&t.needConfirm!==!1?{staticOn:"".concat(!e," || data.index !== '").concat(i,"'")}:{})}),!b&&t.editable&&l.push({children:function(a){var f=a.key,x=a.rowIndex,C=a.rowIndexPath,P=a.data,A=a.offset;return n.state.editIndex||P&&P.hasOwnProperty(q)?null:F.createElement(Y,{classPrefix:v,size:"sm",key:f,level:"link",tooltip:d("Table.editRow"),tooltipContainer:t.popOverContainer||s.getModalContainer,disabled:u,onClick:function(){return n.editItem(n.rowPathPlusOffset(C,A))},testIdBuilder:o==null?void 0:o.getChild("editRow-".concat(x+A))},typeof t.updateBtnIcon<"u"?t.updateBtnIcon?F.createElement(Q,{cx:t.classnames,icon:t.updateBtnIcon,className:"icon"}):null:t.editBtnIcon?F.createElement(Q,{cx:t.classnames,icon:t.editBtnIcon,className:"icon"}):null,t.updateBtnLabel||t.editBtnLabel?F.createElement("span",null,t.updateBtnLabel||t.editBtnLabel):null)}}),!b&&l.push({children:function(a){var f=a.key,x=a.rowIndex,C=a.rowIndexPath,P=a.offset;return n.state.editIndex===n.rowPathPlusOffset(C,P)?F.createElement(Y,{classPrefix:v,size:"sm",key:f,level:"link",tooltip:d("save"),tooltipContainer:t.popOverContainer||s.getModalContainer,onClick:n.confirmEdit,testIdBuilder:o==null?void 0:o.getChild("confirmRow-".concat(x+P))},t.confirmBtnIcon?F.createElement(Q,{cx:t.classnames,icon:t.confirmBtnIcon,className:"icon"}):null,t.confirmBtnLabel?F.createElement("span",null,t.confirmBtnLabel):null):null}}),!b&&l.push({children:function(a){var f=a.key,x=a.rowIndex,C=a.rowIndexPath,P=a.offset;return n.state.editIndex===n.rowPathPlusOffset(C,P)?F.createElement(Y,{classPrefix:v,size:"sm",key:f,level:"link",tooltip:d("cancel"),tooltipContainer:t.popOverContainer||s.getModalContainer,onClick:n.cancelEdit,testIdBuilder:o==null?void 0:o.getChild("cancelRow-".concat(x+P))},t.cancelBtnIcon?F.createElement(Q,{cx:t.classnames,icon:t.cancelBtnIcon,className:"icon"}):null,t.cancelBtnLabel?F.createElement("span",null,t.cancelBtnLabel):null):null}})):h=h.map(function(a){var f=ee(a==null?void 0:a.type);return f!=null&&f.isFormItem?y(y({},a),{quickEdit:y(y({},a),{visibleOn:"",hiddenOn:"",visible:!0,hidden:!1,isFormMode:!0})}):a}),!b&&t.removable&&l.push({children:function(a){var f=a.key,x=a.rowIndex,C=a.rowIndexPath,P=a.data,A=a.offset,k=a.inputTableCanRemoveItem;return(n.state.editIndex||P&&P.hasOwnProperty(q))&&p!==!1||!k?null:F.createElement(Y,{classPrefix:v,size:"sm",key:f,level:"link",tooltip:d("Table.deleteRow"),tooltipContainer:t.popOverContainer||s.getModalContainer,disabled:u,onClick:n.removeItem.bind(n,n.rowPathPlusOffset(C,A)),testIdBuilder:o==null?void 0:o.getChild("delRow-".concat(x+A))},t.deleteBtnIcon?F.createElement(Q,{cx:t.classnames,icon:t.deleteBtnIcon,className:"icon"}):null,t.deleteBtnLabel?F.createElement("span",null,t.deleteBtnLabel):null)}}),l.length){var I=h.find(function(a){return a.type==="operation"});I||(I={type:"operation",buttons:[],label:d("Table.operation"),className:"v-middle nowrap",fixed:m?"":"right",width:150,innerClassName:"m-n"},h.push(I)),I.buttons=Array.isArray(I.buttons)?I.buttons.concat():[],I.buttons.unshift.apply(I.buttons,l),I.hasOwnProperty("quickEdit")&&delete I.quickEdit}return w&&h.unshift({label:d("Table.index"),width:50,children:function(a){var f=a.rowIndexPath.split(".").map(function(x){return parseInt(x,10)+1});return f[0]+=a.offset,F.createElement("td",{className:a.className},a.cellPrefix,F.createElement("span",null,f.join(".")),a.cellAffix)}}),h},g.prototype.columnToQuickEdit=function(t){var e,i={type:"input-text"};return!((e=ee(t==null?void 0:t.type))===null||e===void 0)&&e.isFormItem||~["group"].indexOf(t.type)?y(y({},t),{label:""}):i},g.prototype.handleTableSave=function(t,e,i){var n=this,r;this.setState(function(s,c){var m={},o=c.perPage,h=s.editIndex,v=s.lastModifiedRow;if(h){var d=h.split(".").map(function(f){return parseInt(f,10)}),p=s.items.concat(),w=$(p,d);if(!w)return m;var b=y({},t),u=p;return p=V(p,d,1,b),n.reUseRowId(p,u,d),Object.assign(m,y({items:p},(v==null?void 0:v.index)===h?{}:{lastModifiedRow:w.hasOwnProperty(q)?void 0:{index:h,data:y({},w)}})),m}var l=s.page,I=s.items.concat();if(Array.isArray(t))i.forEach(function(f,x){var C=f.split(".").map(function(A){return parseInt(A,10)});l&&l>1&&typeof o=="number"&&(C[0]+=(l-1)*o);var P=y({},$(t,C));I=V(I,C,1,P)});else{var d=i.split(".").map(function(C){return parseInt(C,10)});l&&l>1&&typeof o=="number"&&(d[0]+=(l-1)*o);var a=y({},t),u=I;I=V(I,d,1,a),n.reUseRowId(I,u,d)}return Object.assign(m,{items:I}),r=n.lazyEmitValue,m},function(){r&&r()})},g.prototype.handleRadioChange=function(t,e){var i=this,n=e.name,r=e.row,s=e.trueValue,c=s===void 0?!0:s,m=e.falseValue,o=m===void 0?!1:m,h;return this.setState(function(v,d){var p=r.path,w=ge(v.items,function(b,u,l,I,a){var f;return y(y({},b),(f={},f[n]=p===a.join(".")?c:o,f))});return h=v.editIndex==r.path?void 0:i.lazyEmitValue,{items:w}},function(){h==null||h()}),!1},g.prototype.handleSaveTableOrder=function(t,e){var i=this.props.onChange;i(e.map(function(n){return y({},n)}))},g.prototype.handlePageChange=function(t){this.setState({page:t})},g.prototype.handlePristineChange=function(t,e){var i=this,n=this.props,r=n.needConfirm,s=n.perPage,c=e.split(".").map(function(m){return parseInt(m,10)});this.setState(function(m){var o=m.items.concat(),h=m.page;h&&h>1&&typeof s=="number"&&(c[0]+=(h-1)*s);var v=$(o,c),d=y(y({},v),t),p=o;return o=V(o,c,1,d),i.reUseRowId(o,p,c),{items:o}},function(){r===!1&&i.emitValue()})},g.prototype.removeEntry=function(t){this.entries.has(t)&&this.entries.delete(t)},g.prototype.getEntryId=function(t){return this.entries.has(t)||this.entries.set(t,this.entityId++),String(this.entries.get(t))},g.prototype.tableRef=function(t){for(;t&&t.getWrappedInstance;)t=t.getWrappedInstance();this.table=t},g.prototype.computedAddBtnDisabled=function(){var t=this.props.disabled;return t||!!this.state.editIndex},g.prototype.render=function(){var t=this,e=this.props,i=e.className;e.style,e.value;var n=e.disabled,r=e.render,s=e.placeholder,c=e.draggable,m=e.addable,o=e.columnsTogglable,h=e.combineNum,v=e.combineFromIndex,d=e.translate,p=e.canAccessSuperData,w=e.expandConfig,b=e.affixRow,u=e.prefixRow,l=e.formInited,I=e.perPage,a=e.classnames,f=e.rowClassName,x=e.rowClassNameExpr,C=e.affixHeader,P=C===void 0?!1:C,A=e.autoFillHeight,k=A===void 0?!1:A,E=e.tableContentClassName,B=e.static,S=e.showFooterAddBtn,j=e.footerAddBtn,G=e.toolbarClassName,Z=e.onEvent,_=e.testIdBuilder,N=this.resolveVariableProps(this.props,"maxLength");if(l===!1)return null;var z=this.state.items,K=!1,H=this.state.page||1,M=0,O=1;typeof I=="number"&&I&&z.length>I&&(O=Math.ceil(z.length/I),H>O&&(H=O),z=z.slice((H-1)*I,H*I),K=!0,M=(H-1)*I);var D=!B&&m&&S!==!1&&(!N||N>this.state.items.length);return F.createElement("div",{className:a("InputTable",i)},r("body",{type:"table",placeholder:d(s),columns:this.state.columns,affixHeader:P,prefixRow:u,affixRow:b,autoFillHeight:k,tableContentClassName:E,onEvent:Z},{ref:this.tableRef,value:void 0,saveImmediately:!0,disabled:n,draggable:c&&!this.state.editIndex,items:z,getEntryId:this.getEntryId,reUseRow:"match",onSave:this.handleTableSave,onRadioChange:this.handleRadioChange,onSaveOrder:this.handleSaveTableOrder,buildItemProps:this.buildItemProps,quickEditFormRef:this.subFormRef,quickEditFormItemRef:this.subFormItemRef,columnsTogglable:o,combineNum:h,combineFromIndex:v,expandConfig:w,canAccessSuperData:p,offset:M,rowClassName:f,rowClassNameExpr:x,onPristineChange:this.handlePristineChange,testIdBuilder:_==null?void 0:_.getChild("table")}),D||K?F.createElement("div",{className:a("InputTable-toolbar",G)},D?r("button",y({type:"button",level:"primary",size:"sm",label:d("Table.add"),icon:"fa fa-plus",disabledTip:d("Table.addButtonDisabledTip")},j||{}),{disabled:this.computedAddBtnDisabled(),onClick:function(){return t.addItem()},testIdBuilder:_==null?void 0:_.getChild("add")}):null,K?r("pager",{type:"pagination"},{activePage:H,perPage:I,total:this.state.items.length,onPageChange:this.handlePageChange,className:"InputTable-pager",testIdBuilder:_==null?void 0:_.getChild("page")}):null):null)},g.defaultProps={placeholder:"placeholder.empty",scaffold:{},addBtnIcon:"plus",subAddBtnIcon:"sub-plus",copyBtnIcon:"copy",editBtnIcon:"pencil",deleteBtnIcon:"minus",confirmBtnIcon:"check",cancelBtnIcon:"close",valueField:"",minLength:0,maxLength:1/0,showFooterAddBtn:!0,showTableAddBtn:!0},g.propsList=["onChange","name","columns","label","scaffold","showTableAddBtn","addable","removable","copyable","editable","addApi","updateApi","deleteApi","needConfirm","canAccessSuperData","formStore","footerActions","toolbarClassName"],ce([xe,te("design:type",Function),te("design:paramtypes",[Object,String]),te("design:returntype",void 0)],g.prototype,"handlePristineChange",null),g}(F.Component),Oe=function(X){ue(g,X);function g(){return X!==null&&X.apply(this,arguments)||this}return g.prototype.setData=function(t,e,i,n){return R(this,void 0,void 0,function(){var r,s,c,m,o=this;return T(this,function(h){switch(h.label){case 0:return this.state.items.length,i===void 0?[3,1]:(r=L([],U(this.state.items),!1),s=String(i).split(","),s.forEach(function(v){var d=v.split(".").map(function(p){return parseInt(p,10)});r=V(r,d,1,t)}),this.setState({items:r},function(){o.emitValue()}),[3,4]);case 1:return n===void 0?[3,3]:(c=L([],U(this.state.items),!1),m=[],le(c,function(v,d,p,w,b){return m.unshift(function(){return R(o,void 0,void 0,function(){var u;return T(this,function(l){switch(l.label){case 0:return[4,de(n,v)];case 1:return u=l.sent(),u&&(c=V(c,L(L([],U(b),!1),[d],!1),1,t)),[2]}})})}),!0}),[4,Promise.all(m.map(function(v){return v()}))]);case 2:return h.sent(),this.setState({items:c},function(){o.emitValue()}),[3,4];case 3:this.setState({items:L([],U(t),!1)},function(){o.emitValue()}),h.label=4;case 4:return[2]}})})},g.prototype.doAction=function(t,e,i,n){var r,s,c,m,o,h,v;return i===void 0&&(i=!1),R(this,void 0,void 0,function(){var d,p,w,b,u,l,I,a,f,x,C,P,A,k,E,B,N,S,j,G,Z,_,N,z,K,H=this;return T(this,function(M){switch(M.label){case 0:return d=this.props,p=d.valueField,w=d.env,b=d.needConfirm,d.addable,u=d.addApi,l=d.deleteApi,I=d.resetValue,a=d.translate,f=d.onChange,x=d.formStore,C=d.store,P=d.name,A=t.actionType,k=((r=this.props.store)===null||r===void 0?void 0:r.data)||{},A!=="addItem"?[3,6]:(E=this.state.items.concat(),u||n?(B=null,J(u,k)?[4,w.fetcher(u,k)]:[3,2]):[3,4]);case 1:return N=M.sent(),N&&!N.ok?(!(u!=null&&u.silent)&&w.notify("error",(c=(s=u==null?void 0:u.messages)===null||s===void 0?void 0:s.failed)!==null&&c!==void 0?c:N.msg||a("fetchFailed")),[2]):(N&&N.ok&&(B=N.data),[3,3]);case 2:B=n.item,M.label=3;case 3:return B=(Array.isArray(B)?B:[B]).filter(function(O){return!p||!he(E,function(D){return D[p]==O[p]})}),S=[],typeof n.index=="string"&&/^\d+(\.\d+)*$/.test(n.index)?S=n.index.split(".").map(function(O){return parseInt(O,10)}):typeof n.index=="number"&&(S=[n.index]),S.length?E=V.apply(void 0,L([E,S,0],U(B),!1)):E.push.apply(E,L([],U(B),!1)),this.setState({items:E},function(){if(B.length===1&&b!==!1){var O=S.concat();O[O.length-1]+=1,H.startEdit(O.join("."),!0)}else f==null||f(E)}),[2];case 4:return[2,this.addItem("".concat(E.length-1),!1)];case 5:return[3,13];case 6:return A!=="deleteItem"?[3,12]:(j=L([],U(this.state.items),!1),G=[],(n==null?void 0:n.index)===void 0?[3,7]:(Z=String(n.index).split(","),Z.forEach(function(O){var D=O.split(".").map(function(ie){return parseInt(ie,10)});G.push($(j,D)),j=V(j,D,1)}),[3,9]));case 7:return(n==null?void 0:n.condition)===void 0?[3,9]:(_=[],le(j,function(O,D,ie,Re,me){return _.unshift(function(){return R(H,void 0,void 0,function(){var ae;return T(this,function(re){switch(re.label){case 0:return[4,de(n==null?void 0:n.condition,O)];case 1:return ae=re.sent(),ae&&(G.push(O),j=V(j,L(L([],U(me),!1),[D],!1),1)),[2]}})})}),!0}),[4,_.reduce(function(O,D){return O.then(D)},Promise.resolve())]);case 8:M.sent(),M.label=9;case 9:return J(l,W(k,{deletedItems:G}))?[4,w.fetcher(l,W(k,{deletedItems:G}))]:[3,11];case 10:if(N=M.sent(),N&&!N.ok)return!(l!=null&&l.silent)&&w.notify("error",(o=(m=l==null?void 0:l.messages)===null||m===void 0?void 0:m.failed)!==null&&o!==void 0?o:N.msg||a("fetchFailed")),[2];M.label=11;case 11:return this.setState({items:j},function(){f==null||f(j)}),[2];case 12:if(A==="clear")return this.setState({items:[]},function(){f==null||f([])}),[2];if(A==="reset")return z=(v=fe((h=x==null?void 0:x.pristine)!==null&&h!==void 0?h:C==null?void 0:C.pristine,P))!==null&&v!==void 0?v:I,K=Array.isArray(z)?z:[],this.setState({items:K},function(){f==null||f(K)}),[2];M.label=13;case 13:return[2,X.prototype.doAction.call(this,t,e,i,k)]}})})},g=ce([we({type:"input-table"})],g),g}(ke);export{Oe as TableControlRenderer,ke as default};
|