UNPKG

@gsretail.com/gui-core

Version:

A skeleton to create your own React component library using Rollup, TypeScript, Sass and Storybook

2 lines (1 loc) 1.89 kB
import{__rest as e,__assign as t,__spreadArray as i}from"tslib";import l from"react";import{TableHead as r}from"@mui/material";import{GuiCheckbox as o}from"../../Checkbox/GuiCheckbox.js";import n from"./styled.js";import"@mui/material/styles";import a from"../../../assets/theme/basicStyle.js";import d from"../GuiTableRow/GuiTableRow.js";import m from"../GuiTableCell/GuiTableCell.js";import c from"../GuiTableLabel/GuiTableFilterLabel/GuiTableFilterLabel.js";import s from"../GuiTableLabel/GuiTableSortLabel/GuiTableSortLabel.js";var u=n((function(n){var u=n.backgroundColor,b=n.headCells,f=n.numSelected,h=n.onSelectAllClick,p=n.onRequestSort,C=n.order,v=n.orderBy,G=n.rowCount,k=n.filters,S=n.setFilters;n.resize;var T=e(n,["backgroundColor","headCells","numSelected","onSelectAllClick","onRequestSort","order","orderBy","rowCount","filters","setFilters","resize"]),g=function(e,t){var l=k.findIndex((function(t){return t.filterId===e})),r={filterId:e,value:t};S(-1===l?i(i([],k,!0),[r],!1):i(""===t?i([],k.slice(0,l),!0):i(i([],k.slice(0,l),!0),[r],!1),k.slice(l+1),!0))};return l.createElement(r,t({style:{backgroundColor:u||a.color.grey50}},T),T.children?T.children:l.createElement(d,null,h?l.createElement(m,{width:40,minWidth:40},l.createElement(o,{indeterminate:f>0&&f<G,checked:G>0&&f===G,onChange:h})):null,null==b?void 0:b.map((function(e){var t,i=null==k?void 0:k.some((function(t){return t.filterId===e.id}));return l.createElement(m,{key:e.id,align:e.align?e.align:"center",sx:{width:e.width&&e.width,minWidth:e.minWidth&&e.minWidth},sortDirection:v===e.id&&C},e.isFilter?l.createElement(c,{isActived:i,filterId:e.id,updateFilters:g}):null,e.isSort?l.createElement(s,{active:v===e.id,direction:v===e.id?C:"asc",onClick:(t=e.id,function(e){p(e,t)})},e.label):l.createElement("span",{style:{verticalAlign:"middle"}},e.label))}))))}));u.defaultProps={};export{u as default};