carbon-react 158.14.1 → 158.14.2

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.
@@ -1 +1 @@
1
- import{jsx as e}from"react/jsx-runtime";import{useRef as t,useContext as r}from"react";import o from"./flat-table-checkbox.style.js";import"../../checkbox/checkbox-group/checkbox-group.component.js";import{Checkbox as n}from"../../checkbox/checkbox.component.js";import c from"../../../__internal__/utils/helpers/events/events.js";import l from"../../../__internal__/utils/helpers/tags/tags.js";import i from"../../../__internal__/utils/helpers/guid/index.js";import a from"../flat-table-row/__internal__/flat-table-row.context.js";function s(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function b(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},o=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(o=o.concat(Object.getOwnPropertySymbols(r).filter((function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable})))),o.forEach((function(t){s(e,t,r[t])}))}return e}const p=s=>{var{as:p="td",checked:f,onChange:u,selectable:m=!0,onClick:y,ariaLabelledBy:O,id:h}=s,d=function(e,t){if(null==e)return{};var r,o,n=function(e,t){if(null==e)return{};var r,o,n={},c=Object.keys(e);for(o=0;o<c.length;o++)r=c[o],t.indexOf(r)>=0||(n[r]=e[r]);return n}(e,t);if(Object.getOwnPropertySymbols){var c=Object.getOwnPropertySymbols(e);for(o=0;o<c.length;o++)r=c[o],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}(s,["as","checked","onChange","selectable","onClick","ariaLabelledBy","id"]);const g=t(null),j=t(h||i()),{leftPositions:k,rightPositions:P}=r(a),x=k[j.current],_=P[j.current],v=void 0!==x||void 0!==_;return e(o,(w=b({ref:g,makeCellSticky:v,className:v?"isSticky":void 0,leftPosition:x,rightPosition:_,as:p},l("flat-table-checkbox",b({"data-element":"flat-table-checkbox-"+("td"===p?"cell":"header")},d))),C=null!=(C={id:j.current,children:m&&e(n,{checked:f,onChange:u,name:"flat-table-checkbox",mb:0,ariaLabelledBy:O,onClick:e=>{e.stopPropagation(),null==y||y(e)},onKeyDown:e=>{c.isDownKey(e)||c.isUpKey(e)||e.stopPropagation()}})})?C:{},Object.getOwnPropertyDescriptors?Object.defineProperties(w,Object.getOwnPropertyDescriptors(C)):function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t.push.apply(t,r)}return t}(Object(C)).forEach((function(e){Object.defineProperty(w,e,Object.getOwnPropertyDescriptor(C,e))})),w));var w,C};p.displayName="FlatTableCheckbox";export{p as FlatTableCheckbox,p as default};
1
+ import{jsx as e}from"react/jsx-runtime";import{useRef as t,useContext as r,useCallback as o}from"react";import n from"./flat-table-checkbox.style.js";import"../../checkbox/checkbox-group/checkbox-group.component.js";import{Checkbox as c}from"../../checkbox/checkbox.component.js";import l from"../../../__internal__/utils/helpers/events/events.js";import i from"../../../__internal__/utils/helpers/tags/tags.js";import a from"../../../__internal__/utils/helpers/guid/index.js";import s from"../flat-table-row/__internal__/flat-table-row.context.js";function b(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function p(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},o=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(o=o.concat(Object.getOwnPropertySymbols(r).filter((function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable})))),o.forEach((function(t){b(e,t,r[t])}))}return e}const f=b=>{var{as:f="td",checked:u,onChange:m,selectable:y=!0,onClick:O,ariaLabelledBy:h,id:d}=b,g=function(e,t){if(null==e)return{};var r,o,n=function(e,t){if(null==e)return{};var r,o,n={},c=Object.keys(e);for(o=0;o<c.length;o++)r=c[o],t.indexOf(r)>=0||(n[r]=e[r]);return n}(e,t);if(Object.getOwnPropertySymbols){var c=Object.getOwnPropertySymbols(e);for(o=0;o<c.length;o++)r=c[o],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}(b,["as","checked","onChange","selectable","onClick","ariaLabelledBy","id"]);const j=t(null),k=t(d||a()),{leftPositions:P,rightPositions:x}=r(s),_=P[k.current],v=x[k.current],w=void 0!==_||void 0!==v,C="flat-table-checkbox-"+("td"===f?"cell":"header"),S=o((e=>{e.stopPropagation(),null==O||O(e)}),[O]),D=o((e=>{l.isDownKey(e)||l.isUpKey(e)||e.stopPropagation()}),[]);return e(n,(B=p({ref:j,makeCellSticky:w,className:w?"isSticky":void 0,leftPosition:_,rightPosition:v,as:f},i("flat-table-checkbox",p({"data-element":C},g))),E=null!=(E={id:k.current,children:y&&e(c,{checked:u,onChange:m,name:"flat-table-checkbox",mb:0,ariaLabelledBy:h,onClick:S,onKeyDown:D})})?E:{},Object.getOwnPropertyDescriptors?Object.defineProperties(B,Object.getOwnPropertyDescriptors(E)):function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t.push.apply(t,r)}return t}(Object(E)).forEach((function(e){Object.defineProperty(B,e,Object.getOwnPropertyDescriptor(E,e))})),B));var B,E};f.displayName="FlatTableCheckbox";export{f as FlatTableCheckbox,f as default};
@@ -1 +1 @@
1
- import{jsxs as e,Fragment as t,jsx as r}from"react/jsx-runtime";import o,{useRef as n,useState as i,useLayoutEffect as l,useMemo as a,useContext as s,useEffect as d}from"react";import c from"invariant";import f from"../../../__internal__/utils/helpers/events/events.js";import u from"./flat-table-row.style.js";import b from"../../drawer/__internal__/drawer-sidebar.context.js";import{FlatTableRowHeader as p}from"../flat-table-row-header/flat-table-row-header.component.js";import{useStrictFlatTableContext as m}from"../__internal__/strict-flat-table.context.js";import h from"../../../__internal__/utils/helpers/guid/index.js";import g from"./__internal__/flat-table-row.context.js";import w,{SubRowContext as y}from"./__internal__/sub-row-provider.js";import _ from"../__internal__/build-position-map.js";import O from"../flat-table-head/__internal__/flat-table-head.context.js";import"@atlaskit/pragmatic-drag-and-drop/element/adapter";import j from"../__internal__/sortable/use-sortable-row.js";function v(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function x(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},o=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(o=o.concat(Object.getOwnPropertySymbols(r).filter((function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable})))),o.forEach((function(t){v(e,t,r[t])}))}return e}const S=o.forwardRef(((o,v)=>{var S,{children:P,onClick:C,expandable:R,expandableArea:k="wholeRow",expanded:I=!1,highlighted:z,selected:D,subRows:E,bgColor:A,horizontalBorderColor:B,horizontalBorderSize:K="small",id:H,draggableProps:T,"data-element":F,"data-role":N}=o,W=function(e,t){if(null==e)return{};var r,o,n=function(e,t){if(null==e)return{};var r,o,n={},i=Object.keys(e);for(o=0;o<i.length;o++)r=i[o],t.indexOf(r)>=0||(n[r]=e[r]);return n}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(o=0;o<i.length;o++)r=i[o],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}(o,["children","onClick","expandable","expandableArea","expanded","highlighted","selected","subRows","bgColor","horizontalBorderColor","horizontalBorderSize","id","draggableProps","data-element","data-role"]);const $=n(H?String(H):h()),[q,G]=i(I),J=n(null),L="firstColumn"===k,[M,Q]=i({}),[U,V]=i({}),[X,Y]=i(0),[Z,ee]=i(-1),[te,re]=i(-1),[oe,ne]=i(null),[ie,le]=i([]),[ae,se]=i(-1);let de={};l((()=>{var e;const t=(e,t)=>{const r=Object.keys(e),o=Object.keys(t);return r.length!==o.length||r.some((r=>e[r]!==t[r]))},r=null===(e=J.current)||void 0===e?void 0:e.querySelectorAll("th, td"),o=Array.from(r||[]);le(o);const n=o.findIndex((e=>"flat-table-checkbox"!==e.getAttribute("data-component"))),i=o.findIndex((e=>"left"===e.getAttribute("data-sticky-align"))),l=o.findIndex((e=>"right"===e.getAttribute("data-sticky-align")));if(ee(i),re(l),-1!==n?(Y(n),ne(o[n].getAttribute("id"))):Y(0),-1!==i){const e=_(o.slice(0,Z+1),"offsetWidth");t(e,M)&&Q(e)}if(-1!==l){const e=_(o.slice(te,o.length).reverse(),"offsetWidth");t(e,U)&&V(e)}}),[P,M,Z,te,U]);const ce=a((()=>!(-1!==Z)||!(-1!==te)||Z<te),[Z,te]);c(ce,`Do not render a right hand side \`${p.displayName}\` before left hand side \`${p.displayName}\``);const{colorTheme:fe,size:ue,getTabStopElementId:be}=m(),{isInSidebar:pe}=s(b),{stickyOffsets:me}=s(O),he=()=>G(!q);(C||R)&&(de={isRowInteractive:!L,tabIndex:L?void 0:ae,onKeyDown:function(e){const t=f.isEnterKey(e)||f.isSpaceKey(e);R&&!L&&document.activeElement===J.current&&t&&(e.preventDefault(),he()),t&&C&&C(e)},isFirstColumnInteractive:L,isExpanded:q}),d((()=>{G(I)}),[I]),d((()=>{se(be()===$.current?0:-1)}),[be]);const{isSubRow:ge,firstRowId:we,addRow:ye,removeRow:_e}=s(y);d((()=>{const e=$.current;return ye(e),()=>{_e(e)}}),[ye,_e]);const Oe=we===$.current,{isDragging:je}=j({id:$.current,index:null==T?void 0:T.index,ref:T?J:null});return e(t,{children:[r(u,(ve=x({isInSidebar:pe,expandable:R,isSubRow:ge,isFirstSubRow:Oe,"data-element":F||(ge?"flat-table-sub-row":"flat-table-row"),"data-role":N,highlighted:z,selected:D,onClick:function(e){C&&C(e),R&&!L&&he()},firstCellIndex:X,ref:e=>{"function"==typeof v?v(e):v&&(v.current=e),J.current=e},lhsRowHeaderIndex:Z,rhsRowHeaderIndex:te,colorTheme:fe,size:ue,stickyOffset:me[$.current],bgColor:A,horizontalBorderColor:B,horizontalBorderSize:K,draggable:!!T,isDragging:je,totalChildren:ie.length,id:$.current,"data-selected":D&&"wholeRow"===k,"data-highlighted":z&&"wholeRow"===k,rowHeight:null==J||null===(S=J.current)||void 0===S?void 0:S.offsetHeight},de,W),xe={"data-component":"flat-table-row",children:r(g.Provider,{value:{firstCellId:oe,expandable:R,leftPositions:M,rightPositions:U,firstColumnExpandable:L,onKeyDown:function(e){(f.isEnterKey(e)||f.isSpaceKey(e))&&(e.preventDefault(),he())},onClick:()=>he(),highlighted:z,selected:D},children:P})},xe=null!=xe?xe:{},Object.getOwnPropertyDescriptors?Object.defineProperties(ve,Object.getOwnPropertyDescriptors(xe)):function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t.push.apply(t,r)}return t}(Object(xe)).forEach((function(e){Object.defineProperty(ve,e,Object.getOwnPropertyDescriptor(xe,e))})),ve)),q&&E&&r(w,{children:E})]});var ve,xe}));S.displayName="FlatTableRow";export{S as FlatTableRow,S as default};
1
+ import{jsxs as e,Fragment as t,jsx as r}from"react/jsx-runtime";import o,{useRef as n,useState as i,useLayoutEffect as l,useMemo as a,useContext as s,useCallback as d,useEffect as c}from"react";import f from"invariant";import b from"../../../__internal__/utils/helpers/events/events.js";import u from"./flat-table-row.style.js";import p from"../../drawer/__internal__/drawer-sidebar.context.js";import{FlatTableRowHeader as m}from"../flat-table-row-header/flat-table-row-header.component.js";import{useStrictFlatTableContext as h}from"../__internal__/strict-flat-table.context.js";import g from"../../../__internal__/utils/helpers/guid/index.js";import w from"./__internal__/flat-table-row.context.js";import y,{SubRowContext as _}from"./__internal__/sub-row-provider.js";import O from"../__internal__/build-position-map.js";import j from"../flat-table-head/__internal__/flat-table-head.context.js";import"@atlaskit/pragmatic-drag-and-drop/element/adapter";import v from"../__internal__/sortable/use-sortable-row.js";function x(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function S(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},o=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(o=o.concat(Object.getOwnPropertySymbols(r).filter((function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable})))),o.forEach((function(t){x(e,t,r[t])}))}return e}const P=o.forwardRef(((o,x)=>{var P,{children:C,onClick:R,expandable:k,expandableArea:I="wholeRow",expanded:z=!1,highlighted:D,selected:E,subRows:A,bgColor:B,horizontalBorderColor:K,horizontalBorderSize:H="small",id:T,draggableProps:F,"data-element":N,"data-role":W}=o,$=function(e,t){if(null==e)return{};var r,o,n=function(e,t){if(null==e)return{};var r,o,n={},i=Object.keys(e);for(o=0;o<i.length;o++)r=i[o],t.indexOf(r)>=0||(n[r]=e[r]);return n}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(o=0;o<i.length;o++)r=i[o],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}(o,["children","onClick","expandable","expandableArea","expanded","highlighted","selected","subRows","bgColor","horizontalBorderColor","horizontalBorderSize","id","draggableProps","data-element","data-role"]);const q=n(T?String(T):g()),[G,J]=i(z),L=n(null),M="firstColumn"===I,[Q,U]=i({}),[V,X]=i({}),[Y,Z]=i(0),[ee,te]=i(-1),[re,oe]=i(-1),[ne,ie]=i(null),[le,ae]=i([]),[se,de]=i(-1);let ce={};l((()=>{var e;const t=(e,t)=>{const r=Object.keys(e),o=Object.keys(t);return r.length!==o.length||r.some((r=>e[r]!==t[r]))},r=null===(e=L.current)||void 0===e?void 0:e.querySelectorAll("th, td"),o=Array.from(r||[]);ae(o);const n=o.findIndex((e=>"flat-table-checkbox"!==e.getAttribute("data-component"))),i=o.findIndex((e=>"left"===e.getAttribute("data-sticky-align"))),l=o.findIndex((e=>"right"===e.getAttribute("data-sticky-align")));if(te(i),oe(l),-1!==n?(Z(n),ie(o[n].getAttribute("id"))):Z(0),-1!==i){const e=O(o.slice(0,ee+1),"offsetWidth");t(e,Q)&&U(e)}if(-1!==l){const e=O(o.slice(re,o.length).reverse(),"offsetWidth");t(e,V)&&X(e)}}),[C,Q,ee,re,V]);const fe=a((()=>!(-1!==ee)||!(-1!==re)||ee<re),[ee,re]);f(fe,`Do not render a right hand side \`${m.displayName}\` before left hand side \`${m.displayName}\``);const{colorTheme:be,size:ue,getTabStopElementId:pe}=h(),{isInSidebar:me}=s(p),{stickyOffsets:he}=s(j),ge=d((e=>{const t=b.isEnterKey(e)||b.isSpaceKey(e);k&&!M&&document.activeElement===L.current&&t&&(e.preventDefault(),J((e=>!e))),t&&R&&R(e)}),[k,M,R]),we=d((e=>{R&&R(e),k&&!M&&J((e=>!e))}),[R,k,M]);(R||k)&&(ce={isRowInteractive:!M,tabIndex:M?void 0:se,onKeyDown:ge,isFirstColumnInteractive:M,isExpanded:G}),c((()=>{J(z)}),[z]),c((()=>{de(pe()===q.current?0:-1)}),[pe]);const{isSubRow:ye,firstRowId:_e,addRow:Oe,removeRow:je}=s(_);c((()=>{const e=q.current;return Oe(e),()=>{je(e)}}),[Oe,je]);const ve=_e===q.current,xe=d((()=>N||(ye?"flat-table-sub-row":"flat-table-row")),[N,ye]),{isDragging:Se}=v({id:q.current,index:null==F?void 0:F.index,ref:F?L:null});return e(t,{children:[r(u,(Pe=S({isInSidebar:me,expandable:k,isSubRow:ye,isFirstSubRow:ve,"data-element":xe(),"data-role":W,highlighted:D,selected:E,onClick:we,firstCellIndex:Y,ref:e=>{"function"==typeof x?x(e):x&&(x.current=e),L.current=e},lhsRowHeaderIndex:ee,rhsRowHeaderIndex:re,colorTheme:be,size:ue,stickyOffset:he[q.current],bgColor:B,horizontalBorderColor:K,horizontalBorderSize:H,draggable:!!F,isDragging:Se,totalChildren:le.length,id:q.current,"data-selected":E&&"wholeRow"===I,"data-highlighted":D&&"wholeRow"===I,rowHeight:null==L||null===(P=L.current)||void 0===P?void 0:P.offsetHeight},ce,$),Ce={"data-component":"flat-table-row",children:r(w.Provider,{value:{firstCellId:ne,expandable:k,leftPositions:Q,rightPositions:V,firstColumnExpandable:M,onKeyDown:e=>{(b.isEnterKey(e)||b.isSpaceKey(e))&&(e.preventDefault(),J((e=>!e)))},onClick:()=>J((e=>!e)),highlighted:D,selected:E},children:C})},Ce=null!=Ce?Ce:{},Object.getOwnPropertyDescriptors?Object.defineProperties(Pe,Object.getOwnPropertyDescriptors(Ce)):function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t.push.apply(t,r)}return t}(Object(Ce)).forEach((function(e){Object.defineProperty(Pe,e,Object.getOwnPropertyDescriptor(Ce,e))})),Pe)),G&&A&&r(y,{children:A})]});var Pe,Ce}));P.displayName="FlatTableRow";export{P as FlatTableRow,P as default};
@@ -1 +1 @@
1
- import{jsxs as e,jsx as t}from"react/jsx-runtime";import{useRef as r,useState as o,useContext as n,useLayoutEffect as i}from"react";import{StyledFlatTableWrapper as l,StyledTableContainer as a,StyledFlatTable as c,StyledFlatTableFooter as s}from"./flat-table.style.js";import d from"../drawer/__internal__/drawer-sidebar.context.js";import u from"../../__internal__/utils/helpers/events/events.js";import{StrictFlatTableProvider as f}from"./__internal__/strict-flat-table.context.js";import b from"./__internal__/flat-table.context.js";function h(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function p(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},o=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(o=o.concat(Object.getOwnPropertySymbols(r).filter((function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable})))),o.forEach((function(t){h(e,t,r[t])}))}return e}function y(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t.push.apply(t,r)}return t}(Object(t)).forEach((function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))})),e}const m="tbody tr[tabindex], tbody tr td[tabindex], tbody tr th[tabindex]",v=h=>{var{caption:v,children:g,hasStickyHead:O,colorTheme:w="dark",footer:S,hasStickyFooter:j=!1,height:x,isZebra:P,size:_="medium",hasMaxHeight:A=!1,hasOuterVerticalBorders:D=!0,bottomBorderRadius:H="borderRadius100",ariaDescribedby:k,minHeight:I,overflowX:B,width:E,title:K}=h,R=function(e,t){if(null==e)return{};var r,o,n=function(e,t){if(null==e)return{};var r,o,n={},i=Object.keys(e);for(o=0;o<i.length;o++)r=i[o],t.indexOf(r)>=0||(n[r]=e[r]);return n}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(o=0;o<i.length;o++)r=i[o],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}(h,["caption","children","hasStickyHead","colorTheme","footer","hasStickyFooter","height","isZebra","size","hasMaxHeight","hasOuterVerticalBorders","bottomBorderRadius","ariaDescribedby","minHeight","overflowX","width","title"]);const T=r(null),q=r(null),F=r(null),[z,C]=o(!1),[V,X]=o(!1),[Z,M]=o(-1),[N,U]=o(-1),W=!x&&(O||j),Y={caption:v,isZebra:P,size:_,"aria-describedby":k},{isInSidebar:G}=n(d),[J,L]=o(!1);i((()=>{const e=(e,t)=>e.find(((e,r)=>{const o=Array.from(e.querySelectorAll("td, th")),n=t?o.shift():o.pop(),i=null==n?void 0:n.getAttribute("rowspan");return i&&Number(i)>=r+1}));if(T.current&&q.current){var t;const{offsetHeight:r,offsetWidth:o}=T.current,{top:n,bottom:i,right:l,left:a}=null===(t=q.current)||void 0===t?void 0:t.getBoundingClientRect();C(i-n>r),X(l-a>o);const c=q.current.querySelector("tbody"),s=c?Array.from(null==c?void 0:c.querySelectorAll("tr")):[],{length:d}=s,u=e(s.slice(0,d-1).reverse(),!0),f=e(s.slice(0,d-1).reverse());u&&M(s.indexOf(u)),f&&U(s.indexOf(f))}}),[S,g,x,I]);const Q=e=>e.findIndex((e=>{const t=e.querySelectorAll("button, input, a, [tabindex]");return!(!t||!Array.from(t).find((e=>e===document.activeElement)))}));return e(l,y(p({ref:T,"data-role":"flat-table-wrapper",isInSidebar:G,hasStickyHead:O,colorTheme:w,minHeight:I,overflowY:O||j?"auto":void 0,height:W&&!A?"99%":x,maxHeight:A?"100%":void 0,hasOuterVerticalBorders:D,bottomBorderRadius:H,display:"flex",flexDirection:"column",justifyContent:j||x?"space-between":void 0,role:"region",overflowX:E?"hidden":void 0,width:E,hasStickyFooter:j,hasVerticalScrollbar:z,hasHorizontalScrollbar:V,footer:!!S,firstColRowSpanIndex:Z,lastColRowSpanIndex:N,onKeyDown:e=>{var t;const r=null===(t=q.current)||void 0===t?void 0:t.querySelectorAll(m),o=Array.from(r||[]);if(!o.length)return;const n=o.findIndex((e=>e===document.activeElement));if(J&&(O||j))(u.isPageUpKey(e)||u.isPageDownKey(e)||u.isHomeKey(e)||u.isEndKey(e))&&e.preventDefault();else if(u.isDownKey(e))if(e.preventDefault(),-1!==n&&n<o.length){var i;null===(i=o[n+1])||void 0===i||i.focus()}else{const e=Q(o);var l;-1!==e&&e<o.length&&(null===(l=o[e+1])||void 0===l||l.focus())}else if(u.isUpKey(e))if(e.preventDefault(),n>0){var a;null===(a=o[n-1])||void 0===a||a.focus()}else{const e=Q(o);var c;e>0&&(null===(c=o[e-1])||void 0===c||c.focus())}}},R),{"data-component":"flat-table-wrapper",title:K,children:[t(a,{ref:F,tabIndex:0,overflowX:B,width:E,"data-role":"flat-table-container",children:e(c,y(p({ref:q,"data-component":"flat-table"},Y),{children:[v?t("caption",{children:v}):null,t(f,{value:{colorTheme:w,size:_,getTabStopElementId:()=>{var e;const t=Array.from((null===(e=q.current)||void 0===e?void 0:e.querySelectorAll(m))||[]),r=t.find((e=>"true"===e.getAttribute("data-selected")||"true"===e.getAttribute("data-highlighted")))||t[0];return(null==r?void 0:r.getAttribute("id"))||""}},children:t(b.Provider,{value:{isInFlatTable:!0,setHasOpenDatePicker:L},children:g})})]}))}),S&&t(s,{hasStickyFooter:j,"data-role":"flat-table-footer",children:S})]}))};v.displayName="FlatTable";export{v as FlatTable,v as default};
1
+ import{jsxs as e,jsx as t}from"react/jsx-runtime";import{useRef as r,useState as o,useContext as n,useLayoutEffect as i,useCallback as l,useMemo as a}from"react";import{StyledFlatTableWrapper as c,StyledTableContainer as s,StyledFlatTable as d,StyledFlatTableFooter as u}from"./flat-table.style.js";import f from"../drawer/__internal__/drawer-sidebar.context.js";import b from"../../__internal__/utils/helpers/events/events.js";import{StrictFlatTableProvider as h}from"./__internal__/strict-flat-table.context.js";import p from"./__internal__/flat-table.context.js";function y(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function m(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},o=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(o=o.concat(Object.getOwnPropertySymbols(r).filter((function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable})))),o.forEach((function(t){y(e,t,r[t])}))}return e}function v(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t.push.apply(t,r)}return t}(Object(t)).forEach((function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))})),e}const g="tbody tr[tabindex], tbody tr td[tabindex], tbody tr th[tabindex]",O=y=>{var{caption:O,children:w,hasStickyHead:S,colorTheme:j="dark",footer:x,hasStickyFooter:P=!1,height:_,isZebra:A,size:D="medium",hasMaxHeight:H=!1,hasOuterVerticalBorders:k=!0,bottomBorderRadius:I="borderRadius100",ariaDescribedby:B,minHeight:E,overflowX:K,width:R,title:T}=y,q=function(e,t){if(null==e)return{};var r,o,n=function(e,t){if(null==e)return{};var r,o,n={},i=Object.keys(e);for(o=0;o<i.length;o++)r=i[o],t.indexOf(r)>=0||(n[r]=e[r]);return n}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(o=0;o<i.length;o++)r=i[o],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}(y,["caption","children","hasStickyHead","colorTheme","footer","hasStickyFooter","height","isZebra","size","hasMaxHeight","hasOuterVerticalBorders","bottomBorderRadius","ariaDescribedby","minHeight","overflowX","width","title"]);const F=r(null),z=r(null),C=r(null),[V,X]=o(!1),[Z,M]=o(!1),[N,U]=o(-1),[W,Y]=o(-1),G=!_&&(S||P),J={caption:O,isZebra:A,size:D,"aria-describedby":B},{isInSidebar:L}=n(f),[Q,$]=o(!1);i((()=>{const e=(e,t)=>e.find(((e,r)=>{const o=Array.from(e.querySelectorAll("td, th")),n=t?o.shift():o.pop(),i=null==n?void 0:n.getAttribute("rowspan");return i&&Number(i)>=r+1}));if(F.current&&z.current){var t;const{offsetHeight:r,offsetWidth:o}=F.current,{top:n,bottom:i,right:l,left:a}=null===(t=z.current)||void 0===t?void 0:t.getBoundingClientRect();X(i-n>r),M(l-a>o);const c=z.current.querySelector("tbody"),s=c?Array.from(null==c?void 0:c.querySelectorAll("tr")):[],{length:d}=s,u=e(s.slice(0,d-1).reverse(),!0),f=e(s.slice(0,d-1).reverse());u&&U(s.indexOf(u)),f&&Y(s.indexOf(f))}}),[x,_,E]);const ee=e=>e.findIndex((e=>{const t=e.querySelectorAll("button, input, a, [tabindex]");return!(!t||!Array.from(t).find((e=>e===document.activeElement)))})),te=l((e=>{var t;const r=null===(t=z.current)||void 0===t?void 0:t.querySelectorAll(g),o=Array.from(r||[]);if(!o.length)return;const n=o.findIndex((e=>e===document.activeElement));if(Q&&(S||P))(b.isPageUpKey(e)||b.isPageDownKey(e)||b.isHomeKey(e)||b.isEndKey(e))&&e.preventDefault();else if(b.isDownKey(e))if(e.preventDefault(),-1!==n&&n<o.length){var i;null===(i=o[n+1])||void 0===i||i.focus()}else{const e=ee(o);var l;-1!==e&&e<o.length&&(null===(l=o[e+1])||void 0===l||l.focus())}else if(b.isUpKey(e))if(e.preventDefault(),n>0){var a;null===(a=o[n-1])||void 0===a||a.focus()}else{const e=ee(o);var c;e>0&&(null===(c=o[e-1])||void 0===c||c.focus())}}),[Q,P,S]),re=l((()=>{var e;const t=Array.from((null===(e=z.current)||void 0===e?void 0:e.querySelectorAll(g))||[]),r=t.find((e=>"true"===e.getAttribute("data-selected")||"true"===e.getAttribute("data-highlighted")))||t[0];return(null==r?void 0:r.getAttribute("id"))||""}),[]),oe=a((()=>({colorTheme:j,size:D,getTabStopElementId:re})),[j,D,re]),ne=a((()=>({isInFlatTable:!0,setHasOpenDatePicker:$})),[$]);return e(c,v(m({ref:F,"data-role":"flat-table-wrapper",isInSidebar:L,hasStickyHead:S,colorTheme:j,minHeight:E,overflowY:S||P?"auto":void 0,height:G&&!H?"99%":_,maxHeight:H?"100%":void 0,hasOuterVerticalBorders:k,bottomBorderRadius:I,display:"flex",flexDirection:"column",justifyContent:P||_?"space-between":void 0,role:"region",overflowX:R?"hidden":void 0,width:R,hasStickyFooter:P,hasVerticalScrollbar:V,hasHorizontalScrollbar:Z,footer:!!x,firstColRowSpanIndex:N,lastColRowSpanIndex:W,onKeyDown:te},q),{"data-component":"flat-table-wrapper",title:T,children:[t(s,{ref:C,tabIndex:0,overflowX:K,width:R,"data-role":"flat-table-container",children:e(d,v(m({ref:z,"data-component":"flat-table"},J),{children:[O?t("caption",{children:O}):null,t(h,{value:oe,children:t(p.Provider,{value:ne,children:w})})]}))}),x&&t(u,{hasStickyFooter:P,"data-role":"flat-table-footer",children:x})]}))};O.displayName="FlatTable";export{O as FlatTable,O as default};
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),t=require("react"),r=require("./flat-table-checkbox.style.js");require("../../checkbox/checkbox-group/checkbox-group.component.js");var n=require("../../checkbox/checkbox.component.js"),o=require("../../../__internal__/utils/helpers/events/events.js"),l=require("../../../__internal__/utils/helpers/tags/tags.js"),c=require("../../../__internal__/utils/helpers/guid/index.js"),a=require("../flat-table-row/__internal__/flat-table-row.context.js");function i(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function s(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},n=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(r).filter((function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable})))),n.forEach((function(t){i(e,t,r[t])}))}return e}const u=i=>{var{as:u="td",checked:b,onChange:f,selectable:p=!0,onClick:y,ariaLabelledBy:d,id:h}=i,O=function(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},l=Object.keys(e);for(n=0;n<l.length;n++)r=l[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(n=0;n<l.length;n++)r=l[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}(i,["as","checked","onChange","selectable","onClick","ariaLabelledBy","id"]);const j=t.useRef(null),g=t.useRef(h||c.default()),{leftPositions:k,rightPositions:x}=t.useContext(a.default),P=k[g.current],m=x[g.current],v=void 0!==P||void 0!==m,_="flat-table-checkbox-"+("td"===u?"cell":"header");return e.jsx(r.default,(w=s({ref:j,makeCellSticky:v,className:v?"isSticky":void 0,leftPosition:P,rightPosition:m,as:u},l.default("flat-table-checkbox",s({"data-element":_},O))),C=null!=(C={id:g.current,children:p&&e.jsx(n.Checkbox,{checked:b,onChange:f,name:"flat-table-checkbox",mb:0,ariaLabelledBy:d,onClick:e=>{e.stopPropagation(),null==y||y(e)},onKeyDown:e=>{o.default.isDownKey(e)||o.default.isUpKey(e)||e.stopPropagation()}})})?C:{},Object.getOwnPropertyDescriptors?Object.defineProperties(w,Object.getOwnPropertyDescriptors(C)):function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t.push.apply(t,r)}return t}(Object(C)).forEach((function(e){Object.defineProperty(w,e,Object.getOwnPropertyDescriptor(C,e))})),w));var w,C};u.displayName="FlatTableCheckbox",exports.FlatTableCheckbox=u,exports.default=u;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),t=require("react"),r=require("./flat-table-checkbox.style.js");require("../../checkbox/checkbox-group/checkbox-group.component.js");var n=require("../../checkbox/checkbox.component.js"),o=require("../../../__internal__/utils/helpers/events/events.js"),l=require("../../../__internal__/utils/helpers/tags/tags.js"),a=require("../../../__internal__/utils/helpers/guid/index.js"),c=require("../flat-table-row/__internal__/flat-table-row.context.js");function i(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function s(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},n=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(r).filter((function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable})))),n.forEach((function(t){i(e,t,r[t])}))}return e}const u=i=>{var{as:u="td",checked:b,onChange:f,selectable:p=!0,onClick:y,ariaLabelledBy:d,id:h}=i,O=function(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},l=Object.keys(e);for(n=0;n<l.length;n++)r=l[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(n=0;n<l.length;n++)r=l[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}(i,["as","checked","onChange","selectable","onClick","ariaLabelledBy","id"]);const j=t.useRef(null),g=t.useRef(h||a.default()),{leftPositions:k,rightPositions:x}=t.useContext(c.default),P=k[g.current],m=x[g.current],v=void 0!==P||void 0!==m,_="flat-table-checkbox-"+("td"===u?"cell":"header"),w=t.useCallback((e=>{e.stopPropagation(),null==y||y(e)}),[y]),C=t.useCallback((e=>{o.default.isDownKey(e)||o.default.isUpKey(e)||e.stopPropagation()}),[]);return e.jsx(r.default,(q=s({ref:j,makeCellSticky:v,className:v?"isSticky":void 0,leftPosition:P,rightPosition:m,as:u},l.default("flat-table-checkbox",s({"data-element":_},O))),S=null!=(S={id:g.current,children:p&&e.jsx(n.Checkbox,{checked:b,onChange:f,name:"flat-table-checkbox",mb:0,ariaLabelledBy:d,onClick:w,onKeyDown:C})})?S:{},Object.getOwnPropertyDescriptors?Object.defineProperties(q,Object.getOwnPropertyDescriptors(S)):function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t.push.apply(t,r)}return t}(Object(S)).forEach((function(e){Object.defineProperty(q,e,Object.getOwnPropertyDescriptor(S,e))})),q));var q,S};u.displayName="FlatTableCheckbox",exports.FlatTableCheckbox=u,exports.default=u;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),t=require("react"),r=require("invariant"),n=require("../../../__internal__/utils/helpers/events/events.js"),a=require("./flat-table-row.style.js"),l=require("../../drawer/__internal__/drawer-sidebar.context.js"),o=require("../flat-table-row-header/flat-table-row-header.component.js"),i=require("../__internal__/strict-flat-table.context.js"),s=require("../../../__internal__/utils/helpers/guid/index.js"),d=require("./__internal__/flat-table-row.context.js"),u=require("./__internal__/sub-row-provider.js"),c=require("../__internal__/build-position-map.js"),f=require("../flat-table-head/__internal__/flat-table-head.context.js");require("@atlaskit/pragmatic-drag-and-drop/element/adapter");var b=require("../__internal__/sortable/use-sortable-row.js");function h(e){return e&&e.__esModule?e:{default:e}}var p=h(t),g=h(r);function w(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function y(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},n=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(r).filter((function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable})))),n.forEach((function(t){w(e,t,r[t])}))}return e}const x=p.default.forwardRef(((r,h)=>{var p,{children:w,onClick:x,expandable:_,expandableArea:j="wholeRow",expanded:m=!1,highlighted:O,selected:v,subRows:S,bgColor:R,horizontalBorderColor:C,horizontalBorderSize:P="small",id:q,draggableProps:k,"data-element":I,"data-role":E}=r,z=function(e,t){if(null==e)return{};var r,n,a=function(e,t){if(null==e)return{};var r,n,a={},l=Object.keys(e);for(n=0;n<l.length;n++)r=l[n],t.indexOf(r)>=0||(a[r]=e[r]);return a}(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(n=0;n<l.length;n++)r=l[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}(r,["children","onClick","expandable","expandableArea","expanded","highlighted","selected","subRows","bgColor","horizontalBorderColor","horizontalBorderSize","id","draggableProps","data-element","data-role"]);const D=t.useRef(q?String(q):s.default()),[A,F]=t.useState(m),T=t.useRef(null),B="firstColumn"===j,[H,K]=t.useState({}),[M,N]=t.useState({}),[W,$]=t.useState(0),[L,G]=t.useState(-1),[J,Q]=t.useState(-1),[U,V]=t.useState(null),[X,Y]=t.useState([]),[Z,ee]=t.useState(-1);let te={};t.useLayoutEffect((()=>{var e;const t=(e,t)=>{const r=Object.keys(e),n=Object.keys(t);return r.length!==n.length||r.some((r=>e[r]!==t[r]))},r=null===(e=T.current)||void 0===e?void 0:e.querySelectorAll("th, td"),n=Array.from(r||[]);Y(n);const a=n.findIndex((e=>"flat-table-checkbox"!==e.getAttribute("data-component"))),l=n.findIndex((e=>"left"===e.getAttribute("data-sticky-align"))),o=n.findIndex((e=>"right"===e.getAttribute("data-sticky-align")));if(G(l),Q(o),-1!==a?($(a),V(n[a].getAttribute("id"))):$(0),-1!==l){const e=c.default(n.slice(0,L+1),"offsetWidth");t(e,H)&&K(e)}if(-1!==o){const e=c.default(n.slice(J,n.length).reverse(),"offsetWidth");t(e,M)&&N(e)}}),[w,H,L,J,M]);const re=t.useMemo((()=>!(-1!==L)||!(-1!==J)||L<J),[L,J]);g.default(re,`Do not render a right hand side \`${o.FlatTableRowHeader.displayName}\` before left hand side \`${o.FlatTableRowHeader.displayName}\``);const{colorTheme:ne,size:ae,getTabStopElementId:le}=i.useStrictFlatTableContext(),{isInSidebar:oe}=t.useContext(l.default),{stickyOffsets:ie}=t.useContext(f.default),se=()=>F(!A);(x||_)&&(te={isRowInteractive:!B,tabIndex:B?void 0:Z,onKeyDown:function(e){const t=n.default.isEnterKey(e)||n.default.isSpaceKey(e);_&&!B&&document.activeElement===T.current&&t&&(e.preventDefault(),se()),t&&x&&x(e)},isFirstColumnInteractive:B,isExpanded:A}),t.useEffect((()=>{F(m)}),[m]),t.useEffect((()=>{ee(le()===D.current?0:-1)}),[le]);const{isSubRow:de,firstRowId:ue,addRow:ce,removeRow:fe}=t.useContext(u.SubRowContext);t.useEffect((()=>{const e=D.current;return ce(e),()=>{fe(e)}}),[ce,fe]);const be=ue===D.current,{isDragging:he}=b.default({id:D.current,index:null==k?void 0:k.index,ref:k?T:null});return e.jsxs(e.Fragment,{children:[e.jsx(a.default,(pe=y({isInSidebar:oe,expandable:_,isSubRow:de,isFirstSubRow:be,"data-element":I||(de?"flat-table-sub-row":"flat-table-row"),"data-role":E,highlighted:O,selected:v,onClick:function(e){x&&x(e),_&&!B&&se()},firstCellIndex:W,ref:e=>{"function"==typeof h?h(e):h&&(h.current=e),T.current=e},lhsRowHeaderIndex:L,rhsRowHeaderIndex:J,colorTheme:ne,size:ae,stickyOffset:ie[D.current],bgColor:R,horizontalBorderColor:C,horizontalBorderSize:P,draggable:!!k,isDragging:he,totalChildren:X.length,id:D.current,"data-selected":v&&"wholeRow"===j,"data-highlighted":O&&"wholeRow"===j,rowHeight:null==T||null===(p=T.current)||void 0===p?void 0:p.offsetHeight},te,z),ge={"data-component":"flat-table-row",children:e.jsx(d.default.Provider,{value:{firstCellId:U,expandable:_,leftPositions:H,rightPositions:M,firstColumnExpandable:B,onKeyDown:function(e){(n.default.isEnterKey(e)||n.default.isSpaceKey(e))&&(e.preventDefault(),se())},onClick:()=>se(),highlighted:O,selected:v},children:w})},ge=null!=ge?ge:{},Object.getOwnPropertyDescriptors?Object.defineProperties(pe,Object.getOwnPropertyDescriptors(ge)):function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t.push.apply(t,r)}return t}(Object(ge)).forEach((function(e){Object.defineProperty(pe,e,Object.getOwnPropertyDescriptor(ge,e))})),pe)),A&&S&&e.jsx(u.default,{children:S})]});var pe,ge}));x.displayName="FlatTableRow",exports.FlatTableRow=x,exports.default=x;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),t=require("react"),r=require("invariant"),n=require("../../../__internal__/utils/helpers/events/events.js"),a=require("./flat-table-row.style.js"),l=require("../../drawer/__internal__/drawer-sidebar.context.js"),o=require("../flat-table-row-header/flat-table-row-header.component.js"),i=require("../__internal__/strict-flat-table.context.js"),s=require("../../../__internal__/utils/helpers/guid/index.js"),d=require("./__internal__/flat-table-row.context.js"),u=require("./__internal__/sub-row-provider.js"),c=require("../__internal__/build-position-map.js"),f=require("../flat-table-head/__internal__/flat-table-head.context.js");require("@atlaskit/pragmatic-drag-and-drop/element/adapter");var b=require("../__internal__/sortable/use-sortable-row.js");function h(e){return e&&e.__esModule?e:{default:e}}var p=h(t),g=h(r);function w(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function y(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},n=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(r).filter((function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable})))),n.forEach((function(t){w(e,t,r[t])}))}return e}const x=p.default.forwardRef(((r,h)=>{var p,{children:w,onClick:x,expandable:_,expandableArea:j="wholeRow",expanded:m=!1,highlighted:O,selected:v,subRows:S,bgColor:C,horizontalBorderColor:R,horizontalBorderSize:P="small",id:k,draggableProps:q,"data-element":I,"data-role":E}=r,z=function(e,t){if(null==e)return{};var r,n,a=function(e,t){if(null==e)return{};var r,n,a={},l=Object.keys(e);for(n=0;n<l.length;n++)r=l[n],t.indexOf(r)>=0||(a[r]=e[r]);return a}(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(n=0;n<l.length;n++)r=l[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}(r,["children","onClick","expandable","expandableArea","expanded","highlighted","selected","subRows","bgColor","horizontalBorderColor","horizontalBorderSize","id","draggableProps","data-element","data-role"]);const D=t.useRef(k?String(k):s.default()),[A,F]=t.useState(m),T=t.useRef(null),B="firstColumn"===j,[H,K]=t.useState({}),[M,N]=t.useState({}),[W,$]=t.useState(0),[L,G]=t.useState(-1),[J,Q]=t.useState(-1),[U,V]=t.useState(null),[X,Y]=t.useState([]),[Z,ee]=t.useState(-1);let te={};t.useLayoutEffect((()=>{var e;const t=(e,t)=>{const r=Object.keys(e),n=Object.keys(t);return r.length!==n.length||r.some((r=>e[r]!==t[r]))},r=null===(e=T.current)||void 0===e?void 0:e.querySelectorAll("th, td"),n=Array.from(r||[]);Y(n);const a=n.findIndex((e=>"flat-table-checkbox"!==e.getAttribute("data-component"))),l=n.findIndex((e=>"left"===e.getAttribute("data-sticky-align"))),o=n.findIndex((e=>"right"===e.getAttribute("data-sticky-align")));if(G(l),Q(o),-1!==a?($(a),V(n[a].getAttribute("id"))):$(0),-1!==l){const e=c.default(n.slice(0,L+1),"offsetWidth");t(e,H)&&K(e)}if(-1!==o){const e=c.default(n.slice(J,n.length).reverse(),"offsetWidth");t(e,M)&&N(e)}}),[w,H,L,J,M]);const re=t.useMemo((()=>!(-1!==L)||!(-1!==J)||L<J),[L,J]);g.default(re,`Do not render a right hand side \`${o.FlatTableRowHeader.displayName}\` before left hand side \`${o.FlatTableRowHeader.displayName}\``);const{colorTheme:ne,size:ae,getTabStopElementId:le}=i.useStrictFlatTableContext(),{isInSidebar:oe}=t.useContext(l.default),{stickyOffsets:ie}=t.useContext(f.default),se=t.useCallback((e=>{const t=n.default.isEnterKey(e)||n.default.isSpaceKey(e);_&&!B&&document.activeElement===T.current&&t&&(e.preventDefault(),F((e=>!e))),t&&x&&x(e)}),[_,B,x]),de=t.useCallback((e=>{x&&x(e),_&&!B&&F((e=>!e))}),[x,_,B]);(x||_)&&(te={isRowInteractive:!B,tabIndex:B?void 0:Z,onKeyDown:se,isFirstColumnInteractive:B,isExpanded:A}),t.useEffect((()=>{F(m)}),[m]),t.useEffect((()=>{ee(le()===D.current?0:-1)}),[le]);const{isSubRow:ue,firstRowId:ce,addRow:fe,removeRow:be}=t.useContext(u.SubRowContext);t.useEffect((()=>{const e=D.current;return fe(e),()=>{be(e)}}),[fe,be]);const he=ce===D.current,pe=t.useCallback((()=>I||(ue?"flat-table-sub-row":"flat-table-row")),[I,ue]),{isDragging:ge}=b.default({id:D.current,index:null==q?void 0:q.index,ref:q?T:null});return e.jsxs(e.Fragment,{children:[e.jsx(a.default,(we=y({isInSidebar:oe,expandable:_,isSubRow:ue,isFirstSubRow:he,"data-element":pe(),"data-role":E,highlighted:O,selected:v,onClick:de,firstCellIndex:W,ref:e=>{"function"==typeof h?h(e):h&&(h.current=e),T.current=e},lhsRowHeaderIndex:L,rhsRowHeaderIndex:J,colorTheme:ne,size:ae,stickyOffset:ie[D.current],bgColor:C,horizontalBorderColor:R,horizontalBorderSize:P,draggable:!!q,isDragging:ge,totalChildren:X.length,id:D.current,"data-selected":v&&"wholeRow"===j,"data-highlighted":O&&"wholeRow"===j,rowHeight:null==T||null===(p=T.current)||void 0===p?void 0:p.offsetHeight},te,z),ye={"data-component":"flat-table-row",children:e.jsx(d.default.Provider,{value:{firstCellId:U,expandable:_,leftPositions:H,rightPositions:M,firstColumnExpandable:B,onKeyDown:e=>{(n.default.isEnterKey(e)||n.default.isSpaceKey(e))&&(e.preventDefault(),F((e=>!e)))},onClick:()=>F((e=>!e)),highlighted:O,selected:v},children:w})},ye=null!=ye?ye:{},Object.getOwnPropertyDescriptors?Object.defineProperties(we,Object.getOwnPropertyDescriptors(ye)):function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t.push.apply(t,r)}return t}(Object(ye)).forEach((function(e){Object.defineProperty(we,e,Object.getOwnPropertyDescriptor(ye,e))})),we)),A&&S&&e.jsx(u.default,{children:S})]});var we,ye}));x.displayName="FlatTableRow",exports.FlatTableRow=x,exports.default=x;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),t=require("react"),r=require("./flat-table.style.js"),o=require("../drawer/__internal__/drawer-sidebar.context.js"),n=require("../../__internal__/utils/helpers/events/events.js"),l=require("./__internal__/strict-flat-table.context.js"),i=require("./__internal__/flat-table.context.js");function a(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function s(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},o=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(o=o.concat(Object.getOwnPropertySymbols(r).filter((function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable})))),o.forEach((function(t){a(e,t,r[t])}))}return e}function c(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t.push.apply(t,r)}return t}(Object(t)).forEach((function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))})),e}const u="tbody tr[tabindex], tbody tr td[tabindex], tbody tr th[tabindex]",d=a=>{var{caption:d,children:f,hasStickyHead:b,colorTheme:y="dark",footer:h,hasStickyFooter:p=!1,height:v,isZebra:g,size:m="medium",hasMaxHeight:O=!1,hasOuterVerticalBorders:S=!0,bottomBorderRadius:j="borderRadius100",ariaDescribedby:x,minHeight:w,overflowX:P,width:_,title:A}=a,D=function(e,t){if(null==e)return{};var r,o,n=function(e,t){if(null==e)return{};var r,o,n={},l=Object.keys(e);for(o=0;o<l.length;o++)r=l[o],t.indexOf(r)>=0||(n[r]=e[r]);return n}(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(o=0;o<l.length;o++)r=l[o],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}(a,["caption","children","hasStickyHead","colorTheme","footer","hasStickyFooter","height","isZebra","size","hasMaxHeight","hasOuterVerticalBorders","bottomBorderRadius","ariaDescribedby","minHeight","overflowX","width","title"]);const q=t.useRef(null),H=t.useRef(null),T=t.useRef(null),[k,F]=t.useState(!1),[I,R]=t.useState(!1),[E,B]=t.useState(-1),[K,C]=t.useState(-1),z=!v&&(b||p),V={caption:d,isZebra:g,size:m,"aria-describedby":x},{isInSidebar:X}=t.useContext(o.default),[M,Z]=t.useState(!1);t.useLayoutEffect((()=>{const e=(e,t)=>e.find(((e,r)=>{const o=Array.from(e.querySelectorAll("td, th")),n=t?o.shift():o.pop(),l=null==n?void 0:n.getAttribute("rowspan");return l&&Number(l)>=r+1}));if(q.current&&H.current){var t;const{offsetHeight:r,offsetWidth:o}=q.current,{top:n,bottom:l,right:i,left:a}=null===(t=H.current)||void 0===t?void 0:t.getBoundingClientRect();F(l-n>r),R(i-a>o);const s=H.current.querySelector("tbody"),c=s?Array.from(null==s?void 0:s.querySelectorAll("tr")):[],{length:u}=c,d=e(c.slice(0,u-1).reverse(),!0),f=e(c.slice(0,u-1).reverse());d&&B(c.indexOf(d)),f&&C(c.indexOf(f))}}),[h,f,v,w]);const N=e=>e.findIndex((e=>{const t=e.querySelectorAll("button, input, a, [tabindex]");return!(!t||!Array.from(t).find((e=>e===document.activeElement)))}));return e.jsxs(r.StyledFlatTableWrapper,c(s({ref:q,"data-role":"flat-table-wrapper",isInSidebar:X,hasStickyHead:b,colorTheme:y,minHeight:w,overflowY:b||p?"auto":void 0,height:z&&!O?"99%":v,maxHeight:O?"100%":void 0,hasOuterVerticalBorders:S,bottomBorderRadius:j,display:"flex",flexDirection:"column",justifyContent:p||v?"space-between":void 0,role:"region",overflowX:_?"hidden":void 0,width:_,hasStickyFooter:p,hasVerticalScrollbar:k,hasHorizontalScrollbar:I,footer:!!h,firstColRowSpanIndex:E,lastColRowSpanIndex:K,onKeyDown:e=>{var t;const r=null===(t=H.current)||void 0===t?void 0:t.querySelectorAll(u),o=Array.from(r||[]);if(!o.length)return;const l=o.findIndex((e=>e===document.activeElement));if(M&&(b||p))(n.default.isPageUpKey(e)||n.default.isPageDownKey(e)||n.default.isHomeKey(e)||n.default.isEndKey(e))&&e.preventDefault();else if(n.default.isDownKey(e))if(e.preventDefault(),-1!==l&&l<o.length){var i;null===(i=o[l+1])||void 0===i||i.focus()}else{const e=N(o);var a;-1!==e&&e<o.length&&(null===(a=o[e+1])||void 0===a||a.focus())}else if(n.default.isUpKey(e))if(e.preventDefault(),l>0){var s;null===(s=o[l-1])||void 0===s||s.focus()}else{const e=N(o);var c;e>0&&(null===(c=o[e-1])||void 0===c||c.focus())}}},D),{"data-component":"flat-table-wrapper",title:A,children:[e.jsx(r.StyledTableContainer,{ref:T,tabIndex:0,overflowX:P,width:_,"data-role":"flat-table-container",children:e.jsxs(r.StyledFlatTable,c(s({ref:H,"data-component":"flat-table"},V),{children:[d?e.jsx("caption",{children:d}):null,e.jsx(l.StrictFlatTableProvider,{value:{colorTheme:y,size:m,getTabStopElementId:()=>{var e;const t=Array.from((null===(e=H.current)||void 0===e?void 0:e.querySelectorAll(u))||[]),r=t.find((e=>"true"===e.getAttribute("data-selected")||"true"===e.getAttribute("data-highlighted")))||t[0];return(null==r?void 0:r.getAttribute("id"))||""}},children:e.jsx(i.default.Provider,{value:{isInFlatTable:!0,setHasOpenDatePicker:Z},children:f})})]}))}),h&&e.jsx(r.StyledFlatTableFooter,{hasStickyFooter:p,"data-role":"flat-table-footer",children:h})]}))};d.displayName="FlatTable",exports.FlatTable=d,exports.default=d;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),t=require("react"),r=require("./flat-table.style.js"),o=require("../drawer/__internal__/drawer-sidebar.context.js"),l=require("../../__internal__/utils/helpers/events/events.js"),n=require("./__internal__/strict-flat-table.context.js"),a=require("./__internal__/flat-table.context.js");function i(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function s(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},o=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(o=o.concat(Object.getOwnPropertySymbols(r).filter((function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable})))),o.forEach((function(t){i(e,t,r[t])}))}return e}function u(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t.push.apply(t,r)}return t}(Object(t)).forEach((function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))})),e}const c="tbody tr[tabindex], tbody tr td[tabindex], tbody tr th[tabindex]",d=i=>{var{caption:d,children:f,hasStickyHead:b,colorTheme:y="dark",footer:h,hasStickyFooter:p=!1,height:v,isZebra:m,size:g="medium",hasMaxHeight:O=!1,hasOuterVerticalBorders:S=!0,bottomBorderRadius:j="borderRadius100",ariaDescribedby:x,minHeight:w,overflowX:P,width:_,title:k}=i,A=function(e,t){if(null==e)return{};var r,o,l=function(e,t){if(null==e)return{};var r,o,l={},n=Object.keys(e);for(o=0;o<n.length;o++)r=n[o],t.indexOf(r)>=0||(l[r]=e[r]);return l}(e,t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(o=0;o<n.length;o++)r=n[o],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(l[r]=e[r])}return l}(i,["caption","children","hasStickyHead","colorTheme","footer","hasStickyFooter","height","isZebra","size","hasMaxHeight","hasOuterVerticalBorders","bottomBorderRadius","ariaDescribedby","minHeight","overflowX","width","title"]);const D=t.useRef(null),q=t.useRef(null),H=t.useRef(null),[T,F]=t.useState(!1),[I,R]=t.useState(!1),[C,E]=t.useState(-1),[B,K]=t.useState(-1),z=!v&&(b||p),M={caption:d,isZebra:m,size:g,"aria-describedby":x},{isInSidebar:V}=t.useContext(o.default),[X,Z]=t.useState(!1);t.useLayoutEffect((()=>{const e=(e,t)=>e.find(((e,r)=>{const o=Array.from(e.querySelectorAll("td, th")),l=t?o.shift():o.pop(),n=null==l?void 0:l.getAttribute("rowspan");return n&&Number(n)>=r+1}));if(D.current&&q.current){var t;const{offsetHeight:r,offsetWidth:o}=D.current,{top:l,bottom:n,right:a,left:i}=null===(t=q.current)||void 0===t?void 0:t.getBoundingClientRect();F(n-l>r),R(a-i>o);const s=q.current.querySelector("tbody"),u=s?Array.from(null==s?void 0:s.querySelectorAll("tr")):[],{length:c}=u,d=e(u.slice(0,c-1).reverse(),!0),f=e(u.slice(0,c-1).reverse());d&&E(u.indexOf(d)),f&&K(u.indexOf(f))}}),[h,v,w]);const N=e=>e.findIndex((e=>{const t=e.querySelectorAll("button, input, a, [tabindex]");return!(!t||!Array.from(t).find((e=>e===document.activeElement)))})),U=t.useCallback((e=>{var t;const r=null===(t=q.current)||void 0===t?void 0:t.querySelectorAll(c),o=Array.from(r||[]);if(!o.length)return;const n=o.findIndex((e=>e===document.activeElement));if(X&&(b||p))(l.default.isPageUpKey(e)||l.default.isPageDownKey(e)||l.default.isHomeKey(e)||l.default.isEndKey(e))&&e.preventDefault();else if(l.default.isDownKey(e))if(e.preventDefault(),-1!==n&&n<o.length){var a;null===(a=o[n+1])||void 0===a||a.focus()}else{const e=N(o);var i;-1!==e&&e<o.length&&(null===(i=o[e+1])||void 0===i||i.focus())}else if(l.default.isUpKey(e))if(e.preventDefault(),n>0){var s;null===(s=o[n-1])||void 0===s||s.focus()}else{const e=N(o);var u;e>0&&(null===(u=o[e-1])||void 0===u||u.focus())}}),[X,p,b]),W=t.useCallback((()=>{var e;const t=Array.from((null===(e=q.current)||void 0===e?void 0:e.querySelectorAll(c))||[]),r=t.find((e=>"true"===e.getAttribute("data-selected")||"true"===e.getAttribute("data-highlighted")))||t[0];return(null==r?void 0:r.getAttribute("id"))||""}),[]),L=t.useMemo((()=>({colorTheme:y,size:g,getTabStopElementId:W})),[y,g,W]),Y=t.useMemo((()=>({isInFlatTable:!0,setHasOpenDatePicker:Z})),[Z]);return e.jsxs(r.StyledFlatTableWrapper,u(s({ref:D,"data-role":"flat-table-wrapper",isInSidebar:V,hasStickyHead:b,colorTheme:y,minHeight:w,overflowY:b||p?"auto":void 0,height:z&&!O?"99%":v,maxHeight:O?"100%":void 0,hasOuterVerticalBorders:S,bottomBorderRadius:j,display:"flex",flexDirection:"column",justifyContent:p||v?"space-between":void 0,role:"region",overflowX:_?"hidden":void 0,width:_,hasStickyFooter:p,hasVerticalScrollbar:T,hasHorizontalScrollbar:I,footer:!!h,firstColRowSpanIndex:C,lastColRowSpanIndex:B,onKeyDown:U},A),{"data-component":"flat-table-wrapper",title:k,children:[e.jsx(r.StyledTableContainer,{ref:H,tabIndex:0,overflowX:P,width:_,"data-role":"flat-table-container",children:e.jsxs(r.StyledFlatTable,u(s({ref:q,"data-component":"flat-table"},M),{children:[d?e.jsx("caption",{children:d}):null,e.jsx(n.StrictFlatTableProvider,{value:L,children:e.jsx(a.default.Provider,{value:Y,children:f})})]}))}),h&&e.jsx(r.StyledFlatTableFooter,{hasStickyFooter:p,"data-role":"flat-table-footer",children:h})]}))};d.displayName="FlatTable",exports.FlatTable=d,exports.default=d;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "carbon-react",
3
- "version": "158.14.1",
3
+ "version": "158.14.2",
4
4
  "description": "A library of reusable React components for easily building user interfaces.",
5
5
  "files": [
6
6
  "lib",