@stenajs-webui/grid 20.11.0 → 20.11.1
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.es.js +0 -2
- package/dist/index.es.js.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/package.json +9 -9
package/dist/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
(function(){"use strict";try{if(typeof document<"u"){var e=document.createElement("style");e.appendChild(document.createTextNode("._tableRow_1cphw_1:focus-within{background:var(--focus-within-background, var(--lhds-color-blue-50))}._standardTable_1iok0_1{--swui-standard-table-height: 40px;--swui-sticky-header-shadow: 2px 4px 4px 0 rgba(0, 0, 0, .05);--swui-sticky-header-shadow-and-right: var(--swui-sticky-header-shadow), var(--swui-sticky-column-shadow-right);--swui-sticky-header-shadow-and-left: var(--swui-sticky-header-shadow), var(--swui-sticky-column-shadow-left);--swui-sticky-column-shadow-right: 4px 2px 4px 0 rgba(0, 0, 0, .05);--swui-sticky-column-shadow-left: -4px 2px 4px 0 rgba(0, 0, 0, .05);--swui-sticky-header-z-index: 10;--swui-sticky-column-z-index: 20;--swui-sticky-group-group-z-index: 25;--swui-sticky-group-header-z-index: 26;--swui-sticky-header-column-group-z-index: 30;--swui-sticky-column-group-label-z-index: 40;--swui-sticky-header-in-sticky-column-z-index: 50;--swui-sticky-popover-z-index: 60;--swui-expand-cell-width: 45px;--swui-checkbox-cell-width: 45px;--swui-expand-highlight-border-width: 2px;--current-row-height: var(--swui-standard-table-height);--current-left-offset: 0px;border-spacing:0}._standardTable_1iok0_1 td{border-top:1px solid var(--lhds-color-ui-300);padding:0}._standardTable_1iok0_1 th{padding:0}._standardTable_1iok0_1._relaxed_1iok0_37{--current-row-height: 48px}._standardTable_1iok0_1._condensed_1iok0_41{--current-row-height: 32px}._standardTable_1iok0_1._compact_1iok0_45{--current-row-height: 24px}._standardTableCell_1xzcm_1{outline:none}._textCell_1yv6v_1{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}._summaryRow_12x8k_1 td{border-top:1px solid var(--lhds-color-ui-400)}._standardTableHeadTh_swsxb_8{height:1px}@-moz-document url-prefix(){._standardTableHeadTh_swsxb_8{height:100%}}")),document.head.appendChild(e)}}catch(i){console.error("vite-plugin-css-injected-by-js",i)}})();
|
|
2
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("react/jsx-runtime"),u=require("react"),v=require("@stenajs-webui/elements"),H=require("@stenajs-webui/theme"),ee=require("@stenajs-webui/tooltip"),x=require("@stenajs-webui/core"),cn=require("@fortawesome/free-solid-svg-icons/faSortAlphaDown"),ln=require("@fortawesome/free-solid-svg-icons/faSortAlphaUp"),un=require("@fortawesome/free-solid-svg-icons/faSortAmountDownAlt"),dn=require("@fortawesome/free-solid-svg-icons/faSortAmountUpAlt"),hn=require("@fortawesome/free-solid-svg-icons/faSortNumericDown"),mn=require("@fortawesome/free-solid-svg-icons/faSortNumericUp"),st=require("classnames"),ne=require("@stenajs-webui/forms"),je=require("react-redux"),P=require("@stenajs-webui/redux"),fn=require("redux"),at=require("@stenajs-webui/panels"),Pe=require("lodash-es"),xn=require("@emotion/styled");function pn(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const n in e)if(n!=="default"){const r=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,r.get?r:{enumerable:!0,get:()=>e[n]})}}return t.default=e,Object.freeze(t)}const D=pn(u),Me=D.createContext({}),wn=({children:e,numCols:t,numRows:n,tableId:r,wrap:o})=>{const a=u.useMemo(()=>({numCols:t,numRows:n,tableId:r,wrap:o}),[t,n,r,o]);return s.jsx(Me.Provider,{value:a,children:e})},xe=e=>{const{loading:t,creating:n,deleting:r,updating:o,hasError:a}=e;return!!(t||n||r||o||a)},De=({crudStatus:e})=>{if(!e||!xe(e))return null;const{errorMessage:t,hasError:n,loading:r,creating:o,deleting:a,updating:c}=e;if(r||o||a||c)return s.jsx(v.InputSpinner,{color:H.cssColor("--lhds-color-ui-500")});if(n){const i=s.jsx(v.Icon,{icon:v.stenaExclamationTriangle,color:H.cssColor("--lhds-color-orange-600"),size:14});return s.jsx(s.Fragment,{children:t?s.jsx(ee.Tooltip,{label:t,zIndex:100,children:i}):i})}return null},ct=({isEditable:e,warningOnEmpty:t,value:n,modifiedField:r,crudStatus:o})=>{const a=t&&(r==null?void 0:r.modified)&&(r==null?void 0:r.newValue)==="",c=o&&xe(o),i=a||c;return s.jsxs(s.Fragment,{children:[s.jsx(x.Text,{color:e?"var(--swui-primary-action-color)":void 0,variant:r!=null&&r.modified?"bold":void 0,children:n}),(r==null?void 0:r.newValue)!==void 0&&s.jsxs(s.Fragment,{children:[s.jsx(x.Indent,{children:s.jsx(v.Icon,{icon:v.stenaArrowRight,size:12})}),s.jsx(x.Text,{color:"var(--swui-primary-action-color)",variant:"bold",children:r.newValue})]}),i&&s.jsx(x.Space,{}),a?s.jsx(ee.Tooltip,{label:t,zIndex:100,children:s.jsx(v.Icon,{icon:v.stenaExclamationTriangle,color:H.cssColor("--lhds-color-orange-600"),size:14})}):s.jsx(De,{crudStatus:o})]})},it=({alignItems:e="center",justifyContent:t="flex-start",overflow:n="hidden",indent:r=1,...o})=>s.jsx(x.Row,{height:"100%",alignItems:e,justifyContent:t,overflow:n,indent:r,...o}),lt="var(--lhds-color-ui-300)",ut="var(--lhds-color-blue-500)",Ee="var(--lhds-color-blue-50)",dt="var(--lhds-color-blue-100)",te=`1px solid ${lt}`,ht="1px solid transparent",pe="var(--swui-expand-highlight-border-width) solid transparent",Ge=`var(--swui-expand-highlight-border-width) solid ${ut}`,we="40px",ge="40px",Be="40px",gn=e=>s.jsx(it,{width:Be,justifyContent:"center",...e}),Ke=({iconVariant:e="amount",direction:t})=>s.jsx(x.Box,{width:"14px",children:s.jsx(v.Icon,{size:14,color:H.cssColor("--lhds-color-ui-500"),icon:bn(t,e)})}),bn=(e,t)=>{switch(t){case"alpha":return e==="up"?ln.faSortAlphaUp:cn.faSortAlphaDown;case"numeric":return e==="up"?mn.faSortNumericUp:hn.faSortNumericDown;case"amount":return e==="up"?dn.faSortAmountUpAlt:un.faSortAmountDownAlt;default:return x.exhaustSwitchCaseElseThrow(t)}},be=D.memo(({label:e,arrow:t,onClick:n,children:r,selected:o,popoverContent:a,loading:c,infoIconTooltipText:i,overflow:l="hidden",alignRight:h,sortOrderIconVariant:d,appendTooltipTo:f,...w})=>{const p=u.useRef(null),g=n?{cursor:"pointer",userSelect:"none"}:void 0,m=!e&&!t&&!i;return s.jsxs(x.Row,{height:"100%",alignItems:"center",ref:p,overflow:l,justifyContent:h?"flex-end":"flex-start",borderTop:"2px solid transparent",borderBottom:`2px solid ${o?H.cssColor("--lhds-color-blue-500"):"transparent"}`,...w,children:[s.jsxs(x.Row,{alignItems:"center",indent:!0,children:[!t&&h&&s.jsxs(s.Fragment,{children:[s.jsx(x.Space,{}),s.jsx(x.Box,{width:"14px"}),s.jsx(x.Space,{num:.5})]}),(r||e)&&s.jsxs(x.Row,{onClick:n,style:g,alignItems:"center",children:[r&&s.jsxs(s.Fragment,{children:[r,!m&&s.jsx(x.Space,{num:.5})]}),t&&h&&s.jsxs(s.Fragment,{children:[s.jsx(x.Space,{}),s.jsx(Ke,{direction:t,iconVariant:d}),s.jsx(x.Space,{num:.5})]}),e&&s.jsx(x.Heading,{variant:"h6",style:{textAlign:"left"},children:e}),t&&!h&&s.jsxs(s.Fragment,{children:[s.jsx(x.Space,{num:.5}),s.jsx(Ke,{direction:t,iconVariant:d}),s.jsx(x.Space,{})]})]}),i&&s.jsxs(s.Fragment,{children:[s.jsx(x.Space,{}),s.jsxs(x.Row,{onClick:b=>b.stopPropagation(),children:[s.jsx(ee.Tooltip,{label:i,zIndex:"var(--swui-sticky-popover-z-index)",appendTo:f,children:s.jsx(v.Icon,{icon:v.stenaInfoCircle,size:14,color:H.cssColor("--lhds-color-blue-400")})}),s.jsx(x.Space,{})]})]})]}),s.jsx(x.Row,{children:c?s.jsx(v.InputSpinner,{}):a?s.jsx(ee.Popover,{content:a,trigger:"click",zIndex:1e3,disablePadding:!0,variant:"outlined",arrow:!1,children:s.jsx(v.FlatButton,{leftIcon:v.stenaDotsVertical,size:"small"})}):null}),!t&&!h&&s.jsxs(s.Fragment,{children:[s.jsx(x.Space,{}),s.jsx(x.Box,{width:"14px"}),s.jsx(x.Space,{num:.5})]})]})}),Cn=e=>s.jsx(be,{width:Be,justifyContent:"center",...e}),yn=({label:e,flex:t,width:n,indent:r=1,height:o=ge})=>s.jsx(be,{width:n,flex:t,height:o,children:s.jsx(x.Box,{indent:r,spacing:!0,children:s.jsx(x.Text,{variant:"bold",children:e})})}),vn=D.memo(({style:e,height:t=ge,...n})=>s.jsx(x.Row,{style:e,height:t,...n})),kn="_tableRow_1cphw_1",Sn={tableRow:kn},jn=({hideBorderTop:e,height:t=ge,className:n,...r})=>s.jsx(x.Row,{borderTop:e?ht:te,height:t,className:st(Sn.tableRow,n),...r}),mt=e=>{const[t,n]=u.useState(e),r=u.useRef(e),o=u.useRef(e),a=u.useCallback(d=>{n(d),o.current=d},[n,o]);u.useEffect(()=>{a(e)},[a,e]);const c=u.useCallback(()=>{r&&a(r.current)},[a,r]),i=u.useCallback(d=>{r.current=t,d&&a(d)},[t,a]),l=u.useCallback(d=>r.current=d,[r]),h=u.useCallback(()=>o.current,[o]);return{value:t,setValue:a,setRevertValue:l,revert:c,commit:i,getValue:h}},In=e=>({altKey:e.altKey,charCode:e.charCode,ctrlKey:e.ctrlKey,key:e.key,keyCode:e.keyCode,locale:e.locale,location:e.location,metaKey:e.metaKey,repeat:e.repeat,shiftKey:e.shiftKey,which:e.which}),Tn=e=>e,ft=(e,{isEditable:t=!1,allowedInputType:n="all",onChange:r,onStartEditing:o,onStopEditing:a,transformEnteredValue:c=Tn})=>{const[i,l]=u.useState(!1),[h,d]=u.useState(void 0),f=mt(e),{getValue:w,revert:p,setValue:g,setRevertValue:m}=f,b=u.useCallback(j=>{t&&(g(e),m(e),l(!0),o&&o(j))},[t,o,m,g,e]),C=u.useCallback(()=>{t&&(l(!1),a&&a(),r&&r(w()))},[t,r,a,w,l]),S=u.useCallback(()=>{t&&(l(!1),a&&a(),p())},[t,a,p,l]);return{onKeyDown:u.useMemo(()=>En(i,t,b,d,n,c,f),[i,t,b,d,n,c,f]),isEditing:i,lastKeyEvent:h,revertableValue:f,startEditing:b,stopEditing:C,stopEditingAndRevert:S,onDoubleClick:b}},Pn=e=>e==="all"||e==="numeric"||e==="alphanumeric",On=e=>e==="all"||e==="alphanumeric"||e==="letters",Rn=e=>!!e.match(/^[-+*<>]$/),Mn=e=>!!e.match(/^[a-zA-Z0-9]$/),Dn=e=>!isNaN(parseInt(e,10)),En=(e,t,n,r,o,a,c)=>i=>{if(!(i.ctrlKey||i.metaKey||i.shiftKey)){if(i.key==="Enter"&&t)r(void 0),n(),c.commit(),i.preventDefault(),i.stopPropagation();else if(t){const l=In(i);(Dn(i.key)&&Pn(o)||Mn(i.key)&&On(o)||Rn(i.key))&&(n(l),r(l),c.commit(),c.setValue(a(l.key)),i.preventDefault(),i.stopPropagation())}}},Gn=(e,t,n,r)=>{let o=e,a=t;return t>r&&(a=0),t<0&&(a=r),e>n&&(o=0),e<0&&(o=n),{realX:o,realY:a}},Qe=(e,t,n)=>Math.max(Math.min(e,n),t),Bn=(e,t,n)=>({rowIndex:Qe(e.rowIndex,0,t),colIndex:Qe(e.colIndex,0,n)}),Wn=(e,t,n)=>{const r=Gn(e.colIndex,e.rowIndex,n,t);return{rowIndex:r.realY,colIndex:r.realX}},An=(e,t,n,r,o,a="clamped")=>{const c=Fn(e,t,o);return a==="clamped"?Bn(c,n-1,r-1):a==="wrapped"?Wn(c,n-1,r-1):c},Fn=(e,t,n)=>n==="up"?{rowIndex:e-1,colIndex:t}:n==="down"?{rowIndex:e+1,colIndex:t}:n==="left"?{rowIndex:e,colIndex:t-1}:n==="right"?{rowIndex:e,colIndex:t+1}:{rowIndex:e,colIndex:t},Nn=e=>e.replace(/^[^a-z]+|[^\w:.-]+/gi,""),Ln=e=>{if(!e.tableId)throw new Error("tableId is required.");if(e.numRows==null)throw new Error("numRows is required.");if(e.numCols==null)throw new Error("numCols is required.");return e},We=e=>{const t=u.useContext(Me);return u.useMemo(()=>Ln({...t,...e}),[t,e])},xt=e=>{const{rowIndex:t,colIndex:n,numRows:r,numCols:o,tableId:a,edgeMode:c,onCellMove:i,onCellNavigation:l}=We(e),h=u.useMemo(()=>Hn(a,t,n,r,o,c,i,l),[a,t,n,r,o,c,i,l]),d=u.useMemo(()=>qn(h),[h]),f=u.useMemo(()=>pt(a,t,n),[a,t,n]),w=u.useMemo(()=>({tabIndex:0,onKeyDown:d,id:f}),[d,f]);return{focusOnCell:Ae,moveHandler:h,requiredProps:w}},Hn=(e,t,n,r,o,a,c,i)=>l=>{const h=An(t,n,r,o,l,a),d=n!==h.colIndex,f=t!==h.rowIndex;(d||f)&&(c&&c({direction:l,fromRowIndex:t,fromColIndex:n,rowIndex:h.rowIndex,colIndex:h.colIndex,colDidChange:d,rowDidChange:f}),Ae(e,h)),i&&i({direction:l,fromRowIndex:t,fromColIndex:n,rowIndex:h.rowIndex,colIndex:h.colIndex,colDidChange:d,rowDidChange:f,cellDidChange:d||f})},pt=(e,t,n)=>Nn(`table-${e}-${t}-${n}`),qn=e=>t=>t.key==="ArrowLeft"?(e("left"),t.preventDefault(),t.stopPropagation(),!0):t.key==="ArrowUp"?(e("up"),t.preventDefault(),t.stopPropagation(),!0):t.key==="ArrowRight"?(e("right"),t.preventDefault(),t.stopPropagation(),!0):t.key==="ArrowDown"?(e("down"),t.preventDefault(),t.stopPropagation(),!0):!1,Ae=(e,t)=>{const n=document.getElementById(pt(e,t.rowIndex,t.colIndex));n&&n.focus()},ue=(e,t)=>{const{tableId:n}=We(t),r=xt(t),o=ft(e,t),a=u.useMemo(()=>({rowIndex:t.rowIndex,colIndex:t.colIndex}),[t.rowIndex,t.colIndex]),c=u.useCallback(()=>{o.startEditing(),r.focusOnCell(n,a)},[o,r,n,a]),i=u.useCallback(()=>{o.stopEditing(),r.focusOnCell(n,a)},[o,r,n,a]),l=u.useCallback(()=>{o.stopEditingAndRevert(),r.focusOnCell(n,a)},[o,r,n,a]),h=u.useCallback(p=>{o.stopEditing(),r.moveHandler(p)},[o,r]),d=u.useCallback(p=>{r.moveHandler(p)},[r]),f=u.useCallback(p=>{o.isEditing||r.requiredProps.onKeyDown(p)||o.onKeyDown(p)},[o,r.requiredProps]),w=u.useMemo(()=>({...r.requiredProps,onKeyDown:f,onDoubleClick:o.onDoubleClick}),[f,o.onDoubleClick,r.requiredProps]);return{isEditing:o.isEditing,lastKeyEvent:o.lastKeyEvent,editorValue:o.revertableValue.value,setEditorValue:o.revertableValue.setValue,revertEditorValue:o.revertableValue.revert,requiredProps:w,move:d,startEditing:c,stopEditing:i,stopEditingAndRevert:l,stopEditingAndMove:h}},zn=function({allowedInputType:t,value:n="",entityId:r,isEditable:o,rowIndent:a,crudStatusRedux:c,modifiedFieldsRedux:i,colIndex:l,rowIndex:h,numCols:d,numRows:f,warningOnEmpty:w}){const p=je.useDispatch(),g=je.useSelector(i.selectors.getState),m=je.useSelector(c.selectors.getState),b=g.entities[r],C=m.entities[r],S=u.useCallback((W="")=>{p(W===n?i.actions.clearEntity(r):i.actions.setEntity({id:r,originalValue:n,newValue:W,modified:!0}))},[p,r,i.actions,n]),{isEditing:T,stopEditing:j,editorValue:O,setEditorValue:M,stopEditingAndRevert:E,stopEditingAndMove:k,lastKeyEvent:G,requiredProps:{onKeyDown:B,...K}}=ue(n,{rowIndex:h,colIndex:l,numCols:d,numRows:f,tableId:"serviceManningMatrixTable",onChange:S,isEditable:o,allowedInputType:t}),N=u.useCallback(W=>{W.key==="Delete"?(p(i.actions.clearEntity(r)),p(c.actions.setEntityFields(r,{hasError:!1,errorMessage:void 0}))):B(W)},[B,r,p,i.actions,c.actions]);return s.jsxs(x.Row,{height:we,width:"100%",borderBottom:te,hoverBackground:"var(--ui7)",alignItems:"center",children:[a&&s.jsx(x.Indent,{num:a}),s.jsx(x.Row,{width:"100%",height:"100%",justifyContent:"flex-end",alignItems:"center",border:"1px solid transparent",borderRadius:"4px",focusBorder:T?void 0:"1px solid var(--primary-action-color)",hoverBorder:T?void 0:"var(--ui5) solid 1px;",onKeyDown:N,...K,children:s.jsx(x.Indent,{row:!0,alignItems:"center",children:T?s.jsx(ne.TextInput,{onValueChange:M,value:O,onDone:j,onEsc:E,autoFocus:!0,selectAllOnMount:!G,onMove:k}):s.jsxs(s.Fragment,{children:[s.jsx(x.Text,{color:o?"var(--primary-action-color)":void 0,variant:b!=null&&b.modified?"bold":void 0,children:n}),(b==null?void 0:b.newValue)!==void 0&&s.jsxs(s.Fragment,{children:[s.jsx(x.Indent,{children:s.jsx(v.Icon,{icon:v.stenaArrowRight,size:12})}),s.jsx(x.Text,{color:"var(--primary-action-color)",variant:"bold",children:b.newValue})]}),C&&xe(C)&&s.jsx(x.Space,{num:2}),w&&(b!=null&&b.modified)&&(b==null?void 0:b.newValue)===""?s.jsx(ee.Tooltip,{label:w,zIndex:100,children:s.jsx(v.Icon,{icon:v.stenaExclamationTriangle,color:"var(--ui-alert1)",size:14})}):s.jsx(De,{crudStatus:C})]})})}),a&&s.jsx(x.Indent,{num:a})]})},Fe=u.createContext(""),Ne=u.createContext(void 0),Le=u.createContext(void 0),He=u.createContext(void 0),wt=()=>({sortOrder:P.createSortOrderActions(),selectedIds:P.createSelectedIdsActions(),expandedRows:P.createSelectedIdsActions(),fields:P.createEntityActions()}),L=(e,t)=>`${e}.${t}`,qe=(e=void 0,t=!1,n=[],r=[])=>({sortOrder:P.createSortOrderReducerInitialState(e,t),selectedIds:P.createSelectedIdsReducerInitialState(n),expandedRows:P.createSelectedIdsReducerInitialState(r),fields:{lastSelectedId:void 0}}),gt=(e,t)=>{const n=P.reducerIdGate(L(e,"sortOrder"),P.createSortOrderReducer(t==null?void 0:t.sortOrder)),r=P.reducerIdGate(L(e,"selectedIds"),P.createSelectedIdsReducer(t==null?void 0:t.selectedIds)),o=P.reducerIdGate(L(e,"expandedRows"),P.createSelectedIdsReducer(t==null?void 0:t.expandedRows)),a=P.reducerIdGate(L(e,"fields"),P.createEntityReducer((t==null?void 0:t.fields)??{}));return fn.combineReducers({sortOrder:n,selectedIds:r,expandedRows:o,fields:a})},Ce=()=>u.useContext(Fe),I=()=>u.useContext(He),V=()=>u.useContext(Ne),re=()=>u.useContext(Le),bt=u.createContext([]),$=()=>u.useContext(bt),Ct=()=>{const e=I(),t=$();let n=0;return e.enableExpandCollapse&&n++,e.showRowCheckbox&&n++,n+u.useMemo(()=>t.map(r=>r.groupConfig.columnOrder.length).reduce((r,o)=>r+o,0),[t])},yt=u.createContext(void 0),Yn=()=>u.useContext(yt),vt=u.createContext(void 0),_n=()=>u.useContext(vt),kt=u.createContext(void 0),Vn=u.createContext(!1),$n=()=>u.useContext(kt),Kn=u.createContext("standard"),St=u.createContext({}),ze=()=>u.useContext(St),jt=u.createContext(0),Ye=()=>u.useContext(jt),_e=(e,t,n)=>e?Pe.compact((t==null?void 0:t.map(r=>{const o=e==null?void 0:e[r];return{groupId:r,groupConfig:o}}))??[]).filter(r=>{var o;return(((o=r.groupConfig)==null?void 0:o.columnOrder.length)??0)>0}).map(r=>r):[{groupId:"virtual",groupConfig:{label:"",columnOrder:n??[]}}],Ve=(e,t,n)=>{if(e)return e===!0?te:e;if(!t&&n)return n===!0?te:n},ye=(e,t,n)=>{if(!(e===0||t!==0)&&n)return n===!0?te:n},oe=e=>{const{columns:t}=I(),n=t[e];if(!n)throw new Error("No config for column with id="+e);return n},It=()=>{var n,r,o;const e=I(),t=(o=(r=(n=$())==null?void 0:n[0])==null?void 0:r.groupConfig.columnOrder)==null?void 0:o[0];return t?e.columns[t]:void 0},Tt=()=>{const e=I(),t=$(),n=t[t.length-1],r=(n==null?void 0:n.groupConfig.columnOrder[n.groupConfig.columnOrder.length-1])??void 0;return r?e.columns[r]:void 0},Qn=function({columnId:t,groupConfig:n,borderFromGroup:r,colSpan:o,isFirstGroup:a,isLastGroup:c}){const{label:i,render:l,contentLeft:h,contentRight:d,loading:f,error:w}=n,{width:p,minWidth:g,zIndex:m,borderLeft:b}=oe(t),C=I(),{stickyHeader:S,headerRowOffsetTop:T}=C,j="columnGroupOrder"in C?C.stickyColumnGroups:void 0,O=Un(r,b),M=a&&(j==="first"||j==="both"),E=c&&(j==="last"||j==="both"),k=M||E||S,G=M||E;return s.jsx("th",{colSpan:o,style:{position:k?"sticky":void 0,height:"var(--current-row-height)",width:p,minWidth:g??p??"20px",background:k?"white":"transparent",left:M?"var(--current-left-offset)":void 0,right:E?"0px":void 0,top:S?T??"0px":void 0,borderLeft:O,zIndex:S&&G?"var(--swui-sticky-column-group-label-z-index)":G?"var(--swui-sticky-group-group-z-index)":S?m??"var(--swui-sticky-header-column-group-z-index)":m??1,boxShadow:M?"var(--swui-sticky-column-shadow-right)":E?"var(--swui-sticky-column-shadow-left)":void 0},children:s.jsx(x.Row,{alignItems:"center",children:s.jsxs(s.Fragment,{children:[h&&s.jsxs(s.Fragment,{children:[s.jsx(x.Space,{}),h,s.jsx(x.Space,{num:.5})]}),l?l(n):s.jsx(x.Indent,{children:s.jsx(x.Heading,{variant:"h5",whiteSpace:"nowrap",children:i})}),d&&s.jsxs(s.Fragment,{children:[s.jsx(x.Space,{num:.5}),d]}),(w||f)&&s.jsx(x.Indent,{}),f?s.jsx(v.InputSpinner,{}):w?s.jsx(ee.Tooltip,{label:w,placement:"bottom",appendTo:document.body,children:s.jsx(v.Icon,{icon:v.stenaExclamationTriangle,color:H.cssColor("--lhds-color-red-500"),size:14})}):void 0]})})})},Un=(e,t)=>{if(e)return e;if(t)return"1px solid transparent"},Xn=(e,t,n,r)=>({top:e?Jn(e,n):void 0,background:e||t?"white":void 0,position:e||t?"sticky":void 0,boxShadow:t?"var(--swui-sticky-column-shadow-right)":void 0,zIndex:e||t?r??"var(--swui-sticky-header-z-index)":r}),Jn=(e,t)=>{if(e&&t)return t;if(t)return t;if(e)return 0},Zn=D.memo(function({height:t=we}){const n=$(),r=I(),{showHeaderCheckbox:o,enableExpandCollapse:a,rowIndent:c,zIndex:i,stickyHeader:l,stickyCheckboxColumn:h,headerRowOffsetTop:d}=r,f=Xn(l,h,d,i),w=l?"var(--swui-sticky-column-group-label-z-index)":"var(--swui-sticky-group-group-z-index)";return s.jsxs("tr",{style:{height:t,borderLeft:pe},children:[c&&s.jsx("th",{style:f}),a&&s.jsx("th",{style:{...f,width:"var(--swui-expand-cell-width)",left:h?"0px":void 0,zIndex:w}}),o&&s.jsx("th",{style:{...f,left:h&&a?"var(--swui-expand-cell-width)":h?"0px":void 0,zIndex:w}}),n.map(({groupConfig:p,groupId:g},m)=>s.jsx(Qn,{isFirstGroup:m===0,isLastGroup:m===n.length-1,groupConfig:p,columnId:p.columnOrder[0],colSpan:p.columnOrder.length,borderFromGroup:ye(m,0,p.borderLeft)},g)),c&&s.jsx("th",{style:f}),s.jsx("th",{style:f})]})}),er=e=>{const t=_e("columnGroups"in e?e.columnGroups:void 0,"columnGroupOrder"in e?e.columnGroupOrder:void 0,"columnOrder"in e?e.columnOrder:void 0),n={};let r=0;return e.showRowCheckbox&&r++,e.enableExpandCollapse&&r++,t.forEach(o=>{o.groupConfig.columnOrder.forEach(a=>{tr(e.columns[a])&&(n[a]=r++)})}),{columnIndexPerColumnId:n,numNavigableColumns:r}},tr=e=>!e.disableGridCell,Pt=u.createContext({columnIndexPerColumnId:{},numNavigableColumns:0}),Ot=()=>u.useContext(Pt),nr=e=>{"columnGroupOrder"in e&&(rr(e),(e.stickyColumnGroups==="first"||e.stickyColumnGroups==="both")&&Ue(e,0),(e.stickyColumnGroups==="last"||e.stickyColumnGroups==="both")&&Ue(e,e.columnGroupOrder.length-1))},rr=e=>{Object.keys(e.columns).forEach(n=>{const r=e.columns[n];if("sticky"in r&&r.sticky)throw new Error("Columns can not be sticky when column groups are used. columnId: "+n)})},Ue=(e,t)=>{var o;if(!e.columnGroupOrder||e.columnGroupOrder.length===0)throw new Error("columnGroupOrder required when validating column group fixed width.");const n=e.columnGroupOrder[t],r=(o=e.columnGroups)==null?void 0:o[n];if(!r)throw new Error("Column group does not exist. Column group id = "+n);r.columnOrder.forEach(a=>{if(e.columns[a].width==null)throw new Error("All columns in sticky column group must have width set.")})},or=e=>{const t=e.stickyColumnGroups==="first"||e.stickyColumnGroups==="both"?Xe(ar(e),e.columns,!0):void 0,n=e.stickyColumnGroups==="last"||e.stickyColumnGroups==="both"?Xe(cr(e),e.columns,!1):void 0;return{...t,...n}},Xe=(e,t,n)=>{const r={},o=[n?"var(--current-left-offset)":"0px"];for(let a=0;a<e.length;a++){const c=e[a],i=t==null?void 0:t[c];r[c]=sr(o),o.push((i==null?void 0:i.width)??"0px")}return r},sr=e=>e.length===0?"0px":e.length===1?e[0]:"calc("+e.join(" + ")+")",ar=e=>{var r,o;const t=(r=e.columnGroupOrder)==null?void 0:r[0];if(!t)return[];const n=(o=e.columnGroups)==null?void 0:o[t];return(n==null?void 0:n.columnOrder)??[]},cr=e=>{var o,a,c;const t=(a=e.columnGroupOrder)==null?void 0:a[((o=e.columnGroupOrder)==null?void 0:o.length)-1];if(!t)return[];const n=(c=e.columnGroups)==null?void 0:c[t];if(!n)return[];const r=[...n.columnOrder];return r.reverse(),r},ir=e=>"columnGroups"in e?ur(e):lr(e),lr=e=>Object.keys(e.columns).reduce((n,r)=>{const o=e.columns[r],a=!!o.sticky;return n[r]={sticky:a,left:a?`calc(var(--current-left-offset) + ${o.left??"0px"})`:void 0,right:a?o.right:void 0,type:"column",isFirstColumnInLastGroup:!1,isLastColumnInFirstGroup:!1},n},{}),ur=e=>{const t={},n=e.columnGroupOrder,r=or(e),o=e.stickyColumnGroups==="first"||e.stickyColumnGroups==="both",a=e.stickyColumnGroups==="last"||e.stickyColumnGroups==="both";return n.forEach((c,i)=>{const h=e.columnGroups[c].columnOrder;h.forEach((d,f)=>{const w=i===0,p=i===n.length-1,g=w&&o,m=p&&a,b=f===0&&p,C=f===h.length-1&&w;t[d]={sticky:g||m,left:g?r[d]:void 0,right:m?r[d]:void 0,type:g?"first-group":m?"last-group":void 0,isFirstColumnInLastGroup:b,isLastColumnInFirstGroup:C}})}),t},Rt=(e,t)=>({setSelectedIds:n=>P.reducerIdGateAction(L(e,"selectedIds"),t.selectedIds.setSelectedIds(n)),clearSelection:()=>P.reducerIdGateAction(L(e,"selectedIds"),t.selectedIds.clearSelectedIds()),expandByIds:n=>P.reducerIdGateAction(L(e,"expandedRows"),t.expandedRows.setSelectedIds(n)),collapseAll:()=>P.reducerIdGateAction(L(e,"expandedRows"),t.expandedRows.clearSelectedIds()),sortBy:(n,r)=>P.reducerIdGateAction(L(e,"sortOrder"),t.sortOrder.sortBy(n,r??!1)),clearSortOrder:()=>P.reducerIdGateAction(L(e,"sortOrder"),t.sortOrder.clearSortOrder()),setLastSelectedId:n=>P.reducerIdGateAction(L(e,"fields"),t.fields.setEntityFields({lastSelectedId:n}))}),Mt=(e,t=qe())=>{const[n,r]=u.useReducer(gt(e),t),o=u.useMemo(()=>Rt(e,wt()),[e]);return{tableContext:u.useMemo(()=>({dispatch:r,actions:o,state:n}),[n,o,r])}},dr=e=>(e.rowIndent?2:0)+(e.enableExpandCollapse?1:0)+(e.showRowCheckbox?1:0)+hr(e),hr=e=>{var t;return"columnGroupOrder"in e?e.columnGroupOrder.reduce((n,r)=>{var a,c;const o=(a=e.columnGroups)==null?void 0:a[r];return n+(((c=o==null?void 0:o.columnOrder)==null?void 0:c.length)??0)},0):((t=e.columnOrder)==null?void 0:t.length)??0},mr=()=>{const e=I(),t=$(),n=e.enableExpandCollapse||e.showRowCheckbox,r=x.booleanOrNumberToNumber(e.rowIndent);return s.jsxs(s.Fragment,{children:[r?s.jsx("colgroup",{children:s.jsx("col",{style:{width:`calc(var(--swui-metrics-indent) * ${r})`}})}):null,n&&s.jsxs("colgroup",{children:[e.enableExpandCollapse&&s.jsx("col",{style:{width:"var(--swui-expand-cell-width)"}}),e.showRowCheckbox&&s.jsx("col",{style:{width:"var(--swui-checkbox-cell-width)"}})]}),t.map(({groupConfig:o,groupId:a})=>s.jsx("colgroup",{children:o.columnOrder.map(c=>s.jsx("col",{style:{width:e.columns[c].width,minWidth:e.columns[c].minWidth}},c))},a)),r?s.jsx("colgroup",{children:s.jsx("col",{style:{width:`calc(var(--swui-metrics-indent) * ${r})`}})}):null]})},fr="_standardTable_1iok0_1",xr="_relaxed_1iok0_37",pr="_condensed_1iok0_41",wr="_compact_1iok0_45",Je={standardTable:fr,relaxed:xr,condensed:pr,compact:wr},Dt=(e,t)=>e!=null&&t==null?-1:e==null&&t!=null?1:Ie(e,t,"number")?Number(e)-Number(t):Ie(e,t,"boolean")?Number(t)-Number(e):Ie(e,t,"string")?String(e).localeCompare(String(t)):e instanceof Date&&t instanceof Date?e.getTime()-t.getTime():0,Ie=(e,t,n)=>typeof e===n&&typeof t===n,Et=e=>{const{columns:t}=I();if(!e)return;const n=t[e];if(n)return n.itemValueResolver},Gt=D.memo(function({value:t,onValueChange:n,colIndex:r,rowIndex:o,numRows:a,disabled:c,onValueChangeAndShift:i,shiftPressedRef:l}){const h=Ct(),d=Ce(),f=ue(!!t,{colIndex:r,numCols:h,numRows:a,rowIndex:o,tableId:d}),{requiredProps:w}=f,p=u.useCallback(g=>{l.current?i==null||i(g):n==null||n(g)},[n,i,l]);return s.jsx(ne.Checkbox,{size:"small",disabled:c,value:t,onValueChange:p,...w})}),gr=(e,t,n)=>{if(t==null||n==null||e==null||t===n)return;const r=e.indexOf(t),o=e.indexOf(n);if(r<0||o<0)return;const a=Math.min(r,o),c=Math.max(r,o);return e.slice(a,c+1)},Bt=(e,t)=>{const{keyResolver:n}=I(),{selectedIds:{selectedIds:r},fields:{lastSelectedId:o}}=V(),{actions:{setSelectedIds:a,setLastSelectedId:c},dispatch:i}=re(),l=u.useMemo(()=>n(e),[n,e]),h=u.useMemo(()=>r.includes(l),[r,l]),{toggle:d,addMultiple:f,removeMultiple:w}=x.useArraySet(r,m=>i(a(m))),p=u.useCallback(()=>{if(t&&o){const m=gr(t,o,l);m!=null&&m.length?h?w(m):f(m):d(l)}else d(l);i(c(l))},[t,o,i,c,l,h,w,f,d]),g=u.useCallback(()=>{d(l),i(c(l))},[d,l,i,c]);return{isSelected:h,toggleSelected:g,shiftAndToggleSelected:p}},$e=e=>{const{keyResolver:t}=I(),{expandedRows:{selectedIds:n}}=V(),{actions:{expandByIds:r},dispatch:o}=re(),a=u.useMemo(()=>t(e),[t,e]),c=u.useMemo(()=>n.includes(a),[n,a]),{toggle:i}=x.useArraySet(n,h=>o(r(h)));return{toggleRowExpanded:u.useCallback(()=>{i(a)},[i,a]),isExpanded:c}},br=function({item:e,colIndex:t,numRows:n,rowIndex:r}){const o=Ct(),a=Ce(),c=ue(!0,{colIndex:t,numCols:o,numRows:n,rowIndex:r,tableId:a}),{requiredProps:i}=c,{expandCollapseDisableResolver:l}=I(),{toggleRowExpanded:h,isExpanded:d}=$e(e),f=u.useMemo(()=>l?l(e):!1,[l,e]);return s.jsx(x.Row,{alignItems:"center",justifyContent:"center",indent:!0,children:!f&&s.jsx(v.FlatButton,{size:"small",leftIcon:d?v.stenaAngleDown:v.stenaAngleRight,onClick:h,...i})})},Cr=(e,t,n)=>e?e(t):n,Wt=(e,t,n)=>u.useMemo(()=>Cr(e,t,n),[e,t,n]),At=(e,t)=>{const{background:n,backgroundResolver:r}=oe(e);return Wt(r,t,n)},Oe=(e,t)=>{const{background:n,backgroundResolver:r}=e??{};return Wt(r,t,n)},Ft=e=>e==null?"":e instanceof Date?e.toISOString():typeof e=="object"?JSON.stringify(e):String(e),Nt=e=>Pe.upperFirst(Pe.lowerCase(e)),yr="_standardTableCell_1xzcm_1",vr={standardTableCell:yr},Lt=D.memo(function({enableGridCell:t,children:n,background:r,gridCellRequiredProps:o,isEditing:a,justifyContent:c,onKeyDown:i,width:l,minWidth:h}){return s.jsx(x.Row,{width:l,minWidth:h,height:"inherit",background:r,overflow:"hidden",onKeyDown:i,children:s.jsx(x.Row,{border:"1px solid transparent",className:vr.standardTableCell,width:"100%",height:"100%",justifyContent:c,alignItems:"center",borderRadius:t?"4px":void 0,focusBorder:t&&!a?"1px solid var(--swui-primary-action-color)":void 0,hoverBorder:t&&!a?"1px solid var(--lhds-color-ui-300)":void 0,...t?o:void 0,children:n})})}),kr="_textCell_1yv6v_1",Sr={textCell:kr},Ht=D.memo(function({label:t,size:n,color:r}){return s.jsx(x.Indent,{overflow:"hidden",children:s.jsx(x.Text,{className:Sr.textCell,title:t,size:n,color:r,children:t})})}),jr=({label:e,textSize:t})=>s.jsx(Ht,{label:e,size:t}),qt=D.memo(function({columnId:t,item:n,colIndex:r,rowIndex:o,numRows:a,borderFromGroup:c,disableBorderLeft:i}){const{keyResolver:l,enableGridCell:h,gridCellOptions:d}=I(),f=V().selectedIds.selectedIds,w=Ce(),p=Yn(),{numNavigableColumns:g}=Ot(),m=ze(),b=u.useMemo(()=>l(n),[n,l]),C=u.useMemo(()=>f.indexOf(b)>=0,[b,f]),{defaultCellRenderer:S=jr,defaultTextSize:T}=I(),{itemValueResolver:j,itemLabelFormatter:O,width:M,minWidth:E,justifyContentCell:k="flex-start",borderLeft:G,renderCell:B=S,gridCellOptions:K,isEditable:N,onChange:W,onKeyDown:q,disableGridCell:ke,disableGridCellFocus:de,zIndex:he}=oe(t),z=u.useMemo(()=>j?j(n):t in n?n[t]:"",[j,n,t]),se=u.useMemo(()=>O?O(z,n):Ft(z),[z,O,n]),J=typeof N=="boolean"?N:N?N(n):void 0,ae=u.useCallback(me=>{q==null||q(me,{columnId:t,item:n}),p==null||p(me,{columnId:t,item:n})},[p,t,n,q]),Q=ue(se,{colIndex:r,rowIndex:o,numRows:a,numCols:g,tableId:w,isEditable:J,onChange:W?me=>W(n,me):void 0,...d,...K}),A=m[t],rn=At(t,n)??"inherit",Se=A.sticky?he??"var(--swui-sticky-column-z-index)":he??1,on=u.useMemo(()=>B({label:se,value:z,item:n,gridCell:Q,isEditable:J,isSelected:C,zIndex:Se,textSize:T,itemKey:b}),[B,se,z,n,Q,J,C,Se,b,T]),sn=Ve(c,i,G),an=A.sticky&&A.type==="last-group"&&A.isFirstColumnInLastGroup||A.sticky&&A.type==="column"&&A.right?"var(--swui-sticky-column-shadow-left)":A.sticky?"var(--swui-sticky-column-shadow-right)":void 0;return s.jsx("td",{style:{borderLeft:sn,position:A.sticky?"sticky":void 0,left:A.sticky?A.left:void 0,right:A.sticky?A.right:void 0,boxShadow:an,zIndex:Se,height:"var(--current-row-height)",background:rn},children:s.jsx(Lt,{enableGridCell:h&&!ke&&!de,gridCellRequiredProps:Q.requiredProps,isEditing:Q.isEditing,width:M,minWidth:E,justifyContent:k,onKeyDown:ae,children:on})})}),Ir=function({item:t}){const{renderRowExpansion:n,enableExpandCollapse:r}=I(),{isExpanded:o,toggleRowExpanded:a}=$e(t),c=Ye();return s.jsx(s.Fragment,{children:r&&n&&o&&s.jsx("tr",{style:{borderLeft:Ge,background:Ee},children:s.jsx("td",{colSpan:c,children:n(t,{onRequestCollapse:a})})})})},zt=xn.tr`
|
|
2
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("react/jsx-runtime"),u=require("react"),v=require("@stenajs-webui/elements"),H=require("@stenajs-webui/theme"),ee=require("@stenajs-webui/tooltip"),x=require("@stenajs-webui/core"),cn=require("@fortawesome/free-solid-svg-icons/faSortAlphaDown"),ln=require("@fortawesome/free-solid-svg-icons/faSortAlphaUp"),un=require("@fortawesome/free-solid-svg-icons/faSortAmountDownAlt"),dn=require("@fortawesome/free-solid-svg-icons/faSortAmountUpAlt"),hn=require("@fortawesome/free-solid-svg-icons/faSortNumericDown"),mn=require("@fortawesome/free-solid-svg-icons/faSortNumericUp"),st=require("classnames"),ne=require("@stenajs-webui/forms"),je=require("react-redux"),P=require("@stenajs-webui/redux"),fn=require("redux"),at=require("@stenajs-webui/panels"),Pe=require("lodash-es"),xn=require("@emotion/styled");function pn(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const n in e)if(n!=="default"){const r=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,r.get?r:{enumerable:!0,get:()=>e[n]})}}return t.default=e,Object.freeze(t)}const D=pn(u),Me=D.createContext({}),wn=({children:e,numCols:t,numRows:n,tableId:r,wrap:o})=>{const a=u.useMemo(()=>({numCols:t,numRows:n,tableId:r,wrap:o}),[t,n,r,o]);return s.jsx(Me.Provider,{value:a,children:e})},xe=e=>{const{loading:t,creating:n,deleting:r,updating:o,hasError:a}=e;return!!(t||n||r||o||a)},De=({crudStatus:e})=>{if(!e||!xe(e))return null;const{errorMessage:t,hasError:n,loading:r,creating:o,deleting:a,updating:c}=e;if(r||o||a||c)return s.jsx(v.InputSpinner,{color:H.cssColor("--lhds-color-ui-500")});if(n){const i=s.jsx(v.Icon,{icon:v.stenaExclamationTriangle,color:H.cssColor("--lhds-color-orange-600"),size:14});return s.jsx(s.Fragment,{children:t?s.jsx(ee.Tooltip,{label:t,zIndex:100,children:i}):i})}return null},ct=({isEditable:e,warningOnEmpty:t,value:n,modifiedField:r,crudStatus:o})=>{const a=t&&(r==null?void 0:r.modified)&&(r==null?void 0:r.newValue)==="",c=o&&xe(o),i=a||c;return s.jsxs(s.Fragment,{children:[s.jsx(x.Text,{color:e?"var(--swui-primary-action-color)":void 0,variant:r!=null&&r.modified?"bold":void 0,children:n}),(r==null?void 0:r.newValue)!==void 0&&s.jsxs(s.Fragment,{children:[s.jsx(x.Indent,{children:s.jsx(v.Icon,{icon:v.stenaArrowRight,size:12})}),s.jsx(x.Text,{color:"var(--swui-primary-action-color)",variant:"bold",children:r.newValue})]}),i&&s.jsx(x.Space,{}),a?s.jsx(ee.Tooltip,{label:t,zIndex:100,children:s.jsx(v.Icon,{icon:v.stenaExclamationTriangle,color:H.cssColor("--lhds-color-orange-600"),size:14})}):s.jsx(De,{crudStatus:o})]})},it=({alignItems:e="center",justifyContent:t="flex-start",overflow:n="hidden",indent:r=1,...o})=>s.jsx(x.Row,{height:"100%",alignItems:e,justifyContent:t,overflow:n,indent:r,...o}),lt="var(--lhds-color-ui-300)",ut="var(--lhds-color-blue-500)",Ee="var(--lhds-color-blue-50)",dt="var(--lhds-color-blue-100)",te=`1px solid ${lt}`,ht="1px solid transparent",pe="var(--swui-expand-highlight-border-width) solid transparent",Ge=`var(--swui-expand-highlight-border-width) solid ${ut}`,we="40px",ge="40px",Be="40px",gn=e=>s.jsx(it,{width:Be,justifyContent:"center",...e}),Ke=({iconVariant:e="amount",direction:t})=>s.jsx(x.Box,{width:"14px",children:s.jsx(v.Icon,{size:14,color:H.cssColor("--lhds-color-ui-500"),icon:bn(t,e)})}),bn=(e,t)=>{switch(t){case"alpha":return e==="up"?ln.faSortAlphaUp:cn.faSortAlphaDown;case"numeric":return e==="up"?mn.faSortNumericUp:hn.faSortNumericDown;case"amount":return e==="up"?dn.faSortAmountUpAlt:un.faSortAmountDownAlt;default:return x.exhaustSwitchCaseElseThrow(t)}},be=D.memo(({label:e,arrow:t,onClick:n,children:r,selected:o,popoverContent:a,loading:c,infoIconTooltipText:i,overflow:l="hidden",alignRight:h,sortOrderIconVariant:d,appendTooltipTo:f,...w})=>{const p=u.useRef(null),g=n?{cursor:"pointer",userSelect:"none"}:void 0,m=!e&&!t&&!i;return s.jsxs(x.Row,{height:"100%",alignItems:"center",ref:p,overflow:l,justifyContent:h?"flex-end":"flex-start",borderTop:"2px solid transparent",borderBottom:`2px solid ${o?H.cssColor("--lhds-color-blue-500"):"transparent"}`,...w,children:[s.jsxs(x.Row,{alignItems:"center",indent:!0,children:[!t&&h&&s.jsxs(s.Fragment,{children:[s.jsx(x.Space,{}),s.jsx(x.Box,{width:"14px"}),s.jsx(x.Space,{num:.5})]}),(r||e)&&s.jsxs(x.Row,{onClick:n,style:g,alignItems:"center",children:[r&&s.jsxs(s.Fragment,{children:[r,!m&&s.jsx(x.Space,{num:.5})]}),t&&h&&s.jsxs(s.Fragment,{children:[s.jsx(x.Space,{}),s.jsx(Ke,{direction:t,iconVariant:d}),s.jsx(x.Space,{num:.5})]}),e&&s.jsx(x.Heading,{variant:"h6",style:{textAlign:"left"},children:e}),t&&!h&&s.jsxs(s.Fragment,{children:[s.jsx(x.Space,{num:.5}),s.jsx(Ke,{direction:t,iconVariant:d}),s.jsx(x.Space,{})]})]}),i&&s.jsxs(s.Fragment,{children:[s.jsx(x.Space,{}),s.jsxs(x.Row,{onClick:b=>b.stopPropagation(),children:[s.jsx(ee.Tooltip,{label:i,zIndex:"var(--swui-sticky-popover-z-index)",appendTo:f,children:s.jsx(v.Icon,{icon:v.stenaInfoCircle,size:14,color:H.cssColor("--lhds-color-blue-400")})}),s.jsx(x.Space,{})]})]})]}),s.jsx(x.Row,{children:c?s.jsx(v.InputSpinner,{}):a?s.jsx(ee.Popover,{content:a,trigger:"click",zIndex:1e3,disablePadding:!0,children:s.jsx(v.FlatButton,{leftIcon:v.stenaDotsVertical,size:"small"})}):null}),!t&&!h&&s.jsxs(s.Fragment,{children:[s.jsx(x.Space,{}),s.jsx(x.Box,{width:"14px"}),s.jsx(x.Space,{num:.5})]})]})}),Cn=e=>s.jsx(be,{width:Be,justifyContent:"center",...e}),yn=({label:e,flex:t,width:n,indent:r=1,height:o=ge})=>s.jsx(be,{width:n,flex:t,height:o,children:s.jsx(x.Box,{indent:r,spacing:!0,children:s.jsx(x.Text,{variant:"bold",children:e})})}),vn=D.memo(({style:e,height:t=ge,...n})=>s.jsx(x.Row,{style:e,height:t,...n})),kn="_tableRow_1cphw_1",Sn={tableRow:kn},jn=({hideBorderTop:e,height:t=ge,className:n,...r})=>s.jsx(x.Row,{borderTop:e?ht:te,height:t,className:st(Sn.tableRow,n),...r}),mt=e=>{const[t,n]=u.useState(e),r=u.useRef(e),o=u.useRef(e),a=u.useCallback(d=>{n(d),o.current=d},[n,o]);u.useEffect(()=>{a(e)},[a,e]);const c=u.useCallback(()=>{r&&a(r.current)},[a,r]),i=u.useCallback(d=>{r.current=t,d&&a(d)},[t,a]),l=u.useCallback(d=>r.current=d,[r]),h=u.useCallback(()=>o.current,[o]);return{value:t,setValue:a,setRevertValue:l,revert:c,commit:i,getValue:h}},In=e=>({altKey:e.altKey,charCode:e.charCode,ctrlKey:e.ctrlKey,key:e.key,keyCode:e.keyCode,locale:e.locale,location:e.location,metaKey:e.metaKey,repeat:e.repeat,shiftKey:e.shiftKey,which:e.which}),Tn=e=>e,ft=(e,{isEditable:t=!1,allowedInputType:n="all",onChange:r,onStartEditing:o,onStopEditing:a,transformEnteredValue:c=Tn})=>{const[i,l]=u.useState(!1),[h,d]=u.useState(void 0),f=mt(e),{getValue:w,revert:p,setValue:g,setRevertValue:m}=f,b=u.useCallback(j=>{t&&(g(e),m(e),l(!0),o&&o(j))},[t,o,m,g,e]),C=u.useCallback(()=>{t&&(l(!1),a&&a(),r&&r(w()))},[t,r,a,w,l]),S=u.useCallback(()=>{t&&(l(!1),a&&a(),p())},[t,a,p,l]);return{onKeyDown:u.useMemo(()=>En(i,t,b,d,n,c,f),[i,t,b,d,n,c,f]),isEditing:i,lastKeyEvent:h,revertableValue:f,startEditing:b,stopEditing:C,stopEditingAndRevert:S,onDoubleClick:b}},Pn=e=>e==="all"||e==="numeric"||e==="alphanumeric",On=e=>e==="all"||e==="alphanumeric"||e==="letters",Rn=e=>!!e.match(/^[-+*<>]$/),Mn=e=>!!e.match(/^[a-zA-Z0-9]$/),Dn=e=>!isNaN(parseInt(e,10)),En=(e,t,n,r,o,a,c)=>i=>{if(!(i.ctrlKey||i.metaKey||i.shiftKey)){if(i.key==="Enter"&&t)r(void 0),n(),c.commit(),i.preventDefault(),i.stopPropagation();else if(t){const l=In(i);(Dn(i.key)&&Pn(o)||Mn(i.key)&&On(o)||Rn(i.key))&&(n(l),r(l),c.commit(),c.setValue(a(l.key)),i.preventDefault(),i.stopPropagation())}}},Gn=(e,t,n,r)=>{let o=e,a=t;return t>r&&(a=0),t<0&&(a=r),e>n&&(o=0),e<0&&(o=n),{realX:o,realY:a}},Qe=(e,t,n)=>Math.max(Math.min(e,n),t),Bn=(e,t,n)=>({rowIndex:Qe(e.rowIndex,0,t),colIndex:Qe(e.colIndex,0,n)}),Wn=(e,t,n)=>{const r=Gn(e.colIndex,e.rowIndex,n,t);return{rowIndex:r.realY,colIndex:r.realX}},An=(e,t,n,r,o,a="clamped")=>{const c=Fn(e,t,o);return a==="clamped"?Bn(c,n-1,r-1):a==="wrapped"?Wn(c,n-1,r-1):c},Fn=(e,t,n)=>n==="up"?{rowIndex:e-1,colIndex:t}:n==="down"?{rowIndex:e+1,colIndex:t}:n==="left"?{rowIndex:e,colIndex:t-1}:n==="right"?{rowIndex:e,colIndex:t+1}:{rowIndex:e,colIndex:t},Nn=e=>e.replace(/^[^a-z]+|[^\w:.-]+/gi,""),Ln=e=>{if(!e.tableId)throw new Error("tableId is required.");if(e.numRows==null)throw new Error("numRows is required.");if(e.numCols==null)throw new Error("numCols is required.");return e},We=e=>{const t=u.useContext(Me);return u.useMemo(()=>Ln({...t,...e}),[t,e])},xt=e=>{const{rowIndex:t,colIndex:n,numRows:r,numCols:o,tableId:a,edgeMode:c,onCellMove:i,onCellNavigation:l}=We(e),h=u.useMemo(()=>Hn(a,t,n,r,o,c,i,l),[a,t,n,r,o,c,i,l]),d=u.useMemo(()=>qn(h),[h]),f=u.useMemo(()=>pt(a,t,n),[a,t,n]),w=u.useMemo(()=>({tabIndex:0,onKeyDown:d,id:f}),[d,f]);return{focusOnCell:Ae,moveHandler:h,requiredProps:w}},Hn=(e,t,n,r,o,a,c,i)=>l=>{const h=An(t,n,r,o,l,a),d=n!==h.colIndex,f=t!==h.rowIndex;(d||f)&&(c&&c({direction:l,fromRowIndex:t,fromColIndex:n,rowIndex:h.rowIndex,colIndex:h.colIndex,colDidChange:d,rowDidChange:f}),Ae(e,h)),i&&i({direction:l,fromRowIndex:t,fromColIndex:n,rowIndex:h.rowIndex,colIndex:h.colIndex,colDidChange:d,rowDidChange:f,cellDidChange:d||f})},pt=(e,t,n)=>Nn(`table-${e}-${t}-${n}`),qn=e=>t=>t.key==="ArrowLeft"?(e("left"),t.preventDefault(),t.stopPropagation(),!0):t.key==="ArrowUp"?(e("up"),t.preventDefault(),t.stopPropagation(),!0):t.key==="ArrowRight"?(e("right"),t.preventDefault(),t.stopPropagation(),!0):t.key==="ArrowDown"?(e("down"),t.preventDefault(),t.stopPropagation(),!0):!1,Ae=(e,t)=>{const n=document.getElementById(pt(e,t.rowIndex,t.colIndex));n&&n.focus()},ue=(e,t)=>{const{tableId:n}=We(t),r=xt(t),o=ft(e,t),a=u.useMemo(()=>({rowIndex:t.rowIndex,colIndex:t.colIndex}),[t.rowIndex,t.colIndex]),c=u.useCallback(()=>{o.startEditing(),r.focusOnCell(n,a)},[o,r,n,a]),i=u.useCallback(()=>{o.stopEditing(),r.focusOnCell(n,a)},[o,r,n,a]),l=u.useCallback(()=>{o.stopEditingAndRevert(),r.focusOnCell(n,a)},[o,r,n,a]),h=u.useCallback(p=>{o.stopEditing(),r.moveHandler(p)},[o,r]),d=u.useCallback(p=>{r.moveHandler(p)},[r]),f=u.useCallback(p=>{o.isEditing||r.requiredProps.onKeyDown(p)||o.onKeyDown(p)},[o,r.requiredProps]),w=u.useMemo(()=>({...r.requiredProps,onKeyDown:f,onDoubleClick:o.onDoubleClick}),[f,o.onDoubleClick,r.requiredProps]);return{isEditing:o.isEditing,lastKeyEvent:o.lastKeyEvent,editorValue:o.revertableValue.value,setEditorValue:o.revertableValue.setValue,revertEditorValue:o.revertableValue.revert,requiredProps:w,move:d,startEditing:c,stopEditing:i,stopEditingAndRevert:l,stopEditingAndMove:h}},zn=function({allowedInputType:t,value:n="",entityId:r,isEditable:o,rowIndent:a,crudStatusRedux:c,modifiedFieldsRedux:i,colIndex:l,rowIndex:h,numCols:d,numRows:f,warningOnEmpty:w}){const p=je.useDispatch(),g=je.useSelector(i.selectors.getState),m=je.useSelector(c.selectors.getState),b=g.entities[r],C=m.entities[r],S=u.useCallback((W="")=>{p(W===n?i.actions.clearEntity(r):i.actions.setEntity({id:r,originalValue:n,newValue:W,modified:!0}))},[p,r,i.actions,n]),{isEditing:T,stopEditing:j,editorValue:O,setEditorValue:M,stopEditingAndRevert:E,stopEditingAndMove:k,lastKeyEvent:G,requiredProps:{onKeyDown:B,...K}}=ue(n,{rowIndex:h,colIndex:l,numCols:d,numRows:f,tableId:"serviceManningMatrixTable",onChange:S,isEditable:o,allowedInputType:t}),N=u.useCallback(W=>{W.key==="Delete"?(p(i.actions.clearEntity(r)),p(c.actions.setEntityFields(r,{hasError:!1,errorMessage:void 0}))):B(W)},[B,r,p,i.actions,c.actions]);return s.jsxs(x.Row,{height:we,width:"100%",borderBottom:te,hoverBackground:"var(--ui7)",alignItems:"center",children:[a&&s.jsx(x.Indent,{num:a}),s.jsx(x.Row,{width:"100%",height:"100%",justifyContent:"flex-end",alignItems:"center",border:"1px solid transparent",borderRadius:"4px",focusBorder:T?void 0:"1px solid var(--primary-action-color)",hoverBorder:T?void 0:"var(--ui5) solid 1px;",onKeyDown:N,...K,children:s.jsx(x.Indent,{row:!0,alignItems:"center",children:T?s.jsx(ne.TextInput,{onValueChange:M,value:O,onDone:j,onEsc:E,autoFocus:!0,selectAllOnMount:!G,onMove:k}):s.jsxs(s.Fragment,{children:[s.jsx(x.Text,{color:o?"var(--primary-action-color)":void 0,variant:b!=null&&b.modified?"bold":void 0,children:n}),(b==null?void 0:b.newValue)!==void 0&&s.jsxs(s.Fragment,{children:[s.jsx(x.Indent,{children:s.jsx(v.Icon,{icon:v.stenaArrowRight,size:12})}),s.jsx(x.Text,{color:"var(--primary-action-color)",variant:"bold",children:b.newValue})]}),C&&xe(C)&&s.jsx(x.Space,{num:2}),w&&(b!=null&&b.modified)&&(b==null?void 0:b.newValue)===""?s.jsx(ee.Tooltip,{label:w,zIndex:100,children:s.jsx(v.Icon,{icon:v.stenaExclamationTriangle,color:"var(--ui-alert1)",size:14})}):s.jsx(De,{crudStatus:C})]})})}),a&&s.jsx(x.Indent,{num:a})]})},Fe=u.createContext(""),Ne=u.createContext(void 0),Le=u.createContext(void 0),He=u.createContext(void 0),wt=()=>({sortOrder:P.createSortOrderActions(),selectedIds:P.createSelectedIdsActions(),expandedRows:P.createSelectedIdsActions(),fields:P.createEntityActions()}),L=(e,t)=>`${e}.${t}`,qe=(e=void 0,t=!1,n=[],r=[])=>({sortOrder:P.createSortOrderReducerInitialState(e,t),selectedIds:P.createSelectedIdsReducerInitialState(n),expandedRows:P.createSelectedIdsReducerInitialState(r),fields:{lastSelectedId:void 0}}),gt=(e,t)=>{const n=P.reducerIdGate(L(e,"sortOrder"),P.createSortOrderReducer(t==null?void 0:t.sortOrder)),r=P.reducerIdGate(L(e,"selectedIds"),P.createSelectedIdsReducer(t==null?void 0:t.selectedIds)),o=P.reducerIdGate(L(e,"expandedRows"),P.createSelectedIdsReducer(t==null?void 0:t.expandedRows)),a=P.reducerIdGate(L(e,"fields"),P.createEntityReducer((t==null?void 0:t.fields)??{}));return fn.combineReducers({sortOrder:n,selectedIds:r,expandedRows:o,fields:a})},Ce=()=>u.useContext(Fe),I=()=>u.useContext(He),V=()=>u.useContext(Ne),re=()=>u.useContext(Le),bt=u.createContext([]),$=()=>u.useContext(bt),Ct=()=>{const e=I(),t=$();let n=0;return e.enableExpandCollapse&&n++,e.showRowCheckbox&&n++,n+u.useMemo(()=>t.map(r=>r.groupConfig.columnOrder.length).reduce((r,o)=>r+o,0),[t])},yt=u.createContext(void 0),Yn=()=>u.useContext(yt),vt=u.createContext(void 0),_n=()=>u.useContext(vt),kt=u.createContext(void 0),Vn=u.createContext(!1),$n=()=>u.useContext(kt),Kn=u.createContext("standard"),St=u.createContext({}),ze=()=>u.useContext(St),jt=u.createContext(0),Ye=()=>u.useContext(jt),_e=(e,t,n)=>e?Pe.compact((t==null?void 0:t.map(r=>{const o=e==null?void 0:e[r];return{groupId:r,groupConfig:o}}))??[]).filter(r=>{var o;return(((o=r.groupConfig)==null?void 0:o.columnOrder.length)??0)>0}).map(r=>r):[{groupId:"virtual",groupConfig:{label:"",columnOrder:n??[]}}],Ve=(e,t,n)=>{if(e)return e===!0?te:e;if(!t&&n)return n===!0?te:n},ye=(e,t,n)=>{if(!(e===0||t!==0)&&n)return n===!0?te:n},oe=e=>{const{columns:t}=I(),n=t[e];if(!n)throw new Error("No config for column with id="+e);return n},It=()=>{var n,r,o;const e=I(),t=(o=(r=(n=$())==null?void 0:n[0])==null?void 0:r.groupConfig.columnOrder)==null?void 0:o[0];return t?e.columns[t]:void 0},Tt=()=>{const e=I(),t=$(),n=t[t.length-1],r=(n==null?void 0:n.groupConfig.columnOrder[n.groupConfig.columnOrder.length-1])??void 0;return r?e.columns[r]:void 0},Qn=function({columnId:t,groupConfig:n,borderFromGroup:r,colSpan:o,isFirstGroup:a,isLastGroup:c}){const{label:i,render:l,contentLeft:h,contentRight:d,loading:f,error:w}=n,{width:p,minWidth:g,zIndex:m,borderLeft:b}=oe(t),C=I(),{stickyHeader:S,headerRowOffsetTop:T}=C,j="columnGroupOrder"in C?C.stickyColumnGroups:void 0,O=Un(r,b),M=a&&(j==="first"||j==="both"),E=c&&(j==="last"||j==="both"),k=M||E||S,G=M||E;return s.jsx("th",{colSpan:o,style:{position:k?"sticky":void 0,height:"var(--current-row-height)",width:p,minWidth:g??p??"20px",background:k?"white":"transparent",left:M?"var(--current-left-offset)":void 0,right:E?"0px":void 0,top:S?T??"0px":void 0,borderLeft:O,zIndex:S&&G?"var(--swui-sticky-column-group-label-z-index)":G?"var(--swui-sticky-group-group-z-index)":S?m??"var(--swui-sticky-header-column-group-z-index)":m??1,boxShadow:M?"var(--swui-sticky-column-shadow-right)":E?"var(--swui-sticky-column-shadow-left)":void 0},children:s.jsx(x.Row,{alignItems:"center",children:s.jsxs(s.Fragment,{children:[h&&s.jsxs(s.Fragment,{children:[s.jsx(x.Space,{}),h,s.jsx(x.Space,{num:.5})]}),l?l(n):s.jsx(x.Indent,{children:s.jsx(x.Heading,{variant:"h5",whiteSpace:"nowrap",children:i})}),d&&s.jsxs(s.Fragment,{children:[s.jsx(x.Space,{num:.5}),d]}),(w||f)&&s.jsx(x.Indent,{}),f?s.jsx(v.InputSpinner,{}):w?s.jsx(ee.Tooltip,{label:w,placement:"bottom",appendTo:document.body,children:s.jsx(v.Icon,{icon:v.stenaExclamationTriangle,color:H.cssColor("--lhds-color-red-500"),size:14})}):void 0]})})})},Un=(e,t)=>{if(e)return e;if(t)return"1px solid transparent"},Xn=(e,t,n,r)=>({top:e?Jn(e,n):void 0,background:e||t?"white":void 0,position:e||t?"sticky":void 0,boxShadow:t?"var(--swui-sticky-column-shadow-right)":void 0,zIndex:e||t?r??"var(--swui-sticky-header-z-index)":r}),Jn=(e,t)=>{if(e&&t)return t;if(t)return t;if(e)return 0},Zn=D.memo(function({height:t=we}){const n=$(),r=I(),{showHeaderCheckbox:o,enableExpandCollapse:a,rowIndent:c,zIndex:i,stickyHeader:l,stickyCheckboxColumn:h,headerRowOffsetTop:d}=r,f=Xn(l,h,d,i),w=l?"var(--swui-sticky-column-group-label-z-index)":"var(--swui-sticky-group-group-z-index)";return s.jsxs("tr",{style:{height:t,borderLeft:pe},children:[c&&s.jsx("th",{style:f}),a&&s.jsx("th",{style:{...f,width:"var(--swui-expand-cell-width)",left:h?"0px":void 0,zIndex:w}}),o&&s.jsx("th",{style:{...f,left:h&&a?"var(--swui-expand-cell-width)":h?"0px":void 0,zIndex:w}}),n.map(({groupConfig:p,groupId:g},m)=>s.jsx(Qn,{isFirstGroup:m===0,isLastGroup:m===n.length-1,groupConfig:p,columnId:p.columnOrder[0],colSpan:p.columnOrder.length,borderFromGroup:ye(m,0,p.borderLeft)},g)),c&&s.jsx("th",{style:f}),s.jsx("th",{style:f})]})}),er=e=>{const t=_e("columnGroups"in e?e.columnGroups:void 0,"columnGroupOrder"in e?e.columnGroupOrder:void 0,"columnOrder"in e?e.columnOrder:void 0),n={};let r=0;return e.showRowCheckbox&&r++,e.enableExpandCollapse&&r++,t.forEach(o=>{o.groupConfig.columnOrder.forEach(a=>{tr(e.columns[a])&&(n[a]=r++)})}),{columnIndexPerColumnId:n,numNavigableColumns:r}},tr=e=>!e.disableGridCell,Pt=u.createContext({columnIndexPerColumnId:{},numNavigableColumns:0}),Ot=()=>u.useContext(Pt),nr=e=>{"columnGroupOrder"in e&&(rr(e),(e.stickyColumnGroups==="first"||e.stickyColumnGroups==="both")&&Ue(e,0),(e.stickyColumnGroups==="last"||e.stickyColumnGroups==="both")&&Ue(e,e.columnGroupOrder.length-1))},rr=e=>{Object.keys(e.columns).forEach(n=>{const r=e.columns[n];if("sticky"in r&&r.sticky)throw new Error("Columns can not be sticky when column groups are used. columnId: "+n)})},Ue=(e,t)=>{var o;if(!e.columnGroupOrder||e.columnGroupOrder.length===0)throw new Error("columnGroupOrder required when validating column group fixed width.");const n=e.columnGroupOrder[t],r=(o=e.columnGroups)==null?void 0:o[n];if(!r)throw new Error("Column group does not exist. Column group id = "+n);r.columnOrder.forEach(a=>{if(e.columns[a].width==null)throw new Error("All columns in sticky column group must have width set.")})},or=e=>{const t=e.stickyColumnGroups==="first"||e.stickyColumnGroups==="both"?Xe(ar(e),e.columns,!0):void 0,n=e.stickyColumnGroups==="last"||e.stickyColumnGroups==="both"?Xe(cr(e),e.columns,!1):void 0;return{...t,...n}},Xe=(e,t,n)=>{const r={},o=[n?"var(--current-left-offset)":"0px"];for(let a=0;a<e.length;a++){const c=e[a],i=t==null?void 0:t[c];r[c]=sr(o),o.push((i==null?void 0:i.width)??"0px")}return r},sr=e=>e.length===0?"0px":e.length===1?e[0]:"calc("+e.join(" + ")+")",ar=e=>{var r,o;const t=(r=e.columnGroupOrder)==null?void 0:r[0];if(!t)return[];const n=(o=e.columnGroups)==null?void 0:o[t];return(n==null?void 0:n.columnOrder)??[]},cr=e=>{var o,a,c;const t=(a=e.columnGroupOrder)==null?void 0:a[((o=e.columnGroupOrder)==null?void 0:o.length)-1];if(!t)return[];const n=(c=e.columnGroups)==null?void 0:c[t];if(!n)return[];const r=[...n.columnOrder];return r.reverse(),r},ir=e=>"columnGroups"in e?ur(e):lr(e),lr=e=>Object.keys(e.columns).reduce((n,r)=>{const o=e.columns[r],a=!!o.sticky;return n[r]={sticky:a,left:a?`calc(var(--current-left-offset) + ${o.left??"0px"})`:void 0,right:a?o.right:void 0,type:"column",isFirstColumnInLastGroup:!1,isLastColumnInFirstGroup:!1},n},{}),ur=e=>{const t={},n=e.columnGroupOrder,r=or(e),o=e.stickyColumnGroups==="first"||e.stickyColumnGroups==="both",a=e.stickyColumnGroups==="last"||e.stickyColumnGroups==="both";return n.forEach((c,i)=>{const h=e.columnGroups[c].columnOrder;h.forEach((d,f)=>{const w=i===0,p=i===n.length-1,g=w&&o,m=p&&a,b=f===0&&p,C=f===h.length-1&&w;t[d]={sticky:g||m,left:g?r[d]:void 0,right:m?r[d]:void 0,type:g?"first-group":m?"last-group":void 0,isFirstColumnInLastGroup:b,isLastColumnInFirstGroup:C}})}),t},Rt=(e,t)=>({setSelectedIds:n=>P.reducerIdGateAction(L(e,"selectedIds"),t.selectedIds.setSelectedIds(n)),clearSelection:()=>P.reducerIdGateAction(L(e,"selectedIds"),t.selectedIds.clearSelectedIds()),expandByIds:n=>P.reducerIdGateAction(L(e,"expandedRows"),t.expandedRows.setSelectedIds(n)),collapseAll:()=>P.reducerIdGateAction(L(e,"expandedRows"),t.expandedRows.clearSelectedIds()),sortBy:(n,r)=>P.reducerIdGateAction(L(e,"sortOrder"),t.sortOrder.sortBy(n,r??!1)),clearSortOrder:()=>P.reducerIdGateAction(L(e,"sortOrder"),t.sortOrder.clearSortOrder()),setLastSelectedId:n=>P.reducerIdGateAction(L(e,"fields"),t.fields.setEntityFields({lastSelectedId:n}))}),Mt=(e,t=qe())=>{const[n,r]=u.useReducer(gt(e),t),o=u.useMemo(()=>Rt(e,wt()),[e]);return{tableContext:u.useMemo(()=>({dispatch:r,actions:o,state:n}),[n,o,r])}},dr=e=>(e.rowIndent?2:0)+(e.enableExpandCollapse?1:0)+(e.showRowCheckbox?1:0)+hr(e),hr=e=>{var t;return"columnGroupOrder"in e?e.columnGroupOrder.reduce((n,r)=>{var a,c;const o=(a=e.columnGroups)==null?void 0:a[r];return n+(((c=o==null?void 0:o.columnOrder)==null?void 0:c.length)??0)},0):((t=e.columnOrder)==null?void 0:t.length)??0},mr=()=>{const e=I(),t=$(),n=e.enableExpandCollapse||e.showRowCheckbox,r=x.booleanOrNumberToNumber(e.rowIndent);return s.jsxs(s.Fragment,{children:[r?s.jsx("colgroup",{children:s.jsx("col",{style:{width:`calc(var(--swui-metrics-indent) * ${r})`}})}):null,n&&s.jsxs("colgroup",{children:[e.enableExpandCollapse&&s.jsx("col",{style:{width:"var(--swui-expand-cell-width)"}}),e.showRowCheckbox&&s.jsx("col",{style:{width:"var(--swui-checkbox-cell-width)"}})]}),t.map(({groupConfig:o,groupId:a})=>s.jsx("colgroup",{children:o.columnOrder.map(c=>s.jsx("col",{style:{width:e.columns[c].width,minWidth:e.columns[c].minWidth}},c))},a)),r?s.jsx("colgroup",{children:s.jsx("col",{style:{width:`calc(var(--swui-metrics-indent) * ${r})`}})}):null]})},fr="_standardTable_1iok0_1",xr="_relaxed_1iok0_37",pr="_condensed_1iok0_41",wr="_compact_1iok0_45",Je={standardTable:fr,relaxed:xr,condensed:pr,compact:wr},Dt=(e,t)=>e!=null&&t==null?-1:e==null&&t!=null?1:Ie(e,t,"number")?Number(e)-Number(t):Ie(e,t,"boolean")?Number(t)-Number(e):Ie(e,t,"string")?String(e).localeCompare(String(t)):e instanceof Date&&t instanceof Date?e.getTime()-t.getTime():0,Ie=(e,t,n)=>typeof e===n&&typeof t===n,Et=e=>{const{columns:t}=I();if(!e)return;const n=t[e];if(n)return n.itemValueResolver},Gt=D.memo(function({value:t,onValueChange:n,colIndex:r,rowIndex:o,numRows:a,disabled:c,onValueChangeAndShift:i,shiftPressedRef:l}){const h=Ct(),d=Ce(),f=ue(!!t,{colIndex:r,numCols:h,numRows:a,rowIndex:o,tableId:d}),{requiredProps:w}=f,p=u.useCallback(g=>{l.current?i==null||i(g):n==null||n(g)},[n,i,l]);return s.jsx(ne.Checkbox,{size:"small",disabled:c,value:t,onValueChange:p,...w})}),gr=(e,t,n)=>{if(t==null||n==null||e==null||t===n)return;const r=e.indexOf(t),o=e.indexOf(n);if(r<0||o<0)return;const a=Math.min(r,o),c=Math.max(r,o);return e.slice(a,c+1)},Bt=(e,t)=>{const{keyResolver:n}=I(),{selectedIds:{selectedIds:r},fields:{lastSelectedId:o}}=V(),{actions:{setSelectedIds:a,setLastSelectedId:c},dispatch:i}=re(),l=u.useMemo(()=>n(e),[n,e]),h=u.useMemo(()=>r.includes(l),[r,l]),{toggle:d,addMultiple:f,removeMultiple:w}=x.useArraySet(r,m=>i(a(m))),p=u.useCallback(()=>{if(t&&o){const m=gr(t,o,l);m!=null&&m.length?h?w(m):f(m):d(l)}else d(l);i(c(l))},[t,o,i,c,l,h,w,f,d]),g=u.useCallback(()=>{d(l),i(c(l))},[d,l,i,c]);return{isSelected:h,toggleSelected:g,shiftAndToggleSelected:p}},$e=e=>{const{keyResolver:t}=I(),{expandedRows:{selectedIds:n}}=V(),{actions:{expandByIds:r},dispatch:o}=re(),a=u.useMemo(()=>t(e),[t,e]),c=u.useMemo(()=>n.includes(a),[n,a]),{toggle:i}=x.useArraySet(n,h=>o(r(h)));return{toggleRowExpanded:u.useCallback(()=>{i(a)},[i,a]),isExpanded:c}},br=function({item:e,colIndex:t,numRows:n,rowIndex:r}){const o=Ct(),a=Ce(),c=ue(!0,{colIndex:t,numCols:o,numRows:n,rowIndex:r,tableId:a}),{requiredProps:i}=c,{expandCollapseDisableResolver:l}=I(),{toggleRowExpanded:h,isExpanded:d}=$e(e),f=u.useMemo(()=>l?l(e):!1,[l,e]);return s.jsx(x.Row,{alignItems:"center",justifyContent:"center",indent:!0,children:!f&&s.jsx(v.FlatButton,{size:"small",leftIcon:d?v.stenaAngleDown:v.stenaAngleRight,onClick:h,...i})})},Cr=(e,t,n)=>e?e(t):n,Wt=(e,t,n)=>u.useMemo(()=>Cr(e,t,n),[e,t,n]),At=(e,t)=>{const{background:n,backgroundResolver:r}=oe(e);return Wt(r,t,n)},Oe=(e,t)=>{const{background:n,backgroundResolver:r}=e??{};return Wt(r,t,n)},Ft=e=>e==null?"":e instanceof Date?e.toISOString():typeof e=="object"?JSON.stringify(e):String(e),Nt=e=>Pe.upperFirst(Pe.lowerCase(e)),yr="_standardTableCell_1xzcm_1",vr={standardTableCell:yr},Lt=D.memo(function({enableGridCell:t,children:n,background:r,gridCellRequiredProps:o,isEditing:a,justifyContent:c,onKeyDown:i,width:l,minWidth:h}){return s.jsx(x.Row,{width:l,minWidth:h,height:"inherit",background:r,overflow:"hidden",onKeyDown:i,children:s.jsx(x.Row,{border:"1px solid transparent",className:vr.standardTableCell,width:"100%",height:"100%",justifyContent:c,alignItems:"center",borderRadius:t?"4px":void 0,focusBorder:t&&!a?"1px solid var(--swui-primary-action-color)":void 0,hoverBorder:t&&!a?"1px solid var(--lhds-color-ui-300)":void 0,...t?o:void 0,children:n})})}),kr="_textCell_1yv6v_1",Sr={textCell:kr},Ht=D.memo(function({label:t,size:n,color:r}){return s.jsx(x.Indent,{overflow:"hidden",children:s.jsx(x.Text,{className:Sr.textCell,title:t,size:n,color:r,children:t})})}),jr=({label:e,textSize:t})=>s.jsx(Ht,{label:e,size:t}),qt=D.memo(function({columnId:t,item:n,colIndex:r,rowIndex:o,numRows:a,borderFromGroup:c,disableBorderLeft:i}){const{keyResolver:l,enableGridCell:h,gridCellOptions:d}=I(),f=V().selectedIds.selectedIds,w=Ce(),p=Yn(),{numNavigableColumns:g}=Ot(),m=ze(),b=u.useMemo(()=>l(n),[n,l]),C=u.useMemo(()=>f.indexOf(b)>=0,[b,f]),{defaultCellRenderer:S=jr,defaultTextSize:T}=I(),{itemValueResolver:j,itemLabelFormatter:O,width:M,minWidth:E,justifyContentCell:k="flex-start",borderLeft:G,renderCell:B=S,gridCellOptions:K,isEditable:N,onChange:W,onKeyDown:q,disableGridCell:ke,disableGridCellFocus:de,zIndex:he}=oe(t),z=u.useMemo(()=>j?j(n):t in n?n[t]:"",[j,n,t]),se=u.useMemo(()=>O?O(z,n):Ft(z),[z,O,n]),J=typeof N=="boolean"?N:N?N(n):void 0,ae=u.useCallback(me=>{q==null||q(me,{columnId:t,item:n}),p==null||p(me,{columnId:t,item:n})},[p,t,n,q]),Q=ue(se,{colIndex:r,rowIndex:o,numRows:a,numCols:g,tableId:w,isEditable:J,onChange:W?me=>W(n,me):void 0,...d,...K}),A=m[t],rn=At(t,n)??"inherit",Se=A.sticky?he??"var(--swui-sticky-column-z-index)":he??1,on=u.useMemo(()=>B({label:se,value:z,item:n,gridCell:Q,isEditable:J,isSelected:C,zIndex:Se,textSize:T,itemKey:b}),[B,se,z,n,Q,J,C,Se,b,T]),sn=Ve(c,i,G),an=A.sticky&&A.type==="last-group"&&A.isFirstColumnInLastGroup||A.sticky&&A.type==="column"&&A.right?"var(--swui-sticky-column-shadow-left)":A.sticky?"var(--swui-sticky-column-shadow-right)":void 0;return s.jsx("td",{style:{borderLeft:sn,position:A.sticky?"sticky":void 0,left:A.sticky?A.left:void 0,right:A.sticky?A.right:void 0,boxShadow:an,zIndex:Se,height:"var(--current-row-height)",background:rn},children:s.jsx(Lt,{enableGridCell:h&&!ke&&!de,gridCellRequiredProps:Q.requiredProps,isEditing:Q.isEditing,width:M,minWidth:E,justifyContent:k,onKeyDown:ae,children:on})})}),Ir=function({item:t}){const{renderRowExpansion:n,enableExpandCollapse:r}=I(),{isExpanded:o,toggleRowExpanded:a}=$e(t),c=Ye();return s.jsx(s.Fragment,{children:r&&n&&o&&s.jsx("tr",{style:{borderLeft:Ge,background:Ee},children:s.jsx("td",{colSpan:c,children:n(t,{onRequestCollapse:a})})})})},zt=xn.tr`
|
|
3
3
|
${({focusBackground:e})=>e?`--focus-within-background: ${e};`:""}
|
|
4
4
|
${({borderLeft:e})=>e?`border-left: ${e};`:""};
|
|
5
5
|
${({background:e})=>e?`background: ${e};`:""};
|