WEB APP: Доработаны базовые компоненты -P8PTable - толерантность к пустым группам, P8PanelsMenu - косметика в представлении для интеграции в рабочий стол

This commit is contained in:
Mikhail Chechnev 2024-02-26 13:15:40 +03:00
parent 12bb34b0e2
commit 7a10363a2b
2 changed files with 18 additions and 6 deletions

View File

@ -61,9 +61,18 @@ const STYLES = {
GRID_PANEL_CARD_CONTENT_TITLE: { alignItems: "center" },
GRID_PANEL_CARD_ACTIONS: { marginTop: "auto", display: "flex", justifyContent: "flex-end", alignItems: "flex-start" },
DESKTOP_GROUP_HEADER: { fontWeight: "bold", fontFamily: "tahoma, arial, verdana, sans-serif!important", fontSize: "13px!important" },
DESKTOP_ITEM_BUTTON: { fontSize: "12px", textTransform: "none", "&:hover": { backgroundColor: "#c3e1ff" } },
DESKTOP_ITEM_STACK: { justifyContent: "center", alignItems: "center" },
DESKTOP_ITEM_ICON: { width: "64px", height: "64px", fontSize: "64px" }
DESKTOP_ITEM_BUTTON: { fontSize: "12px", textTransform: "none", "&:hover": { backgroundColor: "#c3e1ff" }, maxWidth: "150px" },
DESKTOP_ITEM_STACK: { justifyContent: "center", alignItems: "center", fontSize: "12px" },
DESKTOP_ITEM_ICON: { width: "48px", height: "48px", fontSize: "48px" },
DESKTOP_ITEM_CATION: {
display: "-webkit-box",
overflow: "hidden",
WebkitBoxOrient: "vertical",
WebkitLineClamp: 2,
fontSize: "12px",
maxWidth: "140px",
lineHeight: "1.2"
}
};
//--------------------------------
@ -153,10 +162,13 @@ const getPanelsLinks = ({ variant, panels, selectedPanel, group, defaultGroupTyt
key={panel.name}
onClick={() => (onItemNavigate ? onItemNavigate(panel) : null)}
sx={STYLES.DESKTOP_ITEM_BUTTON}
title={panel.caption}
>
<Stack sx={STYLES.DESKTOP_ITEM_STACK}>
<Icon sx={STYLES.DESKTOP_ITEM_ICON}>{panel.icon}</Icon>
<Typography sx={STYLES.DESKTOP_ITEM_CATION} variant="body1">
{panel.caption}
</Typography>
</Stack>
</Button>
)

View File

@ -455,7 +455,7 @@ P8PTableFiltersChips.propTypes = {
//Таблица
const P8PTable = ({
columnsDef,
groups = [{}],
groups,
rows,
orders,
filters,
@ -744,7 +744,7 @@ const P8PTable = ({
</TableHead>
<TableBody>
{rows.length > 0
? groups.map((group, g) => {
? (Array.isArray(groups) && groups.length > 0 ? groups : [{}]).map((group, g) => {
const rowsView = rows.map((row, i) =>
!group?.name || group?.name == row.groupName ? (
<React.Fragment key={`data-${i}`}>