UNPKG

react-table-ui

Version:

Out-of-the-box UI for React-Table 7.

573 lines (497 loc) 46 kB
var At=Object.create;var et=Object.defineProperty;var jt=Object.getOwnPropertyDescriptor;var zt=Object.getOwnPropertyNames;var Vt=Object.getPrototypeOf,Ut=Object.prototype.hasOwnProperty;var Xt=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports);var Jt=(e,t,o,a)=>{if(t&&typeof t=="object"||typeof t=="function")for(let n of zt(t))!Ut.call(e,n)&&n!==o&&et(e,n,{get:()=>t[n],enumerable:!(a=jt(t,n))||a.enumerable});return e};var _t=(e,t,o)=>(o=e!=null?At(Vt(e)):{},Jt(t||!e||!e.__esModule?et(o,"default",{value:e,enumerable:!0}):o,e));var Ht=Xt((Qn,Ae)=>{var Ge=function(e){"use strict";var t=Object.prototype,o=t.hasOwnProperty,a,n=typeof Symbol=="function"?Symbol:{},i=n.iterator||"@@iterator",p=n.asyncIterator||"@@asyncIterator",l=n.toStringTag||"@@toStringTag";function d(s,r,c){return Object.defineProperty(s,r,{value:c,enumerable:!0,configurable:!0,writable:!0}),s[r]}try{d({},"")}catch{d=function(r,c,m){return r[c]=m}}function g(s,r,c,m){var u=r&&r.prototype instanceof I?r:I,C=Object.create(u.prototype),z=new xe(m||[]);return C._invoke=pe(s,c,z),C}e.wrap=g;function T(s,r,c){try{return{type:"normal",arg:s.call(r,c)}}catch(m){return{type:"throw",arg:m}}}var x="suspendedStart",O="suspendedYield",F="executing",E="completed",v={};function I(){}function L(){}function R(){}var H={};d(H,i,function(){return this});var M=Object.getPrototypeOf,B=M&&M(M(Te([])));B&&B!==t&&o.call(B,i)&&(H=B);var w=R.prototype=I.prototype=Object.create(H);L.prototype=R,d(w,"constructor",R),d(R,"constructor",L),L.displayName=d(R,l,"GeneratorFunction");function Q(s){["next","throw","return"].forEach(function(r){d(s,r,function(c){return this._invoke(r,c)})})}e.isGeneratorFunction=function(s){var r=typeof s=="function"&&s.constructor;return r?r===L||(r.displayName||r.name)==="GeneratorFunction":!1},e.mark=function(s){return Object.setPrototypeOf?Object.setPrototypeOf(s,R):(s.__proto__=R,d(s,l,"GeneratorFunction")),s.prototype=Object.create(w),s},e.awrap=function(s){return{__await:s}};function _(s,r){function c(C,z,V,Z){var U=T(s[C],s,z);if(U.type==="throw")Z(U.arg);else{var Ie=U.arg,ve=Ie.value;return ve&&typeof ve=="object"&&o.call(ve,"__await")?r.resolve(ve.__await).then(function(de){c("next",de,V,Z)},function(de){c("throw",de,V,Z)}):r.resolve(ve).then(function(de){Ie.value=de,V(Ie)},function(de){return c("throw",de,V,Z)})}}var m;function u(C,z){function V(){return new r(function(Z,U){c(C,z,Z,U)})}return m=m?m.then(V,V):V()}this._invoke=u}Q(_.prototype),d(_.prototype,p,function(){return this}),e.AsyncIterator=_,e.async=function(s,r,c,m,u){u===void 0&&(u=Promise);var C=new _(g(s,r,c,m),u);return e.isGeneratorFunction(r)?C:C.next().then(function(z){return z.done?z.value:C.next()})};function pe(s,r,c){var m=x;return function(C,z){if(m===F)throw new Error("Generator is already running");if(m===E){if(C==="throw")throw z;return we()}for(c.method=C,c.arg=z;;){var V=c.delegate;if(V){var Z=re(V,c);if(Z){if(Z===v)continue;return Z}}if(c.method==="next")c.sent=c._sent=c.arg;else if(c.method==="throw"){if(m===x)throw m=E,c.arg;c.dispatchException(c.arg)}else c.method==="return"&&c.abrupt("return",c.arg);m=F;var U=T(s,r,c);if(U.type==="normal"){if(m=c.done?E:O,U.arg===v)continue;return{value:U.arg,done:c.done}}else U.type==="throw"&&(m=E,c.method="throw",c.arg=U.arg)}}}function re(s,r){var c=s.iterator[r.method];if(c===a){if(r.delegate=null,r.method==="throw"){if(s.iterator.return&&(r.method="return",r.arg=a,re(s,r),r.method==="throw"))return v;r.method="throw",r.arg=new TypeError("The iterator does not provide a 'throw' method")}return v}var m=T(c,s.iterator,r.arg);if(m.type==="throw")return r.method="throw",r.arg=m.arg,r.delegate=null,v;var u=m.arg;if(!u)return r.method="throw",r.arg=new TypeError("iterator result is not an object"),r.delegate=null,v;if(u.done)r[s.resultName]=u.value,r.next=s.nextLoc,r.method!=="return"&&(r.method="next",r.arg=a);else return u;return r.delegate=null,v}Q(w),d(w,l,"Generator"),d(w,i,function(){return this}),d(w,"toString",function(){return"[object Generator]"});function ye(s){var r={tryLoc:s[0]};1 in s&&(r.catchLoc=s[1]),2 in s&&(r.finallyLoc=s[2],r.afterLoc=s[3]),this.tryEntries.push(r)}function he(s){var r=s.completion||{};r.type="normal",delete r.arg,s.completion=r}function xe(s){this.tryEntries=[{tryLoc:"root"}],s.forEach(ye,this),this.reset(!0)}e.keys=function(s){var r=[];for(var c in s)r.push(c);return r.reverse(),function m(){for(;r.length;){var u=r.pop();if(u in s)return m.value=u,m.done=!1,m}return m.done=!0,m}};function Te(s){if(s){var r=s[i];if(r)return r.call(s);if(typeof s.next=="function")return s;if(!isNaN(s.length)){var c=-1,m=function u(){for(;++c<s.length;)if(o.call(s,c))return u.value=s[c],u.done=!1,u;return u.value=a,u.done=!0,u};return m.next=m}}return{next:we}}e.values=Te;function we(){return{value:a,done:!0}}return xe.prototype={constructor:xe,reset:function(s){if(this.prev=0,this.next=0,this.sent=this._sent=a,this.done=!1,this.delegate=null,this.method="next",this.arg=a,this.tryEntries.forEach(he),!s)for(var r in this)r.charAt(0)==="t"&&o.call(this,r)&&!isNaN(+r.slice(1))&&(this[r]=a)},stop:function(){this.done=!0;var s=this.tryEntries[0],r=s.completion;if(r.type==="throw")throw r.arg;return this.rval},dispatchException:function(s){if(this.done)throw s;var r=this;function c(Z,U){return C.type="throw",C.arg=s,r.next=Z,U&&(r.method="next",r.arg=a),!!U}for(var m=this.tryEntries.length-1;m>=0;--m){var u=this.tryEntries[m],C=u.completion;if(u.tryLoc==="root")return c("end");if(u.tryLoc<=this.prev){var z=o.call(u,"catchLoc"),V=o.call(u,"finallyLoc");if(z&&V){if(this.prev<u.catchLoc)return c(u.catchLoc,!0);if(this.prev<u.finallyLoc)return c(u.finallyLoc)}else if(z){if(this.prev<u.catchLoc)return c(u.catchLoc,!0)}else if(V){if(this.prev<u.finallyLoc)return c(u.finallyLoc)}else throw new Error("try statement without catch or finally")}}},abrupt:function(s,r){for(var c=this.tryEntries.length-1;c>=0;--c){var m=this.tryEntries[c];if(m.tryLoc<=this.prev&&o.call(m,"finallyLoc")&&this.prev<m.finallyLoc){var u=m;break}}u&&(s==="break"||s==="continue")&&u.tryLoc<=r&&r<=u.finallyLoc&&(u=null);var C=u?u.completion:{};return C.type=s,C.arg=r,u?(this.method="next",this.next=u.finallyLoc,v):this.complete(C)},complete:function(s,r){if(s.type==="throw")throw s.arg;return s.type==="break"||s.type==="continue"?this.next=s.arg:s.type==="return"?(this.rval=this.arg=s.arg,this.method="return",this.next="end"):s.type==="normal"&&r&&(this.next=r),v},finish:function(s){for(var r=this.tryEntries.length-1;r>=0;--r){var c=this.tryEntries[r];if(c.finallyLoc===s)return this.complete(c.completion,c.afterLoc),he(c),v}},catch:function(s){for(var r=this.tryEntries.length-1;r>=0;--r){var c=this.tryEntries[r];if(c.tryLoc===s){var m=c.completion;if(m.type==="throw"){var u=m.arg;he(c)}return u}}throw new Error("illegal catch attempt")},delegateYield:function(s,r,c){return this.delegate={iterator:Te(s),resultName:r,nextLoc:c},this.method==="next"&&(this.arg=a),v}},e}(typeof Ae=="object"?Ae.exports:{});try{regeneratorRuntime=Ge}catch{typeof globalThis=="object"?globalThis.regeneratorRuntime=Ge:Function("r","regeneratorRuntime = r")(Ge)}});import*as ne from"react";import*as De from"react";var Oe=De.createContext(void 0);function S(){let e=De.useContext(Oe);if(!e)throw new Error("useTableContext cannot be used outside ReactTableUI component.");return e}import{useMemo as xo}from"react";import{useTable as To,useSortBy as vo,useFilters as So,usePagination as Co,useRowSelect as wo,useExpanded as Do,useColumnOrder as Ro,useResizeColumns as ko,useGlobalFilter as Fo,useRowState as Po,useFlexLayout as $o}from"react-table";import{useSticky as Eo}from"react-table-sticky";import*as tt from"react";function ot({column:{filterValue:e,setFilter:t,render:o}}){let a=o("Header");return tt.createElement("input",{type:"search",value:e||"",onChange:i=>t(i.target.value||void 0),placeholder:`Filter ${typeof a=="string"?a:""}`})}var Wt={id:"selection",order:-2},Yt={id:"expander",order:-1},qt={id:"action",order:1},Re={selection:Wt,expander:Yt,action:qt},at=Object.values(Re).map(e=>e.id),Kt=Object.values(Re).filter(({order:e})=>e<0).sort((e,t)=>e.order-t.order).map(({id:e})=>e),Qt=Object.values(Re).filter(({order:e})=>e>0).sort((e,t)=>e.order-t.order).map(({id:e})=>e),Se=e=>at.includes(typeof e=="string"?e:e.placeholderOf?.id||e.id),nt=(e=[],t)=>{let o=e.filter(n=>!at.includes(n)),a=t.filter(({id:n,accessor:i})=>!o.some(p=>p===n||p===i)).map(({id:n,accessor:i})=>n||i);return[...Kt,...o,...a,...Qt]},le=Re;var W=()=>{};import*as He from"react";var Zt=e=>{let{collapsedIndicator:t="\u2192",expandedIndicator:o="\u2193"}=e.expandedOptions||{},a=!e.data.some(l=>l.subRows?.length||l.subComponent),n=({getToggleAllRowsExpandedProps:l,isAllRowsExpanded:d})=>He.createElement("span",{...l()},d?o:t),i=({row:l})=>l.canExpand||l.original.subComponent?He.createElement("span",{...l.getToggleRowExpandedProps({style:{paddingLeft:`${l.depth}rem`}})},l.isExpanded?o:t):null,p={id:le.expander.id,sticky:le.expander.order<0?"left":"right",minWidth:50,maxWidth:50,Header:n,Cell:i,disableResizing:!0};return{useExpandedColumn:l=>{l.visibleColumns.push(d=>[p,...d])},disableExpander:a}},rt=Zt;import*as oe from"react";var eo=oe.forwardRef(({indeterminate:e=!1,...t},o)=>{let a=oe.useRef(null),n=o||a;return oe.useEffect(()=>{typeof n!="function"&&n?.current&&(n.current.indeterminate=e)},[n,e]),oe.createElement("div",{className:"RowSelectCheckbox"},oe.createElement("input",{className:"checkbox",type:"checkbox",ref:n,...t}))}),to=e=>{let{Component:t=eo,selectSubRows:o=!1}=e.rowSelectOptions||{},a=({getToggleAllRowsSelectedProps:i})=>oe.createElement(t,{...i()}),n=({row:i})=>i.depth>0&&!o?null:oe.createElement(t,{...i.getToggleRowSelectedProps()});return i=>{i.visibleColumns.push(p=>[{id:le.selection.id,sticky:le.selection.order<0?"left":"right",minWidth:48,maxWidth:48,Header:a,Cell:n,disableResizing:!0,disableFilters:!0,disableGlobalFilter:!0,disableGroupBy:!0,disableSortBy:!0},...p])}},it=to;import*as ue from"react";import{Menu as oo,MenuButton as ao,MenuList as no,MenuItem as ro}from"@reach/menu-button";function Me(e){let{singleRowActions:t=[]}=e.actionOptions||{},o=({row:a})=>ue.createElement(io,{actions:t,row:a});return a=>{t.length>0&&a.visibleColumns.push(n=>[...n,{id:le.action.id,sticky:le.action.order<0?"left":"right",minWidth:48,maxWidth:48,Header:"",Cell:o,disableResizing:!0,disableFilters:!0,disableGlobalFilter:!0,disableGroupBy:!0,disableSortBy:!0}])}}function io({actions:e,row:t}){return ue.createElement(oo,null,ue.createElement(ao,{className:"Button RowAction",title:"Action"},ue.createElement("div",{className:"button-content"},"\u2022\u2022\u2022")),ue.createElement(no,null,e.map(o=>ue.createElement(ro,{key:o.id,onSelect:()=>o.onClick(t.original,t),about:o.tooltip},o.children))))}import*as st from"react";var so=({tableInstance:{state:{pageSize:e,pageIndex:t}},tableProps:{paginationOptions:o={}}})=>{let{disablePagination:a,manualPagination:n,fetchData:i}=o;st.useEffect(()=>{!a&&n&&i&&i({pageIndex:t,pageSize:e})},[i,t,e,a,n])},lt=so;import{useEffect as Y}from"react";var lo=({tableInstance:{state:e},tableProps:{tableOptions:t,sortByOptions:o,filtersOptions:a,expandedOptions:n,rowSelectOptions:i,paginationOptions:p,columnOptions:l,globalFilterOptions:d}})=>{let{expanded:g,selectedRowIds:T,sortBy:x,filters:O,pageIndex:F,pageSize:E,rowState:v,columnOrder:I,globalFilter:L,groupBy:R,columnResizing:H,hiddenColumns:M=[],filtersVisible:B}=e,w={onStateChange:_=>{}},Q={onStateChange:_=>{}};Y(()=>{t?.onStateChange?.(e)},[t?.onStateChange,e]),Y(()=>{o?.onStateChange&&o?.onStateChange({sortBy:x})},[o?.onStateChange,x]),Y(()=>{a?.onStateChange?.({filters:O,filtersVisible:B})},[a?.onStateChange,O,B]),Y(()=>{d?.onStateChange?.({globalFilter:L})},[d?.onStateChange,L]),Y(()=>{n?.onStateChange?.({expanded:g})},[n?.onStateChange,g]),Y(()=>{i?.onStateChange?.({selectedRowIds:T})},[i?.onStateChange,T]),Y(()=>{w?.onStateChange?.({rowState:v})},[w?.onStateChange,v]),Y(()=>{Q?.onStateChange?.({groupBy:R})},[Q?.onStateChange,R]),Y(()=>{p?.onStateChange?.({pageIndex:F,pageSize:E})},[p?.onStateChange,F,E]),Y(()=>{l?.onStateChange?.({columnOrder:I,columnResizing:H,hiddenColumns:M})},[l?.onStateChange,I,H,M]),Y(()=>{l?.onOrderStateChange?.(I)},[l?.onOrderStateChange,I]),Y(()=>{l?.onResizeStateChange?.(H)},[l?.onResizeStateChange,H]),Y(()=>{l?.onVisibilityStateChange?.(M)},[l?.onVisibilityStateChange,M])},ct=lo;import{useMemo as co}from"react";var po=e=>e.slice(0,1).toUpperCase()+e.slice(1),uo=e=>co(()=>Object.keys(Object.assign({},...e)).filter(o=>!["subRows","subComponent"].includes(o)).map(o=>({accessor:o,Header:po(o)})),[e]),pt=uo;import*as ke from"react";import{ensurePluginOrder as mo}from"react-table";var dt="useFiltersVisible",me={init:"init",setFiltersVisible:"setFiltersVisible",resetFiltersVisible:"resetFiltersVisible",toggleFiltersVisible:"toggleFiltersVisible"},fo=(e,t,o,a)=>{if(a?.disableFilters)return{...e,filtersVisible:!1};if(a?.alwaysShowFilters)return{...e,filtersVisible:!0};switch(t.type){case me.init:case me.resetFiltersVisible:return{filtersVisible:a?.initialState?.filtersVisible||!1,...e};case me.setFiltersVisible:return{...e,filtersVisible:!!t.filtersVisible};case me.toggleFiltersVisible:return{...e,filtersVisible:!o?.filtersVisible};default:return e}},go=e=>{let{dispatch:t,plugins:o}=e;mo(o,["useFilters"],dt);let a=ke.useCallback(p=>{t({type:me.setFiltersVisible,filtersVisible:p}),t({type:"resetFilters"})},[t]),n=ke.useCallback(()=>{t({type:me.resetFiltersVisible}),t({type:"resetFilters"})},[t]),i=ke.useCallback(()=>{t({type:me.toggleFiltersVisible}),t({type:"resetFilters"})},[t]);Object.assign(e,{setFiltersVisible:a,resetFiltersVisible:n,toggleFiltersVisible:i})};function ut(e){e.stateReducers.push(fo),e.useInstance.push(go)}ut.pluginName=dt;var mt=ut;import*as Ne from"react";import{ensurePluginOrder as bo}from"react-table";var ft="useModal",Ce={init:"init",setModal:"setModal",resetModal:"resetModal"},yo=(e,t,o,a)=>{switch(t.type){case Ce.init:return{modal:a?.initialState?.modal,...e};case Ce.resetModal:return{...e,modal:void 0};case Ce.setModal:return{...e,modal:t.modal};default:return e}},ho=e=>{let{dispatch:t,plugins:o}=e;bo(o,["useFilters"],ft);let a=Ne.useCallback(i=>{t({type:Ce.setModal,modal:i})},[t]),n=Ne.useCallback(()=>{t({type:Ce.resetModal})},[t]);Object.assign(e,{setModal:a,resetModal:n})};function gt(e){e.stateReducers.push(yo),e.useInstance.push(ho)}gt.pluginName=ft;var bt=gt;var Io=(e,t)=>{let{data:o=[],columns:a=pt(o),tableOptions:n={},filtersOptions:i={},globalFilterOptions:p={},sortByOptions:l={},paginationOptions:d={},expandedOptions:g={},rowSelectOptions:T={},columnOptions:x={},rowStateOptions:O={},freezeOptions:{columns:F=!0}={}}=e,{initialState:E,DefaultComponent:v,...I}=i,{initialState:L,...R}=p,{initialState:H,...M}=l,{initialState:B,...w}=g,{initialState:Q,..._}=T,{initialState:pe,...re}=d,{initialState:ye,...he}=x,{initialState:xe,...Te}=O,we=xo(()=>({Filter:v||ot}),[]),s=it(e),r=Me(e),{useExpandedColumn:c,disableExpander:m}=rt(e),C={tableInstance:To({data:o,columns:a,defaultColumn:we,...n,...I,...R,...M,autoResetPage:!re.manualPagination,...re,...w,..._,...he,...Te,initialState:{...n?.initialState||{},...H,...E,...L,...B,...Q,...xe,pageSize:re.pageSizes?re.pageSizes[0]:50,pageIndex:0,...pe,...ye,columnOrder:nt(ye?.columnOrder,a)}},i.disableFilters?W:So,p.disableGlobalFilter?W:Fo,l.disableSortBy?W:vo,m?W:Do,m?W:c,d.disablePagination?W:Co,T.disableRowSelect?W:wo,T.disableRowSelect?W:s,O.disableRowState?W:Po,x.disableOrdering?W:Ro,x.disableResizing?W:ko,r,$o,mt,bt,F?Eo:W),tableProps:e,tableRef:t};return lt(C),ct(C),C},yt=Io;import{useInsertionEffect as jo}from"react";var X="RTUI";function y(...e){return e.map(t=>t?typeof t!="object"?t:Array.isArray(t)?y(t):Object.entries(t).filter(([,o])=>Boolean(o)).map(([o])=>o).join(" "):null).filter(Boolean).join(" ")}var fe=e=>(t,...o)=>{let a="";for(let i=0;i<o.length;i++)a+=t[i],a+=o[i];a+=t[t.length-1];let n=[X,e].filter(i=>!!i).map(i=>`.${i}`).join(" ");return a.replaceAll("&",n)};fe.div=fe("");fe.rtui=fe("RTUI");fe.table=fe("Table");var D=fe;import Tt,{forwardRef as Oo}from"react";var Le=e=>["primary","secondary","disabled","inverse","selected","none"].reduce((t,o)=>({...t,[o]:`var(--${X}-color-${e}-${o})`}),{}),ht=e=>["none","xs","sm","md","lg","xl"].reduce((t,o)=>({...t,[o]:`var(--${X}-${e}-${o})`}),{}),k=e=>e/16+"em",f={text:Le("text"),background:Le("background"),border:Le("border"),accent:{default:`var(--${X}-color-accent-default)`,lighter:`var(--${X}-color-accent-lighter)`,darker:`var(--${X}-color-accent-darker)`}},h=ht("spacing"),q=ht("radius"),Be={mobile:"@media (max-width: 600px)"},ee={default:`1px solid ${f.border.primary}`},xt=` width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; `;var vt=D("Button")` & { background: none; border: none; line-height: 1; border-radius: ${q.sm}; cursor: pointer; padding: ${h.none}; } & .button-content { background: none; margin: ${h.sm}; padding: ${h.sm}; min-width: ${k(40)}; min-height: ${k(40)}; border-radius: ${q.xs}; display: flex; align-items: center; justify-content: center; } &:hover .button-content { background: ${f.background.selected}; } &:disabled, &:disabled .button-content { cursor: not-allowed; background: none; } & .iconWithLabel { display: grid; align-items: center; grid-template-columns: max-content max-content; gap: ${h.md}; padding: 0 ${h.md}; } `;function Ho({children:e,className:t="",...o},a){return Tt.createElement("button",{...o,className:y("Button",t),ref:a},Tt.createElement("div",{className:"button-content"},e))}var A=Oo(Ho);import*as Fe from"react";var St=D("td")` &, .th { padding: ${h.sm} ${h.md}; background: ${f.background.primary}; overflow: hidden; } `,Mo=Fe.forwardRef(({className:e,...t},o)=>Fe.createElement("div",{...t,className:y("td","Cell",e||""),style:t.style,ref:o})),ge=Mo;var No=D("checkbox")` & { height: 1em; width: 1em; -webkit-appearance: none; -moz-appearance: none; -o-appearance: none; appearance: none; outline: none; border: 1px solid ${f.border.primary}; border-radius: ${q.sm}; background-color: ${f.background.primary}; cursor: pointer; } &:hover, &:focus { outline: 1px solid ${f.accent.default}; } &:checked, &:indeterminate { border-color: ${f.accent.default}; background-color: ${f.accent.default}; box-shadow: inset 0 0 0 2px ${f.background.primary}; } &:indeterminate { box-shadow: inset 0 ${k(4)} 0 2px ${f.background.primary}, inset 0 -${k(4)} 0 2px ${f.background.primary}; } `,Ct=D.div` & input[type='search'], & input[type='text'], & input[type='number'], & input[type='checkbox'] { font: inherit; border-radius: ${q.xs}; border: ${ee.default}; color: ${f.text.primary}; } & input[type='search'], & input[type='text'] { width: 100%; padding: ${q.sm} ${q.md}; } & input[type='search'] { -webkit-appearance: none; } & input[type='search']::-webkit-search-decoration { -webkit-appearance: none; } ${No} `;var wt=D("StatusBar")` & { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; min-height: ${k(56)}; width: 100%; border-top: ${ee.default}; background-color: ${f.background.primary}; } & .Status { flex-basis: 1; flex-grow: 1; min-height: ${k(40)}; padding: 0 ${h.xl}; display: flex; justify-content: center; align-items: center; min-width: max-content; max-width: 100%; } & .spacer { flex-basis: 1; flex-grow: 999; } & .Pagination { display: flex; flex-basis: 1; flex-grow: 1; align-items: center; justify-content: space-between; min-width: max-content; max-width: 100%; } & .Pagination input { margin: 0 ${h.md}; text-align: center; } `;var Lo=D("Modal")` & { min-width: 300px; min-height: 200px; background-color: ${f.background.secondary}; border-radius: ${q.md}; overflow: hidden; } & .TitleBar { width: 100%; min-height: 3rem; height: auto; padding-left: ${h.xl}; display: flex; align-items: center; justify-content: space-between; font-weight: bold; border-bottom: ${ee.default}; background-color: ${f.background.primary}; } & .Modal-Content { padding: ${h.xl}; } `,Dt=D.div` &, & * { box-sizing: border-box; font-size: 16px; line-height: 1.5; } & { position: relative; display: grid; grid-template-rows: max-content 1fr max-content; height: 100%; width: 100%; color: ${f.text.primary}; } &.withBorder { border: ${ee.default}; border-radius: ${q.md}; overflow: hidden; } &:fullscreen { border-radius: 0; } & .Modal-Wrapper { position: absolute; top: 0; left: 0; right: 0; bottom: 0; background-color: rgba(0, 0, 0, 0.25); z-index: 20; display: flex; align-items: center; justify-content: center; } ${wt} ${Lo} `;var Bo=D("THead")` & { position: relative; z-index: 5; width: 100%; top: 0; } & .Row { min-height: ${k(48)}; background-color: ${f.background.secondary}; } .Table.scrollY .THead .Row { box-shadow: 0px 2px 8px 0 rgba(0, 0, 0, 0.2); } & .Cell { cursor: inherit; display: flex; align-items: center; background-color: inherit; gap: ${h.md}; border-bottom: ${ee.default}; color: ${f.text.secondary}; } & .Sort { visibility: hidden; } & .Cell:hover .Sort { visibility: visible; } & .Filter { width: 100%; } & .FilterRow { height: ${k(48)}; background-color: ${f.background.disabled}; } & .Filter input { position: relative; width: calc(100% + ${h.xl}); padding: ${h.sm} ${h.md}; left: calc(-1 * ${h.md}); font-weight: normal; } & .resizer { display: inline-block; background: ${f.border.primary}; width: 2px; height: ${k(24)}; position: absolute; right: 0; top: 50%; transform: translateY(-50%); z-index: 1; touch-action: none; } & .resizer:hover, & .resizer.isResizing { background: ${f.border.selected}; } `,Go=D("TBody")` & { height: max-content; position: relative; z-index: 0; } & .Row { min-height: ${k(48)}; background: ${f.background.primary}; } & .Row.selected { background: ${f.background.selected}; } & .Row:focus, & .Row:focus .Cell { border-top: 1px solid ${f.border.selected}; border-bottom: 1px solid ${f.border.selected}; outline: none; } & .Cell { display: flex; align-items: center; background-color: inherit; border-bottom: ${ee.default}; } & .RowAction { opacity: 0; } & .Row:hover .RowAction, & .Row:focus-within .RowAction { opacity: 1; } & .subComponent { box-shadow: inset 0 0 8px 0 #0002; background-color: ${f.background.secondary}; } & .subComponent .content { position: sticky; left: 0px; width: max-content; /* TODO */ padding: ${k(16)}; } `,Rt=D.table` & { position: relative; z-index: 0; height: 100%; min-width: 100%; overflow: auto; background-color: ${f.background.secondary}; } & .sticky { position: sticky; } ${Bo} ${Go} & .RowSelectCheckbox { ${xt} } & [data-sticky-td] { position: sticky; } &.scrollX [data-sticky-last-left-td] { box-shadow: 1px 0px 2px ${f.border.primary}; } &.scrollX [data-sticky-first-right-td] { box-shadow: -1px 0px 2px ${f.border.primary}; } & .Cell { padding: ${h.md} ${h.xl}; } & .Cell.noSpacing { flex-direction: row; align-items: center; padding: 0; } & .loader { display: flex; justify-content: center; align-items: center; width: 100%; height: 100%; } & .TFoot { position: sticky; bottom: 0; z-index: 5; width: 100%; background: ${f.background.secondary}; } `;var kt=D("TitleBar")` & { width: 100%; height: 3.5em; display: grid; grid-template-columns: 1fr max-content; grid-template-rows: 1fr max-content; grid-template-areas: 'titleSearch rowActions actions systemActions'; align-items: center; border-bottom: ${ee.default}; background-color: ${f.background.primary}; } ${Be.mobile} { & { height: auto; grid-template-areas: 'titleSearch systemActions' 'rowActions actions'; } } & .titleSearch { grid-area: titleSearch; position: relative; display: flex; justify-content: space-between; align-items: center; padding-inline-start: 0.5em; gap: 0.5em; } & .separator { position: absolute; right: 0; width: 1px; background-color: ${f.border.primary}; top: 50%; height: ${k(24)}; transform: translateY(-50%); } & .systemActions { grid-area: systemActions; display: flex; justify-content: flex-end; align-items: center; } & .TableActions { position: relative; grid-area: actions; display: flex; justify-content: flex-end; align-items: center; } & .MultiRowActions { position: relative; grid-area: rowActions; display: flex; justify-content: flex-end; align-items: center; } ${Be.mobile} { & .TableActions { position: initial; } & .MultiRowActions { position: initial; justify-content: flex-start; } } & .title { font-weight: 700; max-height: 3.5em; width: 100%; padding-inline-start: 0.5em; text-align: left; text-align: start; } & .Search { width: 100%; } & .titleSearch input { min-height: ${k(32)}; padding: ${h.sm} ${h.md}; } & .titleSearch input::placeholder { font-weight: bold; } `;var Ft=D.div` :root { --reach-menu-button: 1; } [data-reach-menu], [data-reach-menu-popover] { display: block; position: absolute; } [data-reach-menu][hidden], [data-reach-menu-popover][hidden] { display: none; } [data-reach-menu-list], [data-reach-menu-items] { display: block; white-space: nowrap; border: solid 1px ${f.border.primary}; background: hsla(0, 100%, 100%, 0.99); outline: none; overflow: hidden; padding: ${h.sm} 0; font-size: 85%; border-radius: ${q.sm}; box-shadow: 0 2px 8px 0 rgba(0,0,0,0.25); } [data-reach-menu-item] { display: block; user-select: none; /* reach-menu-item */ cursor: pointer; /* a */ display: block; color: inherit; font: inherit; text-decoration: initial; /* both */ padding: ${h.md} ${h.xl}; display: flex; justify-content: space-between; align-items: center; gap: ${h.md}; } /* pseudo pseudo selector */ [data-reach-menu-item][data-selected] { background: ${f.background.selected}; color: ${f.text.selected}; outline: none; } [data-reach-menu-item][aria-disabled] { opacity: 0.5; cursor: not-allowed; } `;var Ao=D.rtui` ${Dt} ${Ct} ${Ft} ${vt} ${kt} ${Rt} ${St} `,Pt=Ao;var zo=(e="")=>{jo(()=>{let t=y("styles"),o=document.getElementById(t),a=document.createElement("style");a.id=t;let n=o||a;return n.innerHTML=e+" "+Pt,o||document.head.insertAdjacentElement("afterbegin",n),()=>{n&&document.head.removeChild(n)}},[e])},$t=zo;var Et=(...e)=>{let t={},o=a=>{for(let n in a)a.hasOwnProperty(n)&&(Object.prototype.toString.call(a[n])==="[object Object]"?t[n]=Et(t[n],a[n]):t[n]=a[n])};for(let a=0;a<e.length;a++)o(e[a]);return t},It=Et;var Pe={default:"#096ED1",lighter:"#F2F9FF",darker:""},Vo={colors:{accent:Pe,text:{primary:"#1a1a1a",secondary:"#404040",disabled:"#808080",inverse:"#ffffff",selected:Pe.default,none:"transparent"},background:{primary:"#ffffff",secondary:"#f7f7f7",disabled:"#eeeeee",selected:Pe.lighter,inverse:"#000000",none:"transparent"},border:{primary:"#bfbfbf",selected:Pe.default,inverse:"#1a1a1a",none:"transparent"}},spacing:{none:0,xs:2,sm:4,md:8,lg:12,xl:16}},Uo=({styleOptions:{roundedCorners:e=!0,theme:t={}}={}})=>{let o=It(Vo,t),a="";Object.entries(o.colors||{}).forEach(([l,d])=>{Object.entries(d||{}).forEach(([g,T])=>{T&&(a+=`--${X}-color-${l}-${g}: ${T}; `)})});let n="",i=!e;Object.entries(o.spacing||{}).forEach(([l,d])=>{d&&(n+=`--${X}-spacing-${l}: ${k(d)}; `,n+=`--${X}-radius-${l}: ${i?0:k(d)}; `)});let p=`:root { ${a} ${n} }`;$t(p)},Ot=Uo;import*as se from"react";var tr=_t(Ht());import*as $ from"react";import{useAsyncDebounce as Jo}from"react-table";import b from"react";function P({name:e}){return b.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:"1em",height:"1em",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",className:"feather-icon"},Xo(e))}function Xo(e){switch(e){case"maximize":case"maximise":return b.createElement("path",{d:"M8 3H5a2 2 0 0 0-2 2v3m18 0V5a2 2 0 0 0-2-2h-3m0 18h3a2 2 0 0 0 2-2v-3M3 16v3a2 2 0 0 0 2 2h3"});case"minimize":case"minimise":return b.createElement("path",{d:"M8 3v3a2 2 0 0 1-2 2H3m18 0h-3a2 2 0 0 1-2-2V3m0 18v-3a2 2 0 0 1 2-2h3M3 16h3a2 2 0 0 1 2 2v3"});case"filter":return b.createElement("polygon",{points:"22 3 2 3 10 12.46 10 19 14 21 14 12.46 22 3"});case"search":return b.createElement(b.Fragment,null,b.createElement("circle",{cx:"11",cy:"11",r:"8"}),b.createElement("line",{x1:"21",y1:"21",x2:"16.65",y2:"16.65"}));case"x":case"close":case"cancel":return b.createElement(b.Fragment,null,b.createElement("line",{x1:"18",y1:"6",x2:"6",y2:"18"}),b.createElement("line",{x1:"6",y1:"6",x2:"18",y2:"18"}));case"chevron-right":return b.createElement("polyline",{points:"9 18 15 12 9 6"});case"chevron-left":return b.createElement("polyline",{points:"15 18 9 12 15 6"});case"chevrons-right":return b.createElement(b.Fragment,null,b.createElement("polyline",{points:"13 17 18 12 13 7"}),b.createElement("polyline",{points:"6 17 11 12 6 7"}));case"chevrons-left":return b.createElement(b.Fragment,null,b.createElement("polyline",{points:"11 17 6 12 11 7"}),b.createElement("polyline",{points:"18 17 13 12 18 7"}));case"sliders":return b.createElement(b.Fragment,null,b.createElement("line",{x1:"4",y1:"21",x2:"4",y2:"14"}),b.createElement("line",{x1:"4",y1:"10",x2:"4",y2:"3"}),b.createElement("line",{x1:"12",y1:"21",x2:"12",y2:"12"}),b.createElement("line",{x1:"12",y1:"8",x2:"12",y2:"3"}),b.createElement("line",{x1:"20",y1:"21",x2:"20",y2:"16"}),b.createElement("line",{x1:"20",y1:"12",x2:"20",y2:"3"}),b.createElement("line",{x1:"1",y1:"14",x2:"7",y2:"14"}),b.createElement("line",{x1:"9",y1:"8",x2:"15",y2:"8"}),b.createElement("line",{x1:"17",y1:"16",x2:"23",y2:"16"}));case"save":return b.createElement(b.Fragment,null,b.createElement("path",{d:"M19 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h11l5 5v11a2 2 0 0 1-2 2z"}),b.createElement("polyline",{points:"17 21 17 13 7 13 7 21"}),b.createElement("polyline",{points:"7 3 7 8 15 8"}));default:return null}}function je(){let e=S(),{globalFilterOptions:t={},title:o="Table",localeOptions:{text:a}={}}=e.tableProps,{rows:n,state:{globalFilter:i},setGlobalFilter:p,flatRows:l,globalFilteredFlatRows:d,globalFilteredRows:g,globalFilteredRowsById:T,preGlobalFilteredFlatRows:x,preGlobalFilteredRows:O,preGlobalFilteredRowsById:F,rowsById:E}=e.tableInstance,{Component:v=_o,disableGlobalFilter:I=!1,defaultVisibleGlobalFilter:L=!1}=t,[R,H]=$.useState(L),M=$.useCallback(()=>H(!0),[]),B=$.useCallback(()=>{p(void 0),H(!1)},[]),w=`${a?.search||"Search"} ${typeof o=="string"?o:""}`;return $.createElement("div",{className:"titleSearch"},R?$.createElement($.Fragment,null,$.createElement(v,{...{globalFilterValue:i,flatRows:l,globalFilteredFlatRows:d,globalFilteredRows:g,globalFilteredRowsById:T,preGlobalFilteredFlatRows:x,preGlobalFilteredRows:O,preGlobalFilteredRowsById:F,rows:n,rowsById:E,setGlobalFilter:p,placeholder:w}}),$.createElement(A,{title:a?.closeSearch||"Close search",onClick:B},$.createElement(P,{name:"x"}))):$.createElement($.Fragment,null,$.createElement("div",{className:"title"},o),!I&&$.createElement(A,{title:w,onClick:M},$.createElement(P,{name:"search"}))),$.createElement("div",{className:"separator"}))}function _o({globalFilterValue:e="",setGlobalFilter:t,placeholder:o}){let a=Jo(n=>{t(n||void 0)},200);return $.createElement("input",{type:"search",value:e,autoFocus:!0,onChange:n=>a(n.target.value),placeholder:o})}import*as $e from"react";function ze(){let{tableProps:e,tableInstance:t}=S(),{state:{filtersVisible:o},toggleFiltersVisible:a}=t,{alwaysShowFilters:n,disableFilters:i,showFiltersActionIndicator:p,hideFiltersActionIndicator:l}=e.filtersOptions||{},d=e.localeOptions?.text;return i||n?null:$e.createElement(A,{onClick:a,title:d?.toggleColumnFilters||(o?d?.hideColumnFilters||"Hide column filters":d?.showColumnFilters||"Show column filters")},o?l||$e.createElement(P,{name:"x"}):p||$e.createElement(P,{name:"filter"}))}import*as be from"react";function Mt(){let e=S(),{actionOptions:{tableActions:t=[]}={}}=e.tableProps;return t.length===0?null:be.createElement("div",{className:"TableActions"},t.map(o=>be.createElement(A,{key:o.id,onClick:()=>o.onClick(e),title:o.tooltip},o.children)),be.createElement("div",{className:"separator"}))}function Nt(){let e=S(),{actionOptions:{multiRowActions:t=[]}={}}=e.tableProps,{selectedFlatRows:o}=e.tableInstance;if(t.length===0)return null;let a=o.map(i=>i.original),n=o.length===0;return be.createElement("div",{className:y("MultiRowActions",n?"disabled":"")},t.map(i=>be.createElement(A,{disabled:n,key:i.id,onClick:()=>i.onClick(a,o),title:i.tooltip},i.children)),be.createElement("div",{className:"separator"}))}import*as K from"react";import{Menu as qo,MenuButton as Ko,MenuList as Qo,MenuItem as Lt}from"@reach/menu-button";import*as ie from"react";var Wo=ie.createElement(P,{name:"maximise"}),Yo=ie.createElement(P,{name:"minimise"});function Ve({tableRef:e,tableProps:t}){let{actionOptions:{fullscreenAction:o=!0}={},localeOptions:{text:a}={}}=t,[n,i]=ie.useState(!1),p=ie.useCallback(()=>{i(!0),e?.current&&e.current.requestFullscreen()},[e]),l=ie.useCallback(()=>{window.document.fullscreenElement&&window.document.exitFullscreen()},[]);ie.useEffect(()=>{let x=()=>{window.document.fullscreenElement||i(!1)};return window.document.addEventListener("fullscreenchange",x),()=>{window.document.removeEventListener("fullscreenchange",x)}});let d=typeof o!="boolean"&&o.enterFullscreenIndicator||Wo,g=typeof o!="boolean"&&o.exitFullscreenIndicator||Yo;return o?{title:a?.toggleFullscreen||"Toggle fullscreen",onClick:n?l:p,children:n?g:d}:null}var Zo=K.createElement(P,{name:"sliders"});function Ue(){let e=S(),{setModal:t}=e.tableInstance,o=e.tableProps.localeOptions?.text,a=Ve(e),n=()=>t({title:o?.tablePreferences||"Table preferences",children:K.createElement("div",null,K.createElement(ea,null))});return K.createElement(qo,null,K.createElement(Ko,{className:"Button RowAction",title:"Table preferences"},K.createElement("div",{className:"button-content"},"\u2022\u2022\u2022")),K.createElement(Qo,null,a&&K.createElement(Lt,{onSelect:()=>a.onClick()},a.children,a.title),K.createElement(Lt,{onSelect:n},Zo,o?.tablePreferences||"Table preferences")))}function ea(){let{tableInstance:e,tableProps:t}=S(),{state:{pageSize:o},setPageSize:a}=e,{locale:n,text:i}=t.localeOptions||{},{pageSizes:p=[10,20,50,75,100,150]}=t.paginationOptions||{};return K.createElement("div",null,i?.pageSize||"Page size",K.createElement("select",{name:"pageSize",defaultValue:o,onChange:l=>a(parseInt(l.target.value,10))},p.map(l=>K.createElement("option",{key:l,value:l},l.toLocaleString(n)))))}function Xe(){let e=S(),{titleBar:t=!0}=e.tableProps.styleOptions||{};return t?se.createElement("div",{className:y("TitleBar")},se.createElement(je,null),se.createElement(Nt,null),se.createElement(Mt,null),se.createElement(ta,null)):se.createElement("div",null)}function ta(){return se.createElement("div",{className:"systemActions"},se.createElement(ze,null),se.createElement(Ue,null))}import*as J from"react";import*as G from"react";function Je(){let e=S(),{tableInstance:t,tableProps:o}=e,{headerGroups:a,state:n}=t,{freezeOptions:i}=o,p=i?.header!==!1,l=a[a.length-1],{filtersVisible:d}=n;return G.createElement("div",{className:y("THead","header",p?"sticky":""),role:"rowgroup"},a.map((g,T)=>G.createElement(na,{key:T,headerGroup:g,...e})),d&&G.createElement(ra,{key:"filterRow",headerGroup:l,...e}))}function oa({column:e}){let t=e.render("Header"),o=typeof t=="string"?t:t?.toString()||"",a=e.getHeaderProps(e.getSortByToggleProps()),n=Se(e),i=e.render("Filter");return G.createElement(ge,{...{...a,onClick:void 0,className:y("th",n?"noSpacing":""),title:o},style:{...a.style,cursor:"initial"}},e.canFilter?G.createElement("div",{className:"Filter"},i):null)}function aa({column:e}){let{tableProps:t}=S(),{disableResizing:o=!1}=t.columnOptions||{},a=ia(t),n=e.render("Header"),i=typeof n=="string"?n:n?.toString()||"",p=e.getHeaderProps(e.getSortByToggleProps()),l=Se(e);return G.createElement(ge,{...{...p,onClick:void 0,className:y("th",l?"noSpacing":""),title:i},style:{...p.style,cursor:"initial"}},G.createElement(G.Fragment,null,n,G.createElement(a,{...e,onClick:e.getSortByToggleProps().onClick,column:e,title:`Sort ${i}`}),!o&&!e.disableResizing&&!l&&G.createElement("div",{...e?.getResizerProps?.(),title:`Resize ${i}`,className:y("resizer",e.isResizing?"isResizing":"")})))}function na(e){let{getHeaderGroupProps:t,headers:o}=e.headerGroup;return G.createElement("div",{...t(),className:y("tr","Row")},o.map(a=>G.createElement(aa,{key:a.getHeaderProps().key||"",column:a})))}function ra(e){let{getHeaderGroupProps:t,headers:o}=e.headerGroup;return G.createElement("div",{...t(),className:y("tr","Row","FilterRow")},o.map(a=>G.createElement(oa,{key:a.getHeaderProps().key||"",column:a})))}function ia(e){let{Component:t,descendingIndicator:o="\u2191",ascendingIndicator:a="\u2193",defaultIndicator:n="\u21C5"}=e.sortByOptions||{};return t||(({canSort:p,isSorted:l,isSortedDesc:d,onClick:g,title:T})=>p?G.createElement("div",{className:"Sort",style:{marginLeft:"8px",cursor:"pointer"},onClick:g,title:T},l?d?o:a:n):null)}import*as ae from"react";function _e(){let e=S(),{rows:t,page:o,getTableBodyProps:a,prepareRow:n,totalColumnsWidth:i}=e.tableInstance;return ae.createElement("div",{className:y("TBody body"),...a()},(o||t).map(p=>(n(p),ae.createElement(ae.Fragment,{key:p.id},ae.createElement(la,{row:p}),p.isExpanded&&ae.createElement(sa,{row:p,totalColumnsWidth:i})))))}function sa({row:e,totalColumnsWidth:t}){let o=e.original.subComponent,a=e.getRowProps();return o?ae.createElement("div",{key:a.key+"_subComponent",className:y("tr subComponent"),style:{minWidth:t+"px",maxWidth:"100%"}},ae.createElement("div",{className:"content"},o)):null}function la({row:e}){let t=e.getRowProps(),o=e.isSelected;return ae.createElement("div",{...t,tabIndex:-1,className:y("tr","Row",o?"selected":"")},e.cells.map(a=>{let n=Se(a.column.id),i=a.render("Cell");return ae.createElement(ge,{...a.getCellProps(),className:n?"systemColumn noSpacing":"",key:a.column.id},i)}))}import*as Ee from"react";function We(){let{tableInstance:e,tableProps:{freezeOptions:t,columns:o}}=S(),a=o?.some(function l(d){return!!d.Footer||!!d.columns?.some(g=>l(g))}),{headerGroups:n}=e,i=n.slice().reverse(),p=t?.footer!==!1;return Ee.createElement("div",{className:y("TFoot","footer",p?"sticky":""),role:"rowgroup"},a&&i.map(l=>l.headers.some(({Footer:g})=>typeof g=="function"?g.name!=="emptyRenderer":!!g)?Ee.createElement("div",{...l.getHeaderGroupProps(),className:y("tr")},l.headers.map(g=>Ee.createElement(ge,{...g.getHeaderProps(),key:g.id},ca(g)))):null))}function ca(e){try{return e.render("Footer")}catch{return null}}import*as ce from"react";var pa=()=>{let e=ce.useRef(null),[t,o]=ce.useState({y:0,x:0}),a=ce.useCallback(()=>{let n=e.current,i={y:n?.scrollTop||0,x:n?.scrollLeft||0};o(i)},[]);return ce.useEffect(()=>(e.current?.addEventListener("scroll",a),()=>e.current?.removeEventListener("scroll",a)),[a]),[e,{scrollPosY:t.y,scrollPosX:t.x}]},Bt=pa;function Ye(e){let{tableInstance:t,tableProps:o}=S(),{className:a=""}=e,{getTableProps:n,rows:i}=t,{loadingOptions:p={},data:l=[],localeOptions:{text:d}={}}=o,{loading:g=!1,Component:T=J.createElement(da,{text:d?.loading}),backgroundLoading:x=!0}=p,O=J.useMemo(()=>x?l.length===0?g:!1:g,[l,g,x]),[F,{scrollPosX:E,scrollPosY:v}]=Bt();return J.createElement("div",{...n(),"aria-rowcount":i.length,className:y("Table","sticky",a,E>0&&"scrollX",v>0&&"scrollY"),ref:F},O?J.createElement(J.Fragment,null,T):J.createElement(J.Fragment,null,J.createElement(Je,null),J.createElement(_e,null),J.createElement(We,null)))}function da({text:e}){return J.createElement("div",{className:"loader"},e||"Loading","...")}import*as N from"react";var ua=({tableProps:e,tableInstance:t})=>{let{loading:o=!1,showLoadingStatus:a=!0}=e.loadingOptions||{},{disablePagination:n=!1,manualPagination:i=!1,recordCount:p}=e.paginationOptions||{},{page:l,rows:d,pageCount:g,selectedFlatRows:T,state:{pageSize:x,pageIndex:O}}=t,F=e.localeOptions?.locale,{loading:E="Loading",noRecords:v="No records",total:I="Total",records:L="records",showing:R="Showing",of:H="of"}=e.localeOptions?.text||{},M=Object.keys(T).length;if(a&&o)return E+"...";let B=[],w="";if(d.length===0)w=v;else if(n)w=`${I} ${d.length.toLocaleString(F)} ${L}`;else{let Q=i?p?.toLocaleString(F)||`~${(g*x).toLocaleString(F)}`:d.length.toLocaleString(F),_=(O*x+1).toLocaleString(F),pe=(i?(O+1)*x:O*x+l.length).toLocaleString(F);w=`${R} ${_}-${pe} ${H} ${Q} ${L}`}return B.push(w),M>0&&B.push(`${M} selected`),B.join(" \u2022 ")},Gt=ua;function qe(){let e=S(),{styleOptions:t,paginationOptions:o,localeOptions:a}=e.tableProps,{statusBar:n=!0}=t||{},{Component:i,firstPageIndicator:p=N.createElement(P,{name:"chevrons-left"}),previousPageIndicator:l=N.createElement(P,{name:"chevron-left"}),nextPageIndicator:d=N.createElement(P,{name:"chevron-right"}),lastPageIndicator:g=N.createElement(P,{name:"chevrons-right"})}=o||{},{locale:T,text:x={}}=a||{},O=Gt(e),{page:F,canPreviousPage:E,canNextPage:v,pageOptions:I,pageCount:L,gotoPage:R,nextPage:H,previousPage:M,setPageSize:B,state:{pageIndex:w,pageSize:Q}}=e.tableInstance,_=!!e.tableProps.loadingOptions?.loading,pe=I.length>1;return n?N.createElement("div",{className:y("StatusBar",_?"loading":"")},O&&N.createElement("div",{className:"Status"},O),N.createElement("div",{className:"spacer"}),pe?i?N.createElement(i,{...{page:F,canPreviousPage:E,canNextPage:v,pageOptions:I,pageCount:L,gotoPage:R,nextPage:H,previousPage:M,setPageSize:B,pageIndex:w,pageSize:Q,loading:_}}):N.createElement("div",{className:"Pagination"},N.createElement(A,{onClick:()=>R(0),disabled:!E,title:x.firstPage||"First page"},p),N.createElement(A,{onClick:M,disabled:!E,title:x.previousPage||"Previous page"},l),N.createElement("div",null,N.createElement("span",null,x.page||"Page"),N.createElement("input",{type:"number",value:(w+1).toLocaleString(T),onChange:re=>{let ye=re.target.value?Number(re.target.value)-1:0;R(ye)},style:{width:"60px"},disabled:I.length<=1}),N.createElement("span",null,x.of||"of"," ",I.length.toLocaleString(T))),N.createElement(A,{onClick:H,disabled:!v,title:x.nextPage||"Next page"},d),N.createElement(A,{onClick:()=>R(L-1),disabled:!v,title:x.lastPage||"Last page"},g)):null):null}import*as te from"react";import*as j from"react";var ma=["button","[href]","input","select","textarea",'[tabindex]:not([tabindex="-1"])'];function Ke({element:e="div",selectors:t=[],autoFocusFirstElement:o,children:a,...n}){let i=j.useRef(null),p=j.useRef(),l=j.useRef();return j.useEffect(()=>{let g=i.current?.querySelectorAll([...ma,...t].join(", "));p.current=g?.item(0),l.current=g?.item(g.length-1)},[i.current,a,t]),fa(p,l,o),j.createElement(e,{...n,ref:i},a)}function fa(e,t,o=!0){let a=e.current,n=t.current,i=ga(e,{}),p=j.useCallback(l=>{let d=l.key==="Tab",g=l.shiftKey;if(!a){console.warn("No element found with firstElementRef.");return}if(!n){console.warn("No element found with lastElementRef");return}d&&g&&document.activeElement===a&&(l.preventDefault(),n.focus()),d&&!g&&document.activeElement===n&&(l.preventDefault(),a.focus())},[a,n]);j.useEffect(()=>(document.addEventListener("keydown",p),()=>document.removeEventListener("keydown",p)),[p]),j.useEffect(()=>{o&&i&&a&&a.focus()},[o,i])}function ga(e,t,o=960){let[a,n]=j.useState(!1);return j.useEffect(()=>{if(window.innerWidth>=o){let i=new IntersectionObserver(([p])=>{n(p.isIntersecting)},t);return e.current&&i.observe(e.current),()=>{e.current&&i.unobserve(e.current)}}},[e,t]),a}function Qe(){let e=S(),{state:{modal:t},resetModal:o}=e.tableInstance,a=e.tableProps.localeOptions?.text,n=()=>{t?.onSave&&t.onSave(),o()};return t?te.createElement("div",{className:"Modal-Wrapper",onClick:o},te.createElement(Ke,{className:"Modal",onClick:i=>i.stopPropagation()},te.createElement("div",{className:"TitleBar"},t.title,te.createElement("div",null,t.onSave&&te.createElement(A,{onClick:n},te.createElement("div",{className:"iconWithLabel"},te.createElement(P,{name:"save"}),te.createElement("div",null,a?.save||"Save"))),te.createElement(A,{onClick:o},te.createElement(P,{name:"x"})))),te.createElement("div",{className:"Modal-Content"},t.children))):null}function Ze({tableInstanceRef:e,...t}){let o=ne.useRef(null);Ot(t);let a=yt(t,o);ne.useImperativeHandle(e,()=>a.tableInstance);let{borderless:n=!1}=a.tableProps.styleOptions||{};return ne.createElement(Oe.Provider,{value:a},ne.createElement("div",{ref:o,className:y(X,n?"":"withBorder")},ne.createElement(Xe,null),ne.createElement(Ye,null),ne.createElement(qe,null),ne.createElement(Qe,null)))}var Hi=Ze;export{Hi as default};