@next-bricks/advanced 0.4.0 → 0.6.0

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/dist/bricks.json CHANGED
@@ -22,7 +22,10 @@
22
22
  ],
23
23
  "advanced.general-cascader": [
24
24
  "eo-icon"
25
+ ],
26
+ "eo-next-table": [
27
+ "eo-link"
25
28
  ]
26
29
  },
27
- "filePath": "bricks/advanced/dist/index.6c05507c.js"
30
+ "filePath": "bricks/advanced/dist/index.ab954402.js"
28
31
  }
@@ -0,0 +1,2 @@
1
+ "use strict";(self.webpackChunk_next_bricks_advanced=self.webpackChunk_next_bricks_advanced||[]).push([[4553],{4553:(e,t,a)=>{a.r(t);var i=a(3028),s=a(6666),l=a(3395),n=a(1815),r=a(381),o=a(687),h=a(2604),d=a(8657),c=a.n(d),u=a(7320),p=a(1466),g=a(2869),w=a(5178),v=a(104),m=a(7896),Z=a(2159),f=a(6154),b={$eq:w.isEqual,$lt:w.lt,$lte:w.lte,$gt:w.gt,$gte:w.gte,$ne:(e,t)=>!(0,w.isEqual)(e,t),$isEqual:w.isEqual,$notEqual:(e,t)=>!(0,w.isEqual)(e,t),$in:w.includes,$nin:(e,t)=>!(0,w.includes)(e,t),$exists:(e,t)=>e?!(0,w.isUndefined)(t):(0,w.isUndefined)(t)};function y(e,t,a){var{dataIndex:i,mapping:s}=e,l=void 0!==i?(0,w.get)(t,i):a,n=s.find((e=>e.value===l));return n?{borderLeft:"4px solid ".concat(n.leftBorderColor)}:{}}var S=(e,t,a,i)=>{e&&(0,w.forEach)(e,(e=>{var s=(0,w.get)(e,a),l=(0,w.get)(e,t);i.push(l),null!=s&&s.length&&S(s,t,a,i)}))},C=(e,t,a)=>{e&&(0,w.forEach)(e,(e=>{var i=(0,w.get)(e,t);a.push(e),null!=i&&i.length&&C(i,t,a)}))};function x(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];return null!=t&&t.length&&t.forEach((t=>{var a;return null!==(a=t[e])&&void 0!==a&&a.length?x(e,t[e]):(delete t[e],t)})),t}var k=a(2779),_=a.n(k),R=a(8533),E=a(2689),M=a(2238),W=a(8683),K=a(4819),I=a.n(K),N=a(3261),B=a(3691),P=["index","moveRow","className","style"],U=["useBrick","valueSuffix","cellStatus","cellStyle","headerBrick","colSpanKey","rowSpanKey","filterDropdownBrick"],z="DraggableBodyRow",D={lib:"antd",icon:"down",theme:"outlined"},A={lib:"antd",icon:"right",theme:"outlined"},T=(0,p.wrapBrick)("eo-icon"),F=e=>{var{index:t,moveRow:a,className:s,style:l}=e,n=(0,Z.Z)(e,P),r=c().useRef(null),[{isOver:o,dropClassName:h},d]=(0,R.L)({accept:z,collect:e=>{var{index:a}=e.getItem()||{};return a===t?{}:{isOver:e.isOver(),dropClassName:a<t?"dropOverDownward":"dropOverUpward"}},drop:e=>{a(e.index,t)}}),[,u]=(0,E.c)({type:z,item:{type:z,index:t},collect:e=>({isDragging:e.isDragging()})});return d(u(r)),c().createElement("tr",(0,m.Z)({ref:r,className:_()(s,{[h]:o}),style:(0,i.Z)({cursor:"move"},l)},n))};function O(e){if(e.error)throw e.error;var{configProps:t={pagination:!0,sortBy:!1},columns:a,rowKey:s="key",expandIconAsCell:l,expandIconColumnIndex:n,childrenColumnName:r,scroll:o,optimizedColumns:h,onDelete:u,ellipsisInfo:p,showHeader:g}=e,v=(0,d.useMemo)((()=>{var t;return null===(t=e.dataSource)||void 0===t?void 0:t.map(((e,t)=>(0,w.isNil)(e[s])?(0,i.Z)((0,i.Z)({},e),{},{[s]:t}):e))}),[e.dataSource,s]),[b,S]=(0,d.useState)(v),C=(0,d.useRef)(new Map),x=(0,d.useRef)(new Map),k=(0,d.useRef)(new Map),R=(0,d.useRef)(new Map);(0,d.useEffect)((()=>{R.current.clear(),S(v)}),[v]);var E=null!=t&&t.rowSelection?-1:0,K=(0,d.useMemo)((()=>{if(a){x.current.clear(),k.current.clear();var e=a.map(((e,t)=>{var a,{useBrick:o,valueSuffix:h,cellStatus:d,cellStyle:u={},headerBrick:g,colSpanKey:v,rowSpanKey:m,filterDropdownBrick:f}=e,b=(0,Z.Z)(e,U);if(null!=g&&g.useBrick){var S=null==g?void 0:g.useBrick,_=x.current.get(e);_||(_={title:b.title},x.current.set(e,_)),b.title=((e,t)=>function(){return c().createElement(N.ReactUseMultipleBricks,{useBrick:e,data:t})})(S,_)}if(null!=f&&f.useBrick&&(b.filterDropdown=c().createElement(N.ReactUseMultipleBricks,{useBrick:f.useBrick})),o?(o&&((a=k.current.get(o))||(a=new Map,k.current.set(o,a))),b.render=((e,t)=>function(a,i,s){if(e){var l=null==t?void 0:t.get(i);return l||(l={cellData:a,rowData:i,columnIndex:s},null==t||t.set(i,l)),c().createElement(N.ReactUseMultipleBricks,{useBrick:e,data:l})}})(o,a),b.shouldCellUpdate=(e,t)=>!(0,w.isEqual)(e,t)):h&&(b.render=e=>e+h),!l&&t===Number(n)+E){var R=b.render;b.render=function(e,t,a){return c().createElement(c().Fragment,null,!t[r]&&C.current.get(s?t[s]:t),R?R(e,t,a):e)}}if(d||v||m||u){var M=b.render;b.render=(e,t,a)=>({children:M?M(e,t,a):e,props:{colSpan:t[v],rowSpan:t[m],style:(0,i.Z)((0,i.Z)({},d?y(d,t,e):{}),u)}})}return"string"==typeof b.dataIndex&&(b.dataIndex=(0,w.toPath)(b.dataIndex)),"top"===b.verticalAlign&&(b.className?b.className+=" alignTop":b.className="alignTop"),"bottom"===b.verticalAlign&&(b.className?b.className+=" alignBottom":b.className="alignBottom"),p&&(b.className?b.className+=" ellipsisInfoCell":b.className="ellipsisInfoCell"),b}));return e}}),[a,r,l,n,E,s,u,p]),P={body:{row:F}},z=(t,a)=>{var i=b[t],s=I()(b,{$splice:[[t,1],[a,0,i]]});S(s),e.onDrag&&e.onDrag(s)},O=(0,w.pickBy)({expandIconColumnIndex:n,expandIconAsCell:l,expandRowByClick:e.expandRowByClick,expandedRowKeys:e.expandedRowKeys,defaultExpandAllRows:e.defaultExpandAllRows},(e=>!(0,w.isNil)(e))),L=c().createElement(f.Z,(0,m.Z)({className:_()("brickTable",{expandIconCellHidden:!l,customDropTable:e.tableDraggable,tableThTransparent:e.thTransparent,zebraPatternTable:(null==b?void 0:b.length)>=2&&e.zebraPattern}),dataSource:b},e.tableDraggable?{components:P,onRow:(e,t)=>({index:t,moveRow:z})}:{},{columns:K,onChange:e.onChange},e.expandedRowBrick?{expandedRowRender:(t,a)=>{var i,s=R.current.get(t);return s||(s={rowData:t,rowIndex:a},R.current.set(t,s)),c().createElement(N.ReactUseMultipleBricks,{useBrick:null===(i=e.expandedRowBrick)||void 0===i?void 0:i.useBrick,data:s})}}:{},O,{onExpand:(t,a)=>{e.onExpand&&e.onExpand(t,a)},showSorterTooltip:!1,onExpandedRowsChange:t=>{e.onExpandedRowsChange&&e.onExpandedRowsChange(t)},rowKey:s,childrenColumnName:r,rowClassName:(t,a)=>t.invalidRow?"invalidRow":t.disabledRow?"disabledRow":e.zebraPattern&&a%2?"brickTableOddRow":"",expandIcon:t=>{var a,i,n,{record:r,expandable:o,expanded:h,onExpand:d}=t,u=(null===(a=e.expandIcon)||void 0===a?void 0:a.collapsedIcon)||D;o?(h||(u=(null===(n=e.expandIcon)||void 0===n?void 0:n.expandedIcon)||A),i=c().createElement("span",{className:"expandIconSpan","data-testid":"expand-icon",onClick:e=>{d(r,e)}},c().createElement(T,u))):i=c().createElement("span",{className:"expandIconSpan","data-testid":"expand-icon"},c().createElement("span",{style:{visibility:"hidden"}},c().createElement(T,u)));return i?(l||C.current.set(s?r[s]:r,i),i):c().createElement(c().Fragment,null)},scroll:o,showHeader:g},t));e.tableDraggable&&(L=c().createElement(M.W,{backend:W.PD},L));var q=(0,d.useMemo)((()=>(0,B.Df)()),[]);return c().createElement(B.V9,{container:e.shadowRoot,cache:q},L)}a(5254);var L,q,H,$,V,Q,j,J,G,X,Y,ee,te,ae,ie,se,le,ne,re,oe,he,de,ce,ue,pe,ge,we,ve,me,Ze,fe,be,ye,Se,Ce,xe,ke,_e,Re,Ee,Me,We,Ke,Ie,Ne,Be,Pe,Ue,ze,De,Ae,Te,Fe,Oe,Le,qe,He,$e,Ve,Qe,je,Je,Ge,Xe,Ye,et,tt,at,it,st,lt,nt,rt,ot,ht,dt,ct,ut,pt,gt,wt,vt,mt,Zt,ft,bt,yt,St,Ct,xt,kt,_t,Rt,Et,Mt,Wt,Kt,It,Nt,Bt,Pt,Ut,zt,Dt,At,Tt,Ft,Ot,Lt,qt,Ht,$t,Vt,Qt,jt,Jt,Gt,Xt,Yt,ea,ta,aa,ia,sa,la,na,ra,oa,ha,{defineElement:da,property:ca,event:ua,method:pa}=(0,u.createDecorators)();q=da("eo-table",{styleTexts:[g.Z],alias:["advanced.general-table"]}),H=ua({type:"page.update"}),j=ua({type:"filter.update"}),Y=ua({type:"select.update"}),ie=ua({type:"select.row.keys.update"}),re=ua({type:"sort.update",cancelable:!0}),ce=ua({type:"row.expand"}),we=ua({type:"expand.rows.change"}),fe=ua({type:"row.drag"}),Ce=ca({type:Boolean}),ke=ca({attribute:!1}),Re=ca(),Me=ca({attribute:!1}),Ke=ca({type:Boolean}),Ne=ca({attribute:!1}),Pe=ca({attribute:!1}),ze=ca(),Ae=ca({attribute:!1}),Fe=ca({attribute:!1}),Le=ca({attribute:!1}),He=ca({attribute:!1}),Ve=ca({attribute:!1}),je=ca({type:Number}),Ge=ca({type:Boolean}),Ye=ca({attribute:!1}),tt=ca({attribute:!1}),it=ca({type:Boolean}),lt=ca({type:Boolean}),rt=ca({attribute:!1}),ht=ca({type:Boolean}),ct=ca({type:Boolean}),pt=ca({attribute:!1}),wt=ca({attribute:!1}),mt=ca({type:Boolean}),ft=ca(),yt=ca({type:Boolean}),Ct=ca({attribute:!1}),kt=ca({type:Number}),Rt=ca({type:Number}),Mt=ca({attribute:!1}),Kt=ca(),Nt=ca({type:Boolean}),Pt=ca({type:Boolean}),zt=ca({type:Boolean}),At=ca({attribute:!1}),Ft=ca({type:Boolean}),Lt=ca({type:Boolean}),Ht=ca({type:Boolean}),Vt=ca({attribute:!1}),jt=ca(),Gt=ca({attribute:!1}),Yt=ca({type:Boolean}),ta=ca({type:Boolean}),ia=ca({attribute:!1}),la=pa(),na=pa();var ga=new WeakMap,wa=new WeakMap,va=new WeakMap,ma=new WeakMap,Za=new WeakMap,fa=new WeakMap,ba=new WeakMap,ya=new WeakMap,Sa=new WeakMap,Ca=new WeakMap,xa=new WeakMap,ka=new WeakMap,_a=new WeakMap,Ra=new WeakMap,Ea=new WeakMap,Ma=new WeakMap,Wa=new WeakMap,Ka=new WeakMap,Ia=new WeakMap,Na=new WeakMap,Ba=new WeakMap,Pa=new WeakMap,Ua=new WeakMap,za=new WeakMap,Da=new WeakMap,Aa=new WeakMap,Ta=new WeakMap,Fa=new WeakMap,Oa=new WeakMap,La=new WeakMap,qa=new WeakMap,Ha=new WeakMap,$a=new WeakMap,Va=new WeakMap,Qa=new WeakMap,ja=new WeakMap,Ja=new WeakMap,Ga=new WeakMap,Xa=new WeakMap,Ya=new WeakMap,ei=new WeakMap,ti=new WeakMap,ai=new WeakMap,ii=new WeakMap,si=new WeakMap,li=new WeakMap,ni=new WeakMap,ri=new WeakMap,oi=new WeakMap,hi=new WeakMap,di=new WeakMap,ci=new WeakMap,ui=new WeakMap,pi=new WeakMap,gi=new WeakMap,wi=new WeakMap,vi=new WeakMap,mi=new WeakMap,Zi=new WeakMap,fi=new WeakMap,bi=new WeakMap,yi=new WeakMap;class Si extends p.ReactNextElement{constructor(){super(...arguments),(0,l.Z)(this,Ma,{get:Di,set:zi}),(0,l.Z)(this,Ra,{get:Ui,set:Pi}),(0,l.Z)(this,ka,{get:Bi,set:Ni}),(0,l.Z)(this,Ca,{get:Ii,set:Ki}),(0,l.Z)(this,ya,{get:Wi,set:Mi}),(0,l.Z)(this,fa,{get:Ei,set:Ri}),(0,l.Z)(this,ma,{get:_i,set:ki}),(0,l.Z)(this,wa,{get:xi,set:Ci}),(0,l.Z)(this,ga,{writable:!0,value:(ra(this),$(this))}),(0,l.Z)(this,va,{writable:!0,value:J(this)}),(0,l.Z)(this,Za,{writable:!0,value:ee(this)}),(0,l.Z)(this,ba,{writable:!0,value:se(this)}),(0,l.Z)(this,Sa,{writable:!0,value:oe(this)}),(0,l.Z)(this,xa,{writable:!0,value:ue(this)}),(0,l.Z)(this,_a,{writable:!0,value:ve(this)}),(0,l.Z)(this,Ea,{writable:!0,value:be(this)}),(0,l.Z)(this,Wa,{writable:!0,value:xe(this,!0)}),(0,l.Z)(this,Ka,{writable:!0,value:_e(this)}),(0,l.Z)(this,Ia,{writable:!0,value:Ee(this)}),(0,l.Z)(this,Na,{writable:!0,value:We(this)}),(0,l.Z)(this,Ba,{writable:!0,value:Ie(this,!1)}),(0,l.Z)(this,Pa,{writable:!0,value:Be(this)}),(0,l.Z)(this,Ua,{writable:!0,value:Ue(this)}),(0,l.Z)(this,za,{writable:!0,value:De(this)}),(0,l.Z)(this,Da,{writable:!0,value:Te(this)}),(0,l.Z)(this,Aa,{writable:!0,value:Oe(this)}),(0,l.Z)(this,Ta,{writable:!0,value:qe(this)}),(0,l.Z)(this,Fa,{writable:!0,value:$e(this)}),(0,l.Z)(this,Oa,{writable:!0,value:Qe(this,!0)}),(0,l.Z)(this,La,{writable:!0,value:Je(this)}),(0,l.Z)(this,qa,{writable:!0,value:Xe(this)}),(0,l.Z)(this,Ha,{writable:!0,value:et(this)}),(0,l.Z)(this,$a,{writable:!0,value:at(this,!1)}),(0,l.Z)(this,Va,{writable:!0,value:st(this)}),(0,l.Z)(this,Qa,{writable:!0,value:nt(this)}),(0,l.Z)(this,ja,{writable:!0,value:ot(this)}),(0,l.Z)(this,Ja,{writable:!0,value:dt(this)}),(0,l.Z)(this,Ga,{writable:!0,value:ut(this)}),(0,s.Z)(this,"_disabledChildrenKeys",[]),(0,l.Z)(this,Xa,{writable:!0,value:gt(this,"children")}),(0,l.Z)(this,Ya,{writable:!0,value:vt(this,!0)}),(0,l.Z)(this,ei,{writable:!0,value:Zt(this)}),(0,l.Z)(this,ti,{writable:!0,value:bt(this,"")}),(0,l.Z)(this,ai,{writable:!0,value:St(this)}),(0,l.Z)(this,ii,{writable:!0,value:xt(this)}),(0,l.Z)(this,si,{writable:!0,value:_t(this)}),(0,l.Z)(this,li,{writable:!0,value:Et(this)}),(0,l.Z)(this,ni,{writable:!0,value:Wt(this,{x:!0})}),(0,l.Z)(this,ri,{writable:!0,value:It(this,"q")}),(0,l.Z)(this,oi,{writable:!0,value:Bt(this)}),(0,l.Z)(this,hi,{writable:!0,value:Ut(this)}),(0,l.Z)(this,di,{writable:!0,value:Dt(this)}),(0,l.Z)(this,ci,{writable:!0,value:Tt(this,[])}),(0,l.Z)(this,ui,{writable:!0,value:Ot(this)}),(0,l.Z)(this,pi,{writable:!0,value:qt(this)}),(0,l.Z)(this,gi,{writable:!0,value:$t(this,!0)}),(0,l.Z)(this,wi,{writable:!0,value:Qt(this)}),(0,l.Z)(this,vi,{writable:!0,value:Jt(this)}),(0,l.Z)(this,mi,{writable:!0,value:Xt(this)}),(0,l.Z)(this,Zi,{writable:!0,value:ea(this,!0)}),(0,l.Z)(this,fi,{writable:!0,value:aa(this,!0)}),(0,s.Z)(this,"_originalDataSource",[]),(0,s.Z)(this,"_dataSource",[]),(0,s.Z)(this,"_pureSource",void 0),(0,s.Z)(this,"_columns",void 0),(0,s.Z)(this,"_finalConfigProps",{}),(0,s.Z)(this,"_error",void 0),(0,l.Z)(this,bi,{writable:!0,value:void 0}),(0,s.Z)(this,"_selectUpdateEventName",""),(0,s.Z)(this,"_selectUpdateEventDetailKeys",[]),(0,s.Z)(this,"_selectUpdateEventDetailField",""),(0,s.Z)(this,"_selectUpdateEventDetailExtra",{}),(0,s.Z)(this,"_fields",{page:"page",pageSize:"pageSize",dataSource:"list",total:"total",ascend:"ascend",descend:"descend"}),(0,l.Z)(this,yi,{writable:!0,value:sa(this,[])}),(0,s.Z)(this,"_selected",!1),(0,s.Z)(this,"_selectedRow",void 0),(0,s.Z)(this,"_selectedRows",[]),(0,s.Z)(this,"_allChildren",[]),(0,s.Z)(this,"_isInSelect",!1),(0,s.Z)(this,"_getRowKey",(()=>{var e,t,a,i;return null!==(e=null!==(t=null!==(a=this.rowKey)&&void 0!==a?a:this._fields.rowKey)&&void 0!==t?t:null===(i=this.configProps)||void 0===i?void 0:i.rowKey)&&void 0!==e?e:"key"})),(0,s.Z)(this,"_findParentByChildKeyValue",((e,t,a,i)=>{var s;return a.some((a=>{if(a[t]===e)s=i;else{var l=a[this.childrenColumnName];l&&(s=this._findParentByChildKeyValue(e,t,l,a))}return!!s})),s})),(0,s.Z)(this,"_handleRowSelectChange",((e,t)=>{var a=this._getRowKey(),i=(0,w.keyBy)(t,a);if(this._selected){var s=[...e];if(this._allChildren.forEach((e=>{var t=e[a];s.push(t),i[t]=e})),this.autoSelectParentWhenAllChildrenSelected&&this._selectedRow){var l=new Set(e),n=this._findParentByChildKeyValue(this._selectedRow[a],a,this._dataSource);if(n&&n[this.childrenColumnName].every((e=>l.has(e[a])))){var r=n[a];s.push(r),i[r]=n}}this.selectedRowKeys=(0,w.uniq)(s)}else{var h;this.autoSelectParentWhenAllChildrenSelected&&this._selectedRow&&(h=this._findParentByChildKeyValue(this._selectedRow[a],a,this._dataSource)),this.selectedRowKeys=(0,w.pullAll)(e,(0,w.map)(this._allChildren.concat(h),a))}this._selectedRow=void 0;var d=(0,w.keyBy)(this.extraRows,a);this._selectedRows=this.selectedRowKeys.map((e=>i[e]||d[e]));var c=null,u=(0,w.isEmpty)(this._selectUpdateEventDetailField)?this._selectedRows:(0,w.map)(this._selectedRows,(e=>(0,w.get)(e,this._selectUpdateEventDetailField)));c=(0,w.isEmpty)(this._selectUpdateEventDetailKeys)||(0,w.isEmpty)(u)?u:(0,w.set)({},this._selectUpdateEventDetailKeys,u),(0,w.isEmpty)(c)||(c=(0,w.merge)(c,this._selectUpdateEventDetailExtra)),this._selectUpdateEventName?this.dispatchEvent(new CustomEvent(this._selectUpdateEventName,{detail:c})):(0,o.Z)(this,fa).emit(c),(0,o.Z)(this,ya).emit(e)})),(0,s.Z)(this,"_getSelectedRowsWithChildren",(e=>{var t=[];return!(0,w.isEmpty)(e[this.childrenColumnName])&&(0,w.isArray)(e[this.childrenColumnName])&&(0,w.forEach)(e[this.childrenColumnName],(e=>{t.push(e),t.push(...this._getSelectedRowsWithChildren(e))})),t})),(0,s.Z)(this,"_handleOnSelect",((e,t,a)=>{this._selected=t,this._selectedRow=e,this._isInSelect=!0;var i=this._getRowKey(),s=this.selectAllChildren?this._getSelectedRowsWithChildren(e):[];this._allChildren=s,this.autoSelectParentWhenAllChildrenSelected||(this._disabledChildrenKeys=t?(0,w.uniq)([...this._disabledChildrenKeys,...(0,w.map)(s,i)]):(0,w.pullAll)(this._disabledChildrenKeys,[...(0,w.map)(s,i)])),this.storeCheckedByUrl&&i&&this._updateUrlChecked([e[i]],t)})),(0,s.Z)(this,"_handleSelectAll",((e,t,a)=>{this._selected=e,this._isInSelect=!0;var i=this._getRowKey();if(this.selectAllChildren){var s=(0,w.map)(this._dataSource,i),l=a.filter((e=>s.includes(e[i]))),n=(0,w.flatten)((0,w.map)(l,(e=>(0,w.map)(this._getSelectedRowsWithChildren(e),(e=>e[i]))))),r=(0,w.flatten)((0,w.map)(l,(e=>(0,w.map)(this._getSelectedRowsWithChildren(e),(e=>e)))));this._allChildren=r,this.autoSelectParentWhenAllChildrenSelected||(this._disabledChildrenKeys=e?(0,w.uniq)(this._disabledChildrenKeys.concat(n)):this._disabledChildrenKeys.filter((e=>!n.includes(e))))}this.storeCheckedByUrl&&i&&this._updateUrlChecked((0,w.map)(a,i),e)})),(0,s.Z)(this,"_getCheckedFromUrl",(()=>{var e=(0,v.getHistory)(),t=new URLSearchParams(e.location.search).get("checked");return(0,w.isEmpty)(t)?[]:t.split(",")})),(0,s.Z)(this,"_updateUrlChecked",((e,t)=>{var a=(0,v.getHistory)(),i=this._getCheckedFromUrl();t?i=[...i,...e]:(0,w.pull)(i,...e),this.shouldUpdateUrlParams&&a.pushQuery({checked:i.join(",")},{notify:!1})})),(0,s.Z)(this,"_handleOnChange",((e,t,a)=>{var i=(0,v.getHistory)(),s=new URLSearchParams(i.location.search);if(!(0,w.isEmpty)(e))if(e.pageSize!==this.pageSize)e.current=1,s.set("page","1"),s.set("pageSize",(null==e?void 0:e.pageSize).toString()),(0,o.Z)(this,ma).emit({[this._fields.pageSize]:e.pageSize,[this._fields.page]:1}),this.page=1,this.pageSize=e.pageSize;else if(e.current!==this.page){var l=e.current||1;s.set("page",l.toString()),(0,o.Z)(this,wa).emit({[this._fields.page]:l}),this.page=l}this.filters=t,(0,w.isEmpty)(t)||(0,w.forEach)(t,((e,t)=>{(0,w.isNil)(e)||0===e.length?s.delete(t):s.set(t,e)})),a.order&&(0,w.isNil)(a.order)&&(a.columnKey!==this.sort||this._fields[a.order]!==this.order)&&(a.columnKey&&a.order?(s.set("sort",a.columnKey),s.set("order",this._fields[a.order].toString()),this.sort=a.columnKey,this.order=this._fields[a.order]):(s.delete("sort"),s.delete("order"),this.sort=null,this.order=null),(0,o.Z)(this,Ca).emit({sort:this.sort,order:this.order})),this.frontSearch?(this.shouldUpdateUrlParams&&i.push("?".concat(s),{notify:!1}),this.frontendSearch(e,t,a)):this.shouldUpdateUrlParams&&i.push("?".concat(s),{notify:!!this.shouldRenderWhenUrlParamsUpdate})})),(0,s.Z)(this,"renderSelectInfo",(()=>c().createElement("span",{style:{marginLeft:20}},c().createElement("span",null,"已选择",this.selectedRowKeys.length,"项"),c().createElement("a",{role:"button",style:{marginLeft:"10px"},onClick:()=>{this.selectedRowKeys=[],this._selectedRows=[],this._disabledChildrenKeys=[],this._allChildren=[],this._selectUpdateEventName?this.dispatchEvent(new CustomEvent(this._selectUpdateEventName,{detail:[]})):(0,o.Z)(this,fa).emit([])}},"清空")))),(0,s.Z)(this,"_handleOnExpand",((e,t)=>{if(this.expandedRowKeys){var a=this._getRowKey(),i=[(0,w.get)(t,a)],s=(0,w.get)(t,this.childrenColumnName);if(!(0,w.isEmpty)(s)){var l=(0,w.map)((0,w.filter)(s,(e=>(0,w.isEmpty)((0,w.get)(e,this.childrenColumnName)))),a);i.push(...l)}this.expandedRowKeys=e?[...this.expandedRowKeys,...i]:(0,w.pull)(this.expandedRowKeys,...i),this._render()}(0,o.Z)(this,ka).emit({expanded:e,record:t})})),(0,s.Z)(this,"_handleOnExpandedRowsChange",(e=>{(0,o.Z)(this,Ra).emit({expandedRows:e})})),(0,s.Z)(this,"_handleOnDrag",(e=>{(0,o.Z)(this,Ma).emit({data:e})})),(0,s.Z)(this,"_getAllRows",(()=>{var e=[];return C(this._dataSource,this.childrenColumnName,e),e})),(0,s.Z)(this,"_handleDefaultSelectAll",(()=>{this._isInSelect=!0;var e=this._getRowKey();return this._selectedRows=this._getAllRows(),this.selectedRowKeys=(0,w.map)(this._selectedRows,e),this.selectedRowKeys})),(0,s.Z)(this,"_initConfigProps",(()=>{var e,t,a,s={current:this.page,pageSize:this.pageSize,total:(0,o.Z)(this,bi),showSizeChanger:!0,pageSizeOptions:["10","20","50"],showTotal:e=>{var t;return c().createElement(c().Fragment,null,c().createElement("span",{className:"totalText"},"共 ",c().createElement("strong",{className:"total"},e)," 条"),((null===(t=this.configProps)||void 0===t?void 0:t.rowSelection)||this.rowSelection)&&this.showSelectInfo&&0!==this.selectedRowKeys.length&&this.renderSelectInfo())}},l=this._getRowKey();this.rowDisabledConfig&&(a=Array.isArray(this.rowDisabledConfig)?this.rowDisabledConfig:[this.rowDisabledConfig]);var n=(0,i.Z)((0,i.Z)({},l?{selectedRowKeys:this._isInSelect?this.selectedRowKeys:this.storeCheckedByUrl?this._getCheckedFromUrl():this.defaultSelectAll?this._handleDefaultSelectAll():this.selectedRowKeys,onSelect:this._handleOnSelect,onSelectAll:this._handleSelectAll,onChange:this._handleRowSelectChange,preserveSelectedRowKeys:!0}:{onChange:this._handleRowSelectChange,preserveSelectedRowKeys:!0}),{},{getCheckboxProps:e=>!(0,w.isEmpty)(this._disabledChildrenKeys)&&this._disabledChildrenKeys.includes((0,w.get)(e,l))?{disabled:!0}:a?{disabled:a.some((t=>{var{field:a,value:i,operator:s}=t,l=b[s];return null==l?void 0:l(i,(0,w.get)(e,a))}))}:{}});this.configProps?(this._finalConfigProps=(0,w.cloneDeep)(this.configProps),!1!==this.configProps.pagination&&(this._finalConfigProps.pagination=(0,i.Z)((0,i.Z)((0,i.Z)({},s),this.pagination),this.configProps.pagination),void 0!==this.configProps.pagination&&null!==this.configProps.pagination||!1!==this.pagination||(this._finalConfigProps.pagination=!1)),this.configProps.size||(this._finalConfigProps.size=this.size)):(this._finalConfigProps={},this._finalConfigProps.pagination=!1!==this.pagination&&s,this._finalConfigProps.size=this.size);var r,h,d=null!==(e=null===(t=this.configProps)||void 0===t?void 0:t.rowSelection)&&void 0!==e?e:this.rowSelection;d?this._finalConfigProps.rowSelection=!0===d?(0,i.Z)((0,i.Z)({},n),{},{type:null!==(r=this.type)&&void 0!==r?r:"checkbox"}):(0,i.Z)((0,i.Z)((0,i.Z)({},n),{},{type:null!==(h=this.type)&&void 0!==h?h:"checkbox"},d),n.selectedRowKeys?{selectedRowKeys:n.selectedRowKeys}:{}):this.type?this._finalConfigProps.rowSelection=(0,i.Z)((0,i.Z)({},n),{},{type:this.type}):this._finalConfigProps.rowSelection=!1,this._columns&&(this._columns=this._columns.map((e=>{if((0,w.isNil)(e.key)&&(e.key=e.dataIndex),e.sorter&&(e.sortOrder=this.sort===e.key&&!(0,w.isNil)(this.order)&&(this._fields.ascend===this.order?"ascend":"descend")),e.filters){var t,a,i=(0,v.getHistory)(),s=null!==(t=new URLSearchParams(i.location.search).get(e.key))&&void 0!==t?t:null===(a=(0,w.get)(this.filters,e.key))||void 0===a?void 0:a.join(",");(0,w.isNil)(s)||(0,w.isEmpty)(s)?(e.filtered=!1,e.filteredValue=[]):(e.filtered=!0,e.filteredValue=s.split(",").map((t=>{var a,i;return null!==(a=null===(i=(0,w.find)(e.filters,(e=>String(e.value)===t)))||void 0===i?void 0:i.value)&&void 0!==a?a:t})))}return e})))}))}set columns(e){this._columns=e,this._render()}get columns(){return this._columns}set dataSource(e){var t,a,i,s,l,n;this._isInSelect=!1,this._originalDataSource=e,this._dataSource=(0,w.cloneDeep)(this._fields.dataSource?(0,w.get)(e,this._fields.dataSource):e),this._pureSource=(0,w.cloneDeep)(this._dataSource),this.stripEmptyExpandableChildren&&x((null===(n=this.configProps)||void 0===n||null===(n=n.expandable)||void 0===n?void 0:n.childrenColumnName)||"children",this._dataSource),(0,r.Z)(this,bi,(0,w.get)(e,this._fields.total)),this.page=null!==(t=null!==(a=(0,w.get)(e,"page"))&&void 0!==a?a:this.page)&&void 0!==t?t:1,this.pageSize=null!==(i=null!==(s=null!==(l=(0,w.get)(e,"page_size"))&&void 0!==l?l:(0,w.get)(e,"pageSize"))&&void 0!==s?s:this.pageSize)&&void 0!==i?i:10,this._render()}get showCard(){return(0,o.Z)(this,Wa)}set showCard(e){(0,r.Z)(this,Wa,e)}get rowSelection(){return(0,o.Z)(this,Ka)}set rowSelection(e){(0,r.Z)(this,Ka,e)}get rowKey(){return(0,o.Z)(this,Ia)}set rowKey(e){(0,r.Z)(this,Ia,e)}get hiddenColumns(){return(0,o.Z)(this,Na)}set hiddenColumns(e){(0,r.Z)(this,Na,e)}get showSelectInfo(){return(0,o.Z)(this,Ba)}set showSelectInfo(e){(0,r.Z)(this,Ba,e)}get filters(){return(0,o.Z)(this,Pa)}set filters(e){(0,r.Z)(this,Pa,e)}get configProps(){return(0,o.Z)(this,Ua)}set configProps(e){(0,r.Z)(this,Ua,e)}get sort(){return(0,o.Z)(this,za)}set sort(e){(0,r.Z)(this,za,e)}get order(){return(0,o.Z)(this,Da)}set order(e){(0,r.Z)(this,Da,e)}get rowDisabledConfig(){return(0,o.Z)(this,Aa)}set rowDisabledConfig(e){(0,r.Z)(this,Aa,e)}get expandedRowBrick(){return(0,o.Z)(this,Ta)}set expandedRowBrick(e){(0,r.Z)(this,Ta,e)}get expandIcon(){return(0,o.Z)(this,Fa)}set expandIcon(e){(0,r.Z)(this,Fa,e)}get expandIconAsCell(){return(0,o.Z)(this,Oa)}set expandIconAsCell(e){(0,r.Z)(this,Oa,e)}get expandIconColumnIndex(){return(0,o.Z)(this,La)}set expandIconColumnIndex(e){(0,r.Z)(this,La,e)}get expandRowByClick(){return(0,o.Z)(this,qa)}set expandRowByClick(e){(0,r.Z)(this,qa,e)}get optimizedColumns(){return(0,o.Z)(this,Ha)}set optimizedColumns(e){(0,r.Z)(this,Ha,e)}get stripEmptyExpandableChildren(){return(0,o.Z)(this,$a)}set stripEmptyExpandableChildren(e){(0,r.Z)(this,$a,e)}get defaultExpandAllRows(){return(0,o.Z)(this,Va)}set defaultExpandAllRows(e){(0,r.Z)(this,Va,e)}get ellipsisInfo(){return(0,o.Z)(this,Qa)}set ellipsisInfo(e){(0,r.Z)(this,Qa,e)}get expandedRowKeys(){return(0,o.Z)(this,ja)}set expandedRowKeys(e){(0,r.Z)(this,ja,e)}get selectAllChildren(){return(0,o.Z)(this,Ja)}set selectAllChildren(e){(0,r.Z)(this,Ja,e)}get defaultSelectAll(){return(0,o.Z)(this,Ga)}set defaultSelectAll(e){(0,r.Z)(this,Ga,e)}get childrenColumnName(){return(0,o.Z)(this,Xa)}set childrenColumnName(e){(0,r.Z)(this,Xa,e)}get sortable(){return(0,o.Z)(this,Ya)}set sortable(e){(0,r.Z)(this,Ya,e)}set fields(e){this._fields=(0,i.Z)((0,i.Z)({},this._fields),e),this._render()}get frontSearch(){return(0,o.Z)(this,ei)}set frontSearch(e){(0,r.Z)(this,ei,e)}get frontSearchQuery(){return(0,o.Z)(this,ti)}set frontSearchQuery(e){(0,r.Z)(this,ti,e)}get exactSearch(){return(0,o.Z)(this,ai)}set exactSearch(e){(0,r.Z)(this,ai,e)}get frontSearchFilterKeys(){return(0,o.Z)(this,ii)}set frontSearchFilterKeys(e){(0,r.Z)(this,ii,e)}get page(){return(0,o.Z)(this,si)}set page(e){(0,r.Z)(this,si,e)}get pageSize(){return(0,o.Z)(this,li)}set pageSize(e){(0,r.Z)(this,li,e)}get scrollConfigs(){return(0,o.Z)(this,ni)}set scrollConfigs(e){(0,r.Z)(this,ni,e)}get qField(){return(0,o.Z)(this,ri)}set qField(e){(0,r.Z)(this,ri,e)}get tableDraggable(){return(0,o.Z)(this,oi)}set tableDraggable(e){(0,r.Z)(this,oi,e)}get zebraPattern(){return(0,o.Z)(this,hi)}set zebraPattern(e){(0,r.Z)(this,hi,e)}get storeCheckedByUrl(){return(0,o.Z)(this,di)}set storeCheckedByUrl(e){(0,r.Z)(this,di,e)}get extraRows(){return(0,o.Z)(this,ci)}set extraRows(e){(0,r.Z)(this,ci,e)}get autoSelectParentWhenAllChildrenSelected(){return(0,o.Z)(this,ui)}set autoSelectParentWhenAllChildrenSelected(e){(0,r.Z)(this,ui,e)}get thTransparent(){return(0,o.Z)(this,pi)}set thTransparent(e){(0,r.Z)(this,pi,e)}get showHeader(){return(0,o.Z)(this,gi)}set showHeader(e){(0,r.Z)(this,gi,e)}get pagination(){return(0,o.Z)(this,wi)}set pagination(e){(0,r.Z)(this,wi,e)}get size(){return(0,o.Z)(this,vi)}set size(e){(0,r.Z)(this,vi,e)}get type(){return(0,o.Z)(this,mi)}set type(e){(0,r.Z)(this,mi,e)}get shouldUpdateUrlParams(){return(0,o.Z)(this,Zi)}set shouldUpdateUrlParams(e){(0,r.Z)(this,Zi,e)}get shouldRenderWhenUrlParamsUpdate(){return(0,o.Z)(this,fi)}set shouldRenderWhenUrlParamsUpdate(e){(0,r.Z)(this,fi,e)}get processedDataSource(){return this._dataSource}get processConfigProps(){return this._finalConfigProps}get processedColumns(){return this.getModifyColumns()}get selectedRowKeys(){return(0,o.Z)(this,yi)}set selectedRowKeys(e){(0,r.Z)(this,yi,e)}filterSourceData(e){var t=this.exactSearch?e.detail.q.trim():e.detail.q.trim().toLowerCase();if(this.shouldUpdateUrlParams){var a=(0,v.getHistory)(),i=new URLSearchParams(a.location.search);i.set("page","1"),t?(i.set(this.qField,t),a.push("?".concat(i),{notify:!this.frontSearch})):(i.delete(this.qField),a.push("?".concat(i),{notify:!this.frontSearch})),this.page=1}this.frontSearchQuery=t}handleFrontendDataChange(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];if(this.shouldUpdateUrlParams){var a=(0,v.getHistory)(),i=new URLSearchParams(a.location.search);this.frontSearchQuery=i.get(this.qField)}var s=[];s=this.handleFrontendFilterSource(e,this.frontSearchQuery||"",t);var l=(0,w.isNil)(this.order)?null:this._fields.ascend===this.order?"ascend":"descend";return s=this.handleFrontendSorter(s,{columnKey:this.sort,order:l}),s=this.handleFrontendFilters(s),(0,r.Z)(this,bi,s.length),s}handleFrontendFilterSource(e,t,a,s){if(!t)return e;var l=[];return s||(s=this.frontSearchFilterKeys||a.map((e=>e.dataIndex))),e.forEach((e=>{var n,r=e[this.childrenColumnName];if(r){var o=this.handleFrontendFilterSource(r,t,a,s);if(o.length>0)return void l.push((0,i.Z)((0,i.Z)({},e),{},{[this.childrenColumnName]:o}))}(null===(n=s)||void 0===n?void 0:n.some((a=>{var i=(0,w.get)(e,a);return!(0,w.isNil)(i)&&(this.exactSearch?i===t:JSON.stringify(i).toLowerCase().includes(t))})))&&l.push(e)})),l}handleFrontendSorter(e,t){var a=e||[],{columnKey:i,order:s}=t;if(!i||!s)return e;var l=1;return"descend"===s?l=-1:"ascend"===s&&(l=1),void 0!==l&&(a.sort(((e,t)=>{var a=(0,w.get)(e,i),s=(0,w.get)(t,i);if((0,w.isNil)(a)){if(!(0,w.isNil)(s))return 1}else if((0,w.isNil)(s))return-1;return a==s?0:a>s?l:-l})),a.forEach((e=>{var a=e[this.childrenColumnName];a&&this.handleFrontendSorter(a,t)}))),a}handleFrontendFilters(e){var t=e||[],a=(0,w.map)(this.filters,((e,t)=>({key:t,value:e}))).filter((e=>!(0,w.isNil)(e.value)&&0!==e.value.length));return t.filter((e=>(0,w.every)(a,(t=>{var a,i;return null===(a=null===(i=t.value)||void 0===i?void 0:i.includes((0,w.get)(e,t.key)))||void 0===a||a}))))}frontendSearch(e,t,a){this.sort=(0,w.isNil)(a.order)?null:a.columnKey,this.order=(0,w.isNil)(a.order)?null:this._fields[a.order]}expandAll(){var e=[],t=this._getRowKey();this._dataSource&&S(this._dataSource,t,this.childrenColumnName,e),this.expandedRowKeys=e}getModifyColumns(){var e=this._columns;return this._columns&&this.hiddenColumns&&(e=this._columns.filter((e=>{var t,a;return!(null!==(t=this.hiddenColumns)&&void 0!==t&&t.includes(null!==(a=e.dataIndex)&&void 0!==a?a:e.key))}))),!1===this.sortable&&(e=(0,w.map)(e,(e=>(e.sorter=!1,e)))),e}render(){return this.frontSearch&&(this._dataSource=this.handleFrontendDataChange(this._pureSource,this._columns)),this._initConfigProps(),c().createElement(O,{shadowRoot:this.shadowRoot,dataSource:this._dataSource||[],columns:this.getModifyColumns(),configProps:this._finalConfigProps,error:this._error,onChange:this._handleOnChange,showCard:this.showCard,showHeader:this.showHeader,expandedRowBrick:this.expandedRowBrick,expandIconAsCell:this.expandIconAsCell,expandIconColumnIndex:this.expandIconColumnIndex,expandRowByClick:this.expandRowByClick,defaultExpandAllRows:this.defaultExpandAllRows,onExpand:this._handleOnExpand,onExpandedRowsChange:this._handleOnExpandedRowsChange,expandedRowKeys:this.expandedRowKeys,rowKey:this._getRowKey(),childrenColumnName:this.childrenColumnName,tableDraggable:this.tableDraggable||this.draggable,onDrag:this._handleOnDrag,zebraPattern:this.zebraPattern,expandIcon:this.expandIcon,scroll:this.scrollConfigs,optimizedColumns:this.optimizedColumns,ellipsisInfo:this.ellipsisInfo,thTransparent:this.thTransparent})}_test_only_getOriginalDataSource(){return this._originalDataSource}updateData(e){this._dataSource=e.detail,this._error=null,this._render()}updateError(e){this._error=e.detail,this._render()}set selectUpdateEventName(e){this._selectUpdateEventName=e}set selectUpdateEventDetailKeys(e){this._selectUpdateEventDetailKeys=e}set selectUpdateEventDetailField(e){this._selectUpdateEventDetailField=e}set selectUpdateEventDetailExtra(e){this._selectUpdateEventDetailExtra=e}}function Ci(e){Q(this,e)}function xi(){return V(this)}function ki(e){X(this,e)}function _i(){return G(this)}function Ri(e){ae(this,e)}function Ei(){return te(this)}function Mi(e){ne(this,e)}function Wi(){return le(this)}function Ki(e){de(this,e)}function Ii(){return he(this)}function Ni(e){ge(this,e)}function Bi(){return pe(this)}function Pi(e){Ze(this,e)}function Ui(){return me(this)}function zi(e){Se(this,e)}function Di(){return ye(this)}oa=Si,({e:[$,V,Q,J,G,X,ee,te,ae,se,le,ne,oe,he,de,ue,pe,ge,ve,me,Ze,be,ye,Se,xe,_e,Ee,We,Ie,Be,Ue,De,Te,Oe,qe,$e,Qe,Je,Xe,et,at,st,nt,ot,dt,ut,gt,vt,Zt,bt,St,xt,_t,Et,Wt,It,Bt,Ut,Dt,Tt,Ot,qt,$t,Qt,Jt,Xt,ea,aa,sa,ra],c:[ha,L]}=(0,h.Z)(oa,[[H,1,"pageUpdate",e=>(0,o.Z)(e,ga),(e,t)=>(0,r.Z)(e,ga,t)],[j,1,"filterUpdate",e=>(0,o.Z)(e,va),(e,t)=>(0,r.Z)(e,va,t)],[Y,1,"selectUpdate",e=>(0,o.Z)(e,Za),(e,t)=>(0,r.Z)(e,Za,t)],[ie,1,"selectRowKeysUpdate",e=>(0,o.Z)(e,ba),(e,t)=>(0,r.Z)(e,ba,t)],[re,1,"sortUpdate",e=>(0,o.Z)(e,Sa),(e,t)=>(0,r.Z)(e,Sa,t)],[ce,1,"rowExpand",e=>(0,o.Z)(e,xa),(e,t)=>(0,r.Z)(e,xa,t)],[we,1,"expandRowsChange",e=>(0,o.Z)(e,_a),(e,t)=>(0,r.Z)(e,_a,t)],[fe,1,"rowDrag",e=>(0,o.Z)(e,Ea),(e,t)=>(0,r.Z)(e,Ea,t)],[Ce,1,"showCard"],[ke,1,"rowSelection"],[Re,1,"rowKey"],[Me,1,"hiddenColumns"],[Ke,1,"showSelectInfo"],[Ne,1,"filters"],[Pe,1,"configProps"],[ze,1,"sort"],[Ae,1,"order"],[Fe,1,"rowDisabledConfig"],[Le,1,"expandedRowBrick"],[He,1,"expandIcon"],[Ve,1,"expandIconAsCell"],[je,1,"expandIconColumnIndex"],[Ge,1,"expandRowByClick"],[Ye,1,"optimizedColumns"],[tt,1,"stripEmptyExpandableChildren"],[it,1,"defaultExpandAllRows"],[lt,1,"ellipsisInfo"],[rt,1,"expandedRowKeys"],[ht,1,"selectAllChildren"],[ct,1,"defaultSelectAll"],[pt,1,"childrenColumnName"],[wt,1,"sortable"],[mt,1,"frontSearch"],[ft,1,"frontSearchQuery"],[yt,1,"exactSearch"],[Ct,1,"frontSearchFilterKeys"],[kt,1,"page"],[Rt,1,"pageSize"],[Mt,1,"scrollConfigs"],[Kt,1,"qField"],[Nt,1,"tableDraggable"],[Pt,1,"zebraPattern"],[zt,1,"storeCheckedByUrl"],[At,1,"extraRows"],[Ft,1,"autoSelectParentWhenAllChildrenSelected"],[Lt,1,"thTransparent"],[Ht,1,"showHeader"],[Vt,1,"pagination"],[jt,1,"size"],[Gt,1,"type"],[Yt,1,"shouldUpdateUrlParams"],[ta,1,"shouldRenderWhenUrlParamsUpdate"],[ia,1,"selectedRowKeys"],[la,2,"filterSourceData"],[na,2,"expandAll"]],[q],0,(e=>bi.has((0,n.Z)(e))))),L();var Ai,Ti,Fi,Oi,Li,qi,Hi,$i,Vi,Qi,ji,Ji,Gi,Xi,Yi,es,ts,as,is,ss,ls,ns,rs,os,hs,ds,cs,us,ps,gs,ws,vs,ms,Zs,fs,bs,ys,Ss,Cs,xs=a(8682),{defineElement:ks,property:_s,event:Rs}=(0,u.createDecorators)(),Es=(0,p.wrapBrick)("eo-icon");Ti=ks("eo-cascader",{alias:["advanced.general-cascader"]}),Fi=_s({attribute:!1}),Li=_s({attribute:!1}),Hi=_s({attribute:!1}),Vi=_s(),ji=_s({type:Boolean}),Gi=_s({type:Boolean}),Yi=_s({type:Boolean}),ts=_s({type:Boolean}),is=_s({attribute:!1}),ls=_s(),rs=_s(),hs=_s(),cs=_s({type:Number}),ps=_s({attribute:!1}),ws=_s({attribute:!1}),ms=Rs({type:"cascader.change"});var Ms=new WeakMap,Ws=new WeakMap,Ks=new WeakMap,Is=new WeakMap,Ns=new WeakMap,Bs=new WeakMap,Ps=new WeakMap,Us=new WeakMap,zs=new WeakMap,Ds=new WeakMap,As=new WeakMap,Ts=new WeakMap,Fs=new WeakMap,Os=new WeakMap,Ls=new WeakMap,qs=new WeakMap,Hs=new WeakMap,$s=new WeakMap;class Vs extends p.ReactNextElement{constructor(){super(...arguments),(0,l.Z)(this,Hs,{get:js,set:Qs}),(0,l.Z)(this,Ms,{writable:!0,value:(ys(this),Oi(this))}),(0,l.Z)(this,Ws,{writable:!0,value:qi(this,{label:"label",value:"value",children:"children"})}),(0,l.Z)(this,Ks,{writable:!0,value:$i(this)}),(0,l.Z)(this,Is,{writable:!0,value:Qi(this)}),(0,l.Z)(this,Ns,{writable:!0,value:Ji(this)}),(0,l.Z)(this,Bs,{writable:!0,value:Xi(this)}),(0,l.Z)(this,Ps,{writable:!0,value:es(this,!0)}),(0,l.Z)(this,Us,{writable:!0,value:as(this,!0)}),(0,l.Z)(this,zs,{writable:!0,value:ss(this)}),(0,l.Z)(this,Ds,{writable:!0,value:ns(this,"click")}),(0,l.Z)(this,As,{writable:!0,value:os(this,"bottomLeft")}),(0,l.Z)(this,Ts,{writable:!0,value:ds(this)}),(0,l.Z)(this,Fs,{writable:!0,value:us(this,50)}),(0,l.Z)(this,Os,{writable:!0,value:gs(this)}),(0,l.Z)(this,Ls,{writable:!0,value:vs(this)}),(0,l.Z)(this,qs,{writable:!0,value:Zs(this)}),(0,l.Z)(this,$s,{writable:!0,value:(e,t)=>{this.value=e,Promise.resolve().then((()=>{(0,o.Z)(this,Hs).emit({value:e,selectedOptions:t})}))}})}get options(){return(0,o.Z)(this,Ms)}set options(e){(0,r.Z)(this,Ms,e)}get fieldNames(){return(0,o.Z)(this,Ws)}set fieldNames(e){(0,r.Z)(this,Ws,e)}get value(){return(0,o.Z)(this,Ks)}set value(e){(0,r.Z)(this,Ks,e)}get placeholder(){return(0,o.Z)(this,Is)}set placeholder(e){(0,r.Z)(this,Is,e)}get multiple(){return(0,o.Z)(this,Ns)}set multiple(e){(0,r.Z)(this,Ns,e)}get disabled(){return(0,o.Z)(this,Bs)}set disabled(e){(0,r.Z)(this,Bs,e)}get allowClear(){return(0,o.Z)(this,Ps)}set allowClear(e){(0,r.Z)(this,Ps,e)}get showSearch(){return(0,o.Z)(this,Us)}set showSearch(e){(0,r.Z)(this,Us,e)}get suffixIcon(){return(0,o.Z)(this,zs)}set suffixIcon(e){(0,r.Z)(this,zs,e)}get expandTrigger(){return(0,o.Z)(this,Ds)}set expandTrigger(e){(0,r.Z)(this,Ds,e)}get popupPlacement(){return(0,o.Z)(this,As)}set popupPlacement(e){(0,r.Z)(this,As,e)}get size(){return(0,o.Z)(this,Ts)}set size(e){(0,r.Z)(this,Ts,e)}get limit(){return(0,o.Z)(this,Fs)}set limit(e){(0,r.Z)(this,Fs,e)}get maxTagCount(){return(0,o.Z)(this,Os)}set maxTagCount(e){(0,r.Z)(this,Os,e)}get cascaderStyle(){return(0,o.Z)(this,Ls)}set cascaderStyle(e){(0,r.Z)(this,Ls,e)}render(){return c().createElement(Js,{shadowRoot:this.shadowRoot,options:this.options,fieldNames:this.fieldNames,value:this.value,multiple:this.multiple,placeholder:this.placeholder,disabled:this.disabled,allowClear:this.allowClear,showSearch:this.showSearch,expandTrigger:this.expandTrigger,suffixIcon:this.suffixIcon,size:this.size,limit:this.limit,popupPlacement:this.popupPlacement,maxTagCount:this.maxTagCount,cascaderStyle:this.cascaderStyle,onChange:(0,o.Z)(this,$s)})}}function Qs(e){bs(this,e)}function js(){return fs(this)}function Js(e){var{shadowRoot:t,options:a,fieldNames:i,value:s,placeholder:l,disabled:n,multiple:r,allowClear:o,showSearch:h,expandTrigger:u,size:p,limit:g,popupPlacement:w,cascaderStyle:v,suffixIcon:m,maxTagCount:Z,onChange:f}=e,b=(0,d.useMemo)((()=>(0,B.Df)()),[]);return c().createElement(B.V9,{container:t,cache:b},c().createElement(xs.Z,{getPopupContainer:e=>e.parentElement,allowClear:o,disabled:n,multiple:r,expandTrigger:u,fieldNames:i,placeholder:l,size:p,showSearch:h&&{limit:g,filter:(e,t)=>{for(var a,s=(null==i?void 0:i.label)||"label",l=e.split(" ").filter((e=>e)).map((e=>e.toLocaleLowerCase())),n=function(e){if(!t.some((t=>t[s].toLowerCase().includes(l[e]))))return{v:!1}},r=0;r<l.length;r++)if(a=n(r))return a.v;return!0}},placement:w,style:v,suffixIcon:m&&c().createElement(Es,m),maxTagCount:Z,value:s,options:a,onChange:(e,t)=>null==f?void 0:f(e,t)}))}Ss=Vs,({e:[Oi,qi,$i,Qi,Ji,Xi,es,as,ss,ns,os,ds,us,gs,vs,Zs,fs,bs,ys],c:[Cs,Ai]}=(0,h.Z)(Ss,[[Fi,1,"options"],[Li,1,"fieldNames"],[Hi,1,"value"],[Vi,1,"placeholder"],[ji,1,"multiple"],[Gi,1,"disabled"],[Yi,1,"allowClear"],[ts,1,"showSearch"],[is,1,"suffixIcon"],[ls,1,"expandTrigger"],[rs,1,"popupPlacement"],[hs,1,"size"],[cs,1,"limit"],[ps,1,"maxTagCount"],[ws,1,"cascaderStyle"],[ms,1,"changeEvent",e=>(0,o.Z)(e,qs),(e,t)=>(0,r.Z)(e,qs,t)]],[Ti],0,(e=>$s.has((0,n.Z)(e))))),Ai();var Gs=a(750),Xs=a(8298),Ys=a(1876),el=a(7088),tl=a(2068),al=function(e){return e.TOTAL="TOTAL",e.SELECT_INFO="SELECT_INFO",e.CLEAR="CLEAR",e}({}),il="bricks/advanced/eo-next-table",sl={showSizeChanger:!0,showTotal:!0},ll={preserveSelectedRowKeys:!0,showSelectInfo:!0};function nl(e){var t=[];if((0,w.isNil)(e));else if(Array.isArray(e))e.map((e=>t.push(nl(e))));else if("[object Object]"===Object.prototype.toString.call(e))for(var a in e)t.push(String(a),nl(e[a]));else t.push(String(e));return t.flat(1/0).filter(Boolean)}(0,el.initializeReactI18n)(il,{en:{TOTAL:"Total <el>{{ total }}</el> Items",SELECT_INFO:"{{ count }} item selected",SELECT_INFO_plural:"{{ count }} items selected",CLEAR:"Clear"},zh:{TOTAL:"共 <el>{{ total }}</el> 条",SELECT_INFO:"已选择 {{ count }} 项",CLEAR:"清空"}});var rl,ol,hl,dl,cl,ul,pl,gl,wl,vl,ml,Zl,fl,bl,yl,Sl,Cl,xl,kl,_l,Rl,El,Ml,Wl,Kl,Il,Nl,Bl,Pl,Ul,zl,Dl,Al,Tl,Fl=(0,p.wrapBrick)("eo-link"),Ol=(0,d.forwardRef)((function(e,t){var a,s,{shadowRoot:l,rowKey:n,columns:r,dataSource:o,pagination:h,rowSelection:u,hiddenColumns:p,searchFields:g,onPageChange:v,onPageSizeChange:m,onRowSelect:Z}=e,{t:b}=(0,el.useTranslation)(il),y=(0,d.useMemo)((()=>(0,B.Df)()),[]),S=(0,N.useCurrentTheme)(),[C,x]=(0,d.useState)(null==o?void 0:o.list),[{page:k,pageSize:_},R]=(0,d.useState)({page:null!==(a=null==o?void 0:o.page)&&void 0!==a?a:1,pageSize:null!==(s=null==o?void 0:o.pageSize)&&void 0!==s?s:20}),[E,M]=(0,d.useState)(e.selectedRowKeys);(0,d.useEffect)((()=>{M(e.selectedRowKeys)}),[e.selectedRowKeys]),(0,d.useEffect)((()=>{var e,t;x(null==o?void 0:o.list),R({page:null!==(e=null==o?void 0:o.page)&&void 0!==e?e:1,pageSize:null!==(t=null==o?void 0:o.pageSize)&&void 0!==t?t:20})}),[o]);var W=(0,d.useMemo)((()=>{var e=new Set(p);return null==r?void 0:r.filter((t=>!e.has(t.key))).map((e=>(0,i.Z)((0,i.Z)({},e),{},{render(t,a,i){if(e.useBrick){var s={cellData:t,rowData:a,columnIndex:i};return c().createElement(N.ReactUseMultipleBricks,{useBrick:e.useBrick,data:s})}return c().createElement(c().Fragment,null,t)},title(t){var a;if(null!==(a=e.headerBrick)&&void 0!==a&&a.useBrick){var i={title:e.title};return c().createElement(N.ReactUseMultipleBricks,{useBrick:e.headerBrick.useBrick,data:i})}return c().createElement(c().Fragment,null,e.title)}})))}),[r,p]),K=(0,d.useMemo)((()=>{if(!1!==u&&!(0,w.isNil)(u))return(0,i.Z)((0,i.Z)({},ll),!0===u?{}:u)}),[u]),I=(0,d.useMemo)((()=>!1!==h&&(0,i.Z)((0,i.Z)({},sl),h)),[h]);return(0,d.useImperativeHandle)(t,(()=>({search:e=>{var t,a,{q:i}=e,s=(null==i?void 0:i.trim().toLowerCase())||"",l=null==o?void 0:o.list;s&&(l=g?null==o||null===(t=o.list)||void 0===t?void 0:t.filter((e=>g.flatMap((t=>nl((0,w.get)(e,t)))).some((e=>e.toLowerCase().includes(s))))):null==o||null===(a=o.list)||void 0===a?void 0:a.filter((e=>{var t=null==r?void 0:r.flatMap((t=>nl(Array.isArray(t.dataIndex)?(0,w.get)(e,t.dataIndex):e[t.dataIndex])));return null==t?void 0:t.some((e=>e.toLowerCase().includes(s)))}))),x(l),R((e=>{if(1!==e.page){var t,a={page:1,pageSize:null!==(t=e.pageSize)&&void 0!==t?t:20};return null==v||v(a),a}return e}))}}))),c().createElement(Xs.ZP,{theme:{algorithm:"dark-v2"===S?Ys.default.darkAlgorithm:Ys.default.defaultAlgorithm}},c().createElement(B.V9,{container:l,cache:y},c().createElement(f.Z,{rowKey:n,columns:W,dataSource:C,pagination:!1!==I&&(0,i.Z)((0,i.Z)({},I),{},{total:null==o?void 0:o.total,current:k,pageSize:_,showTotal:e=>c().createElement("div",{className:"pagination-wrapper"},I.showTotal?c().createElement("span",{className:"pagination-total-text"},c().createElement(tl.Trans,{i18nKey:b(al.TOTAL),values:{total:e},components:{el:c().createElement("strong",{className:"pagination-total-number"})}})):null,null!=K&&K.showSelectInfo&&null!=E&&E.length?c().createElement("span",{className:"select-info"},c().createElement("span",null,b(al.SELECT_INFO,{count:E.length})),c().createElement(Fl,{onClick:()=>{M([]),null==Z||Z({keys:[],rows:[],info:{type:"none"}})}},b(al.CLEAR))):null)}),rowSelection:void 0===K?void 0:(0,i.Z)((0,i.Z)({},K),{},{selectedRowKeys:E,onChange(e,t,a){M(e),null==Z||Z({keys:e,rows:t,info:a})}}),onChange:(e,t,a,i)=>{"paginate"===i.action&&R((t=>{if(t.pageSize!==e.pageSize){var a,i={page:1,pageSize:null!==(a=e.pageSize)&&void 0!==a?a:20};return null==m||m(i),null==v||v(i),i}if(t.page!==e.current){var s,l,n={page:null!==(s=e.current)&&void 0!==s?s:1,pageSize:null!==(l=e.pageSize)&&void 0!==l?l:20};return null==v||v(n),n}return t}))}})))})),{defineElement:Ll,property:ql,method:Hl,event:$l}=(0,u.createDecorators)();ol=Ll("eo-next-table",{styleTexts:[Gs.Z]}),hl=ql(),cl=ql({attribute:!1}),pl=ql({attribute:!1}),wl=ql({attribute:!1}),ml=ql({attribute:!1}),fl=ql({attribute:!1}),yl=ql({attribute:!1}),Cl=ql({attribute:!1}),kl=Hl(),_l=$l({type:"page.change"}),Wl=$l({type:"page.size.change"}),Bl=$l({type:"row.select"});var Vl=new WeakMap,Ql=new WeakMap,jl=new WeakMap,Jl=new WeakMap,Gl=new WeakMap,Xl=new WeakMap,Yl=new WeakMap,en=new WeakMap,tn=new WeakMap,an=new WeakMap,sn=new WeakMap,ln=new WeakMap,nn=new WeakMap,rn=new WeakMap,on=new WeakMap,hn=new WeakMap,dn=new WeakMap,cn=new WeakMap;class un extends p.ReactNextElement{constructor(){super(...arguments),(0,l.Z)(this,dn,{get:Zn,set:mn}),(0,l.Z)(this,rn,{get:vn,set:wn}),(0,l.Z)(this,sn,{get:gn,set:pn}),(0,l.Z)(this,Vl,{writable:!0,value:(0,d.createRef)()}),(0,l.Z)(this,Ql,{writable:!0,value:(Dl(this),dl(this,"key"))}),(0,l.Z)(this,jl,{writable:!0,value:ul(this)}),(0,l.Z)(this,Jl,{writable:!0,value:gl(this)}),(0,l.Z)(this,Gl,{writable:!0,value:vl(this)}),(0,l.Z)(this,Xl,{writable:!0,value:Zl(this)}),(0,l.Z)(this,Yl,{writable:!0,value:bl(this)}),(0,l.Z)(this,en,{writable:!0,value:Sl(this)}),(0,l.Z)(this,tn,{writable:!0,value:xl(this)}),(0,l.Z)(this,an,{writable:!0,value:Rl(this)}),(0,l.Z)(this,ln,{writable:!0,value:e=>{(0,o.Z)(this,sn).emit(e)}}),(0,l.Z)(this,nn,{writable:!0,value:Kl(this)}),(0,l.Z)(this,on,{writable:!0,value:e=>{(0,o.Z)(this,rn).emit(e)}}),(0,l.Z)(this,hn,{writable:!0,value:Pl(this)}),(0,l.Z)(this,cn,{writable:!0,value:e=>{(0,o.Z)(this,dn).emit(e)}})}get rowKey(){return(0,o.Z)(this,Ql)}set rowKey(e){(0,r.Z)(this,Ql,e)}get columns(){return(0,o.Z)(this,jl)}set columns(e){(0,r.Z)(this,jl,e)}get dataSource(){return(0,o.Z)(this,Jl)}set dataSource(e){(0,r.Z)(this,Jl,e)}get pagination(){return(0,o.Z)(this,Gl)}set pagination(e){(0,r.Z)(this,Gl,e)}get rowSelection(){return(0,o.Z)(this,Xl)}set rowSelection(e){(0,r.Z)(this,Xl,e)}get selectedRowKeys(){return(0,o.Z)(this,Yl)}set selectedRowKeys(e){(0,r.Z)(this,Yl,e)}get hiddenColumns(){return(0,o.Z)(this,en)}set hiddenColumns(e){(0,r.Z)(this,en,e)}get searchFields(){return(0,o.Z)(this,tn)}set searchFields(e){(0,r.Z)(this,tn,e)}search(e){var t;null===(t=(0,o.Z)(this,Vl).current)||void 0===t||t.search(e)}render(){return c().createElement(Ol,{ref:(0,o.Z)(this,Vl),shadowRoot:this.shadowRoot,rowKey:this.rowKey,columns:this.columns,dataSource:this.dataSource,pagination:this.pagination,rowSelection:this.rowSelection,selectedRowKeys:this.selectedRowKeys,hiddenColumns:this.hiddenColumns,searchFields:this.searchFields,onPageChange:(0,o.Z)(this,ln),onPageSizeChange:(0,o.Z)(this,on),onRowSelect:(0,o.Z)(this,cn)})}}function pn(e){Ml(this,e)}function gn(){return El(this)}function wn(e){Nl(this,e)}function vn(){return Il(this)}function mn(e){zl(this,e)}function Zn(){return Ul(this)}Al=un,({e:[dl,ul,gl,vl,Zl,bl,Sl,xl,Rl,El,Ml,Kl,Il,Nl,Pl,Ul,zl,Dl],c:[Tl,rl]}=(0,h.Z)(Al,[[hl,1,"rowKey"],[cl,1,"columns"],[pl,1,"dataSource"],[wl,1,"pagination"],[ml,1,"rowSelection"],[fl,1,"selectedRowKeys"],[yl,1,"hiddenColumns"],[Cl,1,"searchFields"],[kl,2,"search"],[_l,1,"pageChangeEvent",e=>(0,o.Z)(e,an),(e,t)=>(0,r.Z)(e,an,t)],[Wl,1,"pageSizeChangeEvent",e=>(0,o.Z)(e,nn),(e,t)=>(0,r.Z)(e,nn,t)],[Bl,1,"rowSelectEvent",e=>(0,o.Z)(e,hn),(e,t)=>(0,r.Z)(e,hn,t)]],[ol],0,(e=>cn.has((0,n.Z)(e))))),rl()},750:(e,t,a)=>{a.d(t,{Z:()=>r});var i=a(9601),s=a.n(i),l=a(2609),n=a.n(l)()(s());n.push([e.id,":host{display:block}:host([hidden]){display:none}.pagination-wrapper{display:flex;gap:20px}.pagination-total-text{color:var(--antd-pagination-total-text)}.pagination-total-number{font-weight:var(--font-weight-400);color:var(--antd-pagination-total-strong-text)}.select-info{display:flex;gap:10px}",""]);const r=n.toString()},2869:(e,t,a)=>{a.d(t,{Z:()=>r});var i=a(9601),s=a.n(i),l=a(2609),n=a.n(l)()(s());n.push([e.id,".brickTableOddRow{background-color:var(--color-fill-bg-base-4)}.ant-table-small .ant-table-body{margin:0}.ant-table-small .ant-table-thead{background:var(--antd-table-header-bg)}.ant-table-small .ant-table-row{line-height:26px}.ant-table-tbody > tr.invalidRow > td{background-color:var(--color-error-bg)}.ant-table-tbody > tr.invalidRow:hover > td{background-color:var(--color-error-bg)}.ant-table-tbody > tr.disabledRow > td{background-color:var(--theme-gray-border-color)}.ant-table-tbody > .ant-table-row-selected td{background:var(--antd-table-cell-fixed-body-bg)!important}td.alignTop{vertical-align:top}td.alignBottom{vertical-align:bottom}.expandIconCellHidden .ant-table-row-expand-icon-cell,\n.expandIconCellHidden .ant-table-expand-icon-col{width:1px;min-width:auto}.expandIconCellHidden .ant-table-row-expand-icon-cell > *,\n.expandIconCellHidden .ant-table-expand-icon-col > *{display:none}.expandIconSpan{cursor:pointer;margin-right:9px;color:var(--antd-table-row-expand-icon-color);font-size:11px}.expandIconSpan .anticon{background:var(--antd-table-row-expand-icon-action-bg);border-radius:2px;padding:3px}.tableThTransparent thead.ant-table-thead > tr > th{background:var(--antd-table-header-bg)}.zebraPatternTable .ant-table-tbody tr td{border-bottom:0}.ellipsis{max-width:240px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.totalText{color:var(--antd-pagination-total-text)}.total{font-weight:normal;color:var(--antd-pagination-total-strong-text)}.ant-table-wrapper .ant-table-thead > tr > th{padding:11px 16px;font-size:12px;line-height:20px;border-bottom:0;font-weight:500;color:var(--antd-table-header-color)}",""]);const r=n.toString()}}]);
2
+ //# sourceMappingURL=4553.ebc88a76.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chunks/4553.ebc88a76.js","mappings":"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","sources":["webpack:///./src/table/utils.tsx","webpack:///./src/table/BrickTable.tsx","webpack:///./src/table/index.tsx","webpack:///./src/cascader/index.tsx","webpack:///./src/next-table/i18n.ts","webpack:///./src/next-table/utils.ts","webpack:///./src/next-table/Table.tsx","webpack:///./src/next-table/index.tsx","webpack:///./src/next-table/styles.shadow.css","webpack:///./src/table/table.shadow.css"],"sourcesContent":["import {\n lt,\n lte,\n gt,\n gte,\n get,\n isEqual,\n forEach,\n includes,\n isUndefined,\n} from \"lodash\";\nimport { type CellStatusProps } from \"./index.js\";\nexport const compareFunMap: Record<string, any> = {\n $eq: isEqual,\n $lt: lt,\n $lte: lte,\n $gt: gt,\n $gte: gte,\n $ne: (value: any, fieldValue: any): boolean => !isEqual(value, fieldValue),\n $isEqual: isEqual,\n $notEqual: (value: any, fieldValue: any): boolean =>\n !isEqual(value, fieldValue),\n $in: includes,\n $nin: (value: any, fieldValue: any): boolean => !includes(value, fieldValue),\n $exists: (value: any, fieldValue: any): boolean =>\n value ? !isUndefined(fieldValue) : isUndefined(fieldValue),\n};\n\nexport function getCellStyle(\n cellStatus: CellStatusProps,\n item: Record<string, any>,\n value?: any\n): Record<string, string> {\n const { dataIndex, mapping: list } = cellStatus;\n const finalValue = dataIndex !== undefined ? get(item, dataIndex) : value;\n const ret = list.find((item) => item.value === finalValue);\n\n if (!ret) return {};\n\n return {\n borderLeft: `4px solid ${ret.leftBorderColor}`,\n };\n}\nexport const getKeysOfData = (\n data: Record<string, any>[],\n rowKey: string,\n childrenColumnName: string,\n keys: string[]\n): void => {\n if (data) {\n forEach(data, (item) => {\n const children = get(item, childrenColumnName);\n const key = get(item, rowKey);\n keys.push(key);\n if (children?.length) {\n getKeysOfData(children, rowKey, childrenColumnName, keys);\n }\n });\n }\n};\nexport const getRowsOfData = (\n data: Record<string, any>[],\n childrenColumnName: string,\n rows: Record<string, any>[]\n): void => {\n if (data) {\n forEach(data, (item) => {\n const children = get(item, childrenColumnName);\n rows.push(item);\n if (children?.length) {\n getRowsOfData(children, childrenColumnName, rows);\n }\n });\n }\n};\n\nexport function stripEmptyExpandableChildrenByName(\n name: string,\n data: Record<string, any>[] = []\n): Record<string, any>[] {\n if (data?.length) {\n data.forEach((value) => {\n if (value[name]?.length) {\n return stripEmptyExpandableChildrenByName(name, value[name]);\n }\n\n delete value[name];\n return value;\n });\n }\n return data;\n}\n","import React, { useState, useEffect, useRef, useMemo } from \"react\";\nimport { Table, type TableProps } from \"antd\";\nimport { getCellStyle } from \"./utils.js\";\nimport { pickBy, isNil, toPath, isEqual } from \"lodash\";\nimport classNames from \"classnames\";\nimport { DndProvider, useDrag, useDrop } from \"react-dnd\";\nimport { HTML5Backend } from \"react-dnd-html5-backend\";\nimport update from \"immutability-helper\";\nimport { CustomColumn } from \"./index.js\";\nimport { ReactUseMultipleBricks } from \"@next-core/react-runtime\";\nimport type { UseSingleBrickConf } from \"@next-core/types\";\nimport { wrapBrick } from \"@next-core/react-element\";\nimport { StyleProvider, createCache } from \"@ant-design/cssinjs\";\nimport type {\n GeneralIcon,\n GeneralIconProps,\n} from \"@next-bricks/icons/general-icon\";\nconst type = \"DraggableBodyRow\";\n\nconst downMenuIcon: GeneralIconProps = {\n lib: \"antd\",\n icon: \"down\",\n theme: \"outlined\",\n};\n\nconst rightMenuIcon: GeneralIconProps = {\n lib: \"antd\",\n icon: \"right\",\n theme: \"outlined\",\n};\n\nconst WrappedIcon = wrapBrick<GeneralIcon, GeneralIconProps>(\"eo-icon\");\n\nexport interface BrickTableProps {\n shadowRoot: ShadowRoot | null;\n dataSource: Record<string, any>[];\n columns: CustomColumn[];\n configProps?: TableProps<any>;\n error?: any;\n onDelete?: (index: number) => void;\n onChange: any;\n onSelectChange?: (selected: string[]) => void;\n showCard?: boolean;\n // 展开行相关属性\n expandedRowBrick?: {\n useBrick?: UseSingleBrickConf;\n };\n expandIcon?: {\n collapsedIcon: GeneralIconProps;\n expandedIcon: GeneralIconProps;\n };\n expandIconAsCell?: boolean;\n expandIconColumnIndex?: number;\n expandRowByClick?: boolean;\n defaultExpandAllRows?: boolean;\n onExpand?: (expanded: boolean, record: Record<string, any>) => void;\n onExpandedRowsChange?: (expandedRows: React.Key[]) => void;\n expandedRowKeys?: React.Key[];\n rowKey?: string;\n childrenColumnName?: string;\n tableDraggable?: boolean;\n onDrag?: (data: Record<string, any>[]) => void;\n zebraPattern?: boolean;\n scroll?: TableProps<unknown>[\"scroll\"];\n optimizedColumns?: Array<string | number>;\n ellipsisInfo?: boolean;\n thTransparent?: boolean;\n showHeader?: boolean;\n}\n\nconst DraggableBodyRow = ({\n index,\n moveRow,\n className,\n style,\n ...restProps\n}: any) => {\n const ref = React.useRef(null);\n const [{ isOver, dropClassName }, drop] = useDrop({\n accept: type,\n collect: (monitor: any) => {\n const { index: dragIndex } = monitor.getItem() || {};\n if (dragIndex === index) {\n return {};\n }\n return {\n isOver: monitor.isOver(),\n dropClassName:\n dragIndex < index ? `dropOverDownward` : `dropOverUpward`,\n };\n },\n drop: (item: any) => {\n moveRow(item.index, index);\n },\n });\n const [, drag] = useDrag({\n type,\n item: { type, index },\n collect: (monitor: any) => ({\n isDragging: monitor.isDragging(),\n }),\n });\n drop(drag(ref));\n return (\n <tr\n ref={ref}\n className={classNames(className, {\n [dropClassName as string]: isOver,\n })}\n style={{ cursor: \"move\", ...style }}\n {...restProps}\n />\n );\n};\n\nconst getCustomHeader = (\n useBrick: UseSingleBrickConf,\n data?: { title: unknown }\n): (() => React.ReactElement) => {\n return function CustomHeader() {\n return <ReactUseMultipleBricks useBrick={useBrick} data={data} />;\n };\n};\n\ntype ItemBrickDataMap = Map<unknown, BrickData>;\ntype BrickData = {\n cellData: unknown;\n rowData: Record<string, unknown>;\n columnIndex: number;\n};\n\nconst getCustomComp = (\n useBrick: UseSingleBrickConf,\n itemBrickDataMap?: ItemBrickDataMap\n) => {\n return function CustomComp(\n value: any,\n item: Record<string, any>,\n index: number\n ) {\n if (useBrick) {\n let brickData: BrickData | undefined = itemBrickDataMap?.get(item);\n\n if (!brickData) {\n brickData = {\n cellData: value,\n rowData: item,\n columnIndex: index,\n };\n itemBrickDataMap?.set(item, brickData);\n }\n\n return <ReactUseMultipleBricks useBrick={useBrick} data={brickData} />;\n }\n };\n};\n\nexport function BrickTable(props: BrickTableProps): React.ReactElement {\n if (props.error) {\n throw props.error;\n }\n\n const {\n configProps = {\n pagination: true,\n sortBy: false,\n },\n columns,\n rowKey = \"key\",\n expandIconAsCell,\n expandIconColumnIndex,\n childrenColumnName,\n scroll,\n optimizedColumns,\n onDelete, // 用于 brick form 中,will be deprecated\n ellipsisInfo,\n showHeader,\n } = props;\n\n const initData = useMemo(() => {\n return props.dataSource?.map((item, index) =>\n isNil(item[rowKey]) ? { ...item, [rowKey]: index } : item\n );\n }, [props.dataSource, rowKey]);\n\n const [data, setData] = useState(initData);\n const rowKeyExpandIconMapRef = useRef<Map<unknown, React.ReactNode>>(\n new Map()\n );\n const columnTitleBrickDataMapRef = useRef<\n Map<CustomColumn, { title: unknown }>\n >(new Map());\n const useBrickItemBrickDataMapRef = useRef<\n Map<UseSingleBrickConf, ItemBrickDataMap>\n >(new Map());\n const itemExpandedRowBrickDataMapRef = useRef<Map<unknown, unknown>>(\n new Map()\n );\n\n useEffect(() => {\n itemExpandedRowBrickDataMapRef.current.clear();\n setData(initData);\n }, [initData]);\n\n const expandIconColumnIndexOffset = (configProps as TableProps<any>)\n ?.rowSelection\n ? -1\n : 0;\n const customColumns = useMemo(() => {\n if (columns) {\n columnTitleBrickDataMapRef.current.clear();\n useBrickItemBrickDataMapRef.current.clear();\n const customColumns = columns.map((column, index) => {\n const {\n useBrick,\n valueSuffix,\n cellStatus,\n cellStyle = {},\n headerBrick,\n colSpanKey,\n rowSpanKey,\n filterDropdownBrick,\n ...columnConf\n } = column;\n if (headerBrick?.useBrick) {\n const useBrick = headerBrick?.useBrick;\n let data = columnTitleBrickDataMapRef.current.get(column);\n\n if (!data) {\n data = {\n title: columnConf.title,\n };\n columnTitleBrickDataMapRef.current.set(column, data);\n }\n\n columnConf.title = getCustomHeader(\n useBrick as UseSingleBrickConf,\n data\n );\n }\n\n if (filterDropdownBrick?.useBrick) {\n columnConf.filterDropdown = (\n <ReactUseMultipleBricks useBrick={filterDropdownBrick.useBrick} />\n );\n }\n\n if (useBrick) {\n let itemBrickDataMap: ItemBrickDataMap | undefined;\n\n if (useBrick) {\n itemBrickDataMap =\n useBrickItemBrickDataMapRef.current.get(useBrick);\n\n if (!itemBrickDataMap) {\n itemBrickDataMap = new Map();\n useBrickItemBrickDataMapRef.current.set(\n useBrick,\n itemBrickDataMap\n );\n }\n }\n\n columnConf.render = getCustomComp(useBrick, itemBrickDataMap);\n // [only update when record changed](https://ant.design/components/table-cn/#%E4%B8%BA%E4%BB%80%E4%B9%88-%E6%9B%B4%E6%96%B0-state-%E4%BC%9A%E5%AF%BC%E8%87%B4%E5%85%A8%E8%A1%A8%E6%B8%B2%E6%9F%93%EF%BC%9F)\n columnConf.shouldCellUpdate = (record: any, prevRecord: any) => {\n return !isEqual(record, prevRecord);\n };\n } else if (valueSuffix) {\n columnConf.render = (value: string) => value + valueSuffix;\n }\n if (\n !expandIconAsCell &&\n index === Number(expandIconColumnIndex) + expandIconColumnIndexOffset\n ) {\n const innerRender = columnConf.render;\n columnConf.render = function ExpandIcon(\n value: any,\n record: any,\n index: any\n ) {\n return (\n <>\n {!record[childrenColumnName as string] &&\n rowKeyExpandIconMapRef.current.get(\n rowKey ? record[rowKey] : record\n )}\n {innerRender ? innerRender(value, record, index) : value}\n </>\n );\n };\n }\n if (cellStatus || colSpanKey || rowSpanKey || cellStyle) {\n const innerRender = columnConf.render;\n columnConf.render = (value: any, item: any, index: number) => {\n return {\n children: innerRender ? innerRender(value, item, index) : value,\n props: {\n colSpan: item[colSpanKey as string],\n rowSpan: item[rowSpanKey as string],\n style: {\n ...(cellStatus ? getCellStyle(cellStatus, item, value) : {}),\n ...cellStyle,\n },\n },\n };\n };\n }\n\n if (typeof columnConf.dataIndex === \"string\") {\n columnConf.dataIndex = toPath(columnConf.dataIndex);\n }\n if (columnConf.verticalAlign === \"top\") {\n columnConf.className\n ? (columnConf.className += \" alignTop\")\n : (columnConf.className = \"alignTop\");\n }\n if (columnConf.verticalAlign === \"bottom\") {\n columnConf.className\n ? (columnConf.className += \" alignBottom\")\n : (columnConf.className = \"alignBottom\");\n }\n if (ellipsisInfo) {\n columnConf.className\n ? (columnConf.className += \" ellipsisInfoCell\")\n : (columnConf.className = \"ellipsisInfoCell\");\n }\n return columnConf;\n });\n\n return customColumns;\n }\n }, [\n columns,\n childrenColumnName,\n expandIconAsCell,\n expandIconColumnIndex,\n expandIconColumnIndexOffset,\n rowKey,\n onDelete,\n ellipsisInfo,\n ]);\n\n const expandedRowRender = (record: Record<string, any>, index: number) => {\n let data = itemExpandedRowBrickDataMapRef.current.get(record);\n\n if (!data) {\n data = {\n rowData: record,\n rowIndex: index,\n };\n itemExpandedRowBrickDataMapRef.current.set(record, data);\n }\n\n return (\n <ReactUseMultipleBricks\n useBrick={props.expandedRowBrick?.useBrick as UseSingleBrickConf}\n data={data}\n />\n );\n };\n\n const components = {\n body: {\n row: DraggableBodyRow,\n },\n };\n\n const moveRow = (dragIndex: number, hoverIndex: number) => {\n const dragRow = data[dragIndex];\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n const newData = update(data, {\n $splice: [\n [dragIndex, 1],\n [hoverIndex, 0, dragRow],\n ],\n });\n setData(newData);\n props.onDrag && props.onDrag(newData);\n };\n\n const onExpand = (expanded: boolean, record: Record<string, any>) => {\n props.onExpand && props.onExpand(expanded, record);\n };\n\n const onExpandedRowsChange = (expandedRows: React.Key[]) => {\n props.onExpandedRowsChange && props.onExpandedRowsChange(expandedRows);\n };\n\n const getCustomExpandIcon = (iconProps: any) => {\n const { record, expandable, expanded, onExpand } = iconProps;\n let icon = props.expandIcon?.collapsedIcon || downMenuIcon;\n let iconNode: React.ReactNode;\n if (expandable) {\n if (!expanded) {\n icon = props.expandIcon?.expandedIcon || rightMenuIcon;\n }\n iconNode = (\n <span\n className=\"expandIconSpan\"\n data-testid=\"expand-icon\"\n onClick={(e) => {\n onExpand(record, e);\n }}\n >\n <WrappedIcon {...(icon as GeneralIconProps)} />\n </span>\n );\n } else {\n iconNode = (\n <span className=\"expandIconSpan\" data-testid=\"expand-icon\">\n <span style={{ visibility: \"hidden\" }}>\n <WrappedIcon {...(icon as GeneralIconProps)} />\n </span>\n </span>\n );\n }\n\n if (iconNode) {\n if (!expandIconAsCell) {\n rowKeyExpandIconMapRef.current.set(\n rowKey ? record[rowKey] : record,\n iconNode\n );\n }\n return iconNode;\n } else {\n return <></>;\n }\n };\n\n const pickExpandProps = pickBy(\n {\n expandIconColumnIndex,\n expandIconAsCell,\n expandRowByClick: props.expandRowByClick,\n expandedRowKeys: props.expandedRowKeys,\n defaultExpandAllRows: props.defaultExpandAllRows,\n },\n (item) => !isNil(item)\n );\n\n let table = (\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n <Table\n className={classNames(\"brickTable\", {\n expandIconCellHidden: !expandIconAsCell,\n customDropTable: props.tableDraggable,\n tableThTransparent: props.thTransparent,\n zebraPatternTable: data?.length >= 2 && props.zebraPattern,\n })}\n dataSource={data}\n {...(props.tableDraggable\n ? {\n components,\n onRow: (record, index) => ({\n index,\n moveRow: moveRow,\n }),\n }\n : {})}\n columns={customColumns}\n onChange={props.onChange}\n {...(props.expandedRowBrick\n ? {\n expandedRowRender,\n }\n : {})}\n {...pickExpandProps}\n onExpand={onExpand}\n showSorterTooltip={false}\n onExpandedRowsChange={onExpandedRowsChange}\n rowKey={rowKey}\n childrenColumnName={childrenColumnName}\n rowClassName={(record, index) => {\n if (record.invalidRow) {\n return \"invalidRow\";\n }\n if (record.disabledRow) {\n return \"disabledRow\";\n }\n return props.zebraPattern && index % 2 ? \"brickTableOddRow\" : \"\";\n }}\n expandIcon={getCustomExpandIcon}\n scroll={scroll}\n showHeader={showHeader}\n {...configProps}\n />\n );\n\n if (props.tableDraggable) {\n table = <DndProvider backend={HTML5Backend}>{table}</DndProvider>;\n }\n\n const cahce = useMemo(() => {\n return createCache();\n }, []);\n\n return (\n <StyleProvider container={props.shadowRoot as ShadowRoot} cache={cahce}>\n {table}\n </StyleProvider>\n );\n}\n","import React from \"react\";\nimport { createDecorators, type EventEmitter } from \"@next-core/element\";\nimport { ReactNextElement } from \"@next-core/react-element\";\nimport styleText from \"./table.shadow.css\";\nimport { ColumnProps, TablePaginationConfig, TableProps } from \"antd/es/table\";\nimport { BrickEventsMap, UseSingleBrickConf } from \"@next-core/types\";\nimport {\n get,\n map,\n set,\n isEmpty,\n merge,\n isNil,\n forEach,\n cloneDeep,\n isArray,\n uniq,\n pullAll,\n every,\n find,\n pull,\n filter,\n flatten,\n keyBy,\n} from \"lodash\";\nimport { getHistory } from \"@next-core/runtime\";\nimport { BrickTable } from \"./BrickTable.js\";\nimport {\n TableRowSelection,\n SorterResult,\n RowSelectionType,\n} from \"antd/lib/table/interface.js\";\nimport {\n compareFunMap,\n getKeysOfData,\n getRowsOfData,\n stripEmptyExpandableChildrenByName,\n} from \"./utils.js\";\nimport type { SortOrder } from \"antd/lib/table/interface.js\";\nimport type { DataIndex } from \"rc-table/lib/interface.js\";\nimport type { SizeType } from \"antd/lib/config-provider/SizeContext.js\";\nimport type { GeneralIconProps } from \"@next-bricks/icons/general-icon\";\nimport \"@next-core/theme\";\n\nconst { defineElement, property, event, method } = createDecorators();\n\nexport interface RowDisabledProps {\n field: string;\n value: any;\n operator:\n | \"$eq\"\n | \"$ne\"\n | \"$lt\"\n | \"$lte\"\n | \"$gt\"\n | \"$gte\"\n | \"$isEqual\"\n | \"$notEqual\"\n | \"$in\"\n | \"$nin\"\n | \"$exists\";\n}\n\nexport interface CellStatusProps {\n dataIndex?: string;\n mapping: Array<{\n leftBorderColor: string;\n value: any;\n }>;\n}\n\nexport interface CustomColumnComponent {\n /** 构件名称 */\n brick: string | any;\n /** 字段值、列表项和 index 对应所用构件的属性的 key */\n fields?: {\n value?: string;\n item?: string;\n index?: string;\n };\n /** 构件属性 */\n properties?: Record<string, any>;\n /** 事件 */\n events?: BrickEventsMap;\n}\n\nexport interface CustomColumn extends ColumnProps<Record<string, any>> {\n /**\n * 支持为某列自定义展示构件\n */\n useBrick?: UseSingleBrickConf;\n /**\n * 字段的值展示时的后缀\n */\n valueSuffix?: string;\n /**\n * 支持为某列的表头自定义展示构件,可通过 DATA.title 获取标题文本\n */\n headerBrick?: {\n useBrick: UseSingleBrickConf;\n };\n /**\n * 在渲染自定义构件的场景下额外设置单元格的状态样式, `dataIndex` 表示取哪一列的字段值作为判断数据,不填的话默认取当前列的字段,`mapping` 表示判断的条件,条件被成功匹配时用当前的样式。目前仅支持单元格 `leftBorderColor` 属性的设置\n */\n cellStatus?: CellStatusProps;\n /**\n * 设置列的每个单元格样式\n */\n cellStyle?: React.CSSProperties;\n /**\n * 单元格内元素的垂直对齐方式\n */\n verticalAlign?: \"top\" | \"bottom\";\n /**\n * 每条记录的控制列合并的值的 key\n */\n colSpanKey?: string;\n /**\n * 每条记录的控制行合并的值的 key\n */\n rowSpanKey?: string;\n /**\n * 自定义筛选菜单\n */\n filterDropdownBrick?: {\n useBrick: UseSingleBrickConf;\n };\n}\n\n/**\n * 通用表格构件\n * @author sailor\n */\n@defineElement(\"eo-table\", {\n styleTexts: [styleText],\n alias: [\"advanced.general-table\"],\n})\nclass TableComponent extends ReactNextElement {\n /**\n * 页码变化,pagePath 可在 fields.page 中设置,默认为 page\n */\n @event({ type: \"page.update\" }) accessor #pageUpdate!: EventEmitter<\n Record<string, number>\n >;\n\n /**\n * 每页条数变化 ,pagePath 可在 fields.page 中设置,pageSizePath 可在 fields.pageSize 中设置,默认为 pageSize\n */\n @event({ type: \"filter.update\" }) accessor #filterUpdate!: EventEmitter<\n Record<string, number>\n >;\n\n /**\n * 勾选框变化,detail 中为所选的行数据\n */\n @event({ type: \"select.update\" }) accessor #selectUpdate!: EventEmitter<\n Record<string, any>[]\n >;\n\n /**\n * 勾选框变化,detail 中为所选的行key集合\n */\n @event({ type: \"select.row.keys.update\" })\n accessor #selectRowKeysUpdate!: EventEmitter<string[]>;\n\n /**\n * 排序变化,detail 中的 sort 为对应排序列的 key/dataIndex,order 为升序/降序\n */\n @event({ type: \"sort.update\", cancelable: true })\n accessor #sortUpdate!: EventEmitter<{\n sort: string;\n order: string | number;\n }>;\n\n /**\n * 点击展开图标时触发的事件,事件详情中`expanded`为是否展开,`record`被点击的行信息\n */\n @event({ type: \"row.expand\" }) accessor #rowExpand!: EventEmitter<{\n expanded: boolean;\n record: Record<string, any>;\n }>;\n\n /**\n * 展开的行变化时触发的事件,事件详情为当前展开的所有行的`rowKey`集合\n */\n @event({ type: \"expand.rows.change\" })\n accessor #expandRowsChange!: EventEmitter<{\n expandedRows: React.Key[];\n }>;\n\n /**\n * 表格行拖拽结束发生的事件,事件详情为拖拽后重新排序的所有行数据\n */\n @event({ type: \"row.drag\" }) accessor #rowDrag!: EventEmitter<{\n data: Record<string, any>[];\n }>;\n\n /**\n * 扩展自 ant-design 的 Column 相关配置项,具体查阅:[Column](https://ant.design/components/table-cn/#Column)\n */\n set columns(value: CustomColumn[]) {\n this._columns = value;\n this._render();\n }\n get columns(): CustomColumn[] {\n return this._columns as CustomColumn[];\n }\n\n /**\n * 数据源,通过 useResolves 从后台接口获取或者直接在 storyboard 中配置\n */\n set dataSource(value: Record<string, any>[]) {\n this._isInSelect = false;\n this._originalDataSource = value;\n this._dataSource = cloneDeep(\n this._fields.dataSource ? get(value, this._fields.dataSource) : value\n );\n // 前端搜索需要保留一个干净的数据\n this._pureSource = cloneDeep(this._dataSource);\n if (this.stripEmptyExpandableChildren) {\n const columnName =\n this.configProps?.expandable?.childrenColumnName || \"children\";\n stripEmptyExpandableChildrenByName(columnName, this._dataSource);\n }\n this.#total = get(value, this._fields.total as string);\n this.page = get(value, \"page\") ?? this.page ?? 1;\n this.pageSize =\n get(value, \"page_size\") ?? get(value, \"pageSize\") ?? this.pageSize ?? 10;\n this._render();\n }\n\n /**\n * 是否显示外层卡片\n */\n @property({\n type: Boolean,\n })\n accessor showCard = true;\n\n /**\n * 表格行是否可选择,具体查阅:[rowSelection](https://ant.design/components/table-cn/#rowSelection)\n */\n @property({\n attribute: false,\n })\n accessor rowSelection: false | TableRowSelection<any> | undefined;\n\n /**\n * 指定每一行的 key,不指定则默认为索引 index。强烈建议设置该属性,否则在某些情况下可能行为不如预期。\n */\n @property()\n accessor rowKey: string | undefined;\n\n /**\n * 隐藏相应列(输入对应的 dataIndex 或者 key 即可)\n */\n @property({\n attribute: false,\n })\n accessor hiddenColumns: Array<string | number> | undefined;\n\n /**\n * 是否显示已选择信息和清除按钮。仅在设置了`rowSelection`时有效。默认不显示\n * @group rowSelection\n */\n @property({\n type: Boolean,\n })\n accessor showSelectInfo = false;\n\n // 表头过滤的 filters\n /**\n * 表头过滤的过滤项,key 为 column 的 dataIndex,value 为过滤值集合。\n * @group paginationAndFilter\n */\n @property({\n attribute: false,\n })\n accessor filters: Record<string, string[]> | undefined;\n\n /**\n * ant-design 的 Table 相关配置项,具体查阅:[Table](https://ant.design/components/table-cn/#Table),其中分页配置和行选择配值在构件中设置了常用的默认配置,也可自行覆盖,具体描述见下表\n * @group other\n */\n @property({\n attribute: false,\n })\n accessor configProps: any;\n\n /**\n * 被排序列的 dataIndex。通常来自于 url 参数,可以设置成 ${QUERY.sort}。\n * @group paginationAndFilter\n */\n @property()\n accessor sort: string | undefined | null;\n\n /**\n * 升序/降序,可以设置成 ${QUERY.order}。\n * @group paginationAndFilter\n */\n @property({\n attribute: false,\n })\n accessor order: string | number | undefined | null;\n\n /**\n * 配置每一行是否禁用,其中 `field` 表示数据源中的字段路径, `value` 表示与其字段比较的值, `operator` 表示两者比较的方法,结果为 `true` 时会禁用当前行, 需要注意的是该配置需要在 `rowSelection: true` 的前提下使用,并且设置 `rowKey` 属性赋予每行唯一的 key,防止顺序变化时造成的错误勾选(如上 demo 所示)\n * @group rowSelection\n */\n @property({\n attribute: false,\n })\n accessor rowDisabledConfig: RowDisabledProps | RowDisabledProps[] | undefined;\n\n // start -- 行展开相关属性\n /**\n * 自定义行展开的构件 [UseBrickConf](/next-docs/docs/api-reference/brick-types.usesinglebrickconf)\n * @group expand\n */\n @property({\n attribute: false,\n })\n accessor expandedRowBrick:\n | {\n useBrick?: UseSingleBrickConf;\n }\n | undefined;\n\n /**\n * 自定义展开图标。\n * @default {collapsedIcon:{lib:'antd',icon:'down',theme:'outlined'},expandedIcon:{lib:'antd',icon:'right',theme:'outlined'}}\n * @group expand\n */\n @property({\n attribute: false,\n })\n accessor expandIcon:\n | {\n collapsedIcon: GeneralIconProps;\n expandedIcon: GeneralIconProps;\n }\n | undefined;\n\n /**\n * 展开的图标是否为一个单元格,默认显示在第一列;设置为 false 的时候,可以通过`expandIconColumnIndex`属性设置展开的图标在哪一列\n * @default true\n * @group expand\n */\n @property({\n attribute: false,\n })\n accessor expandIconAsCell = true;\n\n /**\n * 展开的图标显示在哪一列,如果没有 rowSelection,默认显示在第一列,否则显示在选择框后面。当`expandIconAsCell`为 false 时,该属性生效。\n * @group expand\n */\n @property({\n type: Number,\n })\n accessor expandIconColumnIndex: number | undefined;\n\n /**\n * 通过点击行来展开子行\n * @group expand\n */\n @property({\n type: Boolean,\n })\n accessor expandRowByClick: boolean | undefined;\n\n /**\n * 优化渲染的列(输入对应的 dataIndex),针对配置了 useBrick 的列。当前 antd 在更新 state 的时候,会全量渲染单元格,如果确定某一列在后续操作中不需要重新渲染,例如仅作为展示的单元格,可通过该属性设置以优化性能。注意,在树形表格中,当某一列内包含展开/收起按钮,则不应该设置该列。\n * @group advanced\n */\n @property({\n attribute: false,\n })\n accessor optimizedColumns: Array<string | number> | undefined;\n\n /**\n * 树形数据展示时是否需要去除空数组\n * @group expand\n */\n @property({\n attribute: false,\n })\n accessor stripEmptyExpandableChildren = false;\n\n /**\n * 初始时,是否展开所有行\n * @group expand\n */\n @property({\n type: Boolean,\n })\n accessor defaultExpandAllRows: boolean | undefined;\n\n /**\n * 是否显示省略信息\n * @group basic\n */\n @property({ type: Boolean })\n accessor ellipsisInfo: boolean | undefined;\n\n /**\n * 展开的行的 rowKey\n * @group expand\n */\n @property({\n attribute: false,\n })\n accessor expandedRowKeys: string[] | undefined;\n\n // end -- 行展开相关属性\n\n /**\n * 表格树形数据展示的时候,行选择父节点的时候是否同步勾选/取消勾选所有子节点,并且被同步勾选的子节点不能单独取消。注意,该属性必须设置 `rowKey` 属性。\n * @group expand\n */\n @property({\n type: Boolean,\n })\n accessor selectAllChildren: boolean | undefined;\n\n /**\n * 是否默认选择所有行。注意,该属性必须设置 `rowKey` 属性。\n * @group expand\n */\n @property({\n type: Boolean,\n })\n accessor defaultSelectAll: boolean | undefined;\n\n private _disabledChildrenKeys: React.Key[] = [];\n\n /**\n * 指定树形结构的列名\n * @default children\n * @group expand\n */\n @property({\n attribute: false,\n })\n accessor childrenColumnName = \"children\";\n\n /**\n * 是否支持排序。默认开启,当对应列的sorter设置成true时则可排序。sortable为false时则排序都不生效。\n * @default true\n * @group paginationAndFilter\n */\n @property({\n attribute: false,\n })\n accessor sortable = true;\n\n /**\n * 设置相关字段取自哪里,具体描述见下表\n * @group advanced\n */\n set fields(value: any) {\n this._fields = { ...this._fields, ...value };\n this._render();\n }\n\n /**\n * 是否前端进行搜索,配合`presentational-bricks.brick-input`使用\n * @group paginationAndFilter\n */\n @property({\n type: Boolean,\n })\n accessor frontSearch: boolean | undefined;\n\n /**\n * 前端搜索参数\n * @group paginationAndFilter\n */\n @property()\n accessor frontSearchQuery = \"\";\n\n /**\n * 是否精确搜索\n * @group paginationAndFilter\n */\n @property({\n type: Boolean,\n })\n accessor exactSearch: boolean | undefined;\n\n /**\n * 进行前端搜索的字段,支持嵌套的写法如[\"name\",\"value.a\"],不配置的时候默认为对所有 columns 的 dataIndex[]进行前端搜索\n * @group paginationAndFilter\n */\n @property({\n attribute: false,\n })\n accessor frontSearchFilterKeys: string[] | undefined;\n\n /**\n * 页码。后台搜索的时候一般不需要配置,列表接口返回格式通常为{list:[],page:1,pageSize:10,total:20},即默认取自 page;前台搜索的时候,一般配置成 \"${query.page=1|number}\"\n * @group paginationAndFilter\n */\n @property({\n type: Number,\n })\n accessor page: number | undefined;\n\n /**\n * 页码条数。后台搜索的时候一般不需要配置,列表接口返回格式通常为{list:[],page:1,pageSize:10,total:20},即默认取自 pageSize/page_size;前台搜索的时候,一般配置成 \"${query.pageSize=10|number}\"\n * @group paginationAndFilter\n */\n @property({\n type: Number,\n })\n accessor pageSize: number | undefined;\n\n /**\n * @kind {\n * x?: string | number | true;\n * y?: number | string;\n * } & {\n * scrollToFirstRowOnChange?: boolean;\n * }\n * 表格是否可滚动,也可以指定滚动区域的宽、高,配置项。详见 [scroll](https://ant.design/components/table-cn/#scroll)\n * @required false\n * @default { x: true }\n * @group other\n */\n @property({\n attribute: false,\n })\n accessor scrollConfigs: TableProps<unknown>[\"scroll\"] = { x: true };\n\n /**\n * 把过滤条件更新到 url 时的字段名\n * @default \"q\"\n * @group paginationAndFilter\n */\n @property()\n accessor qField = \"q\";\n\n /**\n * 表格行是否可拖拽,注意,树形数据的表格不支持该功能\n * @group basic\n */\n @property({\n type: Boolean,\n })\n accessor tableDraggable: boolean | undefined;\n\n /**\n * 是否展示斑马纹\n * @group ui\n */\n @property({\n type: Boolean,\n })\n accessor zebraPattern: boolean | undefined;\n\n /**\n * 翻页时是否记住之前选中的项。注意,选中项的rowKey将保存在url中,如果不设置rowKey,该设置不生效。如果选择太多可能会造成url过长,请谨慎使用\n * @group other\n */\n @property({ type: Boolean })\n accessor storeCheckedByUrl: boolean | undefined;\n\n /**\n * 额外的行,通常为跨页勾选时,不在当前页的行\n * @group other\n */\n @property({ attribute: false })\n accessor extraRows: Record<string, unknown>[] = [];\n\n /**\n * 当所有子节点选中时,自动选中父节点\n * @group expand\n */\n @property({ type: Boolean })\n accessor autoSelectParentWhenAllChildrenSelected: boolean | undefined;\n\n /**\n * 表格表头是否透明\n * @group ui\n */\n @property({ type: Boolean })\n accessor thTransparent: boolean | undefined;\n\n /**\n * 是否显示表头\n * @default true\n * @group ui\n */\n @property({\n type: Boolean,\n })\n accessor showHeader = true;\n\n /**\n * 是否显示分页\n * @group paginationAndFilter\n */\n @property({\n attribute: false,\n })\n accessor pagination: false | TablePaginationConfig | undefined;\n\n /**\n * 表格大小(antd原生size)\n * @group ui\n */\n @property()\n accessor size: SizeType;\n\n /**\n * 选框类型(单选/多选)\n * @group rowSelection\n */\n @property({\n attribute: false,\n })\n accessor type: RowSelectionType | undefined;\n\n /**\n * 是否更新 url 参数。设置为否之后,如果是后台进行分页/排序等功能,则需要结合事件进行编排。如果是前台进行分页/排序,则不需要。\n * @default true\n * @group other\n */\n @property({ type: Boolean })\n accessor shouldUpdateUrlParams = true;\n\n /**\n * 更新 url 参数时是否触发页面重新渲染。仅在`shouldUpdateUrlParams`为true时有效。\n * @default true\n * @group other\n */\n @property({\n type: Boolean,\n })\n accessor shouldRenderWhenUrlParamsUpdate = true;\n\n // 对外获取内部 _dataSource 的值\n // istanbul ignore next\n get processedDataSource() {\n return this._dataSource;\n }\n\n // 对外获取内部 _finalConfigProps 的值\n // istanbul ignore next\n get processConfigProps() {\n return this._finalConfigProps;\n }\n\n // 对外获取内部 _columns 的值\n // istanbul ignore next\n get processedColumns() {\n return this.getModifyColumns();\n }\n\n private _originalDataSource: Record<string, any>[] = [];\n private _dataSource: Record<string, any>[] = [];\n private _pureSource: Record<string, any>[] | undefined;\n private _columns: CustomColumn[] | undefined;\n private _finalConfigProps: any = {}; //处理过的配置,主要处理分页和rowSelect\n private _error: any;\n\n #total?: number | undefined;\n\n private _selectUpdateEventName = \"\";\n private _selectUpdateEventDetailKeys: string[] = [];\n private _selectUpdateEventDetailField = \"\";\n private _selectUpdateEventDetailExtra: any = {};\n\n private _fields: {\n dataSource: string; // 指定 dataSource 从哪里来,默认为列表接口返回格式是{list:[],page:1,pageSize:10,total:20},即默认取自 list\n total: string; // 指定 total 从哪里来,默认为列表接口返回格式是{list:[],page:1,pageSize:10,total:20},即默认取自 total\n page: string; // 指定请求后台 page 参数 path\n pageSize: string; // 指定请求后台 pageSize 参数 path\n rowKey?: string; // 指定每一行的 key,不指定则默认为 index\n ascend?: string | number; // 指定 ascend 排序对应字段,例如有些后台对应为 1 ,有些对应为 \"asc\"。这里默认为 \"ascend\"。\n descend?: string | number; // 指定 descend 排序对应字段,例如有些后台对应为 0 ,有些对应为 \"desc\"。这里默认为 \"descend\"。\n order?: number;\n } = {\n page: \"page\",\n pageSize: \"pageSize\",\n dataSource: \"list\",\n total: \"total\",\n ascend: \"ascend\",\n descend: \"descend\",\n };\n\n /**\n * 指定选中项的 key 数组\n * @default []\n * @group rowSelection\n */\n @property({\n attribute: false,\n })\n accessor selectedRowKeys: React.Key[] = [];\n\n private _selected = false;\n private _selectedRow: Record<string, unknown> | undefined;\n private _selectedRows: Record<string, any>[] = [];\n private _allChildren: Record<string, any>[] = [];\n private _isInSelect = false;\n /**\n * 搜索过滤\n */\n @method()\n filterSourceData(event: CustomEvent): void {\n const q = this.exactSearch\n ? event.detail.q.trim()\n : event.detail.q.trim().toLowerCase();\n if (this.shouldUpdateUrlParams) {\n const history = getHistory();\n const urlSearchParams = new URLSearchParams(history.location.search);\n urlSearchParams.set(\"page\", \"1\");\n if (q) {\n urlSearchParams.set(this.qField, q);\n history.push(`?${urlSearchParams}`, { notify: !this.frontSearch });\n } else {\n urlSearchParams.delete(this.qField);\n history.push(`?${urlSearchParams}`, { notify: !this.frontSearch });\n }\n this.page = 1;\n }\n this.frontSearchQuery = q;\n }\n\n handleFrontendDataChange(\n data: Record<string, any>[] = [],\n columns: CustomColumn[] = []\n ): Record<string, any>[] {\n if (this.shouldUpdateUrlParams) {\n const history = getHistory();\n const urlSearchParams = new URLSearchParams(history.location.search);\n this.frontSearchQuery = urlSearchParams.get(this.qField) as string;\n }\n let tempDataSource: Record<string, any>[] = [];\n tempDataSource = this.handleFrontendFilterSource(\n data,\n this.frontSearchQuery || \"\",\n columns\n );\n const order = isNil(this.order)\n ? null\n : this._fields.ascend === this.order\n ? \"ascend\"\n : \"descend\";\n tempDataSource = this.handleFrontendSorter(tempDataSource, {\n columnKey: this.sort as string,\n order,\n });\n tempDataSource = this.handleFrontendFilters(tempDataSource);\n this.#total = tempDataSource.length;\n return tempDataSource;\n }\n\n // 前端过滤\n handleFrontendFilterSource(\n data: Record<string, any>[],\n q: string,\n columns: CustomColumn[],\n filterKeys?: DataIndex[]\n ): Record<string, any>[] {\n if (!q) {\n return data;\n }\n\n const dataSource: Record<string, any>[] = [];\n\n if (!filterKeys) {\n filterKeys = (this.frontSearchFilterKeys ||\n columns.map((column) => column.dataIndex)) as DataIndex[];\n }\n\n data.forEach((item) => {\n const children = item[this.childrenColumnName];\n\n if (children) {\n const filteredChildren = this.handleFrontendFilterSource(\n children,\n q,\n columns,\n filterKeys\n );\n\n if (filteredChildren.length > 0) {\n dataSource.push({\n ...item,\n [this.childrenColumnName]: filteredChildren,\n });\n return;\n }\n }\n\n const valid = filterKeys?.some((key) => {\n const value = get(item, key);\n if (isNil(value)) {\n return false;\n }\n if (this.exactSearch) {\n return value === q;\n }\n return JSON.stringify(value).toLowerCase().includes(q);\n });\n\n if (valid) {\n dataSource.push(item);\n }\n });\n return dataSource;\n }\n\n private _getRowKey = (): string =>\n this.rowKey ?? this._fields.rowKey ?? this.configProps?.rowKey ?? \"key\";\n\n private _findParentByChildKeyValue = (\n value: string,\n rowKey: string,\n list: Record<string, unknown>[],\n parent?: Record<string, unknown>\n ): Record<string, unknown> | undefined => {\n let matchedParent: Record<string, unknown> | undefined;\n\n list.some((item) => {\n if (item[rowKey] === value) {\n matchedParent = parent;\n } else {\n const children = item[this.childrenColumnName] as Record<\n string,\n unknown\n >[];\n\n if (children) {\n matchedParent = this._findParentByChildKeyValue(\n value,\n rowKey,\n children,\n item\n );\n }\n }\n\n return matchedParent ? true : false;\n });\n\n return matchedParent;\n };\n\n // istanbul ignore next\n private _handleRowSelectChange = (\n selectedRowKeys: string[],\n selectedRows: any[]\n ): void => {\n const rowKey = this._getRowKey();\n const rowKeyRowMap = keyBy(selectedRows, rowKey);\n if (this._selected) {\n const _selectedRowKeys = [...selectedRowKeys];\n this._allChildren.forEach((child) => {\n const rowKeyValue = child[rowKey];\n _selectedRowKeys.push(rowKeyValue);\n rowKeyRowMap[rowKeyValue] = child;\n });\n if (this.autoSelectParentWhenAllChildrenSelected && this._selectedRow) {\n const selectedRowKeySet = new Set(selectedRowKeys);\n const parent = this._findParentByChildKeyValue(\n this._selectedRow[rowKey] as string,\n rowKey,\n this._dataSource as Record<string, unknown>[]\n );\n\n if (\n parent &&\n (parent[this.childrenColumnName] as Record<string, unknown>[]).every(\n (item) => selectedRowKeySet.has(item[rowKey] as string)\n )\n ) {\n const rowKeyValue = parent[rowKey] as string;\n _selectedRowKeys.push(rowKeyValue);\n rowKeyRowMap[rowKeyValue] = parent;\n }\n }\n this.selectedRowKeys = uniq(_selectedRowKeys);\n } else {\n let parent: Record<string, unknown> | undefined;\n\n if (this.autoSelectParentWhenAllChildrenSelected && this._selectedRow) {\n parent = this._findParentByChildKeyValue(\n this._selectedRow[rowKey] as string,\n rowKey,\n this._dataSource as Record<string, unknown>[]\n );\n }\n this.selectedRowKeys = pullAll(\n selectedRowKeys,\n map(\n this._allChildren.concat(\n parent as unknown as Record<string, unknown>[]\n ),\n rowKey\n )\n );\n }\n this._selectedRow = undefined;\n const extraRowKeyRowMap = keyBy(this.extraRows, rowKey);\n this._selectedRows = this.selectedRowKeys.map(\n (key) => rowKeyRowMap[key] || extraRowKeyRowMap[key]\n );\n\n let detail = null;\n const data = isEmpty(this._selectUpdateEventDetailField)\n ? this._selectedRows\n : map(this._selectedRows, (row) =>\n get(row, this._selectUpdateEventDetailField)\n );\n detail =\n isEmpty(this._selectUpdateEventDetailKeys) || isEmpty(data)\n ? data\n : set({}, this._selectUpdateEventDetailKeys, data);\n if (!isEmpty(detail)) {\n detail = merge(detail, this._selectUpdateEventDetailExtra);\n }\n if (!this._selectUpdateEventName) {\n this.#selectUpdate.emit(detail);\n } else {\n this.dispatchEvent(\n new CustomEvent(this._selectUpdateEventName, { detail })\n );\n }\n this.#selectRowKeysUpdate.emit(selectedRowKeys);\n };\n\n // istanbul ignore next\n private _getSelectedRowsWithChildren = (\n row: Record<string, any>\n ): Record<string, any>[] => {\n const result: Record<string, any>[] = [];\n if (\n !isEmpty(row[this.childrenColumnName]) &&\n isArray(row[this.childrenColumnName])\n ) {\n forEach(row[this.childrenColumnName], (item) => {\n result.push(item);\n result.push(...this._getSelectedRowsWithChildren(item));\n });\n }\n return result;\n };\n\n // istanbul ignore next\n private _handleOnSelect = (\n row: Record<string, any>,\n checked: boolean,\n selectedRows: Record<string, any>[]\n ): void => {\n this._selected = checked;\n this._selectedRow = row;\n this._isInSelect = true;\n const rowKey = this._getRowKey();\n const allChildren = this.selectAllChildren\n ? this._getSelectedRowsWithChildren(row)\n : [];\n\n this._allChildren = allChildren;\n if (!this.autoSelectParentWhenAllChildrenSelected) {\n if (checked) {\n this._disabledChildrenKeys = uniq([\n ...this._disabledChildrenKeys,\n ...map(allChildren, rowKey),\n ]);\n } else {\n this._disabledChildrenKeys = pullAll(this._disabledChildrenKeys, [\n ...map(allChildren, rowKey),\n ]);\n }\n }\n if (this.storeCheckedByUrl && !!rowKey) {\n this._updateUrlChecked([row[rowKey]], checked);\n }\n };\n\n // istanbul ignore next\n private _handleSelectAll = (\n selected: boolean,\n selectedRows: Record<string, any>[],\n changeRows: Record<string, any>[]\n ): void => {\n this._selected = selected;\n this._isInSelect = true;\n const rowKey = this._getRowKey();\n if (this.selectAllChildren) {\n const allParentKeys = map(this._dataSource, rowKey);\n const changedParentRows = changeRows.filter((v) =>\n allParentKeys.includes(v[rowKey])\n );\n const toChangedChildrenKeys = flatten(\n map(changedParentRows, (r) =>\n map(this._getSelectedRowsWithChildren(r), (cr) => cr[rowKey])\n )\n );\n const allChildren = flatten(\n map(changedParentRows, (r) =>\n map(this._getSelectedRowsWithChildren(r), (cr) => cr)\n )\n );\n this._allChildren = allChildren;\n\n if (!this.autoSelectParentWhenAllChildrenSelected) {\n if (selected) {\n this._disabledChildrenKeys = uniq(\n this._disabledChildrenKeys.concat(toChangedChildrenKeys)\n );\n } else {\n // disabled children in changeRows should be removed\n this._disabledChildrenKeys = this._disabledChildrenKeys.filter(\n (v) => !toChangedChildrenKeys.includes(v)\n );\n }\n }\n }\n if (this.storeCheckedByUrl && !!rowKey) {\n this._updateUrlChecked(map(changeRows, rowKey), selected);\n }\n };\n\n private _getCheckedFromUrl = () => {\n const history = getHistory();\n const urlSearchParams = new URLSearchParams(history.location.search);\n const checked = urlSearchParams.get(\"checked\");\n return isEmpty(checked) ? [] : (checked as string).split(\",\");\n };\n\n private _updateUrlChecked = (options: any[], checked: boolean) => {\n const history = getHistory();\n let checkedOptions: string[] = this._getCheckedFromUrl();\n if (checked) {\n checkedOptions = [...checkedOptions, ...options];\n } else {\n pull(checkedOptions, ...options);\n }\n if (this.shouldUpdateUrlParams) {\n history.pushQuery(\n { checked: checkedOptions.join(\",\") },\n { notify: false }\n );\n }\n };\n private _handleOnChange = (\n pagination: TablePaginationConfig,\n filters: Record<string, string[]>,\n sorter: SorterResult<Record<string, any>>\n ): void => {\n const history = getHistory();\n const urlSearchParams = new URLSearchParams(history.location.search);\n // 分页\n if (!isEmpty(pagination)) {\n if (pagination.pageSize !== this.pageSize) {\n pagination.current = 1;\n urlSearchParams.set(\"page\", \"1\");\n urlSearchParams.set(\n \"pageSize\",\n (pagination?.pageSize as number).toString()\n );\n this.#filterUpdate.emit({\n [this._fields.pageSize]: pagination.pageSize as number,\n [this._fields.page]: 1,\n });\n this.page = 1;\n this.pageSize = pagination.pageSize;\n } else if (pagination.current !== this.page) {\n const newPage = pagination.current || 1;\n urlSearchParams.set(\"page\", newPage.toString());\n this.#pageUpdate.emit({\n [this._fields.page]: newPage, // 可配置的 path\n });\n this.page = newPage;\n }\n }\n this.filters = filters;\n // 过滤\n if (!isEmpty(filters)) {\n forEach(filters, (value: any, key) => {\n isNil(value) || value.length === 0\n ? urlSearchParams.delete(key)\n : urlSearchParams.set(key, value);\n });\n }\n // 排序: 切换分页和页码的时候不应该触发sort.update事件 排序触发/取消的时候,order的类型 'descend' | 'ascend' | null,没触发是false\n if (\n sorter.order &&\n isNil(sorter.order) &&\n (sorter.columnKey !== this.sort ||\n this._fields[sorter.order] !== this.order)\n ) {\n if (sorter.columnKey && sorter.order) {\n urlSearchParams.set(\"sort\", sorter.columnKey as string);\n urlSearchParams.set(\n \"order\",\n (this._fields[sorter.order] as number).toString()\n );\n this.sort = sorter.columnKey as string;\n this.order = this._fields[sorter.order];\n } else {\n urlSearchParams.delete(\"sort\");\n urlSearchParams.delete(\"order\");\n this.sort = null;\n this.order = null;\n }\n this.#sortUpdate.emit({\n sort: this.sort as string,\n order: this.order as unknown as string,\n });\n }\n if (this.frontSearch) {\n if (this.shouldUpdateUrlParams) {\n history.push(`?${urlSearchParams}`, { notify: false });\n }\n this.frontendSearch(pagination, filters, sorter);\n } else {\n if (this.shouldUpdateUrlParams) {\n history.push(`?${urlSearchParams}`, {\n notify: !!this.shouldRenderWhenUrlParamsUpdate,\n });\n }\n }\n };\n\n // istanbul ignore next\n private renderSelectInfo = () => {\n // eslint-disable-next-line react/display-name\n return (\n <span style={{ marginLeft: 20 }}>\n <span>已选择{this.selectedRowKeys.length}项</span>\n <a\n role=\"button\"\n style={{ marginLeft: \"10px\" }}\n onClick={() => {\n this.selectedRowKeys = [];\n this._selectedRows = [];\n this._disabledChildrenKeys = [];\n this._allChildren = [];\n if (!this._selectUpdateEventName) {\n this.#selectUpdate.emit([]);\n } else {\n this.dispatchEvent(\n new CustomEvent(this._selectUpdateEventName, { detail: [] })\n );\n }\n }}\n >\n 清空\n </a>\n </span>\n );\n };\n\n // 对前端搜索数据进行排序\n private handleFrontendSorter(\n dataSource: Record<string, any>[],\n sorter: Partial<SorterResult<Record<string, any>>>\n ): Record<string, any>[] {\n const tempDataSource: Record<string, any>[] = dataSource || [];\n const { columnKey, order } = sorter;\n\n if (!columnKey || !order) {\n return dataSource;\n }\n\n let direction: 1 | -1 = 1;\n\n if (order === \"descend\") {\n direction = -1;\n } else if (order === \"ascend\") {\n direction = 1;\n }\n\n if (direction !== undefined) {\n tempDataSource.sort((a, b) => {\n const aValue = get(a, columnKey);\n const bValue = get(b, columnKey);\n\n if (isNil(aValue)) {\n if (!isNil(bValue)) {\n return 1;\n }\n } else {\n if (isNil(bValue)) {\n return -1;\n }\n }\n\n if (aValue == bValue) {\n return 0;\n }\n\n if (aValue > bValue) {\n return direction;\n }\n\n return -direction;\n });\n tempDataSource.forEach((item) => {\n const children = item[this.childrenColumnName];\n\n if (children) {\n this.handleFrontendSorter(children, sorter);\n }\n });\n }\n\n return tempDataSource;\n }\n\n // 对前端搜索数据进行表头筛选项过滤\n private handleFrontendFilters(\n dataSource: Record<string, any>[]\n ): Record<string, any>[] {\n let tempDataSource: Record<string, any>[] = dataSource || [];\n const filtersArray = map(this.filters, (item, k) => ({\n key: k,\n value: item,\n })).filter((item) => !isNil(item.value) && item.value.length !== 0);\n tempDataSource = tempDataSource.filter((item) => {\n return every(filtersArray, (filter) => {\n return filter.value?.includes(get(item, filter.key)) ?? true;\n });\n });\n return tempDataSource;\n }\n\n // istanbul ignore next\n private frontendSearch(\n pagination: TablePaginationConfig,\n filters: Record<string, string[]>,\n sorter: SorterResult<Record<string, any>>\n ): void {\n this.sort = isNil(sorter.order) ? null : (sorter.columnKey as string);\n this.order = isNil(sorter.order) ? null : this._fields[sorter.order];\n }\n\n // 点击展开图标时触发的事件\n // istanbul ignore next\n private _handleOnExpand = (\n expanded: boolean,\n record: Record<string, any>\n ): void => {\n if (this.expandedRowKeys) {\n const rowKey = this._getRowKey();\n const pullKeys: string[] = [get(record, rowKey)];\n const recordChildren = get(record, this.childrenColumnName);\n if (!isEmpty(recordChildren)) {\n const keysToPull = map(\n filter(recordChildren, (c) =>\n isEmpty(get(c, this.childrenColumnName))\n ),\n rowKey\n );\n pullKeys.push(...keysToPull);\n }\n this.expandedRowKeys = expanded\n ? [...this.expandedRowKeys, ...pullKeys]\n : pull(this.expandedRowKeys, ...pullKeys);\n this._render();\n }\n this.#rowExpand.emit({\n expanded,\n record,\n });\n };\n\n // 展开的行变化时触发的事件\n // istanbul ignore next\n private _handleOnExpandedRowsChange = (expandedRows: React.Key[]): void => {\n this.#expandRowsChange.emit({\n expandedRows,\n });\n };\n\n // 拖拽排序后触发的事件\n // istanbul ignore next\n private _handleOnDrag = (data: Record<string, any>[]): void => {\n this.#rowDrag.emit({\n data,\n });\n };\n\n /**\n * 展开所有行\n */\n @method()\n expandAll() {\n const allKeys: string[] = [];\n const rowKey = this._getRowKey();\n if (this._dataSource)\n getKeysOfData(this._dataSource, rowKey, this.childrenColumnName, allKeys);\n this.expandedRowKeys = allKeys;\n }\n\n getModifyColumns(): CustomColumn[] {\n let columns = this._columns;\n if (this._columns && this.hiddenColumns) {\n columns = this._columns.filter((column) => {\n return !this.hiddenColumns?.includes(\n (column.dataIndex as string) ?? column.key\n );\n });\n }\n if (this.sortable === false) {\n columns = map(columns, (column) => {\n column.sorter = false;\n return column;\n });\n }\n return columns as CustomColumn[];\n }\n\n render() {\n // 前端搜索的参数处理\n if (this.frontSearch) {\n this._dataSource = this.handleFrontendDataChange(\n this._pureSource,\n this._columns\n );\n }\n this._initConfigProps();\n return (\n // https://github.com/ant-design/ant-design/issues/38911\n <BrickTable\n shadowRoot={this.shadowRoot}\n dataSource={this._dataSource || []}\n columns={this.getModifyColumns()}\n configProps={this._finalConfigProps}\n error={this._error}\n onChange={this._handleOnChange}\n showCard={this.showCard}\n showHeader={this.showHeader}\n expandedRowBrick={this.expandedRowBrick}\n expandIconAsCell={this.expandIconAsCell}\n expandIconColumnIndex={this.expandIconColumnIndex}\n expandRowByClick={this.expandRowByClick}\n defaultExpandAllRows={this.defaultExpandAllRows}\n onExpand={this._handleOnExpand}\n onExpandedRowsChange={this._handleOnExpandedRowsChange}\n expandedRowKeys={this.expandedRowKeys}\n rowKey={this._getRowKey()}\n childrenColumnName={this.childrenColumnName}\n tableDraggable={this.tableDraggable || this.draggable}\n onDrag={this._handleOnDrag}\n zebraPattern={this.zebraPattern}\n expandIcon={this.expandIcon}\n scroll={this.scrollConfigs}\n optimizedColumns={this.optimizedColumns}\n ellipsisInfo={this.ellipsisInfo}\n thTransparent={this.thTransparent}\n />\n );\n }\n\n // istanbul ignore next\n private _getAllRows = (): Record<string, any>[] => {\n const allRows: Record<string, any>[] = [];\n getRowsOfData(this._dataSource, this.childrenColumnName, allRows);\n return allRows;\n };\n\n // istanbul ignore next\n private _handleDefaultSelectAll = () => {\n this._isInSelect = true;\n const rowKey = this._getRowKey();\n this._selectedRows = this._getAllRows();\n this.selectedRowKeys = map(this._selectedRows, rowKey);\n return this.selectedRowKeys;\n };\n\n private _initConfigProps = () => {\n // 默认分页配置\n const defaultPagination: TablePaginationConfig = {\n current: this.page,\n pageSize: this.pageSize,\n total: this.#total,\n showSizeChanger: true,\n pageSizeOptions: [\"10\", \"20\", \"50\"],\n // eslint-disable-next-line react/display-name\n showTotal: (totals) => (\n <>\n <span className=\"totalText\">\n 共 <strong className=\"total\">{totals}</strong> 条\n </span>\n {(this.configProps?.rowSelection || this.rowSelection) &&\n this.showSelectInfo &&\n this.selectedRowKeys.length !== 0 &&\n this.renderSelectInfo()}\n </>\n ),\n };\n\n const rowKey = this._getRowKey();\n let rowDisabledConfig: RowDisabledProps[];\n\n if (this.rowDisabledConfig) {\n rowDisabledConfig = Array.isArray(this.rowDisabledConfig)\n ? this.rowDisabledConfig\n : [this.rowDisabledConfig];\n }\n\n // 当 rowSelection 为 true 或者有相关配置的时候的默认行选择配置\n const defaultRowSelection: TableRowSelection<any> = {\n ...(rowKey\n ? ({\n selectedRowKeys: this._isInSelect\n ? this.selectedRowKeys\n : this.storeCheckedByUrl\n ? this._getCheckedFromUrl()\n : this.defaultSelectAll\n ? this._handleDefaultSelectAll()\n : this.selectedRowKeys,\n onSelect: this._handleOnSelect,\n onSelectAll: this._handleSelectAll,\n onChange: this._handleRowSelectChange,\n preserveSelectedRowKeys: true,\n } as any)\n : {\n // 当用户没有设置rowKey时的兼容处理\n onChange: this._handleRowSelectChange,\n preserveSelectedRowKeys: true,\n }),\n getCheckboxProps: (record: any) => {\n if (\n !isEmpty(this._disabledChildrenKeys) &&\n this._disabledChildrenKeys.includes(get(record, rowKey))\n ) {\n return {\n disabled: true,\n };\n }\n if (!rowDisabledConfig) return {};\n\n return {\n disabled: rowDisabledConfig.some((config) => {\n const { field, value, operator } = config;\n const fun = compareFunMap[operator];\n\n return fun?.(value, get(record, field));\n }),\n };\n },\n };\n if (this.configProps) {\n this._finalConfigProps = cloneDeep(this.configProps);\n if (this.configProps.pagination !== false) {\n this._finalConfigProps.pagination = {\n ...defaultPagination,\n ...this.pagination,\n ...this.configProps.pagination,\n };\n if (\n (this.configProps.pagination === undefined ||\n this.configProps.pagination === null) &&\n this.pagination === false\n ) {\n this._finalConfigProps.pagination = false;\n }\n }\n if (!this.configProps.size) {\n this._finalConfigProps.size = this.size;\n }\n } else {\n this._finalConfigProps = {};\n this._finalConfigProps.pagination =\n this.pagination !== false ? defaultPagination : false;\n this._finalConfigProps.size = this.size;\n }\n const rowSelec = this.configProps?.rowSelection ?? this.rowSelection;\n if (rowSelec) {\n if (rowSelec === true) {\n this._finalConfigProps.rowSelection = {\n ...defaultRowSelection,\n type: this.type ?? \"checkbox\",\n };\n } else {\n this._finalConfigProps.rowSelection = {\n ...defaultRowSelection,\n type: this.type ?? \"checkbox\",\n ...rowSelec,\n ...(defaultRowSelection.selectedRowKeys\n ? { selectedRowKeys: defaultRowSelection.selectedRowKeys }\n : {}),\n };\n }\n } else if (this.type) {\n this._finalConfigProps.rowSelection = {\n ...defaultRowSelection,\n type: this.type,\n };\n } else {\n this._finalConfigProps.rowSelection = false;\n }\n\n // 初始化列排序\n if (this._columns) {\n this._columns = this._columns.map((item) => {\n if (isNil(item.key)) {\n item.key = item.dataIndex as string;\n }\n if (item.sorter) {\n item.sortOrder = (this.sort === item.key &&\n !isNil(this.order) &&\n (this._fields.ascend === this.order\n ? \"ascend\"\n : \"descend\")) as SortOrder;\n }\n // 初始化表头过滤值\n if (item.filters) {\n const history = getHistory();\n const urlSearchParams = new URLSearchParams(history.location.search);\n const filteredValue =\n urlSearchParams.get(item.key as string) ??\n get(this.filters, item.key)?.join(\",\");\n if (!isNil(filteredValue) && !isEmpty(filteredValue)) {\n item.filtered = true;\n item.filteredValue = filteredValue\n .split(\",\")\n .map(\n (v: any) =>\n find(item.filters, (f) => String(f.value) === v)?.value ?? v\n );\n } else {\n item.filtered = false;\n item.filteredValue = [];\n }\n }\n return item;\n });\n }\n };\n\n _test_only_getOriginalDataSource(): Record<string, any>[] {\n return this._originalDataSource;\n }\n\n updateData(event: CustomEvent): void {\n this._dataSource = event.detail;\n this._error = null;\n this._render();\n }\n\n updateError(event: CustomEvent): void {\n this._error = event.detail;\n this._render();\n }\n\n set selectUpdateEventName(value: string) {\n this._selectUpdateEventName = value;\n }\n\n set selectUpdateEventDetailKeys(value: string[]) {\n this._selectUpdateEventDetailKeys = value;\n }\n\n set selectUpdateEventDetailField(value: string) {\n this._selectUpdateEventDetailField = value;\n }\n\n set selectUpdateEventDetailExtra(value: any) {\n this._selectUpdateEventDetailExtra = value;\n }\n}\n\nexport { TableComponent };\n","import React, { CSSProperties, useMemo } from \"react\";\nimport { EventEmitter, createDecorators } from \"@next-core/element\";\nimport { ReactNextElement, wrapBrick } from \"@next-core/react-element\";\nimport type {\n GeneralIcon,\n GeneralIconProps,\n} from \"@next-bricks/icons/general-icon\";\nimport { Cascader } from \"antd\";\nimport {\n CascaderProps as AntdCascaderProps,\n DefaultOptionType,\n} from \"antd/lib/cascader\";\nimport { StyleProvider, createCache } from \"@ant-design/cssinjs\";\n\nconst { defineElement, property, event } = createDecorators();\n\nconst WrappedIcon = wrapBrick<GeneralIcon, GeneralIconProps>(\"eo-icon\");\n\nexport interface CascaderProps\n extends Pick<\n AntdCascaderProps,\n \"options\" | \"fieldNames\" | \"value\" | \"expandTrigger\" | \"size\"\n > {\n shadowRoot: ShadowRoot | null;\n multiple?: boolean;\n placeholder?: string;\n disabled?: boolean;\n allowClear?: boolean;\n showSearch?: boolean;\n limit?: number;\n suffixIcon?: GeneralIconProps;\n popupPlacement?: AntdCascaderProps[\"placement\"];\n cascaderStyle?: CSSProperties;\n maxTagCount?: number | \"responsive\";\n onChange?: (\n value: AntdCascaderProps[\"value\"],\n selectedOptions: DefaultOptionType[] | DefaultOptionType[][]\n ) => void;\n}\n\n/**\n * 级联选择器\n * @author nlicroshan\n */\n@defineElement(\"eo-cascader\", {\n alias: [\"advanced.general-cascader\"],\n})\nclass CascaderBrick extends ReactNextElement implements CascaderProps {\n @property({\n attribute: false,\n })\n accessor options: AntdCascaderProps[\"options\"];\n\n @property({\n attribute: false,\n })\n accessor fieldNames: AntdCascaderProps[\"fieldNames\"] = {\n label: \"label\",\n value: \"value\",\n children: \"children\",\n };\n\n @property({\n attribute: false,\n })\n accessor value: AntdCascaderProps[\"value\"];\n\n @property()\n accessor placeholder: string | undefined;\n\n @property({\n type: Boolean,\n })\n accessor multiple: boolean | undefined;\n\n @property({\n type: Boolean,\n })\n accessor disabled: boolean | undefined;\n\n @property({\n type: Boolean,\n })\n accessor allowClear: boolean | undefined = true;\n\n @property({\n type: Boolean,\n })\n accessor showSearch: boolean | undefined = true;\n\n @property({\n attribute: false,\n })\n accessor suffixIcon: GeneralIconProps | undefined;\n\n @property()\n accessor expandTrigger: AntdCascaderProps[\"expandTrigger\"] = \"click\";\n\n @property()\n accessor popupPlacement: AntdCascaderProps[\"placement\"] = \"bottomLeft\";\n\n @property()\n accessor size: AntdCascaderProps[\"size\"];\n\n @property({\n type: Number,\n })\n accessor limit: number | undefined = 50;\n\n @property({\n attribute: false,\n })\n accessor maxTagCount: number | \"responsive\" | undefined;\n\n @property({\n attribute: false,\n })\n accessor cascaderStyle: CSSProperties | undefined;\n\n /**\n * @detail { value: AntdCascaderProps[\"value\"], selectedOptions: DefaultOptionType[] | DefaultOptionType[][] }\n * @description 级联选择项输入变化时触发,value 为选择的值,selectedOptions 为选择的值所对应的 options\n */\n @event({ type: \"cascader.change\" })\n accessor #changeEvent!: EventEmitter<{\n value: AntdCascaderProps[\"value\"];\n selectedOptions: DefaultOptionType[] | DefaultOptionType[][];\n }>;\n\n #handleOnChange = (\n value: AntdCascaderProps[\"value\"],\n selectedOptions: DefaultOptionType[] | DefaultOptionType[][]\n ): void => {\n this.value = value;\n Promise.resolve().then(() => {\n this.#changeEvent.emit({ value, selectedOptions });\n });\n };\n\n render() {\n return (\n <CascaderElement\n shadowRoot={this.shadowRoot}\n options={this.options}\n fieldNames={this.fieldNames}\n value={this.value}\n multiple={this.multiple}\n placeholder={this.placeholder}\n disabled={this.disabled}\n allowClear={this.allowClear}\n showSearch={this.showSearch}\n expandTrigger={this.expandTrigger}\n suffixIcon={this.suffixIcon}\n size={this.size}\n limit={this.limit}\n popupPlacement={this.popupPlacement}\n maxTagCount={this.maxTagCount}\n cascaderStyle={this.cascaderStyle}\n onChange={this.#handleOnChange}\n />\n );\n }\n}\n\nfunction CascaderElement(props: CascaderProps): React.ReactElement {\n const {\n shadowRoot,\n options,\n fieldNames,\n value,\n placeholder,\n disabled,\n multiple,\n allowClear,\n showSearch,\n expandTrigger,\n size,\n limit,\n popupPlacement,\n cascaderStyle,\n suffixIcon,\n maxTagCount,\n onChange,\n } = props;\n\n const cache = useMemo(() => {\n return createCache();\n }, []);\n\n const filter = (inputValue: string, path: DefaultOptionType[]): boolean => {\n const label = fieldNames?.label || \"label\";\n const filterValues = inputValue\n .split(\" \")\n .filter((item) => item)\n .map((item) => item.toLocaleLowerCase());\n for (let j = 0; j < filterValues.length; j++) {\n if (\n !path.some((option) =>\n (option[label] as string).toLowerCase().includes(filterValues[j])\n )\n ) {\n return false;\n }\n }\n return true;\n };\n\n return (\n <StyleProvider container={shadowRoot as ShadowRoot} cache={cache}>\n <Cascader\n getPopupContainer={(trigger) => trigger.parentElement}\n allowClear={allowClear}\n disabled={disabled}\n multiple={multiple}\n expandTrigger={expandTrigger}\n fieldNames={fieldNames}\n placeholder={placeholder}\n size={size}\n showSearch={showSearch && { limit, filter }}\n placement={popupPlacement}\n style={cascaderStyle}\n suffixIcon={suffixIcon && <WrappedIcon {...suffixIcon} />}\n maxTagCount={maxTagCount}\n value={value}\n options={options}\n onChange={(\n value: AntdCascaderProps[\"value\"],\n selectedOptions: DefaultOptionType[] | DefaultOptionType[][]\n ) => onChange?.(value, selectedOptions)}\n />\n </StyleProvider>\n );\n}\n\nexport { CascaderBrick };\n","export enum K {\n TOTAL = \"TOTAL\",\n SELECT_INFO = \"SELECT_INFO\",\n CLEAR = \"CLEAR\",\n}\n\nconst en: Locale = {\n TOTAL: \"Total <el>{{ total }}</el> Items\",\n SELECT_INFO: \"{{ count }} item selected\",\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n SELECT_INFO_plural: \"{{ count }} items selected\",\n CLEAR: \"Clear\",\n};\n\nconst zh: Locale = {\n TOTAL: \"共 <el>{{ total }}</el> 条\",\n SELECT_INFO: \"已选择 {{ count }} 项\",\n CLEAR: \"清空\",\n};\n\nexport const NS = \"bricks/advanced/eo-next-table\";\n\nexport const locales = { en, zh };\n\ntype Locale = { [key in K]: string };\n","import { isNil } from \"lodash\";\n\nexport const DEFAULT_PAGE_SIZE = 20;\nexport const DEFAULT_PAGE = 1;\n\nexport const defaultPaginationConfig = {\n showSizeChanger: true,\n showTotal: true,\n};\n\nexport const defaultRowSelectionConfig = {\n preserveSelectedRowKeys: true,\n showSelectInfo: true,\n};\n\nexport function getSearchKeywords(value: unknown): string[] {\n const result = [];\n if (isNil(value)) {\n // do nothing\n } else if (Array.isArray(value)) {\n value.map((v) => result.push(getSearchKeywords(v)));\n } else if (Object.prototype.toString.call(value) === \"[object Object]\") {\n for (const k in value as Record<string, any>) {\n result.push(\n String(k),\n getSearchKeywords((value as Record<string, any>)[k])\n );\n }\n } else {\n // string, number, bigint, boolean...\n result.push(String(value));\n }\n\n return result.flat(Infinity).filter(Boolean) as string[];\n}\n","import React, {\n Ref,\n forwardRef,\n useEffect,\n useImperativeHandle,\n useMemo,\n useState,\n} from \"react\";\nimport {\n Column,\n RecordType,\n DataSource,\n PaginationType,\n RowSelectionType,\n} from \"./interface.js\";\nimport { Table, ConfigProvider, theme } from \"antd\";\nimport { StyleProvider, createCache } from \"@ant-design/cssinjs\";\nimport {\n ReactUseMultipleBricks,\n useCurrentTheme,\n} from \"@next-core/react-runtime\";\nimport { ColumnTitleProps, RowSelectMethod } from \"antd/es/table/interface.js\";\nimport { useTranslation, initializeReactI18n } from \"@next-core/i18n/react\";\nimport { Trans } from \"react-i18next\";\nimport { K, NS, locales } from \"./i18n.js\";\nimport {\n DEFAULT_PAGE,\n DEFAULT_PAGE_SIZE,\n defaultPaginationConfig,\n defaultRowSelectionConfig,\n getSearchKeywords,\n} from \"./utils.js\";\nimport { get, isNil } from \"lodash\";\nimport { wrapBrick } from \"@next-core/react-element\";\nimport type { Link, LinkProps } from \"@next-bricks/basic/link\";\n\ninitializeReactI18n(NS, locales);\n\nconst WrappedLink = wrapBrick<Link, LinkProps>(\"eo-link\");\n\ninterface NextTableComponentProps {\n shadowRoot: ShadowRoot | null;\n rowKey?: string;\n columns?: Column[];\n dataSource?: DataSource;\n pagination?: PaginationType;\n rowSelection?: RowSelectionType;\n selectedRowKeys?: (string | number)[];\n hiddenColumns?: (string | number)[];\n searchFields?: (string | string[])[];\n onPageChange?: (detail: { page: number; pageSize: number }) => void;\n onPageSizeChange?: (detail: { page: number; pageSize: number }) => void;\n onRowSelect?: (detail: {\n keys: (string | number)[];\n rows: RecordType[];\n info: { type: RowSelectMethod };\n }) => void;\n}\n\nexport interface NextTableComponentRef {\n search: (params: { q: string }) => void;\n}\n\nexport const NextTableComponent = forwardRef(function LegacyNextTableComponent(\n props: NextTableComponentProps,\n ref: Ref<NextTableComponentRef>\n) {\n const {\n shadowRoot,\n rowKey,\n columns,\n dataSource,\n pagination,\n rowSelection,\n hiddenColumns,\n searchFields,\n onPageChange,\n onPageSizeChange,\n onRowSelect,\n } = props;\n\n const { t } = useTranslation(NS);\n const styleCache = useMemo(() => {\n return createCache();\n }, []);\n const currentTheme = useCurrentTheme();\n\n const [list, setList] = useState<RecordType[] | undefined>(dataSource?.list);\n const [{ page, pageSize }, setPageAndPageSize] = useState<{\n page: number;\n pageSize: number;\n }>({\n page: dataSource?.page ?? DEFAULT_PAGE,\n pageSize: dataSource?.pageSize ?? DEFAULT_PAGE_SIZE,\n });\n const [selectedRowKeys, setSelectedRowKeys] = useState<\n (string | number)[] | undefined\n >(props.selectedRowKeys);\n\n useEffect(() => {\n setSelectedRowKeys(props.selectedRowKeys);\n }, [props.selectedRowKeys]);\n\n useEffect(() => {\n setList(dataSource?.list);\n setPageAndPageSize({\n page: dataSource?.page ?? DEFAULT_PAGE,\n pageSize: dataSource?.pageSize ?? DEFAULT_PAGE_SIZE,\n });\n }, [dataSource]);\n\n const processedColumns = useMemo(() => {\n const hiddenColumnsSet = new Set(hiddenColumns);\n return columns\n ?.filter((col) => !hiddenColumnsSet.has(col.key!))\n .map((col) => {\n return {\n ...col,\n render(value: any, record: RecordType, index: number) {\n if (col.useBrick) {\n const data = {\n cellData: value,\n rowData: record,\n columnIndex: index,\n };\n return (\n <ReactUseMultipleBricks useBrick={col.useBrick} data={data} />\n );\n }\n return <>{value}</>;\n },\n title(props: ColumnTitleProps<RecordType>) {\n if (col.headerBrick?.useBrick) {\n const data = {\n title: col.title,\n };\n return (\n <ReactUseMultipleBricks\n useBrick={col.headerBrick.useBrick}\n data={data}\n />\n );\n }\n return <>{col.title}</>;\n },\n };\n });\n }, [columns, hiddenColumns]);\n\n const rowSelectionConfig = useMemo(() => {\n if (rowSelection === false || isNil(rowSelection)) {\n return undefined;\n }\n return {\n ...defaultRowSelectionConfig,\n ...(rowSelection === true ? {} : rowSelection),\n };\n }, [rowSelection]);\n\n const paginationConfig = useMemo(() => {\n if (pagination === false) {\n return false;\n }\n return { ...defaultPaginationConfig, ...pagination };\n }, [pagination]);\n\n useImperativeHandle(ref, () => ({\n search: ({ q }) => {\n const _q = q?.trim().toLowerCase() || \"\";\n let result: RecordType[] | undefined = dataSource?.list;\n if (_q) {\n if (searchFields) {\n result = dataSource?.list?.filter((row) => {\n const keywords = searchFields.flatMap((field) =>\n getSearchKeywords(get(row, field))\n );\n return keywords.some((v) => v.toLowerCase().includes(_q));\n });\n } else {\n result = dataSource?.list?.filter((row) => {\n const keywords = columns?.flatMap((column) => {\n // 嵌套在 dataIndex 中用数组表示,所以 \"a.b\" 这种要识别成 key: \"a.b\"。\n const value = Array.isArray(column.dataIndex)\n ? get(row, column.dataIndex)\n : row[column.dataIndex as string];\n return getSearchKeywords(value);\n });\n return keywords?.some((v) => v.toLowerCase().includes(_q));\n });\n }\n }\n setList(result);\n setPageAndPageSize((pre) => {\n if (pre.page !== 1) {\n const newData = {\n page: 1,\n pageSize: pre.pageSize ?? DEFAULT_PAGE_SIZE,\n };\n onPageChange?.(newData);\n return newData;\n }\n return pre;\n });\n },\n }));\n\n return (\n <ConfigProvider\n theme={{\n algorithm:\n currentTheme === \"dark-v2\"\n ? theme.darkAlgorithm\n : theme.defaultAlgorithm,\n }}\n >\n <StyleProvider container={shadowRoot as ShadowRoot} cache={styleCache}>\n <Table\n rowKey={rowKey}\n columns={processedColumns}\n dataSource={list}\n pagination={\n paginationConfig === false\n ? false\n : {\n ...paginationConfig,\n total: dataSource?.total,\n current: page,\n pageSize: pageSize,\n showTotal: (total: number) => {\n return (\n <div className=\"pagination-wrapper\">\n {paginationConfig.showTotal ? (\n <span className=\"pagination-total-text\">\n <Trans\n i18nKey={t(K.TOTAL)}\n values={{ total }}\n components={{\n el: (\n <strong className=\"pagination-total-number\" />\n ),\n }}\n />\n </span>\n ) : null}\n {rowSelectionConfig?.showSelectInfo &&\n selectedRowKeys?.length ? (\n <span className=\"select-info\">\n <span>\n {t(K.SELECT_INFO, {\n count: selectedRowKeys.length,\n })}\n </span>\n <WrappedLink\n onClick={() => {\n setSelectedRowKeys([]);\n onRowSelect?.({\n keys: [],\n rows: [],\n info: { type: \"none\" },\n });\n }}\n >\n {t(K.CLEAR)}\n </WrappedLink>\n </span>\n ) : null}\n </div>\n );\n },\n }\n }\n rowSelection={\n rowSelectionConfig === undefined\n ? undefined\n : {\n ...rowSelectionConfig,\n selectedRowKeys,\n onChange(\n keys: (string | number)[],\n rows: RecordType[],\n info: { type: RowSelectMethod }\n ) {\n setSelectedRowKeys(keys);\n onRowSelect?.({ keys, rows, info });\n },\n }\n }\n onChange={(pagination, filters, sorter, extra) => {\n if (extra.action === \"paginate\") {\n setPageAndPageSize((pre) => {\n if (pre.pageSize !== pagination.pageSize) {\n const newData = {\n page: 1,\n pageSize: pagination.pageSize ?? DEFAULT_PAGE_SIZE,\n };\n onPageSizeChange?.(newData);\n onPageChange?.(newData);\n return newData;\n } else if (pre.page !== pagination.current) {\n const newData = {\n page: pagination.current ?? DEFAULT_PAGE,\n pageSize: pagination.pageSize ?? DEFAULT_PAGE_SIZE,\n };\n onPageChange?.(newData);\n return newData;\n }\n return pre;\n });\n }\n }}\n />\n </StyleProvider>\n </ConfigProvider>\n );\n});\n","import React, { createRef } from \"react\";\nimport { EventEmitter, createDecorators } from \"@next-core/element\";\nimport { ReactNextElement } from \"@next-core/react-element\";\nimport \"@next-core/theme\";\nimport styleText from \"./styles.shadow.css\";\nimport { NextTableComponent, NextTableComponentRef } from \"./Table.js\";\nimport {\n Column,\n DataSource,\n PaginationType,\n RecordType,\n RowSelectionType,\n} from \"./interface.js\";\nimport { RowSelectMethod } from \"antd/es/table/interface.js\";\n\nconst { defineElement, property, method, event } = createDecorators();\n\n/**\n * 大型表格\n */\nexport\n@defineElement(\"eo-next-table\", {\n styleTexts: [styleText],\n})\nclass EoNextTable extends ReactNextElement {\n #tableRef = createRef<NextTableComponentRef>();\n\n /**\n * 指定表格行的 key\n */\n @property()\n accessor rowKey: string = \"key\";\n\n /**\n * 列定义\n */\n @property({\n attribute: false,\n })\n accessor columns: Column[] | undefined;\n\n /**\n * 数据源\n */\n @property({\n attribute: false,\n })\n accessor dataSource: DataSource | undefined;\n\n /**\n * 分页配置\n */\n @property({\n attribute: false,\n })\n accessor pagination: PaginationType;\n\n /**\n * 表格行可选择配置\n */\n @property({\n attribute: false,\n })\n accessor rowSelection: RowSelectionType;\n\n /**\n * 选中项的 key\n */\n @property({\n attribute: false,\n })\n accessor selectedRowKeys: (string | number)[] | undefined;\n\n /**\n * 隐藏的列(输入对应的 column.key)\n */\n @property({\n attribute: false,\n })\n accessor hiddenColumns: (string | number)[] | undefined;\n\n /**\n * 进行前端搜索的字段,支持嵌套的写法。不配置的时候默认为对所有 column.dataIndex 进行前端搜索\n */\n @property({\n attribute: false,\n })\n accessor searchFields: (string | string[])[] | undefined;\n\n /**\n * 前端搜索\n */\n @method()\n search(params: { q: string }) {\n this.#tableRef.current?.search(params);\n }\n\n /**\n * page 或 pageSize 改变的回调\n * @detail 改变后的页码及每页条数\n */\n @event({ type: \"page.change\" })\n accessor #pageChangeEvent!: EventEmitter<{ page: number; pageSize: number }>;\n #handlePageChange = (detail: { page: number; pageSize: number }): void => {\n this.#pageChangeEvent.emit(detail);\n };\n\n /**\n * pageSize 变化的回调\n * @detail 改变后的页码及每页条数\n */\n @event({ type: \"page.size.change\" })\n accessor #pageSizeChangeEvent!: EventEmitter<{\n page: number;\n pageSize: number;\n }>;\n #handlePageSizeChange = (detail: {\n page: number;\n pageSize: number;\n }): void => {\n this.#pageSizeChangeEvent.emit(detail);\n };\n\n /**\n * 行选中项发生变化时的回调\n * @detail 改变后的 rowKey 及行数据\n */\n @event({ type: \"row.select\" })\n accessor #rowSelectEvent!: EventEmitter<{\n keys: (string | number)[];\n rows: RecordType[];\n info: { type: RowSelectMethod };\n }>;\n #handleRowSelect = (detail: {\n keys: (string | number)[];\n rows: RecordType[];\n info: { type: RowSelectMethod };\n }): void => {\n this.#rowSelectEvent.emit(detail);\n };\n\n render() {\n return (\n <NextTableComponent\n ref={this.#tableRef}\n shadowRoot={this.shadowRoot}\n rowKey={this.rowKey}\n columns={this.columns}\n dataSource={this.dataSource}\n pagination={this.pagination}\n rowSelection={this.rowSelection}\n selectedRowKeys={this.selectedRowKeys}\n hiddenColumns={this.hiddenColumns}\n searchFields={this.searchFields}\n onPageChange={this.#handlePageChange}\n onPageSizeChange={this.#handlePageSizeChange}\n onRowSelect={this.#handleRowSelect}\n />\n );\n }\n}\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `:host{display:block}:host([hidden]){display:none}.pagination-wrapper{display:flex;gap:20px}.pagination-total-text{color:var(--antd-pagination-total-text)}.pagination-total-number{font-weight:var(--font-weight-400);color:var(--antd-pagination-total-strong-text)}.select-info{display:flex;gap:10px}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___.toString();\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.brickTableOddRow{background-color:var(--color-fill-bg-base-4)}.ant-table-small .ant-table-body{margin:0}.ant-table-small .ant-table-thead{background:var(--antd-table-header-bg)}.ant-table-small .ant-table-row{line-height:26px}.ant-table-tbody > tr.invalidRow > td{background-color:var(--color-error-bg)}.ant-table-tbody > tr.invalidRow:hover > td{background-color:var(--color-error-bg)}.ant-table-tbody > tr.disabledRow > td{background-color:var(--theme-gray-border-color)}.ant-table-tbody > .ant-table-row-selected td{background:var(--antd-table-cell-fixed-body-bg)!important}td.alignTop{vertical-align:top}td.alignBottom{vertical-align:bottom}.expandIconCellHidden .ant-table-row-expand-icon-cell,\n.expandIconCellHidden .ant-table-expand-icon-col{width:1px;min-width:auto}.expandIconCellHidden .ant-table-row-expand-icon-cell > *,\n.expandIconCellHidden .ant-table-expand-icon-col > *{display:none}.expandIconSpan{cursor:pointer;margin-right:9px;color:var(--antd-table-row-expand-icon-color);font-size:11px}.expandIconSpan .anticon{background:var(--antd-table-row-expand-icon-action-bg);border-radius:2px;padding:3px}.tableThTransparent thead.ant-table-thead > tr > th{background:var(--antd-table-header-bg)}.zebraPatternTable .ant-table-tbody tr td{border-bottom:0}.ellipsis{max-width:240px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.totalText{color:var(--antd-pagination-total-text)}.total{font-weight:normal;color:var(--antd-pagination-total-strong-text)}.ant-table-wrapper .ant-table-thead > tr > th{padding:11px 16px;font-size:12px;line-height:20px;border-bottom:0;font-weight:500;color:var(--antd-table-header-color)}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___.toString();\n"],"names":["compareFunMap","$eq","isEqual","$lt","lt","$lte","lte","$gt","gt","$gte","gte","$ne","value","fieldValue","$isEqual","$notEqual","$in","includes","$nin","$exists","isUndefined","getCellStyle","cellStatus","item","dataIndex","mapping","list","finalValue","undefined","get","ret","find","borderLeft","concat","leftBorderColor","getKeysOfData","data","rowKey","childrenColumnName","keys","forEach","children","key","push","length","getRowsOfData","rows","stripEmptyExpandableChildrenByName","name","arguments","_value$name","type","downMenuIcon","lib","icon","theme","rightMenuIcon","WrappedIcon","wrapBrick","DraggableBodyRow","_ref","index","moveRow","className","style","restProps","_objectWithoutProperties","_excluded","ref","React","isOver","dropClassName","drop","useDrop","accept","collect","monitor","dragIndex","getItem","drag","useDrag","isDragging","_extends","classNames","_objectSpread","cursor","BrickTable","props","error","configProps","pagination","sortBy","columns","expandIconAsCell","expandIconColumnIndex","scroll","optimizedColumns","onDelete","ellipsisInfo","showHeader","initData","useMemo","_props$dataSource","dataSource","map","isNil","setData","useState","rowKeyExpandIconMapRef","useRef","Map","columnTitleBrickDataMapRef","useBrickItemBrickDataMapRef","itemExpandedRowBrickDataMapRef","useEffect","current","clear","expandIconColumnIndexOffset","rowSelection","customColumns","column","itemBrickDataMap","useBrick","valueSuffix","cellStyle","headerBrick","colSpanKey","rowSpanKey","filterDropdownBrick","columnConf","_excluded2","title","set","getCustomHeader","ReactUseMultipleBricks","filterDropdown","render","getCustomComp","brickData","cellData","rowData","columnIndex","shouldCellUpdate","record","prevRecord","Number","innerRender","colSpan","rowSpan","toPath","verticalAlign","components","body","row","hoverIndex","dragRow","newData","update","$splice","onDrag","pickExpandProps","pickBy","expandRowByClick","expandedRowKeys","defaultExpandAllRows","table","Table","expandIconCellHidden","customDropTable","tableDraggable","tableThTransparent","thTransparent","zebraPatternTable","zebraPattern","onRow","onChange","expandedRowBrick","expandedRowRender","_props$expandedRowBri","rowIndex","onExpand","expanded","showSorterTooltip","onExpandedRowsChange","expandedRows","rowClassName","invalidRow","disabledRow","expandIcon","iconProps","_props$expandIcon","iconNode","_props$expandIcon2","expandable","collapsedIcon","expandedIcon","onClick","e","visibility","DndProvider","backend","HTML5Backend","cahce","createCache","StyleProvider","container","shadowRoot","cache","_TableComponent","defineElement","property","event","method","createDecorators","_dec","styleTexts","styleText","alias","_dec2","_dec3","_dec4","_dec5","_dec6","cancelable","_dec7","_dec8","_dec9","_dec10","Boolean","_dec11","attribute","_dec12","_dec13","_dec14","_dec15","_dec16","_dec17","_dec18","_dec19","_dec20","_dec21","_dec22","_dec23","_dec24","_dec25","_dec26","_dec27","_dec28","_dec29","_dec30","_dec31","_dec32","_dec33","_dec34","_dec35","_dec36","_dec37","_dec38","_dec39","_dec40","_dec41","_dec42","_dec43","_dec44","_dec45","_dec46","_dec47","_dec48","_dec49","_dec50","_dec51","_dec52","_dec53","_dec54","_dec55","_dec56","_A","WeakMap","_pageUpdate","_B","_filterUpdate","_C","_selectUpdate","_D","_selectRowKeysUpdate","_E","_sortUpdate","_F","_rowExpand","_G","_expandRowsChange","_H","_rowDrag","_I","_J","_K","_L","_M","_N","_O","_P","_Q","_R","_S","_T","_U","_V","_W","_X","_Y","_Z","_a","_b","_c","_d","_e","_f","_g","_h","_i","_j","_k","_l","_m","_n","_o","_p","_q","_r","_s","_t","_u","_v","_w","_x","_y","_z","_total","_AA","TableComponent","ReactNextElement","constructor","_classPrivateFieldInitSpec","_get_rowDrag2","_set_rowDrag2","_get_expandRowsChange2","_set_expandRowsChange2","_get_rowExpand2","_set_rowExpand2","_get_sortUpdate2","_set_sortUpdate2","_get_selectRowKeysUpdate2","_set_selectRowKeysUpdate2","_get_selectUpdate2","_set_selectUpdate2","_get_filterUpdate2","_set_filterUpdate2","_get_pageUpdate2","_set_pageUpdate2","writable","_initProto","_init_pageUpdate","_init_filterUpdate","_init_selectUpdate","_init_selectRowKeysUpdate","_init_sortUpdate","_init_rowExpand","_init_expandRowsChange","_init_rowDrag","_init_showCard","_init_rowSelection","_init_rowKey","_init_hiddenColumns","_init_showSelectInfo","_init_filters","_init_configProps","_init_sort","_init_order","_init_rowDisabledConfig","_init_expandedRowBrick","_init_expandIcon","_init_expandIconAsCell","_init_expandIconColumnIndex","_init_expandRowByClick","_init_optimizedColumns","_init_stripEmptyExpandableChildren","_init_defaultExpandAllRows","_init_ellipsisInfo","_init_expandedRowKeys","_init_selectAllChildren","_init_defaultSelectAll","_defineProperty","_init_childrenColumnName","_init_sortable","_init_frontSearch","_init_frontSearchQuery","_init_exactSearch","_init_frontSearchFilterKeys","_init_page","_init_pageSize","_init_scrollConfigs","x","_init_qField","_init_tableDraggable","_init_zebraPattern","_init_storeCheckedByUrl","_init_extraRows","_init_autoSelectParentWhenAllChildrenSelected","_init_thTransparent","_init_showHeader","_init_pagination","_init_size","_init_type","_init_shouldUpdateUrlParams","_init_shouldRenderWhenUrlParamsUpdate","page","pageSize","total","ascend","descend","_init_selectedRowKeys","_ref2","_this$rowKey","_this$configProps","this","_fields","parent","matchedParent","some","_findParentByChildKeyValue","selectedRowKeys","selectedRows","_getRowKey","rowKeyRowMap","keyBy","_selected","_selectedRowKeys","_allChildren","child","rowKeyValue","autoSelectParentWhenAllChildrenSelected","_selectedRow","selectedRowKeySet","Set","_dataSource","every","has","uniq","pullAll","extraRowKeyRowMap","extraRows","_selectedRows","detail","isEmpty","_selectUpdateEventDetailField","_selectUpdateEventDetailKeys","merge","_selectUpdateEventDetailExtra","_selectUpdateEventName","dispatchEvent","CustomEvent","_classPrivateFieldGet","emit","result","isArray","_getSelectedRowsWithChildren","checked","_isInSelect","allChildren","selectAllChildren","_disabledChildrenKeys","storeCheckedByUrl","_updateUrlChecked","selected","changeRows","allParentKeys","changedParentRows","filter","v","toChangedChildrenKeys","flatten","r","cr","history","getHistory","URLSearchParams","location","search","split","options","checkedOptions","_getCheckedFromUrl","pull","shouldUpdateUrlParams","pushQuery","join","notify","filters","sorter","urlSearchParams","toString","newPage","delete","order","columnKey","sort","frontSearch","frontendSearch","shouldRenderWhenUrlParamsUpdate","marginLeft","role","pullKeys","recordChildren","keysToPull","c","_render","allRows","_getAllRows","_this$configProps$row","_this$configProps3","rowDisabledConfig","defaultPagination","showSizeChanger","pageSizeOptions","showTotal","totals","_this$configProps2","showSelectInfo","renderSelectInfo","Array","defaultRowSelection","defaultSelectAll","_handleDefaultSelectAll","onSelect","_handleOnSelect","onSelectAll","_handleSelectAll","_handleRowSelectChange","preserveSelectedRowKeys","getCheckboxProps","disabled","config","field","operator","fun","_finalConfigProps","cloneDeep","size","_this$type","_this$type2","rowSelec","_columns","sortOrder","_urlSearchParams$get","_get","filteredValue","filtered","_find$value","_find","f","String","_ref3","_get2","_ref4","_ref5","_get3","_this$configProps4","_originalDataSource","_pureSource","stripEmptyExpandableChildren","_classPrivateFieldSet","showCard","hiddenColumns","sortable","fields","frontSearchQuery","exactSearch","frontSearchFilterKeys","scrollConfigs","qField","processedDataSource","processConfigProps","processedColumns","getModifyColumns","filterSourceData","q","trim","toLowerCase","handleFrontendDataChange","tempDataSource","handleFrontendFilterSource","handleFrontendSorter","handleFrontendFilters","filterKeys","_filterKeys","filteredChildren","JSON","stringify","direction","a","b","aValue","bValue","filtersArray","k","_filter$value$include","_filter$value","expandAll","allKeys","_this$hiddenColumns","_ref6","_initConfigProps","_error","_handleOnChange","_handleOnExpand","_handleOnExpandedRowsChange","draggable","_handleOnDrag","_test_only_getOriginalDataSource","updateData","updateError","selectUpdateEventName","selectUpdateEventDetailKeys","selectUpdateEventDetailField","selectUpdateEventDetailExtra","_set_pageUpdate","_get_pageUpdate","_set_filterUpdate","_get_filterUpdate","_set_selectUpdate","_get_selectUpdate","_set_selectRowKeysUpdate","_get_selectRowKeysUpdate","_set_sortUpdate","_get_sortUpdate","_set_rowExpand","_get_rowExpand","_set_expandRowsChange","_get_expandRowsChange","_set_rowDrag","_get_rowDrag","_class","_initClass","_applyDecs","o","_","_checkInRHS","_CascaderBrick","_changeEvent","CascaderBrick","_get_changeEvent2","_set_changeEvent2","_init_options","_init_fieldNames","label","_init_value","_init_placeholder","_init_multiple","_init_disabled","_init_allowClear","_init_showSearch","_init_suffixIcon","_init_expandTrigger","_init_popupPlacement","_init_limit","_init_maxTagCount","_init_cascaderStyle","_init_changeEvent","selectedOptions","Promise","resolve","then","fieldNames","placeholder","multiple","allowClear","showSearch","suffixIcon","expandTrigger","popupPlacement","limit","maxTagCount","cascaderStyle","CascaderElement","_set_changeEvent","_get_changeEvent","Cascader","getPopupContainer","trigger","parentElement","inputValue","path","_ret","filterValues","toLocaleLowerCase","_loop","j","option","placement","K","NS","defaultPaginationConfig","defaultRowSelectionConfig","getSearchKeywords","Object","prototype","call","flat","Infinity","initializeReactI18n","en","TOTAL","SELECT_INFO","SELECT_INFO_plural","CLEAR","zh","_EoNextTable","WrappedLink","NextTableComponent","forwardRef","_dataSource$page","_dataSource$pageSize","searchFields","onPageChange","onPageSizeChange","onRowSelect","t","useTranslation","styleCache","currentTheme","useCurrentTheme","setList","setPageAndPageSize","setSelectedRowKeys","_dataSource$page2","_dataSource$pageSize2","hiddenColumnsSet","col","_col$headerBrick","rowSelectionConfig","paginationConfig","useImperativeHandle","_dataSource$list","_dataSource$list2","flatMap","keywords","pre","_pre$pageSize","ConfigProvider","algorithm","darkAlgorithm","defaultAlgorithm","Trans","i18nKey","values","el","count","info","extra","action","_pagination$pageSize","_pagination$current","_pagination$pageSize2","_tableRef","_pageChangeEvent","_handlePageChange","_pageSizeChangeEvent","_handlePageSizeChange","_rowSelectEvent","_handleRowSelect","EoNextTable","_get_rowSelectEvent2","_set_rowSelectEvent2","_get_pageSizeChangeEvent2","_set_pageSizeChangeEvent2","_get_pageChangeEvent2","_set_pageChangeEvent2","createRef","_init_columns","_init_dataSource","_init_searchFields","_init_pageChangeEvent","_init_pageSizeChangeEvent","_init_rowSelectEvent","params","_classPrivateFieldGet2","_set_pageChangeEvent","_get_pageChangeEvent","_set_pageSizeChangeEvent","_get_pageSizeChangeEvent","_set_rowSelectEvent","_get_rowSelectEvent","___CSS_LOADER_EXPORT___","module","id"],"sourceRoot":""}
@@ -0,0 +1,2 @@
1
+ "use strict";(self.webpackChunk_next_bricks_advanced=self.webpackChunk_next_bricks_advanced||[]).push([[9627],{4719:(e,t,a)=>{a.d(t,{v:()=>m});var i=a(3028),n=a(8657),l=a.n(n),r=a(8298),s=a(1876),o=a(6154),u=a(3691),c=a(3261),h=a(7088),d=a(2068),p=a(8945),g=a(3835),w=a(5178),v=a(1466);(0,h.initializeReactI18n)(p.NS,p.k);var Z=(0,v.wrapBrick)("eo-link"),m=(0,n.forwardRef)((function(e,t){var a,v,{shadowRoot:m,rowKey:S,columns:f,dataSource:k,pagination:E,rowSelection:y,hiddenColumns:b,searchFields:C,onPageChange:R,onPageSizeChange:L,onRowSelect:M}=e,{t:T}=(0,h.useTranslation)(p.NS),x=(0,n.useMemo)((()=>(0,u.Df)()),[]),K=(0,c.useCurrentTheme)(),[z,W]=(0,n.useState)(null==k?void 0:k.list),[{page:F,pageSize:N},A]=(0,n.useState)({page:null!==(a=null==k?void 0:k.page)&&void 0!==a?a:g.XJ,pageSize:null!==(v=null==k?void 0:k.pageSize)&&void 0!==v?v:g.L8}),[I,O]=(0,n.useState)(e.selectedRowKeys);(0,n.useEffect)((()=>{O(e.selectedRowKeys)}),[e.selectedRowKeys]),(0,n.useEffect)((()=>{var e,t;W(null==k?void 0:k.list),A({page:null!==(e=null==k?void 0:k.page)&&void 0!==e?e:g.XJ,pageSize:null!==(t=null==k?void 0:k.pageSize)&&void 0!==t?t:g.L8})}),[k]);var _=(0,n.useMemo)((()=>{var e=new Set(b);return null==f?void 0:f.filter((t=>!e.has(t.key))).map((e=>(0,i.Z)((0,i.Z)({},e),{},{render(t,a,i){if(e.useBrick){var n={cellData:t,rowData:a,columnIndex:i};return l().createElement(c.ReactUseMultipleBricks,{useBrick:e.useBrick,data:n})}return l().createElement(l().Fragment,null,t)},title(t){var a;if(null!==(a=e.headerBrick)&&void 0!==a&&a.useBrick){var i={title:e.title};return l().createElement(c.ReactUseMultipleBricks,{useBrick:e.headerBrick.useBrick,data:i})}return l().createElement(l().Fragment,null,e.title)}})))}),[f,b]),B=(0,n.useMemo)((()=>{if(!1!==y&&!(0,w.isNil)(y))return(0,i.Z)((0,i.Z)({},g.D5),!0===y?{}:y)}),[y]),D=(0,n.useMemo)((()=>!1!==E&&(0,i.Z)((0,i.Z)({},g.LR),E)),[E]);return(0,n.useImperativeHandle)(t,(()=>({search:e=>{var t,a,{q:i}=e,n=(null==i?void 0:i.trim().toLowerCase())||"",l=null==k?void 0:k.list;n&&(l=C?null==k||null===(t=k.list)||void 0===t?void 0:t.filter((e=>C.flatMap((t=>(0,g.Fx)((0,w.get)(e,t)))).some((e=>e.toLowerCase().includes(n))))):null==k||null===(a=k.list)||void 0===a?void 0:a.filter((e=>{var t=null==f?void 0:f.flatMap((t=>{var a=Array.isArray(t.dataIndex)?(0,w.get)(e,t.dataIndex):e[t.dataIndex];return(0,g.Fx)(a)}));return null==t?void 0:t.some((e=>e.toLowerCase().includes(n)))}))),W(l),A((e=>{if(1!==e.page){var t,a={page:1,pageSize:null!==(t=e.pageSize)&&void 0!==t?t:g.L8};return null==R||R(a),a}return e}))}}))),l().createElement(r.ZP,{theme:{algorithm:"dark-v2"===K?s.default.darkAlgorithm:s.default.defaultAlgorithm}},l().createElement(u.V9,{container:m,cache:x},l().createElement(o.Z,{rowKey:S,columns:_,dataSource:z,pagination:!1!==D&&(0,i.Z)((0,i.Z)({},D),{},{total:null==k?void 0:k.total,current:F,pageSize:N,showTotal:e=>l().createElement("div",{className:"pagination-wrapper"},D.showTotal?l().createElement("span",{className:"pagination-total-text"},l().createElement(d.Trans,{i18nKey:T(p.K.TOTAL),values:{total:e},components:{el:l().createElement("strong",{className:"pagination-total-number"})}})):null,null!=B&&B.showSelectInfo&&null!=I&&I.length?l().createElement("span",{className:"select-info"},l().createElement("span",null,T(p.K.SELECT_INFO,{count:I.length})),l().createElement(Z,{onClick:()=>{O([]),null==M||M({keys:[],rows:[],info:{type:"none"}})}},T(p.K.CLEAR))):null)}),rowSelection:void 0===B?void 0:(0,i.Z)((0,i.Z)({},B),{},{selectedRowKeys:I,onChange(e,t,a){O(e),null==M||M({keys:e,rows:t,info:a})}}),onChange:(e,t,a,i)=>{"paginate"===i.action&&A((t=>{if(t.pageSize!==e.pageSize){var a,i={page:1,pageSize:null!==(a=e.pageSize)&&void 0!==a?a:g.L8};return null==L||L(i),null==R||R(i),i}if(t.page!==e.current){var n,l,r={page:null!==(n=e.current)&&void 0!==n?n:g.XJ,pageSize:null!==(l=e.pageSize)&&void 0!==l?l:g.L8};return null==R||R(r),r}return t}))}})))}))},8945:(e,t,a)=>{a.d(t,{K:()=>i,NS:()=>n,k:()=>l});var i=function(e){return e.TOTAL="TOTAL",e.SELECT_INFO="SELECT_INFO",e.CLEAR="CLEAR",e}({}),n="bricks/advanced/eo-next-table",l={en:{TOTAL:"Total <el>{{ total }}</el> Items",SELECT_INFO:"{{ count }} item selected",SELECT_INFO_plural:"{{ count }} items selected",CLEAR:"Clear"},zh:{TOTAL:"共 <el>{{ total }}</el> 条",SELECT_INFO:"已选择 {{ count }} 项",CLEAR:"清空"}}},8935:(e,t,a)=>{a.r(t),a.d(t,{EoNextTable:()=>A});var i,n,l,r,s,o,u,c,h,d,p,g,w,v,Z,m,S,f,k,E,y,b,C,R,L,M,T,x,K,z,W,F,N,A,I=a(3395),O=a(1815),_=a(381),B=a(687),D=a(2604),P=a(8657),J=a.n(P),X=a(7320),j=a(1466),U=(a(5254),a(750)),q=a(4719),{defineElement:H,property:V,method:G,event:Q}=(0,X.createDecorators)();n=H("eo-next-table",{styleTexts:[U.Z]}),l=V(),s=V({attribute:!1}),u=V({attribute:!1}),h=V({attribute:!1}),p=V({attribute:!1}),w=V({attribute:!1}),Z=V({attribute:!1}),S=V({attribute:!1}),k=G(),E=Q({type:"page.change"}),R=Q({type:"page.size.change"}),x=Q({type:"row.select"});var Y=new WeakMap,$=new WeakMap,ee=new WeakMap,te=new WeakMap,ae=new WeakMap,ie=new WeakMap,ne=new WeakMap,le=new WeakMap,re=new WeakMap,se=new WeakMap,oe=new WeakMap,ue=new WeakMap,ce=new WeakMap,he=new WeakMap,de=new WeakMap,pe=new WeakMap,ge=new WeakMap,we=new WeakMap;class ve extends j.ReactNextElement{constructor(){super(...arguments),(0,I.Z)(this,ge,{get:Ee,set:ke}),(0,I.Z)(this,he,{get:fe,set:Se}),(0,I.Z)(this,oe,{get:me,set:Ze}),(0,I.Z)(this,Y,{writable:!0,value:(0,P.createRef)()}),(0,I.Z)(this,$,{writable:!0,value:(F(this),r(this,"key"))}),(0,I.Z)(this,ee,{writable:!0,value:o(this)}),(0,I.Z)(this,te,{writable:!0,value:c(this)}),(0,I.Z)(this,ae,{writable:!0,value:d(this)}),(0,I.Z)(this,ie,{writable:!0,value:g(this)}),(0,I.Z)(this,ne,{writable:!0,value:v(this)}),(0,I.Z)(this,le,{writable:!0,value:m(this)}),(0,I.Z)(this,re,{writable:!0,value:f(this)}),(0,I.Z)(this,se,{writable:!0,value:y(this)}),(0,I.Z)(this,ue,{writable:!0,value:e=>{(0,B.Z)(this,oe).emit(e)}}),(0,I.Z)(this,ce,{writable:!0,value:L(this)}),(0,I.Z)(this,de,{writable:!0,value:e=>{(0,B.Z)(this,he).emit(e)}}),(0,I.Z)(this,pe,{writable:!0,value:K(this)}),(0,I.Z)(this,we,{writable:!0,value:e=>{(0,B.Z)(this,ge).emit(e)}})}get rowKey(){return(0,B.Z)(this,$)}set rowKey(e){(0,_.Z)(this,$,e)}get columns(){return(0,B.Z)(this,ee)}set columns(e){(0,_.Z)(this,ee,e)}get dataSource(){return(0,B.Z)(this,te)}set dataSource(e){(0,_.Z)(this,te,e)}get pagination(){return(0,B.Z)(this,ae)}set pagination(e){(0,_.Z)(this,ae,e)}get rowSelection(){return(0,B.Z)(this,ie)}set rowSelection(e){(0,_.Z)(this,ie,e)}get selectedRowKeys(){return(0,B.Z)(this,ne)}set selectedRowKeys(e){(0,_.Z)(this,ne,e)}get hiddenColumns(){return(0,B.Z)(this,le)}set hiddenColumns(e){(0,_.Z)(this,le,e)}get searchFields(){return(0,B.Z)(this,re)}set searchFields(e){(0,_.Z)(this,re,e)}search(e){var t;null===(t=(0,B.Z)(this,Y).current)||void 0===t||t.search(e)}render(){return J().createElement(q.v,{ref:(0,B.Z)(this,Y),shadowRoot:this.shadowRoot,rowKey:this.rowKey,columns:this.columns,dataSource:this.dataSource,pagination:this.pagination,rowSelection:this.rowSelection,selectedRowKeys:this.selectedRowKeys,hiddenColumns:this.hiddenColumns,searchFields:this.searchFields,onPageChange:(0,B.Z)(this,ue),onPageSizeChange:(0,B.Z)(this,de),onRowSelect:(0,B.Z)(this,we)})}}function Ze(e){C(this,e)}function me(){return b(this)}function Se(e){T(this,e)}function fe(){return M(this)}function ke(e){W(this,e)}function Ee(){return z(this)}N=ve,({e:[r,o,c,d,g,v,m,f,y,b,C,L,M,T,K,z,W,F],c:[A,i]}=(0,D.Z)(N,[[l,1,"rowKey"],[s,1,"columns"],[u,1,"dataSource"],[h,1,"pagination"],[p,1,"rowSelection"],[w,1,"selectedRowKeys"],[Z,1,"hiddenColumns"],[S,1,"searchFields"],[k,2,"search"],[E,1,"pageChangeEvent",e=>(0,B.Z)(e,se),(e,t)=>(0,_.Z)(e,se,t)],[R,1,"pageSizeChangeEvent",e=>(0,B.Z)(e,ce),(e,t)=>(0,_.Z)(e,ce,t)],[x,1,"rowSelectEvent",e=>(0,B.Z)(e,pe),(e,t)=>(0,_.Z)(e,pe,t)]],[n],0,(e=>we.has((0,O.Z)(e))))),i()},3835:(e,t,a)=>{a.d(t,{D5:()=>s,Fx:()=>o,L8:()=>n,LR:()=>r,XJ:()=>l});var i=a(5178),n=20,l=1,r={showSizeChanger:!0,showTotal:!0},s={preserveSelectedRowKeys:!0,showSelectInfo:!0};function o(e){var t=[];if((0,i.isNil)(e));else if(Array.isArray(e))e.map((e=>t.push(o(e))));else if("[object Object]"===Object.prototype.toString.call(e))for(var a in e)t.push(String(a),o(e[a]));else t.push(String(e));return t.flat(1/0).filter(Boolean)}},750:(e,t,a)=>{a.d(t,{Z:()=>s});var i=a(9601),n=a.n(i),l=a(2609),r=a.n(l)()(n());r.push([e.id,":host{display:block}:host([hidden]){display:none}.pagination-wrapper{display:flex;gap:20px}.pagination-total-text{color:var(--antd-pagination-total-text)}.pagination-total-number{font-weight:var(--font-weight-400);color:var(--antd-pagination-total-strong-text)}.select-info{display:flex;gap:10px}",""]);const s=r.toString()}}]);
2
+ //# sourceMappingURL=eo-next-table.099c1f2f.js.map