@stenajs-webui/grid 17.7.0 → 17.8.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/index.js CHANGED
@@ -7,5 +7,5 @@
7
7
  background: ${e};
8
8
  }
9
9
  `:""}
10
- `,It=T.memo(function({item:t,idListForEnabledItems:o,rowIndex:n,numRows:s,colIndexOffset:l,alwaysVisible:c,shiftPressedRef:a}){const u=i.useRef(null),x=Ge(),{stickyCheckboxColumn:d}=S(),p=_(),{columnIndexPerColumnId:f}=ut(),{showRowCheckbox:C,rowBackgroundResolver:w,checkboxDisabledResolver:m,enableGridCell:v,rowIndent:g,enableExpandCollapse:y}=S(),{isExpanded:k}=Pe(t),{isSelected:b,toggleSelected:A,shiftAndToggleSelected:j}=ft(t,o),O=h.useOnScreen(u,{rootMargin:"400px 0px 400px 0px",threshold:0}),E=i.useMemo(()=>w==null?void 0:w(t,b),[b,t,w]),M=rr(E,b,k),P=nr(E,b,k),N=sr(E,b,P),B=i.useMemo(()=>m==null?void 0:m(t),[t,m]),L=at(),Q=Ce(L,t),q=it(),z=Ce(q,t),K=i.useMemo(()=>r.jsx(r.Fragment,{children:r.jsxs(r.Fragment,{children:[g&&r.jsx("td",{style:{background:Q},children:r.jsx(h.Indent,{num:g})}),y&&r.jsx("td",{style:{background:d?"inherit":void 0,position:d?"sticky":void 0,left:d?"0px":void 0,boxShadow:d?"var(--swui-sticky-column-shadow-right)":void 0,zIndex:d?"var(--swui-sticky-column-z-index)":void 0},children:r.jsx(h.Row,{width:"var(--swui-expand-cell-width)",minWidth:"var(--swui-expand-cell-width)",alignItems:"center",justifyContent:"center",children:r.jsx(Jo,{colIndex:l,rowIndex:v?n:0,numRows:v?s:0,item:t})})}),C&&r.jsx("td",{style:{background:d?"inherit":void 0,position:d?"sticky":void 0,left:y&&d?"var(--swui-expand-cell-width)":d?"0px":void 0,textAlign:"center",boxShadow:d?"var(--swui-sticky-column-shadow-right)":void 0,zIndex:d?"var(--swui-sticky-column-z-index)":void 0},children:r.jsx(h.Row,{width:"var(--swui-checkbox-cell-width)",minWidth:"var(--swui-checkbox-cell-width)",alignItems:"center",justifyContent:"center",children:r.jsx(Ct,{disabled:B,value:b,onValueChange:A,onValueChangeAndShift:j,colIndex:l+(y?1:0),rowIndex:n,numRows:s,shiftPressedRef:a})})}),p.map(({groupConfig:V,groupId:de},$)=>r.jsx(T.Fragment,{children:V.columnOrder.map((G,ee)=>r.jsx(kt,{columnId:G,item:t,colIndex:l+f[G],rowIndex:n,numRows:s,borderFromGroup:ie($,ee,V.borderLeft),disableBorderLeft:$===0&&ee===0},G))},de)),g&&r.jsx("td",{style:{background:z},children:r.jsx(h.Indent,{num:g})}),r.jsx("td",{})]})}),[l,f,B,y,v,Q,p,b,t,z,s,g,n,j,a,C,d,A]);return r.jsxs(r.Fragment,{children:[r.jsx(St,{hoverBackground:P,background:M,focusBackground:N,borderLeft:k?be:ne,ref:u,children:O||c||k?K:r.jsx("td",{colSpan:x,style:{height:"var(--current-row-height)"}})}),r.jsx(or,{item:t})]})}),rr=(e,t,o)=>e?typeof e=="string"?e:e==null?void 0:e.background:t?H.cssColor("--lhds-color-blue-100"):o?ve:"white",nr=(e,t,o)=>e?typeof e=="string"?e:e==null?void 0:e.hoverBackground:t?H.cssColor("--lhds-color-blue-100"):o?Ze:H.cssColor("--lhds-color-ui-100"),sr=(e,t,o)=>{if(t)return H.cssColor("--lhds-color-blue-100");if(e)return o},lr=e=>Object.values(e).some(t=>cr(t)),cr=e=>Boolean(e.renderSummaryCell||e.summaryText),ar="_summaryRow_12x8k_1";var ir={summaryRow:ar};const dr=T.memo(function({columnId:t,items:o,disableBorderLeft:n,borderFromGroup:s,colSpan:l}){const c=Ee(),{renderSummaryCell:a,summaryText:u,borderLeft:x,zIndex:d,width:p,minWidth:f,justifyContentCell:C}=J(t),w=Oe(s,n,x),m=c[t],v=m.sticky?d!=null?d:"var(--swui-sticky-column-z-index)":d!=null?d:1,g=m.sticky&&m.type==="last-group"&&m.isFirstColumnInLastGroup||m.sticky&&m.type==="column"&&m.right?"var(--swui-sticky-column-shadow-left)":m.sticky?"var(--swui-sticky-column-shadow-right)":void 0,y=i.useMemo(()=>u==null?void 0:u({items:o}),[o,u]),k=i.useMemo(()=>a==null?void 0:a({items:o,text:y}),[o,a,y]);return r.jsx("td",{colSpan:l,style:{borderLeft:w,position:m.sticky?"sticky":void 0,left:m.sticky?m.left:void 0,right:m.sticky?m.right:void 0,boxShadow:g,zIndex:v,height:"var(--current-row-height)"},children:r.jsx(h.Row,{width:p,minWidth:f,height:"inherit",overflow:"hidden",justifyContent:C,alignItems:"center",children:a?k:r.jsx(h.Indent,{children:r.jsx(h.Text,{variant:"bold",children:y})})})})}),ur=(e,t)=>{const o=[];for(let n=0;n<e.length;n++){const{summaryCellColSpan:s}=t[e[n]],l=Math.min(s!=null?s:1,e.length-n);o.push({columnId:e[n],colSpan:l});const c=s!=null?s:1;c>1&&(n+=c-1)}return o},hr=T.memo(function({items:t}){const o=_(),{showRowCheckbox:n,enableExpandCollapse:s,columns:l,rowIndent:c}=S();return r.jsxs("tr",{className:ir.summaryRow,children:[c&&r.jsx("td",{children:r.jsx(h.Indent,{num:c})}),s&&r.jsx("td",{}),n&&r.jsx("td",{}),o.map(({groupConfig:a,groupId:u},x)=>r.jsx(T.Fragment,{children:ur(a.columnOrder,l).map(({columnId:d,colSpan:p},f)=>r.jsx(dr,{colSpan:p,columnId:d,items:t,borderFromGroup:ie(x,f,a.borderLeft),disableBorderLeft:x===0&&f===0},d))},u)),c&&r.jsx("td",{children:r.jsx(h.Indent,{num:c})}),r.jsx("td",{})]})}),xr=function({items:t}){const{columns:o}=S();return i.useMemo(()=>lr(o),[o])?r.jsx(hr,{items:t}):null},Rt=e=>t=>!(e!=null&&e(t)),Tt=T.memo(function({items:t,colIndexOffset:o=0,rowIndexOffset:n=0}){const s=i.useRef(0),l=i.useRef(!1),{keyResolver:c,disableInfiniteList:a,checkboxDisabledResolver:u}=S(),{sortOrder:{sortBy:x,desc:d}}=F(),p=mt(x),f=i.useMemo(()=>{if(!t||!t.length)return[];if(!p)return t;const w=[...t];return w.sort((m,v)=>pt(p(m),p(v))),d&&w.reverse(),a||s.current++,w},[t,p,d,a]),C=i.useMemo(()=>f.filter(Rt(u)).map(w=>c(w)),[f,u,c]);return i.useEffect(()=>{const w=v=>{v.key==="Shift"&&(l.current=!1)},m=v=>{v.key==="Shift"&&(l.current=!0)};return document.addEventListener("keyup",w),document.addEventListener("keydown",m),()=>{document.removeEventListener("keyup",w),document.removeEventListener("keydown",m)}},[]),r.jsxs(T.Fragment,{children:[f.map((w,m)=>r.jsx(It,{alwaysVisible:a||f.length<30,item:w,idListForEnabledItems:C,colIndexOffset:o,rowIndex:m+n,numRows:f.length,shiftPressedRef:l},c(w))),r.jsx(xr,{items:f})]},s.current)}),Et=T.memo(function({error:t,bannerError:o,loading:n,items:s,noItemsLabel:l="There is no data available.",noItemsContentRight:c,noItemsContentBottom:a,noItemsHeader:u,colIndexOffset:x,rowIndexOffset:d,variant:p,errorLabel:f}){var w;const C=Ge();return o?r.jsx("tbody",{children:r.jsx("tr",{children:r.jsx("td",{colSpan:C,children:r.jsx(h.Spacing,{num:4,justifyContent:"center",children:r.jsx(h.Box,{alignItems:"center",children:r.jsx(R.ResultListBanner,{bannerState:o,variant:"error"})})})})})}):t||f?r.jsx("tbody",{children:r.jsx("tr",{children:r.jsx("td",{colSpan:C,children:r.jsx(h.Spacing,{num:4,justifyContent:"center",children:r.jsx(h.Box,{alignItems:"center",children:r.jsx(R.Banner,{headerText:(w=t?t.message:f)!=null?w:"Unknown error",variant:"error"})})})})})}):n?r.jsx("tbody",{children:r.jsx("tr",{children:r.jsx("td",{colSpan:C,children:r.jsx(h.Spacing,{num:4,children:r.jsx(qe.LoadingScreen,{})})})})}):!s||!s.length?r.jsx("tbody",{children:r.jsx("tr",{children:r.jsx("td",{colSpan:C,children:r.jsx(h.Row,{spacing:4,justifyContent:"center",children:r.jsx(R.Banner,{text:l,headerText:u,contentRight:c,variant:"info",children:a})})})})}):r.jsx("tbody",{children:r.jsx(Tt,{variant:p,items:s,colIndexOffset:x,rowIndexOffset:d})})}),Gt=e=>{const{keyResolver:t,checkboxDisabledResolver:o}=S(),{selectedIds:{selectedIds:n}}=F(),{actions:{setSelectedIds:s,clearSelection:l},dispatch:c}=Z(),a=n.length===0,u=e?e.length>0&&n.length===e.length:!1,x=i.useCallback(()=>{e&&c(a?s(e.filter(Rt(o)).map(d=>t(d))):l())},[e,a,c,s,o,t,l]);return{selectionIsEmpty:a,allItemsAreSelected:u,onClickCheckbox:x}},pr=e=>{const{keyResolver:t}=S(),{expandedRows:{selectedIds:o}}=F(),{actions:{collapseAll:n,expandByIds:s},dispatch:l}=Z(),c=e?e.length>0&&o.length===e.length:!1,a=i.useCallback(()=>{e&&l(c?n():s(e.map(u=>t(u))))},[c,n,l,e,t,s]);return{allItemsAreExpanded:c,toggleExpanded:a}},At=e=>{const{dispatch:t,actions:o}=Z(),{sortOrder:{desc:n,sortBy:s}}=F();return i.useMemo(()=>{const l=e===s;return{arrow:l?n?"up":"down":void 0,selected:l,desc:n,onClickColumnHead:()=>{t(o.sortBy(e,l?!n:!1))}}},[s,n,o,e,t])},mr=T.memo(function({columnId:t,borderFromGroup:o,disableBorderLeft:n,stickyHeader:s,top:l}){const{justifyContentHeader:c,columnLabel:a,borderLeft:u,infoIconTooltipText:x,background:d,zIndex:p,sortOrderIconVariant:f,width:C,minWidth:w}=J(t),{disableSorting:m,sortOrderIconVariant:v}=S(),g=Ee(),{arrow:y,onClickColumnHead:k}=At(t),b=typeof a=="string"?a:gt(t),A=Oe(o,n,u),j=g[t];return r.jsx("th",{style:{background:d!=null?d:"white",borderLeft:A,position:s||j.sticky?"sticky":void 0,left:j.left,right:j.right,top:l,boxShadow:j.sticky&&j.isFirstColumnInLastGroup&&s?"var(--swui-sticky-header-shadow-and-left)":j.sticky&&j.isFirstColumnInLastGroup?"var(--swui-sticky-column-shadow-left)":s&&j.sticky?"var(--swui-sticky-header-shadow-and-right)":s?"var(--swui-sticky-header-shadow)":j.sticky?"var(--swui-sticky-column-shadow-right)":void 0,zIndex:s&&j.sticky?"var(--swui-sticky-header-in-sticky-column-z-index)":s?"var(--swui-sticky-header-z-index)":j.sticky?"var(--swui-sticky-group-header-z-index)":p,width:C,minWidth:w},children:r.jsx(ce,{width:"inherit",minWidth:"inherit",arrow:!m&&b?y:void 0,onClick:m?void 0:k,label:b,infoIconTooltipText:x,alignRight:c==="flex-end",sortOrderIconVariant:f!=null?f:v})})}),Cr=(e,t,o,n)=>{if(e&&t!==void 0)return`calc(${e} + ${o})`;if(n&&t)return`calc(0px + ${o})`;if(e)return e;if(n)return 0},Ot=T.memo(function({items:t,height:o=se}){const n=_(),{showHeaderCheckbox:s,showHeaderExpandCollapse:l,enableExpandCollapse:c,rowIndent:a,headerRowOffsetTop:u,zIndex:x,stickyHeader:d,stickyCheckboxColumn:p,showRowCheckbox:f}=S(),C=So(),{allItemsAreExpanded:w,toggleExpanded:m}=pr(t),{allItemsAreSelected:v,onClickCheckbox:g,selectionIsEmpty:y}=Gt(t),k=!t||t.length===0,b={zIndex:d&&p?"var(--swui-sticky-header-in-sticky-column-z-index)":p?"var(--swui-sticky-group-header-z-index)":d?"var(--swui-sticky-header-z-index)":x,top:Cr(u,C,o,d),background:d||p?"white":void 0,position:d||p?"sticky":void 0,boxShadow:d&&p?"var(--swui-sticky-header-shadow-and-right)":p?"var(--swui-sticky-column-shadow-right)":d?"var(--swui-sticky-header-shadow)":void 0};return r.jsxs(St,{height:o,borderLeft:ne,children:[a&&r.jsx("th",{style:b,children:r.jsx(h.Row,{indent:a})}),c&&r.jsx("th",{style:{...b,left:"0px",textAlign:"left"},children:r.jsx(h.Row,{width:"var(--swui-expand-cell-width)",minWidth:"var(--swui-expand-cell-width)",alignItems:"center",justifyContent:"center",children:l&&r.jsx(R.FlatButton,{size:"small",leftIcon:w?ze.faChevronDown:Fe.faChevronRight,onClick:m})})}),(f||s)&&r.jsx("th",{style:{...b,overflow:"hidden",left:p&&c?"var(--swui-expand-cell-width)":p?"0px":void 0},children:r.jsx(h.Row,{width:"var(--swui-checkbox-cell-width)",minWidth:"var(--swui-checkbox-cell-width)",alignItems:"center",justifyContent:"center",children:s&&r.jsx(X.Checkbox,{size:"small",disabled:k,value:v,indeterminate:!y&&!v,onValueChange:g})})}),n.map(({groupConfig:A,groupId:j},O)=>r.jsx(T.Fragment,{children:A.columnOrder.map((E,M)=>r.jsx(mr,{columnId:E,borderFromGroup:ie(O,M,A.borderLeft),disableBorderLeft:O===0&&M===0,stickyHeader:d,top:b.top},E))},j)),a&&r.jsx("th",{style:b,children:r.jsx(h.Row,{indent:a})}),r.jsx("th",{style:b})]})}),fr=()=>{const e=S(),t=_(),o=e.enableExpandCollapse||e.showRowCheckbox,n=h.booleanOrNumberToNumber(e.rowIndent);return r.jsxs(r.Fragment,{children:[n?r.jsx("colgroup",{children:r.jsx("col",{style:{width:`calc(var(--swui-metrics-indent) * ${n})`}})}):null,o&&r.jsxs("colgroup",{children:[e.enableExpandCollapse&&r.jsx("col",{style:{width:"var(--swui-expand-cell-width)"}}),e.showRowCheckbox&&r.jsx("col",{style:{width:"var(--swui-checkbox-cell-width)"}})]}),t.map(({groupConfig:s,groupId:l})=>r.jsx("colgroup",{children:s.columnOrder.map(c=>r.jsx("col",{style:{width:e.columns[c].width,minWidth:e.columns[c].minWidth}},c))},l)),n?r.jsx("colgroup",{children:r.jsx("col",{style:{width:`calc(var(--swui-metrics-indent) * ${n})`}})}):null]})},wr=function({tableContext:t,config:o,columnOrder:n,columnGroupOrder:s,tableId:l,variant:c="standard",onKeyDown:a,...u}){const x=h.useDomId(),{initialSortOrderDesc:d,initialSortOrder:p,enableExpandCollapse:f,stickyCheckboxColumn:C}=o,{tableContext:w}=xt(l!=null?l:x,Te(p,d)),m=t||w,{state:v,actions:g,dispatch:y}=m,k=i.useMemo(()=>({actions:g,dispatch:y}),[g,y]),b=Boolean(s!=null?s:"columnGroupOrder"in o),A="columnGroups"in o?o.columnGroups:void 0,j="columnGroupOrder"in o?o.columnGroupOrder:void 0,O="columnOrder"in o?o.columnOrder:void 0,E=i.useMemo(()=>Ae(A,j,O),[A,j,O]),M=i.useMemo(()=>Oo(o),[o]),P=i.useMemo(()=>_o(o),[o]),N=i.useMemo(()=>qo(o),[o]),B=i.useMemo(()=>{try{Mo(o);return}catch(L){return L instanceof Error?L:new Error("Unknown error")}},[o]);return B?r.jsx(qe.ErrorScreen,{text:B.message}):r.jsx("table",{className:$e.default(Ne.standardTable,Ne[c]),style:{width:"100%",isolation:"isolate","--current-left-offset":f&&C?"calc(var(--swui-expand-cell-width) + var(--swui-checkbox-cell-width))":C?"var(--swui-checkbox-cell-width)":f?"var(--swui-expand-cell-width)":"0px"},children:r.jsx(lt.Provider,{value:N,children:r.jsx(ct.Provider,{value:P,children:r.jsx(Io.Provider,{value:c,children:r.jsx(ke.Provider,{value:l!=null?l:x,children:r.jsx(Se.Provider,{value:v,children:r.jsx(Ie.Provider,{value:k,children:r.jsx(Re.Provider,{value:o,children:r.jsx(ot.Provider,{value:E,children:r.jsx(dt.Provider,{value:M,children:r.jsx(ko.Provider,{value:b,children:r.jsxs(st.Provider,{value:"columnGroupOrder"in o?s!=null?s:o.columnGroupOrder:s,children:[r.jsx(fr,{}),r.jsxs(nt.Provider,{value:a,children:[r.jsxs("thead",{children:[(s||"columnGroupOrder"in o)&&r.jsx(Ao,{height:"var(--current-row-height)"}),r.jsx(Ot,{items:u.items,height:"var(--current-row-height)"})]}),r.jsx(Et,{variant:c,...u})]})]})})})})})})})})})})})})},vr=(e,t)=>({...t,itemValueResolver:e}),br=()=>({label:e,gridCell:{editorValue:t,isEditing:o,setEditorValue:n,stopEditingAndRevert:s,lastKeyEvent:l,stopEditing:c,stopEditingAndMove:a}})=>o?r.jsx(X.TextInput,{onValueChange:n,value:t,onDone:c,onEsc:s,autoFocus:!0,selectAllOnMount:!l,onMove:a}):r.jsx(h.Indent,{children:r.jsx(h.Text,{color:"var(--swui-primary-action-color)",children:e})}),gr=(e,t,o)=>({label:n,item:s,gridCell:{editorValue:l,isEditing:c,setEditorValue:a,stopEditingAndRevert:u,lastKeyEvent:x,stopEditing:d,stopEditingAndMove:p},isEditable:f})=>{const C=typeof e=="function"?e(s):e,w=t?t(s):void 0,m=o?o(s):void 0;return f&&c?r.jsx(X.TextInput,{onValueChange:a,value:l,onDone:d,onEsc:u,autoFocus:!0,selectAllOnMount:!x,onMove:p}):r.jsx(h.Indent,{row:!0,alignItems:"center",children:r.jsx(Ke,{value:n,modifiedField:m,crudStatus:w,isEditable:f,warningOnEmpty:C})})};exports.CrudStatusIndicator=we;exports.EditableTextCellWithCrudAndModified=yo;exports.GridHooksContext=fe;exports.GridHooksTable=Zt;exports.ModifiedField=Ke;exports.SmallTableCell=Jt;exports.SmallTableHead=Yt;exports.StandardTable=wr;exports.StandardTableActionsContext=Ie;exports.StandardTableCell=kt;exports.StandardTableCellUi=yt;exports.StandardTableConfigContext=Re;exports.StandardTableContent=Et;exports.StandardTableHeadRow=Ot;exports.StandardTableRow=It;exports.StandardTableRowCheckbox=Ct;exports.StandardTableRowList=Tt;exports.StandardTableStateContext=Se;exports.StandardTableTableIdContext=ke;exports.TableCell=Ve;exports.TableColumnGroupHead=Qt;exports.TableHeadItem=ce;exports.TableHeadRow=eo;exports.TableRow=ro;exports.TextCell=jt;exports.createColumnConfig=vr;exports.createEditableTextCellWithStatus=gr;exports.createGroupConfigAndIdsForRows=Ae;exports.createInternalStandardTableActions=et;exports.createStandardEditableTextCell=br;exports.createStandardTableActions=ht;exports.createStandardTableInitialState=Te;exports.createStandardTableReducer=tt;exports.defaultTableHeadRowHeight=le;exports.defaultTableRowHeight=se;exports.focusOnCell=je;exports.formatColumnIdToHeaderCellLabel=gt;exports.formatValueLabel=bt;exports.hasIndicatorContent=re;exports.multitypeComparator=pt;exports.smallTableRowWidth=ge;exports.tableBackgroundColorExpanded=ve;exports.tableBackgroundHoverColorExpanded=Ze;exports.tableBorder=U;exports.tableBorderColor=We;exports.tableBorderColorExpanded=Ue;exports.tableBorderHidden=Je;exports.tableBorderLeft=ne;exports.tableBorderLeftExpanded=be;exports.useCellBackgroundByColumnConfig=Ce;exports.useCellBackgroundByColumnId=vt;exports.useColumnConfigById=J;exports.useColumnValueResolver=mt;exports.useEditableCell=Ye;exports.useFirstColumnConfig=at;exports.useGridCell=Y;exports.useGridNavigation=Qe;exports.useGridNavigationOptionsFromContext=ye;exports.useLastColumnConfig=it;exports.useLocalStateTableContext=xt;exports.useRevertableValue=Xe;exports.useRowCheckbox=ft;exports.useStandardTableActions=Z;exports.useStandardTableConfig=S;exports.useStandardTableId=ae;exports.useStandardTableState=F;exports.useTableHeadCheckbox=Gt;exports.useTableSortHeader=At;
10
+ `,It=T.memo(function({item:t,idListForEnabledItems:o,rowIndex:n,numRows:s,colIndexOffset:l,alwaysVisible:c,shiftPressedRef:a}){const u=i.useRef(null),x=Ge(),{stickyCheckboxColumn:d}=S(),p=_(),{columnIndexPerColumnId:f}=ut(),{showRowCheckbox:C,rowBackgroundResolver:w,checkboxDisabledResolver:m,enableGridCell:v,rowIndent:g,enableExpandCollapse:y}=S(),{isExpanded:k}=Pe(t),{isSelected:b,toggleSelected:A,shiftAndToggleSelected:j}=ft(t,o),O=h.useOnScreen(u,{rootMargin:"400px 0px 400px 0px",threshold:0}),E=i.useMemo(()=>w==null?void 0:w(t,b),[b,t,w]),M=rr(E,b,k),P=nr(E,b,k),N=sr(E,b,P),B=i.useMemo(()=>m==null?void 0:m(t),[t,m]),L=at(),Q=Ce(L,t),q=it(),z=Ce(q,t),K=i.useMemo(()=>r.jsx(r.Fragment,{children:r.jsxs(r.Fragment,{children:[g&&r.jsx("td",{style:{background:Q},children:r.jsx(h.Indent,{num:g})}),y&&r.jsx("td",{style:{background:d?"inherit":void 0,position:d?"sticky":void 0,left:d?"0px":void 0,boxShadow:d?"var(--swui-sticky-column-shadow-right)":void 0,zIndex:d?"var(--swui-sticky-column-z-index)":void 0},children:r.jsx(h.Row,{width:"var(--swui-expand-cell-width)",minWidth:"var(--swui-expand-cell-width)",alignItems:"center",justifyContent:"center",children:r.jsx(Jo,{colIndex:l,rowIndex:v?n:0,numRows:v?s:0,item:t})})}),C&&r.jsx("td",{style:{background:d?"inherit":void 0,position:d?"sticky":void 0,left:y&&d?"var(--swui-expand-cell-width)":d?"0px":void 0,textAlign:"center",boxShadow:d?"var(--swui-sticky-column-shadow-right)":void 0,zIndex:d?"var(--swui-sticky-column-z-index)":void 0},children:r.jsx(h.Row,{width:"var(--swui-checkbox-cell-width)",minWidth:"var(--swui-checkbox-cell-width)",alignItems:"center",justifyContent:"center",children:r.jsx(Ct,{disabled:B,value:b,onValueChange:A,onValueChangeAndShift:j,colIndex:l+(y?1:0),rowIndex:n,numRows:s,shiftPressedRef:a})})}),p.map(({groupConfig:V,groupId:de},$)=>r.jsx(T.Fragment,{children:V.columnOrder.map((G,ee)=>r.jsx(kt,{columnId:G,item:t,colIndex:l+f[G],rowIndex:n,numRows:s,borderFromGroup:ie($,ee,V.borderLeft),disableBorderLeft:$===0&&ee===0},G))},de)),g&&r.jsx("td",{style:{background:z},children:r.jsx(h.Indent,{num:g})}),r.jsx("td",{})]})}),[l,f,B,y,v,Q,p,b,t,z,s,g,n,j,a,C,d,A]);return r.jsxs(r.Fragment,{children:[r.jsx(St,{hoverBackground:P,background:M,focusBackground:N,borderLeft:k?be:ne,ref:u,children:O||c||k?K:r.jsx("td",{colSpan:x,style:{height:"var(--current-row-height)"}})}),r.jsx(or,{item:t})]})}),rr=(e,t,o)=>e?typeof e=="string"?e:e==null?void 0:e.background:t?H.cssColor("--lhds-color-blue-100"):o?ve:"white",nr=(e,t,o)=>e?typeof e=="string"?e:e==null?void 0:e.hoverBackground:t?H.cssColor("--lhds-color-blue-100"):o?Ze:H.cssColor("--lhds-color-ui-100"),sr=(e,t,o)=>{if(t)return H.cssColor("--lhds-color-blue-100");if(e)return o},lr=e=>Object.values(e).some(t=>cr(t)),cr=e=>Boolean(e.renderSummaryCell||e.summaryText),ar="_summaryRow_12x8k_1";var ir={summaryRow:ar};const dr=T.memo(function({columnId:t,items:o,disableBorderLeft:n,borderFromGroup:s,colSpan:l}){const c=Ee(),{renderSummaryCell:a,summaryText:u,borderLeft:x,zIndex:d,width:p,minWidth:f,justifyContentCell:C}=J(t),w=Oe(s,n,x),m=c[t],v=m.sticky?d!=null?d:"var(--swui-sticky-column-z-index)":d!=null?d:1,g=m.sticky&&m.type==="last-group"&&m.isFirstColumnInLastGroup||m.sticky&&m.type==="column"&&m.right?"var(--swui-sticky-column-shadow-left)":m.sticky?"var(--swui-sticky-column-shadow-right)":void 0,y=i.useMemo(()=>u==null?void 0:u({items:o}),[o,u]),k=i.useMemo(()=>a==null?void 0:a({items:o,text:y}),[o,a,y]);return r.jsx("td",{colSpan:l,style:{borderLeft:w,position:m.sticky?"sticky":void 0,left:m.sticky?m.left:void 0,right:m.sticky?m.right:void 0,boxShadow:g,zIndex:v,height:"var(--current-row-height)"},children:r.jsx(h.Row,{width:p,minWidth:f,height:"inherit",overflow:"hidden",justifyContent:C,alignItems:"center",children:a?k:r.jsx(h.Indent,{children:r.jsx(h.Text,{variant:"bold",children:y})})})})}),ur=(e,t)=>{const o=[];for(let n=0;n<e.length;n++){const{summaryCellColSpan:s}=t[e[n]],l=Math.min(s!=null?s:1,e.length-n);o.push({columnId:e[n],colSpan:l});const c=s!=null?s:1;c>1&&(n+=c-1)}return o},hr=T.memo(function({items:t}){const o=_(),{showRowCheckbox:n,enableExpandCollapse:s,columns:l,rowIndent:c}=S();return r.jsxs("tr",{className:ir.summaryRow,children:[c&&r.jsx("td",{children:r.jsx(h.Indent,{num:c})}),s&&r.jsx("td",{}),n&&r.jsx("td",{}),o.map(({groupConfig:a,groupId:u},x)=>r.jsx(T.Fragment,{children:ur(a.columnOrder,l).map(({columnId:d,colSpan:p},f)=>r.jsx(dr,{colSpan:p,columnId:d,items:t,borderFromGroup:ie(x,f,a.borderLeft),disableBorderLeft:x===0&&f===0},d))},u)),c&&r.jsx("td",{children:r.jsx(h.Indent,{num:c})}),r.jsx("td",{})]})}),xr=function({items:t}){const{columns:o}=S();return i.useMemo(()=>lr(o),[o])?r.jsx(hr,{items:t}):null},Rt=e=>t=>!(e!=null&&e(t)),Tt=T.memo(function({items:t,colIndexOffset:o=0,rowIndexOffset:n=0}){const s=i.useRef(0),l=i.useRef(!1),{keyResolver:c,disableInfiniteList:a,checkboxDisabledResolver:u}=S(),{sortOrder:{sortBy:x,desc:d}}=F(),p=mt(x),f=i.useMemo(()=>{if(!t||!t.length)return[];if(!p)return t;const w=[...t];return w.sort((m,v)=>pt(p(m),p(v))),d&&w.reverse(),a||s.current++,w},[t,p,d,a]),C=i.useMemo(()=>f.filter(Rt(u)).map(w=>c(w)),[f,u,c]);return i.useEffect(()=>{const w=v=>{v.key==="Shift"&&(l.current=!1)},m=v=>{v.key==="Shift"&&(l.current=!0)};return document.addEventListener("keyup",w),document.addEventListener("keydown",m),()=>{document.removeEventListener("keyup",w),document.removeEventListener("keydown",m)}},[]),r.jsxs(T.Fragment,{children:[f.map((w,m)=>r.jsx(It,{alwaysVisible:a||f.length<30,item:w,idListForEnabledItems:C,colIndexOffset:o,rowIndex:m+n,numRows:f.length,shiftPressedRef:l},c(w))),r.jsx(xr,{items:f})]},s.current)}),Et=T.memo(function({error:t,bannerError:o,loading:n,items:s,noItemsLabel:l="There is no data available.",noItemsContentRight:c,noItemsContentBottom:a,noItemsHeader:u,colIndexOffset:x,rowIndexOffset:d,variant:p,errorLabel:f}){var w;const C=Ge();return o?r.jsx("tbody",{children:r.jsx("tr",{children:r.jsx("td",{colSpan:C,children:r.jsx(h.Spacing,{num:4,justifyContent:"center",children:r.jsx(h.Box,{alignItems:"center",children:r.jsx(R.ResultListBanner,{bannerState:o,variant:"error"})})})})})}):t||f?r.jsx("tbody",{children:r.jsx("tr",{children:r.jsx("td",{colSpan:C,children:r.jsx(h.Spacing,{num:4,justifyContent:"center",children:r.jsx(h.Box,{alignItems:"center",children:r.jsx(R.Banner,{headerText:(w=t?t.message:f)!=null?w:"Unknown error",variant:"error"})})})})})}):n?r.jsx("tbody",{children:r.jsx("tr",{children:r.jsx("td",{colSpan:C,children:r.jsx(h.Spacing,{num:4,children:r.jsx(qe.LoadingScreen,{})})})})}):!s||!s.length?r.jsx("tbody",{children:r.jsx("tr",{children:r.jsx("td",{colSpan:C,children:r.jsx(h.Row,{spacing:4,justifyContent:"center",children:r.jsx(R.Banner,{text:l,headerText:u,contentRight:c,variant:"info",children:a})})})})}):r.jsx("tbody",{children:r.jsx(Tt,{variant:p,items:s,colIndexOffset:x,rowIndexOffset:d})})}),Gt=e=>{const{keyResolver:t,checkboxDisabledResolver:o}=S(),{selectedIds:{selectedIds:n}}=F(),{actions:{setSelectedIds:s,clearSelection:l},dispatch:c}=Z(),a=n.length===0,u=e?e.length>0&&n.length===e.length:!1,x=i.useCallback(()=>{e&&c(a?s(e.filter(Rt(o)).map(d=>t(d))):l())},[e,a,c,s,o,t,l]);return{selectionIsEmpty:a,allItemsAreSelected:u,onClickCheckbox:x}},pr=e=>{const{keyResolver:t}=S(),{expandedRows:{selectedIds:o}}=F(),{actions:{collapseAll:n,expandByIds:s},dispatch:l}=Z(),c=e?e.length>0&&o.length===e.length:!1,a=i.useCallback(()=>{e&&l(c?n():s(e.map(u=>t(u))))},[c,n,l,e,t,s]);return{allItemsAreExpanded:c,toggleExpanded:a}},At=e=>{const{dispatch:t,actions:o}=Z(),{sortOrder:{desc:n,sortBy:s}}=F();return i.useMemo(()=>{const l=e===s;return{arrow:l?n?"up":"down":void 0,selected:l,desc:n,onClickColumnHead:()=>{t(o.sortBy(e,l?!n:!1))}}},[s,n,o,e,t])},mr=T.memo(function({columnId:t,borderFromGroup:o,disableBorderLeft:n,stickyHeader:s,top:l}){const{justifyContentHeader:c,columnLabel:a,borderLeft:u,infoIconTooltipText:x,background:d,zIndex:p,sortOrderIconVariant:f,width:C,minWidth:w}=J(t),{disableSorting:m,sortOrderIconVariant:v}=S(),g=Ee(),{arrow:y,onClickColumnHead:k}=At(t),b=typeof a=="string"?a:gt(t),A=Oe(o,n,u),j=g[t];return r.jsx("th",{style:{background:d!=null?d:"white",borderLeft:A,position:s||j.sticky?"sticky":void 0,left:j.left,right:j.right,top:l,boxShadow:j.sticky&&j.isFirstColumnInLastGroup&&s?"var(--swui-sticky-header-shadow-and-left)":j.sticky&&j.isFirstColumnInLastGroup?"var(--swui-sticky-column-shadow-left)":s&&j.sticky?"var(--swui-sticky-header-shadow-and-right)":s?"var(--swui-sticky-header-shadow)":j.sticky?"var(--swui-sticky-column-shadow-right)":void 0,zIndex:s&&j.sticky?"var(--swui-sticky-header-in-sticky-column-z-index)":s?"var(--swui-sticky-header-z-index)":j.sticky?"var(--swui-sticky-group-header-z-index)":p,width:C,minWidth:w},children:r.jsx(ce,{width:"inherit",minWidth:"inherit",arrow:!m&&b?y:void 0,onClick:m?void 0:k,label:b,infoIconTooltipText:x,alignRight:c==="flex-end",sortOrderIconVariant:f!=null?f:v})})}),Cr=(e,t,o,n)=>{if(e&&t!==void 0)return`calc(${e} + ${o})`;if(n&&t)return`calc(0px + ${o})`;if(e)return e;if(n)return 0},Ot=T.memo(function({items:t,height:o=se}){const n=_(),{showHeaderCheckbox:s,showHeaderExpandCollapse:l,enableExpandCollapse:c,rowIndent:a,headerRowOffsetTop:u,zIndex:x,stickyHeader:d,stickyCheckboxColumn:p,showRowCheckbox:f}=S(),C=So(),{allItemsAreExpanded:w,toggleExpanded:m}=pr(t),{allItemsAreSelected:v,onClickCheckbox:g,selectionIsEmpty:y}=Gt(t),k=!t||t.length===0,b={zIndex:d&&p?"var(--swui-sticky-header-in-sticky-column-z-index)":p?"var(--swui-sticky-group-header-z-index)":d?"var(--swui-sticky-header-z-index)":x,top:Cr(u,C,o,d),background:d||p?"white":void 0,position:d||p?"sticky":void 0,boxShadow:d&&p?"var(--swui-sticky-header-shadow-and-right)":p?"var(--swui-sticky-column-shadow-right)":d?"var(--swui-sticky-header-shadow)":void 0};return r.jsxs(St,{height:o,borderLeft:ne,children:[a&&r.jsx("th",{style:b,children:r.jsx(h.Row,{indent:a})}),c&&r.jsx("th",{style:{...b,left:"0px",textAlign:"left"},children:r.jsx(h.Row,{width:"var(--swui-expand-cell-width)",minWidth:"var(--swui-expand-cell-width)",alignItems:"center",justifyContent:"center",children:l&&r.jsx(R.FlatButton,{size:"small",leftIcon:w?ze.faChevronDown:Fe.faChevronRight,onClick:m})})}),(f||s)&&r.jsx("th",{style:{...b,overflow:"hidden",left:p&&c?"var(--swui-expand-cell-width)":p?"0px":void 0},children:r.jsx(h.Row,{width:"var(--swui-checkbox-cell-width)",minWidth:"var(--swui-checkbox-cell-width)",alignItems:"center",justifyContent:"center",children:s&&r.jsx(X.Checkbox,{size:"small",disabled:k,value:v,indeterminate:!y&&!v,onValueChange:g})})}),n.map(({groupConfig:A,groupId:j},O)=>r.jsx(T.Fragment,{children:A.columnOrder.map((E,M)=>r.jsx(mr,{columnId:E,borderFromGroup:ie(O,M,A.borderLeft),disableBorderLeft:O===0&&M===0,stickyHeader:d,top:b.top},E))},j)),a&&r.jsx("th",{style:b,children:r.jsx(h.Row,{indent:a})}),r.jsx("th",{style:b})]})}),fr=()=>{const e=S(),t=_(),o=e.enableExpandCollapse||e.showRowCheckbox,n=h.booleanOrNumberToNumber(e.rowIndent);return r.jsxs(r.Fragment,{children:[n?r.jsx("colgroup",{children:r.jsx("col",{style:{width:`calc(var(--swui-metrics-indent) * ${n})`}})}):null,o&&r.jsxs("colgroup",{children:[e.enableExpandCollapse&&r.jsx("col",{style:{width:"var(--swui-expand-cell-width)"}}),e.showRowCheckbox&&r.jsx("col",{style:{width:"var(--swui-checkbox-cell-width)"}})]}),t.map(({groupConfig:s,groupId:l})=>r.jsx("colgroup",{children:s.columnOrder.map(c=>r.jsx("col",{style:{width:e.columns[c].width,minWidth:e.columns[c].minWidth}},c))},l)),n?r.jsx("colgroup",{children:r.jsx("col",{style:{width:`calc(var(--swui-metrics-indent) * ${n})`}})}):null]})},wr=function({tableContext:t,config:o,columnOrder:n,columnGroupOrder:s,tableId:l,variant:c="standard",onKeyDown:a,...u}){const x=i.useId(),{initialSortOrderDesc:d,initialSortOrder:p,enableExpandCollapse:f,stickyCheckboxColumn:C}=o,{tableContext:w}=xt(l!=null?l:x,Te(p,d)),m=t||w,{state:v,actions:g,dispatch:y}=m,k=i.useMemo(()=>({actions:g,dispatch:y}),[g,y]),b=Boolean(s!=null?s:"columnGroupOrder"in o),A="columnGroups"in o?o.columnGroups:void 0,j="columnGroupOrder"in o?o.columnGroupOrder:void 0,O="columnOrder"in o?o.columnOrder:void 0,E=i.useMemo(()=>Ae(A,j,O),[A,j,O]),M=i.useMemo(()=>Oo(o),[o]),P=i.useMemo(()=>_o(o),[o]),N=i.useMemo(()=>qo(o),[o]),B=i.useMemo(()=>{try{Mo(o);return}catch(L){return L instanceof Error?L:new Error("Unknown error")}},[o]);return B?r.jsx(qe.ErrorScreen,{text:B.message}):r.jsx("table",{className:$e.default(Ne.standardTable,Ne[c]),style:{width:"100%",isolation:"isolate","--current-left-offset":f&&C?"calc(var(--swui-expand-cell-width) + var(--swui-checkbox-cell-width))":C?"var(--swui-checkbox-cell-width)":f?"var(--swui-expand-cell-width)":"0px"},children:r.jsx(lt.Provider,{value:N,children:r.jsx(ct.Provider,{value:P,children:r.jsx(Io.Provider,{value:c,children:r.jsx(ke.Provider,{value:l!=null?l:x,children:r.jsx(Se.Provider,{value:v,children:r.jsx(Ie.Provider,{value:k,children:r.jsx(Re.Provider,{value:o,children:r.jsx(ot.Provider,{value:E,children:r.jsx(dt.Provider,{value:M,children:r.jsx(ko.Provider,{value:b,children:r.jsxs(st.Provider,{value:"columnGroupOrder"in o?s!=null?s:o.columnGroupOrder:s,children:[r.jsx(fr,{}),r.jsxs(nt.Provider,{value:a,children:[r.jsxs("thead",{children:[(s||"columnGroupOrder"in o)&&r.jsx(Ao,{height:"var(--current-row-height)"}),r.jsx(Ot,{items:u.items,height:"var(--current-row-height)"})]}),r.jsx(Et,{variant:c,...u})]})]})})})})})})})})})})})})},vr=(e,t)=>({...t,itemValueResolver:e}),br=()=>({label:e,gridCell:{editorValue:t,isEditing:o,setEditorValue:n,stopEditingAndRevert:s,lastKeyEvent:l,stopEditing:c,stopEditingAndMove:a}})=>o?r.jsx(X.TextInput,{onValueChange:n,value:t,onDone:c,onEsc:s,autoFocus:!0,selectAllOnMount:!l,onMove:a}):r.jsx(h.Indent,{children:r.jsx(h.Text,{color:"var(--swui-primary-action-color)",children:e})}),gr=(e,t,o)=>({label:n,item:s,gridCell:{editorValue:l,isEditing:c,setEditorValue:a,stopEditingAndRevert:u,lastKeyEvent:x,stopEditing:d,stopEditingAndMove:p},isEditable:f})=>{const C=typeof e=="function"?e(s):e,w=t?t(s):void 0,m=o?o(s):void 0;return f&&c?r.jsx(X.TextInput,{onValueChange:a,value:l,onDone:d,onEsc:u,autoFocus:!0,selectAllOnMount:!x,onMove:p}):r.jsx(h.Indent,{row:!0,alignItems:"center",children:r.jsx(Ke,{value:n,modifiedField:m,crudStatus:w,isEditable:f,warningOnEmpty:C})})};exports.CrudStatusIndicator=we;exports.EditableTextCellWithCrudAndModified=yo;exports.GridHooksContext=fe;exports.GridHooksTable=Zt;exports.ModifiedField=Ke;exports.SmallTableCell=Jt;exports.SmallTableHead=Yt;exports.StandardTable=wr;exports.StandardTableActionsContext=Ie;exports.StandardTableCell=kt;exports.StandardTableCellUi=yt;exports.StandardTableConfigContext=Re;exports.StandardTableContent=Et;exports.StandardTableHeadRow=Ot;exports.StandardTableRow=It;exports.StandardTableRowCheckbox=Ct;exports.StandardTableRowList=Tt;exports.StandardTableStateContext=Se;exports.StandardTableTableIdContext=ke;exports.TableCell=Ve;exports.TableColumnGroupHead=Qt;exports.TableHeadItem=ce;exports.TableHeadRow=eo;exports.TableRow=ro;exports.TextCell=jt;exports.createColumnConfig=vr;exports.createEditableTextCellWithStatus=gr;exports.createGroupConfigAndIdsForRows=Ae;exports.createInternalStandardTableActions=et;exports.createStandardEditableTextCell=br;exports.createStandardTableActions=ht;exports.createStandardTableInitialState=Te;exports.createStandardTableReducer=tt;exports.defaultTableHeadRowHeight=le;exports.defaultTableRowHeight=se;exports.focusOnCell=je;exports.formatColumnIdToHeaderCellLabel=gt;exports.formatValueLabel=bt;exports.hasIndicatorContent=re;exports.multitypeComparator=pt;exports.smallTableRowWidth=ge;exports.tableBackgroundColorExpanded=ve;exports.tableBackgroundHoverColorExpanded=Ze;exports.tableBorder=U;exports.tableBorderColor=We;exports.tableBorderColorExpanded=Ue;exports.tableBorderHidden=Je;exports.tableBorderLeft=ne;exports.tableBorderLeftExpanded=be;exports.useCellBackgroundByColumnConfig=Ce;exports.useCellBackgroundByColumnId=vt;exports.useColumnConfigById=J;exports.useColumnValueResolver=mt;exports.useEditableCell=Ye;exports.useFirstColumnConfig=at;exports.useGridCell=Y;exports.useGridNavigation=Qe;exports.useGridNavigationOptionsFromContext=ye;exports.useLastColumnConfig=it;exports.useLocalStateTableContext=xt;exports.useRevertableValue=Xe;exports.useRowCheckbox=ft;exports.useStandardTableActions=Z;exports.useStandardTableConfig=S;exports.useStandardTableId=ae;exports.useStandardTableState=F;exports.useTableHeadCheckbox=Gt;exports.useTableSortHeader=At;
11
11
  //# sourceMappingURL=index.js.map