{"version":3,"sources":["../../../src/theme/components/data-display.ts"],"sourcesContent":["/**\n * Data display component overrides: avatars, badges, chips, ratings, tables.\n * @see https://mui.com/material-ui/components/avatars/\n * @see https://mui.com/material-ui/components/badges/\n * @see https://mui.com/material-ui/components/chips/\n * @see https://mui.com/material-ui/components/rating/\n * @see https://mui.com/material-ui/components/tables/\n */\nimport varnishTokens from '@allenai/varnish-theme/mui';\nimport type { Components, Theme } from '@mui/material';\n\nexport const dataDisplayComponents: Components<Omit<Theme, 'components'>> = {\n    MuiAvatar: {\n        styleOverrides: {\n            root: ({ theme }) => {\n                const { palette } = theme.vars ?? theme;\n                return {\n                    width: '2rem',\n                    height: '2rem',\n                    fontSize: varnishTokens.font.size.md.value,\n                    cursor: 'pointer',\n                    backgroundColor: palette.default.main,\n                    color: palette.default.contrastText,\n                };\n            },\n            rounded: {\n                borderRadius: varnishTokens.radii.sm.value,\n            },\n        },\n        variants: [\n            {\n                props: { size: 'small' },\n                // we don't have a font size this small in the theme, consider adding xs? .75rem\n                style: { width: '1.5rem', height: '1.5rem', fontSize: '0.75rem' },\n            },\n            {\n                props: { size: 'large' },\n                style: {\n                    width: '2.25rem',\n                    height: '2.25rem',\n                    fontSize: varnishTokens.font.size.lg.value,\n                },\n            },\n            {\n                props: { shape: 'square' },\n                style: { borderRadius: varnishTokens.radii.sm.value },\n            },\n            {\n                props: { shape: 'circle' },\n                style: ({ theme }) => ({\n                    borderRadius: theme.shape.borderRadiusFull,\n                }),\n            },\n            {\n                props: { color: 'primary' },\n                style: ({ theme }) => {\n                    const { palette } = theme.vars ?? theme;\n                    return {\n                        backgroundColor: palette.primary.main,\n                        color: palette.primary.contrastText,\n                    };\n                },\n            },\n            {\n                props: { color: 'secondary' },\n                style: ({ theme }) => {\n                    const { palette } = theme.vars ?? theme;\n                    return {\n                        backgroundColor: palette.secondary.main,\n                        color: palette.secondary.contrastText,\n                    };\n                },\n            },\n            {\n                props: { color: 'tertiary' },\n                style: ({ theme }) => {\n                    const { palette } = theme.vars ?? theme;\n                    return {\n                        backgroundColor: palette.tertiary.main,\n                        color: palette.tertiary.contrastText,\n                    };\n                },\n            },\n            {\n                props: { color: 'default' },\n                style: ({ theme }) => {\n                    const { palette } = theme.vars ?? theme;\n                    return {\n                        backgroundColor: palette.default.main,\n                        color: palette.default.contrastText,\n                    };\n                },\n            },\n        ],\n    },\n    MuiBadge: {\n        styleOverrides: {\n            root: { textTransform: 'none' },\n        },\n        variants: [\n            {\n                props: { color: 'tertiary' },\n                style: ({ theme }) => ({\n                    span: { color: (theme.vars ?? theme).palette.tertiary.main },\n                }),\n            },\n        ],\n    },\n    MuiChip: {\n        styleOverrides: {\n            root: {\n                borderRadius: varnishTokens.radii.full.value,\n                // Transparent border on all chips so filled and outlined share identical dimensions\n                border: '1px solid transparent',\n                '&.Mui-disabled': {\n                    cursor: 'not-allowed',\n                    pointerEvents: 'auto',\n                },\n            },\n            labelSmall: { padding: '0 13px' },\n            labelMedium: { padding: '0 15px' },\n            deleteIcon: { fontSize: varnishTokens.sizes.icon.sm.value },\n            sizeSmall: {\n                height: '2rem',\n                fontSize: varnishTokens.font.size.sm.value,\n            },\n            sizeMedium: {\n                height: '2.25rem',\n                fontSize: varnishTokens.font.size.sm.value,\n            },\n        },\n        variants: [\n            {\n                props: { variant: 'filled', color: 'tertiary' },\n                style: ({ theme }) => {\n                    const { palette } = theme.vars ?? theme;\n                    return {\n                        backgroundColor: palette.tertiary.main,\n                        color: palette.tertiary.contrastText,\n                        '&:hover': { backgroundColor: palette.tertiary.hovered?.fill },\n                    };\n                },\n            },\n            {\n                props: { variant: 'outlined', color: 'tertiary' },\n                style: ({ theme }) => {\n                    const { palette } = theme.vars ?? theme;\n                    return {\n                        color: palette.tertiary.main,\n                        borderColor: palette.tertiary.main,\n                        '&:hover': { borderColor: palette.tertiary.hovered?.stroke },\n                    };\n                },\n            },\n            {\n                props: { variant: 'filled', color: 'default' },\n                style: ({ theme }) => {\n                    const { palette } = theme.vars ?? theme;\n                    return {\n                        backgroundColor: palette.default.main,\n                        color: palette.default.contrastText,\n                        '&:hover': { backgroundColor: palette.default.hovered?.fill },\n                    };\n                },\n            },\n            {\n                props: { variant: 'outlined', color: 'default' },\n                style: ({ theme }) => {\n                    const { palette } = theme.vars ?? theme;\n                    return {\n                        color: palette.default.main,\n                        borderColor: palette.default.main,\n                        '&:hover': { borderColor: palette.default.hovered?.stroke },\n                    };\n                },\n            },\n            {\n                props: { size: 'xsmall' },\n                style: {\n                    height: '1.5rem',\n                    fontSize: '12px', // we don't have a font size this small in the theme, consider adding xs? .75rem\n                    '& .MuiChip-label': { padding: '0 7px' },\n                    '& .MuiChip-deleteIcon': { fontSize: varnishTokens.sizes.icon.xs.value },\n                },\n            },\n            {\n                props: { size: 'large' },\n                style: {\n                    height: '3rem',\n                    fontSize: varnishTokens.font.size.md.value,\n                    '& .MuiChip-label': { padding: '0 21px' },\n                    '& .MuiChip-deleteIcon': { fontSize: varnishTokens.sizes.icon.lg.value },\n                },\n            },\n            {\n                props: { shape: 'box' },\n                style: { borderRadius: varnishTokens.radii.sm.value },\n            },\n        ],\n    },\n    MuiRating: {\n        styleOverrides: {\n            root: ({ theme }) => ({\n                color: (theme.vars ?? theme).palette.primary.main,\n            }),\n        },\n    },\n    MuiTableCell: {\n        styleOverrides: {\n            root: { fontSize: varnishTokens.font.size.sm.value },\n        },\n    },\n    MuiTableContainer: {\n        styleOverrides: {\n            root: ({ theme }) => ({\n                borderRadius: varnishTokens.radii.sm.value,\n                backgroundColor: (theme.vars ?? theme).palette.background.default,\n            }),\n        },\n    },\n};\n"],"mappings":"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","names":["varnishTokens"]}