bj-web-components 0.2.15 → 0.2.17
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/index.d.ts +2 -0
- package/dist/miniapp/index.d.ts +0 -0
- package/dist/miniapp.d.ts +1 -1
- package/dist/mobile/index.d.ts +0 -0
- package/dist/mobile.d.ts +1 -1
- package/dist/react/index.d.ts +0 -0
- package/dist/react.d.ts +1 -1
- package/dist/shared/index.d.ts +0 -0
- package/dist/shared.d.ts +1 -1
- package/dist/style.css +1 -1
- package/dist/web/BasicInput/BInput.d.ts +3 -0
- package/dist/web/BasicInput/index.d.ts +2 -0
- package/dist/web/BasicInput/types.d.ts +32 -0
- package/dist/web/BasicInput/utils.d.ts +13 -0
- package/dist/web/CategoryDropdown/CategoryDropdown.d.ts +2 -0
- package/dist/web/CategoryDropdown/index.d.ts +2 -0
- package/dist/web/CategoryDropdown/types.d.ts +31 -0
- package/dist/web/CheckBox/BCheckBox.d.ts +3 -0
- package/dist/web/CheckBox/Group.d.ts +3 -0
- package/dist/web/CheckBox/context.d.ts +11 -0
- package/dist/web/CheckBox/index.d.ts +9 -0
- package/dist/web/CheckBox/types.d.ts +54 -0
- package/dist/web/Dropdown/BDropdown.d.ts +2 -0
- package/dist/web/Dropdown/index.d.ts +2 -0
- package/dist/web/Dropdown/types.d.ts +41 -0
- package/dist/web/EmptyInputBox/EmptyInputBox.d.ts +3 -0
- package/dist/web/EmptyInputBox/index.d.ts +2 -0
- package/dist/web/EmptyInputBox/types.d.ts +28 -0
- package/dist/web/FileCard/FileCard.d.ts +2 -0
- package/dist/web/FileCard/index.d.ts +2 -0
- package/dist/web/FileCard/types.d.ts +20 -0
- package/dist/web/Icon/Icon.d.ts +6 -0
- package/dist/web/Icon/index.d.ts +2 -0
- package/dist/web/Icon/types.d.ts +11 -0
- package/dist/web/Input/Input.d.ts +3 -0
- package/dist/web/Input/index.d.ts +2 -0
- package/dist/web/Input/types.d.ts +55 -0
- package/dist/web/InputNumber/BInputNumber.d.ts +3 -0
- package/dist/web/InputNumber/StepHandler.d.ts +10 -0
- package/dist/web/InputNumber/hooks/useCursor.d.ts +2 -0
- package/dist/web/InputNumber/hooks/useFrame.d.ts +2 -0
- package/dist/web/InputNumber/index.d.ts +2 -0
- package/dist/web/InputNumber/types.d.ts +60 -0
- package/dist/web/InputNumber/utils/decimal.d.ts +46 -0
- package/dist/web/Modal/Modal.d.ts +2 -0
- package/dist/web/Modal/index.d.ts +2 -0
- package/dist/web/Modal/types.d.ts +42 -0
- package/dist/web/OverlayScrollbar/BOverlayScrollbar.d.ts +2 -0
- package/dist/web/OverlayScrollbar/index.d.ts +2 -0
- package/dist/web/OverlayScrollbar/types.d.ts +18 -0
- package/dist/web/Pagination/Pagination.d.ts +3 -0
- package/dist/web/Pagination/index.d.ts +2 -0
- package/dist/web/Pagination/types.d.ts +44 -0
- package/dist/web/ProductField/ProductField.d.ts +2 -0
- package/dist/web/ProductField/index.d.ts +2 -0
- package/dist/web/ProductField/types.d.ts +48 -0
- package/dist/web/SkuInputCard/SkuInputCard.d.ts +2 -0
- package/dist/web/SkuInputCard/index.d.ts +2 -0
- package/dist/web/SkuInputCard/types.d.ts +63 -0
- package/dist/web/Switch/Switch.d.ts +6 -0
- package/dist/web/Switch/index.d.ts +2 -0
- package/dist/web/Switch/types.d.ts +29 -0
- package/dist/web/Table/BTable.d.ts +10 -0
- package/dist/web/Table/BTable.js +1 -1
- package/dist/web/Table/BTable.mjs +213 -207
- package/dist/web/Table/Column.d.ts +3 -0
- package/dist/web/Table/ColumnGroup.d.ts +3 -0
- package/dist/web/Table/index.d.ts +4 -0
- package/dist/web/Table/types.d.ts +299 -0
- package/dist/web/Table/utils/columns.d.ts +11 -0
- package/dist/web/Table/utils/sortFilter.d.ts +7 -0
- package/dist/web/Tabs/BTabs.d.ts +8 -0
- package/dist/web/Tabs/TabPane.d.ts +7 -0
- package/dist/web/Tabs/index.d.ts +3 -0
- package/dist/web/Tabs/types.d.ts +32 -0
- package/dist/web/Tooltip/ConfirmTooltip.d.ts +2 -0
- package/dist/web/Tooltip/ContentTooltip.d.ts +2 -0
- package/dist/web/Tooltip/ProgressTooltip.d.ts +2 -0
- package/dist/web/Tooltip/TooltipWrapper.d.ts +3 -0
- package/dist/web/Tooltip/index.d.ts +6 -0
- package/dist/web/Tooltip/types.d.ts +36 -0
- package/dist/web/Tooltip/useAutoPlacement.d.ts +7 -0
- package/dist/web/index.d.ts +18 -0
- package/dist/web.d.ts +2 -1115
- package/package.json +1 -1
package/dist/web/Table/BTable.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const i=require("react/jsx-runtime"),b=require("react"),Kt=require("react-dom"),qt=require("../Pagination/Pagination.js"),me=require("../Icon/Icon.js");;/* empty css */const Bt=require("../Tooltip/ContentTooltip.js"),Tt=require("../Tooltip/TooltipWrapper.js"),zt=require("../CheckBox/index.js"),It=require("../Dropdown/BDropdown.js"),Vt=require("../OverlayScrollbar/BOverlayScrollbar.js"),wt=require("../SkuInputCard/spin_loading_red.gif.js"),Lt=require("../ProductField/no_data_light.png.js"),At=require("./Column.js"),Ht=require("./ColumnGroup.js"),_=require("./utils/sortFilter.js"),ve=require("./utils/columns.js");;/* empty css */const Wt=300;function E(...p){return p.filter(Boolean).join(" ")}function Ut(p,u){return u===void 0?void 0:(Array.isArray(u)?u:[u]).reduce((r,k)=>{if(!(r==null||typeof r!="object"))return r[k]},p)}function H(p,u,j){if(typeof j=="function")return j(p,u);if(j){const r=p[String(j)];if(typeof r=="string"||typeof r=="number")return r}return u}function Ze(p,u){return Math.max(1,Math.ceil(p/u))}function $t(p){return!!(p&&typeof p=="object"&&!b.isValidElement(p)&&"props"in p)}function Gt(p,u){return(typeof u.text=="string"||typeof u.text=="number"?String(u.text):String(u.value)).toLocaleLowerCase().includes(p.toLocaleLowerCase())}function Xe({checked:p,disabled:u,label:j,name:r,onChange:k,type:W="checkbox"}){return W==="checkbox"?i.jsx(zt.BCheckBox,{"aria-label":j,checked:p,className:"bj-table__selection-checkbox",disabled:u,name:r,onChange:k,skipGroup:!0}):i.jsxs("label",{className:E("bj-table__selection-control",p&&"bj-table__selection-control--checked",u&&"bj-table__selection-control--disabled"),children:[i.jsx("input",{"aria-label":j,checked:p,className:"bj-table__selection-input",disabled:u,name:r,onChange:k,type:W}),i.jsx("span",{"aria-hidden":"true",className:"bj-table__selection-box",children:p&&i.jsx(me,{className:"bj-table__selection-check-icon",type:"icon-a-dagouxi"})})]})}function Jt({columns:p,dataSource:u=[],rowKey:j,rowSelection:r,pagination:k=!1,loading:W=!1,bordered:Ye=!0,size:et="middle",showHeader:tt=!0,emptyText:ae,emptyImage:le=Lt,emptyHeight:st,t:$=Y=>Y,className:rt,style:at,rowClassName:ie,sortDirections:lt=["ascend","descend",null],onChange:ne,children:Ce,title:Fe,footer:De,summary:Re,tableLayout:Pe,components:v,onRow:de,onHeaderRow:ce,id:it,scroll:o,locale:U}){var Ue,$e,Ge;const Y=b.useRef(null),ke=b.useRef(null),ee=b.useMemo(()=>p??ve.convertChildrenToColumns(Ce),[Ce,p]),G=b.useMemo(()=>ve.flattenColumns(ee),[ee]),Oe=b.useMemo(()=>ve.buildHeaderRows(ee),[ee]),[nt,Ee]=b.useState((r==null?void 0:r.defaultSelectedRowKeys)??[]),[oe,te]=b.useState(k?k.defaultCurrent??1:1),[dt,ct]=b.useState(k?k.defaultPageSize??10:10),[ot,bt]=b.useState(()=>new Map(G.flatMap((e,t)=>e.defaultSortOrder?[[_.getColumnKey(e,t),e.defaultSortOrder]]:[]))),[ft,ut]=b.useState(()=>new Map(G.flatMap((e,t)=>e.defaultFilteredValue===void 0?[]:[[_.getColumnKey(e,t),e.defaultFilteredValue]]))),[M,L]=b.useState(null),[Me,J]=b.useState(new Map),[ht,se]=b.useState(null),pt=b.useRef(`btable-${Math.random().toString(36).slice(2,10)}`).current,[A,be]=b.useState(null),[fe,Se]=b.useState(null),[ue,Ke]=b.useState(""),[Q,qe]=b.useState(""),[_t,he]=b.useState(),pe=b.useRef(0),a=k||void 0,T=(a==null?void 0:a.pageSize)??dt,D=(r==null?void 0:r.selectedRowKeys)??nt,m=G,R=new Map(ot),O=new Map(ft);m.forEach((e,t)=>{if("children"in e)return;const s=_.getColumnKey(e,t);e.sortOrder!==void 0&&R.set(s,e.sortOrder),e.filteredValue!==void 0&&O.set(s,e.filteredValue)});const Be=b.useMemo(()=>_.filterRecords(u,m,O),[m,O,u]),S=b.useMemo(()=>_.sortRecords(Be,m,R),[m,Be,R]),_e=(a==null?void 0:a.total)??S.length,Te=Ze(_e,T),K=Math.min((a==null?void 0:a.current)??oe,Te);b.useEffect(()=>{K!==oe&&(a==null?void 0:a.current)===void 0&&te(K)},[K,a==null?void 0:a.current,oe]),b.useEffect(()=>{if(!A||M===null){Se(null);return}const e=()=>{const t=A.getBoundingClientRect();Se({left:t.left,top:t.bottom+8})};return e(),document.addEventListener("scroll",e,!0),window.addEventListener("resize",e),()=>{document.removeEventListener("scroll",e,!0),window.removeEventListener("resize",e)}},[A,M]),b.useEffect(()=>{if(M===null)return;const e=t=>{const s=t.target;A!=null&&A.contains(s)||s.closest(".bj-table__filter-dropdown")||(L(null),be(null))};return document.addEventListener("mousedown",e),()=>document.removeEventListener("mousedown",e)},[A,M]),b.useEffect(()=>{const e=window.setTimeout(()=>qe(ue.trim()),Wt);return()=>window.clearTimeout(e)},[ue]),b.useEffect(()=>{if(M===null)return;const e=G.find((s,d)=>_.getColumnKey(s,d)===M);if(!e||"children"in e||!e.filterRequest)return;const t=++pe.current;Promise.resolve().then(()=>e.filterRequest(Q)).then(s=>{pe.current===t&&he(s)},()=>{pe.current===t&&he([])})},[Q,G,M]);const z=b.useMemo(()=>{if(!a)return S.map((t,s)=>({record:t,index:s}));const e=(K-1)*T;return S.slice(e,e+T).map((t,s)=>({record:t,index:e+s}))},[K,T,a,S]),ze=b.useMemo(()=>z.map(({record:e,index:t})=>H(e,t,j)),[j,z]),jt=D.map(String).join("|"),gt=ze.map(String).join("|");b.useEffect(()=>{var c;if(!r||D.length===0)return;const e=new Set(ze),t=D.filter(f=>e.has(f));if(t.length===D.length)return;r.selectedRowKeys===void 0&&Ee(t);const s=new Set(t),d=z.filter(({record:f,index:l})=>s.has(H(f,l,j))).map(({record:f})=>f);(c=r.onChange)==null||c.call(r,t,d,{type:"multiple"})},[r,j,jt,gt,z]);const je=(e,t=R,s=O,d=K)=>{const c=Object.fromEntries(s),f=_.filterRecords(u,m,s),l=_.sortRecords(f,m,t);ne==null||ne({...a,current:d,pageSize:T,total:(a==null?void 0:a.total)??l.length},c,_.getSorterResult(m,t),{action:e,currentDataSource:l})},yt=(e,t)=>{if(!e.sorter)return;const s=_.getColumnKey(e,t),d=_.getNextSortOrder(R.get(s)??null,e.sortDirections??lt),c=new Map;c.set(s,d),e.sortOrder===void 0&&bt(c),je("sort",c)},ge=(e,t,s)=>{const d=_.getColumnKey(e,t),c=new Map(O);c.set(d,s),e.filteredValue===void 0&&ut(c),L(null),(a==null?void 0:a.current)===void 0&&te(1),je("filter",R,c,1)},xt=(e,t)=>{const s=_.getColumnKey(e,t),d=e.filterResetToDefaultFilteredValue?e.defaultFilteredValue??[]:[];J(c=>new Map(c).set(s,d))},re=(e,t,s)=>{var c,f,l,C;const d=_.getColumnKey(e,t);if(M===d){L(null),be(null),(c=e.onFilterDropdownOpenChange)==null||c.call(e,!1),(f=e.onFilterDropdownVisibleChange)==null||f.call(e,!1);return}Ke(""),qe(""),he(void 0),J(g=>new Map(g).set(d,O.get(d)??[])),L(d),s&&be(s),(l=e.onFilterDropdownOpenChange)==null||l.call(e,!0),(C=e.onFilterDropdownVisibleChange)==null||C.call(e,!0)},vt=(e,t)=>{var w,Je;const s=_.getColumnKey(e,t),d=`bj-table-badge-${pt}-${String(s).replace(/[^a-zA-Z0-9_-]/g,"-")}`,c=R.get(s)??null,f=O.get(s)??[],l=Me.get(s)??f,C=e.filterDropdownOpen??e.filterDropdownVisible??M===s,g=e.filtered||f.length>0,h=c==="ascend"?"icon-a-zhengxumian":c==="descend"?"icon-a-daoxumian":"icon-a-weipaixumian",I=_.renderColumnTitle(e.title,{sortOrder:c,sortColumn:c?e:void 0,sortColumns:c?[{column:e,order:c}]:[],filters:Object.fromEntries(O)}),V=typeof e.filterDropdown=="function"?e.filterDropdown({prefixCls:"bj-table",selectedKeys:l.filter(n=>typeof n!="boolean"),setSelectedKeys:n=>J(y=>new Map(y).set(s,n)),confirm:n=>{ge(e,t,Me.get(s)??l),(n==null?void 0:n.closeDropdown)===!1&&L(s)},clearFilters:n=>{const y=e.filterResetToDefaultFilteredValue?e.defaultFilteredValue??[]:[];J(F=>new Map(F).set(s,y)),(n==null?void 0:n.confirm)===!0&&ge(e,t,y),((n==null?void 0:n.closeDropdown)===!1||(n==null?void 0:n.confirm)!==!0)&&L(s)},filters:e.filters,close:()=>L(null),visible:C}):e.filterDropdown,P=e.filterRequest?_t??[]:e.filters??[],x=Q&&!e.filterRequest?P.filter(n=>typeof e.filterSearch=="function"?e.filterSearch(Q,n):Gt(Q,n)):P,B=!!(e.filterSearch||e.filterRequest),N=i.jsxs("div",{className:E("bj-table__column-header",e.sorter&&"bj-table__column-header--sortable"),children:[e.badge!==void 0&&i.jsx("span",{"aria-label":"表头提示",className:"bj-table__column-badge-trigger",id:d,onBlur:()=>se(null),onClick:n=>n.stopPropagation(),onFocus:()=>se(s),onKeyDown:n=>n.stopPropagation(),onMouseEnter:()=>se(s),onMouseLeave:()=>se(null),role:"button",tabIndex:0,children:i.jsx("span",{"aria-hidden":"true",className:"bj-table__column-badge-shape"})}),i.jsxs("div",{className:"bj-table__column-title",children:[i.jsx("span",{className:"bj-table__column-title-content",children:I}),e.sorter&&i.jsx("span",{"aria-hidden":"true",className:"bj-table__column-sorter",children:i.jsx(me,{className:"bj-table__column-sorter-icon",type:h})})]}),(e.filters||e.filterDropdown)&&i.jsxs("div",{className:"bj-table__filter",children:[i.jsx("button",{"aria-expanded":C,"aria-label":"筛选",className:E("bj-table__filter-trigger",g&&"bj-table__filter-trigger--active"),onClick:n=>{n.stopPropagation(),re(e,t)},type:"button",children:typeof e.filterIcon=="function"?e.filterIcon(g):e.filterIcon??i.jsx(me,{className:"bj-table__filter-icon",type:"icon-a-shaixuanxi"})}),C&&fe&&typeof document<"u"&&Kt.createPortal(i.jsx("div",{className:"bj-table__filter-dropdown",onClick:n=>n.stopPropagation(),role:"dialog",style:{left:fe.left,top:fe.top},children:V??i.jsx(It.BDropdown,{...e.filterDropdownProps,emptyText:(U==null?void 0:U.filterEmptyText)??$("暂无筛选项"),multiple:e.filterMultiple!==!1,onChange:(n,y)=>{var F,Qe;J(St=>new Map(St).set(s,n)),(Qe=(F=e.filterDropdownProps)==null?void 0:F.onChange)==null||Qe.call(F,n,y)},onConfirm:n=>{var y,F;ge(e,t,n),(F=(y=e.filterDropdownProps)==null?void 0:y.onConfirm)==null||F.call(y,n)},onReset:()=>{var n,y;xt(e,t),(y=(n=e.filterDropdownProps)==null?void 0:n.onReset)==null||y.call(n)},onSearch:n=>{var y,F;Ke(n),(F=(y=e.filterDropdownProps)==null?void 0:y.onSearch)==null||F.call(y,n)},options:x.map(n=>({label:n.text,description:n.description,value:n.value})),searchable:((w=e.filterDropdownProps)==null?void 0:w.searchable)??B,searchPlaceholder:((Je=e.filterDropdownProps)==null?void 0:Je.searchPlaceholder)??(e.filterRequest?$("请输入搜索内容"):(U==null?void 0:U.filterSearchPlaceholder)??$("搜索")),searchValue:ue,value:l})}),document.body)]})]});return e.badge!==void 0?i.jsxs(Tt,{className:"bj-table__column-tooltip-wrapper",children:[i.jsx("div",{className:"bj-table__column-tooltip-trigger",children:N}),ht===s&&i.jsx(Bt,{className:"bj-table__column-tooltip",content:e.badge,getAnchorElement:()=>document.getElementById(d),getPopupContainer:()=>document.body,placement:"top"})]}):N},Ie=(e,t,s)=>{var f,l;t.selectedRowKeys===void 0&&Ee(e);const d=new Set(e),c=u.filter((C,g)=>d.has(H(C,g,j)));(f=t.onChange)==null||f.call(t,e,c),s&&((l=t.onSelect)==null||l.call(t,s,d.has(H(s,u.indexOf(s),j)),c))},mt=(e,t)=>{if(!r)return;const s=H(e,t,j),d=D.includes(s),c=r.type==="radio"?d?[]:[s]:d?D.filter(f=>f!==s):[...D,s];Ie(c,r,e)},Ve=z.filter(({record:e})=>{var t;return!((t=r==null?void 0:r.getCheckboxProps)!=null&&t.call(r,e).disabled)}),Z=Ve.map(({record:e,index:t})=>H(e,t,j)),ye=Z.length>0&&Z.every(e=>D.includes(e)),Nt=()=>{var s;if(!r||r.type==="radio")return;const e=new Set(Z),t=ye?D.filter(d=>!e.has(d)):Array.from(new Set([...D,...Z]));Ie(t,r),new Set(t),(s=r.onSelectAll)==null||s.call(r,!ye,Ve.map(({record:d})=>d))},Ct=e=>{var t;!a||e<1||e>Te||e===K||(a.current===void 0&&te(e),(t=a.onChange)==null||t.call(a,e,T),je("paginate",R,O,e))},Ft=e=>{var s,d;if(!a||e===T)return;const t=Math.min(K,Ze(_e,e));a.pageSize===void 0&&ct(e),a.current===void 0&&te(t),(s=a.onShowSizeChange)==null||s.call(a,t,e),(d=a.onChange)==null||d.call(a,t,e)},Dt=m.length+(r?1:0),X=(r==null?void 0:r.columnWidth)??48,we=e=>typeof e.width=="number"?e.width:0,Le=(e,t)=>{const s=e.fixed===!0?"left":e.fixed;return s==="left"?{position:"sticky",left:m.slice(0,t).reduce((c,f)=>c+we(f),r&&typeof X=="number"?X:0),zIndex:2}:s==="right"?{position:"sticky",right:m.slice(t+1).reduce((c,f)=>c+we(f),0),zIndex:2}:{}},Rt=o!=null&&o.x?{width:o.x===!0?"max-content":o.x,minWidth:"100%",tableLayout:Pe??"fixed"}:{tableLayout:Pe},Pt=(v==null?void 0:v.table)??"table",kt=((Ue=v==null?void 0:v.header)==null?void 0:Ue.wrapper)??"thead",Ot=(($e=v==null?void 0:v.header)==null?void 0:$e.row)??"tr",Ae=((Ge=v==null?void 0:v.header)==null?void 0:Ge.cell)??"th",q=typeof(v==null?void 0:v.body)=="object"?v.body:void 0,Et=(q==null?void 0:q.wrapper)??"tbody",He=(q==null?void 0:q.row)??"tr",xe=(q==null?void 0:q.cell)??"td",Mt=typeof ae=="function"?ae():ae??$("暂无数据"),We=typeof le=="string"?i.jsx("img",{alt:"",className:"bj-table__empty-image",src:le}):le;return i.jsxs("div",{id:it,ref:Y,className:E("bj-table",Ye&&"bj-table--bordered",`bj-table--${et}`,W&&"bj-table--loading",S.length===0&&"bj-table--empty",rt),style:at,children:[Fe&&i.jsx("div",{className:"bj-table__title",children:Fe(S)}),i.jsxs("div",{className:"bj-table__viewport",children:[i.jsx("div",{className:E("bj-table__scroll",!!(o!=null&&o.x||o!=null&&o.y)&&"bj-overlay-scrollbar-hidden"),ref:ke,style:{maxHeight:o==null?void 0:o.y},children:i.jsxs(Pt,{className:"bj-table__native-table",style:Rt,children:[m.some(e=>e.width)&&i.jsxs("colgroup",{children:[r&&i.jsx("col",{className:"bj-table__selection-col",style:{width:X}}),m.map((e,t)=>i.jsx("col",{style:{width:e.width}},e.key??t))]}),tt&&i.jsx(kt,{className:"bj-table__header",children:Oe.map((e,t)=>i.jsxs(Ot,{className:"bj-table__header-row",...ce==null?void 0:ce(m,t),children:[r&&t===0&&i.jsxs(Ae,{className:E("bj-table__header-cell","bj-table__selection-cell",!!(o!=null&&o.x)&&"bj-table__selection-cell--fixed"),rowSpan:Oe.length,scope:"col",style:{width:X},children:[r.type!=="radio"&&i.jsx(Xe,{checked:ye,disabled:Z.length===0,onChange:Nt,label:"选择当前页所有行"}),r.columnTitle]}),e.map(({column:s,colSpan:d,rowSpan:c},f)=>{var P;const l=s,C=m.indexOf(l),g=C>=0?C:f,h=!("children"in s)&&!!(l.filters||l.filterDropdown),I=!("children"in s)&&!!l.sorter,V=()=>{h?re(l,g):I&&yt(l,g)};return b.createElement(Ae,{...(P=l.onHeaderCell)==null?void 0:P.call(l,s,f),"aria-label":typeof l.title=="string"?l.title:void 0,"aria-sort":I?R.get(_.getColumnKey(l,g))==="ascend"?"ascending":R.get(_.getColumnKey(l,g))==="descend"?"descending":"none":void 0,className:E("bj-table__header-cell",l.fixed&&"bj-table__cell--fixed",(l.fixed==="left"||l.fixed===!0)&&"bj-table__cell--fixed-left",l.fixed==="right"&&"bj-table__cell--fixed-right",l.sorter&&"bj-table__header-cell--sortable",h&&"bj-table__header-cell--filterable",R.get(_.getColumnKey(l,g))&&"bj-table__header-cell--sorted",l.className),colSpan:d,key:l.key??String(l.dataIndex??f),onClick:x=>{var B,N,w;(w=(N=(B=l.onHeaderCell)==null?void 0:B.call(l,s,f))==null?void 0:N.onClick)==null||w.call(N,x),!x.target.closest(".bj-table__filter-dropdown")&&(h?re(l,g,x.currentTarget):V())},onKeyDown:x=>{var B,N,w;(w=(N=(B=l.onHeaderCell)==null?void 0:B.call(l,s,f))==null?void 0:N.onKeyDown)==null||w.call(N,x),!x.target.closest(".bj-table__filter-dropdown")&&(x.key==="Enter"||x.key===" ")&&(x.preventDefault(),h?re(l,g,x.currentTarget):V())},rowSpan:c,scope:"col",style:{textAlign:l.align,...Le(l,g)},tabIndex:h||I?0:void 0},"children"in s?_.renderColumnTitle(s.title,{filters:Object.fromEntries(O)}):vt(l,g))})]},t))}),i.jsx(Et,{className:"bj-table__body",children:z.length>0?z.map(({record:e,index:t})=>{var l;const s=H(e,t,j),d=((l=r==null?void 0:r.getCheckboxProps)==null?void 0:l.call(r,e).disabled)??!1,c=D.includes(s),f=typeof ie=="function"?ie(e,t,0):ie;return b.createElement(He,{...de==null?void 0:de(e,t),className:E("bj-table__row",c&&"bj-table__row--selected",f),key:s},r&&i.jsx(xe,{className:E("bj-table__cell","bj-table__selection-cell",!!(o!=null&&o.x)&&"bj-table__selection-cell--fixed"),style:{width:X},children:i.jsx(Xe,{checked:c,disabled:d,label:`选择第 ${t+1} 行`,name:r.type==="radio"?"bj-table-row-selection":void 0,onChange:()=>mt(e,t),type:r.type??"checkbox"})}),m.map((C,g)=>{var N;const h=C,I=Ut(e,h.dataIndex),V=h.render?h.render(I,e,t):I,P=$t(V)?V:void 0,x={...(N=h.onCell)==null?void 0:N.call(h,e,t),...P==null?void 0:P.props},B=P?P.children:V;return x.colSpan===0||x.rowSpan===0?null:b.createElement(xe,{...x,className:E("bj-table__cell",h.fixed&&"bj-table__cell--fixed",(h.fixed==="left"||h.fixed===!0)&&"bj-table__cell--fixed-left",h.fixed==="right"&&"bj-table__cell--fixed-right",h.ellipsis&&"bj-table__cell--ellipsis",h.className,x.className),key:h.key??String(h.dataIndex??g),style:{textAlign:h.align,...Le(h,g),...x.style}},i.jsx("div",{className:"bj-table__cell-content",children:B??""}))}))}):i.jsx(He,{className:"bj-table__empty-row",children:i.jsx(xe,{className:"bj-table__empty-cell",colSpan:Math.max(Dt,1),style:{height:st}})})}),Re&&i.jsx("tfoot",{className:"bj-table__summary",children:Re(S)})]})}),z.length===0&&i.jsx("div",{className:"bj-table__empty-overlay",children:i.jsxs("div",{className:"bj-table__empty-content",children:[We&&i.jsx("div",{className:"bj-table__empty-image-wrap",children:We}),i.jsx("div",{className:"bj-table__empty-text",children:Mt})]})})]}),((o==null?void 0:o.x)||(o==null?void 0:o.y))&&i.jsx(Vt,{containerRef:Y,direction:o!=null&&o.x&&(o!=null&&o.y)?"both":o!=null&&o.x?"horizontal":"vertical",gap:2,horizontalInsetEnd:0,horizontalInsetStart:0,size:4,targetRef:ke}),De&&i.jsx("div",{className:"bj-table__footer",children:De(S)}),W&&i.jsxs("div",{"aria-live":"polite","aria-busy":"true",className:"bj-table__loading",role:"status",children:[i.jsx("img",{alt:"",className:"bj-table__loading-indicator",src:wt}),i.jsx("span",{className:"bj-table__loading-text",children:"加载中..."})]}),a&&S.length>0&&i.jsx("div",{className:"bj-table__pagination",children:i.jsx(qt,{align:"end",disabled:W||a.disabled,current:K,defaultCurrent:a.defaultCurrent,defaultPageSize:a.defaultPageSize,dropdownClassName:a.dropdownClassName,hideOnSinglePage:a.hideOnSinglePage,onChange:Ct,onShowSizeChange:(e,t)=>Ft(t),pageSize:T,pageSizeOptions:a.pageSizeOptions,popupPlacement:a.popupPlacement,resolvePopupPlacement:a.resolvePopupPlacement,showQuickJumper:a.showQuickJumper,showSizeChanger:a.showSizeChanger,showTotal:a.showTotal,simple:a.simple,size:a.size,t:a.t??$,total:_e})})]})}const Ne=Jt;Ne.Column=At;Ne.ColumnGroup=Ht;exports.BTable=Ne;
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const l=require("react/jsx-runtime"),b=require("react"),Kt=require("react-dom"),qt=require("../Pagination/Pagination.js"),me=require("../Icon/Icon.js");;/* empty css */const Bt=require("../Tooltip/ContentTooltip.js"),Tt=require("../Tooltip/TooltipWrapper.js"),zt=require("../CheckBox/index.js"),It=require("../Dropdown/BDropdown.js"),Vt=require("../OverlayScrollbar/BOverlayScrollbar.js"),wt=require("../SkuInputCard/spin_loading_red.gif.js"),Lt=require("../ProductField/no_data_light.png.js"),At=require("./Column.js"),Ht=require("./ColumnGroup.js"),_=require("./utils/sortFilter.js"),ve=require("./utils/columns.js");;/* empty css */const Wt=300;function E(...p){return p.filter(Boolean).join(" ")}function Ut(p,u){return u===void 0?void 0:(Array.isArray(u)?u:[u]).reduce((r,O)=>{if(!(r==null||typeof r!="object"))return r[O]},p)}function H(p,u,j){if(typeof j=="function")return j(p,u);if(j){const r=p[String(j)];if(typeof r=="string"||typeof r=="number")return r}return u}function $t(p,u){return Math.max(1,Math.ceil(p/u))}function Gt(p){return!!(p&&typeof p=="object"&&!b.isValidElement(p)&&"props"in p)}function Jt(p,u){return(typeof u.text=="string"||typeof u.text=="number"?String(u.text):String(u.value)).toLocaleLowerCase().includes(p.toLocaleLowerCase())}function Xe({checked:p,disabled:u,label:j,name:r,onChange:O,type:W="checkbox"}){return W==="checkbox"?l.jsx(zt.BCheckBox,{"aria-label":j,checked:p,className:"bj-table__selection-checkbox",disabled:u,name:r,onChange:O,skipGroup:!0}):l.jsxs("label",{className:E("bj-table__selection-control",p&&"bj-table__selection-control--checked",u&&"bj-table__selection-control--disabled"),children:[l.jsx("input",{"aria-label":j,checked:p,className:"bj-table__selection-input",disabled:u,name:r,onChange:O,type:W}),l.jsx("span",{"aria-hidden":"true",className:"bj-table__selection-box",children:p&&l.jsx(me,{className:"bj-table__selection-check-icon",type:"icon-a-dagouxi"})})]})}function Qt({columns:p,dataSource:u=[],rowKey:j,rowSelection:r,pagination:O=!1,loading:W=!1,bordered:Ye=!0,size:et="middle",showHeader:tt=!0,emptyText:le,emptyImage:ie=Lt,emptyHeight:st,t:$=Y=>Y,className:rt,style:at,rowClassName:ne,sortDirections:lt=["ascend","descend",null],onChange:de,children:Ce,title:Fe,footer:Re,summary:De,tableLayout:Pe,components:v,onRow:ce,onHeaderRow:oe,id:it,scroll:o,locale:U}){var $e,Ge,Je;const Y=b.useRef(null),ke=b.useRef(null),ee=b.useMemo(()=>p??ve.convertChildrenToColumns(Ce),[Ce,p]),G=b.useMemo(()=>ve.flattenColumns(ee),[ee]),Oe=b.useMemo(()=>ve.buildHeaderRows(ee),[ee]),[nt,Ee]=b.useState((r==null?void 0:r.defaultSelectedRowKeys)??[]),[be,te]=b.useState(O?O.defaultCurrent??1:1),[dt,ct]=b.useState(O?O.defaultPageSize??10:10),[ot,bt]=b.useState(()=>new Map(G.flatMap((e,t)=>e.defaultSortOrder?[[_.getColumnKey(e,t),e.defaultSortOrder]]:[]))),[ft,ut]=b.useState(()=>new Map(G.flatMap((e,t)=>e.defaultFilteredValue===void 0?[]:[[_.getColumnKey(e,t),e.defaultFilteredValue]]))),[S,L]=b.useState(null),[Se,J]=b.useState(new Map),[ht,se]=b.useState(null),pt=b.useRef(`btable-${Math.random().toString(36).slice(2,10)}`).current,[A,fe]=b.useState(null),[ue,Me]=b.useState(null),[he,Ke]=b.useState(""),[Q,qe]=b.useState(""),[_t,pe]=b.useState(),_e=b.useRef(0),je=b.useRef(!1),a=O||void 0,B=(a==null?void 0:a.pageSize)??dt,D=(r==null?void 0:r.selectedRowKeys)??nt,m=G,F=new Map(ot),P=new Map(ft);m.forEach((e,t)=>{if("children"in e)return;const s=_.getColumnKey(e,t);e.sortOrder!==void 0&&F.set(s,e.sortOrder),e.filteredValue!==void 0&&P.set(s,e.filteredValue)});const Be=b.useMemo(()=>_.filterRecords(u,m,P),[m,P,u]),M=b.useMemo(()=>_.sortRecords(Be,m,F),[m,Be,F]),Te=(a==null?void 0:a.total)??M.length,ze=$t(Te,B),T=Math.min((a==null?void 0:a.current)??be,ze);b.useEffect(()=>{T!==be&&(a==null?void 0:a.current)===void 0&&te(T)},[T,a==null?void 0:a.current,be]),b.useEffect(()=>{if(!A||S===null){Me(null);return}const e=()=>{const t=A.getBoundingClientRect();Me({left:t.left,top:t.bottom+8})};return e(),document.addEventListener("scroll",e,!0),window.addEventListener("resize",e),()=>{document.removeEventListener("scroll",e,!0),window.removeEventListener("resize",e)}},[A,S]),b.useEffect(()=>{if(S===null)return;const e=t=>{const s=t.target;A!=null&&A.contains(s)||s.closest(".bj-table__filter-dropdown")||(L(null),fe(null))};return document.addEventListener("mousedown",e),()=>document.removeEventListener("mousedown",e)},[A,S]),b.useEffect(()=>{const e=window.setTimeout(()=>qe(he.trim()),Wt);return()=>window.clearTimeout(e)},[he]),b.useEffect(()=>{if(S===null)return;const e=G.find((s,d)=>_.getColumnKey(s,d)===S);if(!e||"children"in e||!e.filterRequest)return;const t=++_e.current;Promise.resolve().then(()=>e.filterRequest(Q)).then(s=>{_e.current===t&&pe(s)},()=>{_e.current===t&&pe([])})},[Q,G,S]);const z=b.useMemo(()=>{if(!a||a.serverPagination)return M.map((t,s)=>({record:t,index:s}));const e=(T-1)*B;return M.slice(e,e+B).map((t,s)=>({record:t,index:e+s}))},[T,B,a,M]),Ie=b.useMemo(()=>z.map(({record:e,index:t})=>H(e,t,j)),[j,z]),jt=D.map(String).join("|"),gt=Ie.map(String).join("|");b.useEffect(()=>{var c;if(!r||D.length===0)return;const e=new Set(Ie),t=D.filter(f=>e.has(f));if(t.length===D.length)return;r.selectedRowKeys===void 0&&Ee(t);const s=new Set(t),d=z.filter(({record:f,index:i})=>s.has(H(f,i,j))).map(({record:f})=>f);(c=r.onChange)==null||c.call(r,t,d,{type:"multiple"})},[r,j,jt,gt,z]);const re=(e,t=F,s=P,d=T,c=B)=>{const f=Object.fromEntries(s),i=_.filterRecords(u,m,s),N=_.sortRecords(i,m,t);de==null||de({...a,current:d,pageSize:c,total:(a==null?void 0:a.total)??N.length},f,_.getSorterResult(m,t),{action:e,currentDataSource:N})},yt=(e,t)=>{if(!e.sorter)return;const s=_.getColumnKey(e,t),d=_.getNextSortOrder(F.get(s)??null,e.sortDirections??lt),c=new Map;c.set(s,d),e.sortOrder===void 0&&bt(c),re("sort",c)},ge=(e,t,s)=>{const d=_.getColumnKey(e,t),c=new Map(P);c.set(d,s),e.filteredValue===void 0&&ut(c),L(null),(a==null?void 0:a.current)===void 0&&te(1),re("filter",F,c,1)},xt=(e,t)=>{const s=_.getColumnKey(e,t),d=e.filterResetToDefaultFilteredValue?e.defaultFilteredValue??[]:[];J(c=>new Map(c).set(s,d))},ae=(e,t,s)=>{var c,f,i,N;const d=_.getColumnKey(e,t);if(S===d){L(null),fe(null),(c=e.onFilterDropdownOpenChange)==null||c.call(e,!1),(f=e.onFilterDropdownVisibleChange)==null||f.call(e,!1);return}Ke(""),qe(""),pe(void 0),J(g=>new Map(g).set(d,P.get(d)??[])),L(d),s&&fe(s),(i=e.onFilterDropdownOpenChange)==null||i.call(e,!0),(N=e.onFilterDropdownVisibleChange)==null||N.call(e,!0)},vt=(e,t)=>{var w,Qe;const s=_.getColumnKey(e,t),d=`bj-table-badge-${pt}-${String(s).replace(/[^a-zA-Z0-9_-]/g,"-")}`,c=F.get(s)??null,f=P.get(s)??[],i=Se.get(s)??f,N=e.filterDropdownOpen??e.filterDropdownVisible??S===s,g=e.filtered||f.length>0,h=c==="ascend"?"icon-a-zhengxumian":c==="descend"?"icon-a-daoxumian":"icon-a-weipaixumian",I=_.renderColumnTitle(e.title,{sortOrder:c,sortColumn:c?e:void 0,sortColumns:c?[{column:e,order:c}]:[],filters:Object.fromEntries(P)}),V=typeof e.filterDropdown=="function"?e.filterDropdown({prefixCls:"bj-table",selectedKeys:i.filter(n=>typeof n!="boolean"),setSelectedKeys:n=>J(y=>new Map(y).set(s,n)),confirm:n=>{ge(e,t,Se.get(s)??i),(n==null?void 0:n.closeDropdown)===!1&&L(s)},clearFilters:n=>{const y=e.filterResetToDefaultFilteredValue?e.defaultFilteredValue??[]:[];J(R=>new Map(R).set(s,y)),(n==null?void 0:n.confirm)===!0&&ge(e,t,y),((n==null?void 0:n.closeDropdown)===!1||(n==null?void 0:n.confirm)!==!0)&&L(s)},filters:e.filters,close:()=>L(null),visible:N}):e.filterDropdown,k=e.filterRequest?_t??[]:e.filters??[],x=Q&&!e.filterRequest?k.filter(n=>typeof e.filterSearch=="function"?e.filterSearch(Q,n):Jt(Q,n)):k,q=!!(e.filterSearch||e.filterRequest),C=l.jsxs("div",{className:E("bj-table__column-header",e.sorter&&"bj-table__column-header--sortable"),children:[e.badge!==void 0&&l.jsx("span",{"aria-label":"表头提示",className:"bj-table__column-badge-trigger",id:d,onBlur:()=>se(null),onClick:n=>n.stopPropagation(),onFocus:()=>se(s),onKeyDown:n=>n.stopPropagation(),onMouseEnter:()=>se(s),onMouseLeave:()=>se(null),role:"button",tabIndex:0,children:l.jsx("span",{"aria-hidden":"true",className:"bj-table__column-badge-shape"})}),l.jsxs("div",{className:"bj-table__column-title",children:[l.jsx("span",{className:"bj-table__column-title-content",children:I}),e.sorter&&l.jsx("span",{"aria-hidden":"true",className:"bj-table__column-sorter",children:l.jsx(me,{className:"bj-table__column-sorter-icon",type:h})})]}),(e.filters||e.filterDropdown)&&l.jsxs("div",{className:"bj-table__filter",children:[l.jsx("button",{"aria-expanded":N,"aria-label":"筛选",className:E("bj-table__filter-trigger",g&&"bj-table__filter-trigger--active"),onClick:n=>{n.stopPropagation(),ae(e,t)},type:"button",children:typeof e.filterIcon=="function"?e.filterIcon(g):e.filterIcon??l.jsx(me,{className:"bj-table__filter-icon",type:"icon-a-shaixuanxi"})}),N&&ue&&typeof document<"u"&&Kt.createPortal(l.jsx("div",{className:"bj-table__filter-dropdown",onClick:n=>n.stopPropagation(),role:"dialog",style:{left:ue.left,top:ue.top},children:V??l.jsx(It.BDropdown,{...e.filterDropdownProps,emptyText:(U==null?void 0:U.filterEmptyText)??$("暂无结果"),multiple:e.filterMultiple!==!1,onChange:(n,y)=>{var R,Ze;J(Mt=>new Map(Mt).set(s,n)),(Ze=(R=e.filterDropdownProps)==null?void 0:R.onChange)==null||Ze.call(R,n,y)},onConfirm:n=>{var y,R;ge(e,t,n),(R=(y=e.filterDropdownProps)==null?void 0:y.onConfirm)==null||R.call(y,n)},onReset:()=>{var n,y;xt(e,t),(y=(n=e.filterDropdownProps)==null?void 0:n.onReset)==null||y.call(n)},onSearch:n=>{var y,R;Ke(n),(R=(y=e.filterDropdownProps)==null?void 0:y.onSearch)==null||R.call(y,n)},options:x.map(n=>({label:n.text,description:n.description,value:n.value})),searchable:((w=e.filterDropdownProps)==null?void 0:w.searchable)??q,searchPlaceholder:((Qe=e.filterDropdownProps)==null?void 0:Qe.searchPlaceholder)??(e.filterRequest?$("请输入搜索内容"):(U==null?void 0:U.filterSearchPlaceholder)??$("搜索")),searchValue:he,value:i})}),document.body)]})]});return e.badge!==void 0?l.jsxs(Tt,{className:"bj-table__column-tooltip-wrapper",children:[l.jsx("div",{className:"bj-table__column-tooltip-trigger",children:C}),ht===s&&l.jsx(Bt,{className:"bj-table__column-tooltip",content:e.badge,getAnchorElement:()=>document.getElementById(d),getPopupContainer:()=>document.body,placement:"top"})]}):C},Ve=(e,t,s)=>{var f,i;t.selectedRowKeys===void 0&&Ee(e);const d=new Set(e),c=u.filter((N,g)=>d.has(H(N,g,j)));(f=t.onChange)==null||f.call(t,e,c),s&&((i=t.onSelect)==null||i.call(t,s,d.has(H(s,u.indexOf(s),j)),c))},mt=(e,t)=>{if(!r)return;const s=H(e,t,j),d=D.includes(s),c=r.type==="radio"?d?[]:[s]:d?D.filter(f=>f!==s):[...D,s];Ve(c,r,e)},we=z.filter(({record:e})=>{var t;return!((t=r==null?void 0:r.getCheckboxProps)!=null&&t.call(r,e).disabled)}),Z=we.map(({record:e,index:t})=>H(e,t,j)),ye=Z.length>0&&Z.every(e=>D.includes(e)),Nt=()=>{var s;if(!r||r.type==="radio")return;const e=new Set(Z),t=ye?D.filter(d=>!e.has(d)):Array.from(new Set([...D,...Z]));Ve(t,r),new Set(t),(s=r.onSelectAll)==null||s.call(r,!ye,we.map(({record:d})=>d))},Ct=e=>{var t;!a||e<1||e>ze||e===T||(a.current===void 0&&te(e),(t=a.onChange)==null||t.call(a,e,B),re("paginate",F,P,e))},Ft=e=>{var s,d;if(!a||e===B)return;const t=1;je.current=!0,a.pageSize===void 0&&ct(e),a.current===void 0&&te(t),(s=a.onShowSizeChange)==null||s.call(a,t,e),(d=a.onChange)==null||d.call(a,t,e),re("paginate",F,P,t,e)},Rt=m.length+(r?1:0),X=(r==null?void 0:r.columnWidth)??48,Le=e=>typeof e.width=="number"?e.width:0,Ae=(e,t)=>{const s=e.fixed===!0?"left":e.fixed;return s==="left"?{position:"sticky",left:m.slice(0,t).reduce((c,f)=>c+Le(f),r&&typeof X=="number"?X:0),zIndex:2}:s==="right"?{position:"sticky",right:m.slice(t+1).reduce((c,f)=>c+Le(f),0),zIndex:2}:{}},Dt=o!=null&&o.x?{width:o.x===!0?"max-content":o.x,minWidth:"100%",tableLayout:Pe??"fixed"}:{tableLayout:Pe},Pt=(v==null?void 0:v.table)??"table",kt=(($e=v==null?void 0:v.header)==null?void 0:$e.wrapper)??"thead",Ot=((Ge=v==null?void 0:v.header)==null?void 0:Ge.row)??"tr",He=((Je=v==null?void 0:v.header)==null?void 0:Je.cell)??"th",K=typeof(v==null?void 0:v.body)=="object"?v.body:void 0,Et=(K==null?void 0:K.wrapper)??"tbody",We=(K==null?void 0:K.row)??"tr",xe=(K==null?void 0:K.cell)??"td",St=typeof le=="function"?le():le??$("暂无数据"),Ue=typeof ie=="string"?l.jsx("img",{alt:"",className:"bj-table__empty-image",src:ie}):ie;return l.jsxs("div",{id:it,ref:Y,className:E("bj-table",Ye&&"bj-table--bordered",`bj-table--${et}`,W&&"bj-table--loading",M.length===0&&"bj-table--empty",rt),style:at,children:[Fe&&l.jsx("div",{className:"bj-table__title",children:Fe(M)}),l.jsxs("div",{className:"bj-table__viewport",children:[l.jsx("div",{className:E("bj-table__scroll",!!(o!=null&&o.x||o!=null&&o.y)&&"bj-overlay-scrollbar-hidden"),ref:ke,style:{maxHeight:o==null?void 0:o.y},children:l.jsxs(Pt,{className:"bj-table__native-table",style:Dt,children:[m.some(e=>e.width)&&l.jsxs("colgroup",{children:[r&&l.jsx("col",{className:"bj-table__selection-col",style:{width:X}}),m.map((e,t)=>l.jsx("col",{style:{width:e.width}},e.key??t))]}),tt&&l.jsx(kt,{className:"bj-table__header",children:Oe.map((e,t)=>l.jsxs(Ot,{className:"bj-table__header-row",...oe==null?void 0:oe(m,t),children:[r&&t===0&&l.jsxs(He,{className:E("bj-table__header-cell","bj-table__selection-cell",!!(o!=null&&o.x)&&"bj-table__selection-cell--fixed"),rowSpan:Oe.length,scope:"col",style:{width:X},children:[r.type!=="radio"&&l.jsx(Xe,{checked:ye,disabled:Z.length===0,onChange:Nt,label:"选择当前页所有行"}),r.columnTitle]}),e.map(({column:s,colSpan:d,rowSpan:c},f)=>{var k;const i=s,N=m.indexOf(i),g=N>=0?N:f,h=!("children"in s)&&!!(i.filters||i.filterDropdown),I=!("children"in s)&&!!i.sorter,V=()=>{h?ae(i,g):I&&yt(i,g)};return b.createElement(He,{...(k=i.onHeaderCell)==null?void 0:k.call(i,s,f),"aria-label":typeof i.title=="string"?i.title:void 0,"aria-sort":I?F.get(_.getColumnKey(i,g))==="ascend"?"ascending":F.get(_.getColumnKey(i,g))==="descend"?"descending":"none":void 0,className:E("bj-table__header-cell",i.fixed&&"bj-table__cell--fixed",(i.fixed==="left"||i.fixed===!0)&&"bj-table__cell--fixed-left",i.fixed==="right"&&"bj-table__cell--fixed-right",i.sorter&&"bj-table__header-cell--sortable",h&&"bj-table__header-cell--filterable",F.get(_.getColumnKey(i,g))&&"bj-table__header-cell--sorted",i.className),colSpan:d,key:i.key??String(i.dataIndex??f),onClick:x=>{var q,C,w;(w=(C=(q=i.onHeaderCell)==null?void 0:q.call(i,s,f))==null?void 0:C.onClick)==null||w.call(C,x),!x.target.closest(".bj-table__filter-dropdown")&&(h?ae(i,g,x.currentTarget):V())},onKeyDown:x=>{var q,C,w;(w=(C=(q=i.onHeaderCell)==null?void 0:q.call(i,s,f))==null?void 0:C.onKeyDown)==null||w.call(C,x),!x.target.closest(".bj-table__filter-dropdown")&&(x.key==="Enter"||x.key===" ")&&(x.preventDefault(),h?ae(i,g,x.currentTarget):V())},rowSpan:c,scope:"col",style:{textAlign:i.align,...Ae(i,g)},tabIndex:h||I?0:void 0},"children"in s?_.renderColumnTitle(s.title,{filters:Object.fromEntries(P)}):vt(i,g))})]},t))}),l.jsx(Et,{className:"bj-table__body",children:z.length>0?z.map(({record:e,index:t})=>{var i;const s=H(e,t,j),d=((i=r==null?void 0:r.getCheckboxProps)==null?void 0:i.call(r,e).disabled)??!1,c=D.includes(s),f=typeof ne=="function"?ne(e,t,0):ne;return b.createElement(We,{...ce==null?void 0:ce(e,t),className:E("bj-table__row",c&&"bj-table__row--selected",f),key:s},r&&l.jsx(xe,{className:E("bj-table__cell","bj-table__selection-cell",!!(o!=null&&o.x)&&"bj-table__selection-cell--fixed"),style:{width:X},children:l.jsx(Xe,{checked:c,disabled:d,label:`选择第 ${t+1} 行`,name:r.type==="radio"?"bj-table-row-selection":void 0,onChange:()=>mt(e,t),type:r.type??"checkbox"})}),m.map((N,g)=>{var C;const h=N,I=Ut(e,h.dataIndex),V=h.render?h.render(I,e,t):I,k=Gt(V)?V:void 0,x={...(C=h.onCell)==null?void 0:C.call(h,e,t),...k==null?void 0:k.props},q=k?k.children:V;return x.colSpan===0||x.rowSpan===0?null:b.createElement(xe,{...x,className:E("bj-table__cell",h.fixed&&"bj-table__cell--fixed",(h.fixed==="left"||h.fixed===!0)&&"bj-table__cell--fixed-left",h.fixed==="right"&&"bj-table__cell--fixed-right",h.ellipsis&&"bj-table__cell--ellipsis",h.className,x.className),key:h.key??String(h.dataIndex??g),style:{textAlign:h.align,...Ae(h,g),...x.style}},l.jsx("div",{className:"bj-table__cell-content",children:q??""}))}))}):l.jsx(We,{className:"bj-table__empty-row",children:l.jsx(xe,{className:"bj-table__empty-cell",colSpan:Math.max(Rt,1),style:{height:st}})})}),De&&l.jsx("tfoot",{className:"bj-table__summary",children:De(M)})]})}),z.length===0&&l.jsx("div",{className:"bj-table__empty-overlay",children:l.jsxs("div",{className:"bj-table__empty-content",children:[Ue&&l.jsx("div",{className:"bj-table__empty-image-wrap",children:Ue}),l.jsx("div",{className:"bj-table__empty-text",children:St})]})})]}),((o==null?void 0:o.x)||(o==null?void 0:o.y))&&l.jsx(Vt,{containerRef:Y,direction:o!=null&&o.x&&(o!=null&&o.y)?"both":o!=null&&o.x?"horizontal":"vertical",gap:2,horizontalInsetEnd:0,horizontalInsetStart:0,size:4,targetRef:ke}),Re&&l.jsx("div",{className:"bj-table__footer",children:Re(M)}),W&&l.jsxs("div",{"aria-live":"polite","aria-busy":"true",className:"bj-table__loading",role:"status",children:[l.jsx("img",{alt:"",className:"bj-table__loading-indicator",src:wt}),l.jsx("span",{className:"bj-table__loading-text",children:"加载中..."})]}),a&&M.length>0&&l.jsx("div",{className:"bj-table__pagination",children:l.jsx(qt,{align:"end",disabled:W||a.disabled,current:T,defaultCurrent:a.defaultCurrent,defaultPageSize:a.defaultPageSize,dropdownClassName:a.dropdownClassName,hideOnSinglePage:a.hideOnSinglePage,onChange:e=>{if(je.current){je.current=!1;return}Ct(e)},onShowSizeChange:(e,t)=>Ft(t),pageSize:B,pageSizeOptions:a.pageSizeOptions,popupPlacement:a.popupPlacement,resolvePopupPlacement:a.resolvePopupPlacement,showQuickJumper:a.showQuickJumper,showSizeChanger:a.showSizeChanger,showTotal:a.showTotal,simple:a.simple,size:a.size,t:a.t??$,total:Te})})]})}const Ne=Qt;Ne.Column=At;Ne.ColumnGroup=Ht;exports.BTable=Ne;
|