@iobroker/gui-components 10.2.2 → 10.2.3
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.
package/README.md
CHANGED
|
@@ -36,7 +36,7 @@ npm create vite@latest src -- --template react-ts
|
|
|
36
36
|
"dependencies": {
|
|
37
37
|
"@emotion/react": "^11.14.0",
|
|
38
38
|
"@emotion/styled": "^11.14.1",
|
|
39
|
-
"@iobroker/gui-components": "^10.2.
|
|
39
|
+
"@iobroker/gui-components": "^10.2.3",
|
|
40
40
|
"@mui/icons-material": "^9.0.1",
|
|
41
41
|
"@mui/material": "^9.0.1",
|
|
42
42
|
"react": "^19.2.5",
|
|
@@ -877,6 +877,10 @@ You can find the migration instructions:
|
|
|
877
877
|
-->
|
|
878
878
|
|
|
879
879
|
## Changelog
|
|
880
|
+
### 10.2.3 (2026-09-04)
|
|
881
|
+
|
|
882
|
+
- (@GermanBluefox) Fixed: Expert button highlighted in the object browser
|
|
883
|
+
|
|
880
884
|
### 10.2.2 (2026-09-03)
|
|
881
885
|
|
|
882
886
|
- (@GermanBluefox) Fixed: the object browser lost the column widths as soon as the page was left and opened again. Every width class has its own widths, and the stored ones were written into the class that was guessed before the container was measured, so the table fell back to the defaults of the class it really had: https://github.com/ioBroker/ioBroker.admin/issues/3616
|
|
@@ -118,7 +118,9 @@ export function getToolbar(that) {
|
|
|
118
118
|
React.createElement(IconButton, { onClick: () => that.refreshComponent(), disabled: that.state.updating, size: "large" },
|
|
119
119
|
React.createElement(RefreshIcon, null)))),
|
|
120
120
|
that.props.showExpertButton && !that.props.expertMode && (React.createElement(Tooltip, { title: that.props.t('ra_expertMode'), slotProps: { popper: { sx: styles.tooltip } } },
|
|
121
|
-
React.createElement(IconButton, { key: "expertMode",
|
|
121
|
+
React.createElement(IconButton, { key: "expertMode", sx: (theme) => ({
|
|
122
|
+
color: that.state.filter.expertMode ? theme.palette.expert : undefined,
|
|
123
|
+
}), onClick: () => {
|
|
122
124
|
const filter = { ...that.state.filter };
|
|
123
125
|
filter.expertMode = !filter.expertMode;
|
|
124
126
|
that.localStorage.setItem(`${that.props.dialogName || 'App'}.objectFilter`, JSON.stringify(filter));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"toolbar.js","sourceRoot":"./src/","sources":["Components/ObjectBrowser/toolbar.tsx"],"names":[],"mappings":"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","sourcesContent":["/**\n * Copyright 2020-2026, Denis Haev <dogafox@gmail.com>\n *\n * MIT License\n *\n * Part of the object browser, see ./ObjectBrowserClass.tsx\n */\nimport React, { type JSX } from 'react';\nimport { Badge, Box, IconButton, ListItemIcon, ListItemText, Menu, MenuItem, type Theme, Tooltip } from '@mui/material';\nimport {\n Add as AddIcon,\n Build as BuildIcon,\n Close as IconClose,\n LooksOne as LooksOneIcon,\n Publish as PublishIcon,\n Refresh as RefreshIcon,\n TextFields as TextFieldsIcon,\n ViewColumn as IconColumns,\n ContentPaste,\n UploadFile,\n} from '@mui/icons-material';\nimport { Utils } from '../Utils';\nimport { IconExpert } from '../../icons/IconExpert';\nimport { IconClosed } from '../../icons/IconClosed';\nimport { IconOpen } from '../../icons/IconOpen';\nimport { IconClearFilter } from '../../icons/IconClearFilter';\nimport { Icon } from '../Icon';\nimport {\n colGrow,\n colWidth,\n CustomFilterInput,\n CustomFilterSelect,\n getName,\n getSelectIdIconFromObjects,\n getVisibleItems,\n} from './utils';\nimport { type InputSelectItem } from './types';\nimport { styles } from './styles';\nimport { ITEM_IMAGES } from './constants';\nimport type { ObjectBrowserClass } from './ObjectBrowserClass';\n\nexport function getFilterInput(that: ObjectBrowserClass, name: 'id' | 'name'): JSX.Element {\n return (\n <CustomFilterInput\n key={`${name}_${that.state.filterKey}`}\n styles={that.styles.filterInput}\n name={name}\n texts={that.texts}\n t={that.props.t}\n initialValue={that.state.filter[name]}\n onChange={(name, value) => {\n const filter = { ...that.state.filter };\n if (value === undefined) {\n delete filter[name];\n } else {\n filter[name] = value;\n }\n that.setState({ filter }, () => {\n that.doFilter();\n that.props.onFilterChanged?.(filter);\n });\n }}\n />\n );\n}\n\nexport function getFilterSelect(\n that: ObjectBrowserClass,\n name: 'room' | 'func' | 'type' | 'custom' | 'role',\n values?: (string | InputSelectItem)[],\n): JSX.Element {\n return (\n <CustomFilterSelect\n key={`${name}_${that.state.filterKey}`}\n name={name}\n texts={that.texts}\n initialValue={that.state.filter[name] || []}\n values={values || []}\n onChange={(name, value) => {\n const filter = { ...that.state.filter };\n if (value === undefined) {\n delete filter[name];\n } else {\n filter[name] = value;\n }\n that.setState({ filter }, () => {\n that.doFilter();\n that.props.onFilterChanged?.(filter);\n });\n }}\n />\n );\n}\n\nexport function getFilterSelectRole(that: ObjectBrowserClass): JSX.Element {\n return getFilterSelect(\n that,\n 'role',\n that.info.roles.map(it => it.role),\n );\n}\n\nexport function getFilterSelectRoom(that: ObjectBrowserClass): JSX.Element {\n const rooms: InputSelectItem[] = that.info.roomEnums.map(\n id =>\n ({\n name: getName(that.objects[id]?.common?.name, that.props.lang) || id.split('.').pop(),\n value: id,\n icon: (\n <Icon\n src={that.objects[id]?.common?.icon || ''}\n style={styles.selectIcon}\n />\n ),\n }) as InputSelectItem,\n );\n\n return getFilterSelect(that, 'room', rooms);\n}\n\nexport function getFilterSelectFunction(that: ObjectBrowserClass): JSX.Element {\n const func: InputSelectItem[] = that.info.funcEnums.map(\n id =>\n ({\n name: getName(that.objects[id]?.common?.name, that.props.lang) || id.split('.').pop(),\n value: id,\n icon: (\n <Icon\n src={that.objects[id]?.common?.icon || ''}\n style={styles.selectIcon}\n />\n ),\n }) as InputSelectItem,\n );\n\n return getFilterSelect(that, 'func', func);\n}\n\nexport function getFilterSelectType(that: ObjectBrowserClass): JSX.Element {\n const types = that.info.types.map(type => ({\n name: type,\n value: type,\n icon: ITEM_IMAGES[type] || null,\n }));\n\n return getFilterSelect(that, 'type', types);\n}\n\nexport function getFilterSelectCustoms(that: ObjectBrowserClass): JSX.Element | null {\n if (that.info.customs.length > 1) {\n const customs = that.info.customs.map(id => ({\n name: id === '_' ? that.texts.filterCustomsWithout : id,\n value: id,\n icon:\n id === '_' ? null : (\n <Icon\n src={getSelectIdIconFromObjects(that.objects, id, that.props.lang, that.imagePrefix) || ''}\n style={styles.selectIcon}\n />\n ),\n }));\n return getFilterSelect(that, 'custom', customs);\n }\n return null;\n}\n\n/**\n * Renders the toolbar.\n */\nexport function getToolbar(that: ObjectBrowserClass): JSX.Element {\n let allowObjectCreation = false;\n if (that.state.selected.length || that.state.selectedNonObject) {\n const id = that.state.selected[0] || that.state.selectedNonObject;\n\n if (id.split('.').length < 2 || (that.objects[id] && that.objects[id].type === 'state')) {\n allowObjectCreation = false;\n } else if (that.state.filter.expertMode) {\n allowObjectCreation = true;\n } else if (id.startsWith('alias.0') || id.startsWith('0_userdata')) {\n allowObjectCreation = true;\n }\n }\n\n return (\n <div\n style={{\n display: 'flex',\n width: '100%',\n alignItems: 'center',\n overflowX: 'auto',\n }}\n >\n <div\n style={{\n display: 'flex',\n width: '100%',\n alignItems: 'center',\n }}\n >\n <Tooltip\n title={that.props.t('ra_Refresh tree')}\n slotProps={{ popper: { sx: styles.tooltip } }}\n >\n <div>\n <IconButton\n onClick={() => that.refreshComponent()}\n disabled={that.state.updating}\n size=\"large\"\n >\n <RefreshIcon />\n </IconButton>\n </div>\n </Tooltip>\n {that.props.showExpertButton && !that.props.expertMode && (\n <Tooltip\n title={that.props.t('ra_expertMode')}\n slotProps={{ popper: { sx: styles.tooltip } }}\n >\n <IconButton\n key=\"expertMode\"\n color={that.state.filter.expertMode ? 'secondary' : 'default'}\n onClick={() => {\n const filter = { ...that.state.filter };\n filter.expertMode = !filter.expertMode;\n that.localStorage.setItem(\n `${that.props.dialogName || 'App'}.objectFilter`,\n JSON.stringify(filter),\n );\n\n that.setState({\n filter,\n });\n }}\n size=\"large\"\n >\n <IconExpert />\n </IconButton>\n </Tooltip>\n )}\n {!that.props.disableColumnSelector && that.width !== 'xs' && (\n <Tooltip\n title={that.props.t('ra_Configure')}\n slotProps={{ popper: { sx: styles.tooltip } }}\n >\n <IconButton\n key=\"columnSelector\"\n color={that.state.columnsAuto ? 'primary' : 'default'}\n onClick={() => that.setState({ columnsSelectorShow: true })}\n size=\"large\"\n >\n <IconColumns />\n </IconButton>\n </Tooltip>\n )}\n {that.width !== 'xs' && that.state.expandAllVisible && (\n <Tooltip\n title={that.props.t('ra_Expand all nodes')}\n slotProps={{ popper: { sx: styles.tooltip } }}\n >\n <IconButton\n key=\"expandAll\"\n onClick={() => that.onExpandAll()}\n size=\"large\"\n >\n <IconOpen />\n </IconButton>\n </Tooltip>\n )}\n <Tooltip\n title={that.props.t('ra_Collapse all nodes')}\n slotProps={{ popper: { sx: styles.tooltip } }}\n >\n <IconButton\n key=\"collapseAll\"\n onClick={() => that.onCollapseAll()}\n size=\"large\"\n >\n <IconClosed />\n </IconButton>\n </Tooltip>\n {that.width !== 'xs' && (\n <Tooltip\n title={that.props.t('ra_Expand one step node')}\n slotProps={{ popper: { sx: styles.tooltip } }}\n >\n <IconButton\n key=\"expandVisible\"\n color=\"primary\"\n onClick={() => that.onExpandVisible()}\n size=\"large\"\n >\n <Badge\n badgeContent={that.state.depth}\n color=\"secondary\"\n sx={(theme: Theme) => ({\n badge: {\n right: 3,\n top: 3,\n border: `2px solid ${theme.palette.background.paper}`,\n padding: '0 4px',\n },\n })}\n >\n <IconOpen />\n </Badge>\n </IconButton>\n </Tooltip>\n )}\n {that.width !== 'xs' && (\n <Tooltip\n title={that.props.t('ra_Collapse one step node')}\n slotProps={{ popper: { sx: styles.tooltip } }}\n >\n <IconButton\n key=\"collapseVisible\"\n color=\"primary\"\n onClick={() => that.onCollapseVisible()}\n size=\"large\"\n >\n <Badge\n sx={(theme: Theme) => ({\n badge: {\n right: 3,\n top: 3,\n border: `2px solid ${theme.palette.background.paper}`,\n padding: '0 4px',\n },\n })}\n badgeContent={that.state.depth}\n color=\"secondary\"\n >\n <IconClosed />\n </Badge>\n </IconButton>\n </Tooltip>\n )}\n {that.props.objectStatesView && (\n <Tooltip\n title={that.props.t('ra_Toggle the states view')}\n slotProps={{ popper: { sx: styles.tooltip } }}\n >\n <IconButton\n onClick={() => that.onStatesViewVisible()}\n size=\"large\"\n >\n <LooksOneIcon color={that.state.statesView ? 'primary' : 'inherit'} />\n </IconButton>\n </Tooltip>\n )}\n\n <Tooltip\n title={that.props.t('ra_Show/Hide object descriptions')}\n slotProps={{ popper: { sx: styles.tooltip } }}\n >\n <IconButton\n onClick={() => {\n that.localStorage.setItem(\n `${that.props.dialogName || 'App'}.desc`,\n that.state.showDescription ? 'false' : 'true',\n );\n that.setState({ showDescription: !that.state.showDescription });\n }}\n size=\"large\"\n >\n <TextFieldsIcon color={that.state.showDescription ? 'primary' : 'inherit'} />\n </IconButton>\n </Tooltip>\n\n {that.props.objectAddBoolean ? (\n <Tooltip\n title={that.toolTipObjectCreating()}\n slotProps={{ popper: { sx: styles.tooltip } }}\n >\n <div>\n <IconButton\n disabled={!allowObjectCreation}\n onClick={() =>\n that.setState({\n modalNewObj: {\n id: that.state.selected[0] || that.state.selectedNonObject,\n },\n })\n }\n size=\"large\"\n >\n <AddIcon />\n </IconButton>\n </div>\n </Tooltip>\n ) : null}\n\n {that.props.objectImportExport && (\n <Tooltip\n title={that.props.t('ra_Add objects tree from JSON file')}\n slotProps={{ popper: { sx: styles.tooltip } }}\n >\n <IconButton\n onClick={e => {\n if (that.props.objectBrowserInsertJsonObjects) {\n that.setState({ showImportMenu: e.currentTarget });\n } else {\n that.onOpenFile();\n }\n }}\n size=\"large\"\n >\n <PublishIcon />\n </IconButton>\n </Tooltip>\n )}\n {that.props.objectBrowserInsertJsonObjects ? (\n <Menu\n anchorEl={that.state.showImportMenu}\n open={!!that.state.showImportMenu}\n onClose={() => that.setState({ showImportMenu: null })}\n >\n <MenuItem onClick={() => that.setState({ showImportMenu: null }, () => that.onOpenFile())}>\n <ListItemIcon>\n <UploadFile />\n </ListItemIcon>\n <ListItemText>{that.props.t('ra_From file')}</ListItemText>\n </MenuItem>\n <MenuItem onClick={() => that.setState({ showImportMenu: null, showImportDialog: true })}>\n <ListItemIcon>\n <ContentPaste />\n </ListItemIcon>\n <ListItemText>{that.props.t('ra_From text')}</ListItemText>\n </MenuItem>\n </Menu>\n ) : null}\n {that.props.objectImportExport && (!!that.state.selected.length || that.state.selectedNonObject) && (\n <Tooltip\n title={that.props.t('ra_Save objects tree as JSON file')}\n slotProps={{ popper: { sx: styles.tooltip } }}\n >\n <IconButton\n onClick={() => that.setState({ showExportDialog: that._getSelectedIdsForExport().length })}\n size=\"large\"\n >\n <PublishIcon style={{ transform: 'rotate(180deg)' }} />\n </IconButton>\n </Tooltip>\n )}\n </div>\n {!!that.props.objectBrowserEditObject && that.width !== 'xs' && (\n <div style={{ display: 'flex', whiteSpace: 'nowrap' }}>\n {`${that.props.t('ra_Objects')}: ${Object.keys(that.info.objects).length}, ${that.props.t(\n 'ra_States',\n )}: ${Object.keys(that.info.objects).filter(el => that.info.objects[el].type === 'state').length}`}\n </div>\n )}\n {that.props.objectEditBoolean && (\n <Tooltip\n title={that.props.t('ra_Edit custom config')}\n slotProps={{ popper: { sx: styles.tooltip } }}\n >\n <IconButton\n onClick={() => {\n // get all visible states\n const ids = that.root ? getVisibleItems(that.root, 'state', that.objects) : [];\n\n if (ids.length) {\n that.pauseSubscribe(true);\n\n if (ids.length === 1) {\n that.localStorage.setItem(\n `${that.props.dialogName || 'App'}.objectSelected`,\n that.state.selected[0],\n );\n that.props.router?.doNavigate(null, 'custom', that.state.selected[0]);\n }\n that.setState({ customDialog: ids, customDialogAll: true });\n } else {\n that.setState({ toast: that.props.t('ra_please select object') });\n }\n }}\n size=\"large\"\n >\n <BuildIcon />\n </IconButton>\n </Tooltip>\n )}\n </div>\n );\n}\n\n/**\n * Render the right handle for resizing\n */\nexport function renderHandleRight(that: ObjectBrowserClass): JSX.Element {\n return (\n <Box\n component=\"div\"\n className=\"iob-ob-resize-handler\"\n sx={{ ...styles.resizeHandle, ...styles.resizeHandleRight }}\n onMouseDown={that.resizerMouseDown}\n onDoubleClick={that.resizerReset}\n title={that.props.t('ra_Double click to reset table layout')}\n />\n );\n}\n\nexport function renderHeader(that: ObjectBrowserClass): JSX.Element {\n let filterClearInValue = null;\n\n if (!that.columnsVisibility.buttons && !that.isFilterEmpty()) {\n filterClearInValue = (\n <IconButton\n onClick={() => that.clearFilter()}\n style={styles.buttonClearFilter}\n title={that.props.t('ra_Clear filter')}\n size=\"large\"\n >\n <IconClearFilter />\n <IconClose style={styles.buttonClearFilterIcon} />\n </IconButton>\n );\n }\n\n if (that.width === 'xs') {\n return (\n <div style={Utils.getStyle(that.props.theme, styles.headerRow)}>\n <div style={{ ...styles.headerCell, width: '100%' }}>{getFilterInput(that, 'id')}</div>\n </div>\n );\n }\n\n return (\n <div style={Utils.getStyle(that.props.theme, styles.headerRow)}>\n <div\n style={{ ...styles.headerCell, width: colWidth('id'), flexGrow: colGrow('id'), position: 'relative' }}\n data-min={240}\n data-name=\"id\"\n >\n {getFilterInput(that, 'id')}\n {renderHandleRight(that)}\n </div>\n {that.columnsVisibility.name ? (\n <div\n style={{\n ...styles.headerCell,\n width: colWidth('name'),\n flexGrow: colGrow('name'),\n position: 'relative',\n }}\n data-min={100}\n data-name=\"name\"\n >\n {getFilterInput(that, 'name')}\n {renderHandleRight(that)}\n </div>\n ) : null}\n {!that.state.statesView && (\n <>\n {that.columnsVisibility.type ? (\n <div\n style={{\n ...styles.headerCell,\n width: colWidth('type'),\n position: 'relative',\n }}\n data-min={100}\n data-name=\"type\"\n >\n {getFilterSelectType(that)}\n {renderHandleRight(that)}\n </div>\n ) : null}\n {that.columnsVisibility.role ? (\n <div\n style={{\n ...styles.headerCell,\n width: colWidth('role'),\n position: 'relative',\n }}\n data-min={100}\n data-name=\"role\"\n >\n {getFilterSelectRole(that)}\n {renderHandleRight(that)}\n </div>\n ) : null}\n {that.columnsVisibility.room ? (\n <div\n style={{\n ...styles.headerCell,\n width: colWidth('room'),\n position: 'relative',\n }}\n data-min={100}\n data-name=\"room\"\n >\n {getFilterSelectRoom(that)}\n {renderHandleRight(that)}\n </div>\n ) : null}\n {that.columnsVisibility.func ? (\n <div\n style={{\n ...styles.headerCell,\n width: colWidth('func'),\n position: 'relative',\n }}\n data-min={100}\n data-name=\"func\"\n >\n {getFilterSelectFunction(that)}\n {renderHandleRight(that)}\n </div>\n ) : null}\n </>\n )}\n {that.state.statesView && (\n <>\n {/* Every one of these columns can be switched off in the configuration dialog,\n so the header must ask for it just like the columns of the normal view do. */}\n {that.columnsVisibility.changedFrom ? (\n <div\n style={{\n ...styles.headerCell,\n ...styles.headerCellValue,\n width: colWidth('changedFrom'),\n position: 'relative',\n }}\n data-min={100}\n data-name=\"changedFrom\"\n >\n {that.props.t('ra_Changed from')}\n {renderHandleRight(that)}\n </div>\n ) : null}\n {that.columnsVisibility.qualityCode ? (\n <div\n style={{\n ...styles.headerCell,\n ...styles.headerCellValue,\n width: colWidth('qualityCode'),\n position: 'relative',\n }}\n data-min={100}\n data-name=\"qualityCode\"\n >\n {that.props.t('ra_Quality code')}\n {renderHandleRight(that)}\n </div>\n ) : null}\n {that.columnsVisibility.timestamp ? (\n <div\n style={{\n ...styles.headerCell,\n ...styles.headerCellValue,\n width: colWidth('timestamp'),\n position: 'relative',\n }}\n data-min={100}\n data-name=\"timestamp\"\n >\n {that.props.t('ra_Timestamp')}\n {renderHandleRight(that)}\n </div>\n ) : null}\n {that.columnsVisibility.lastChange ? (\n <div\n style={{\n ...styles.headerCell,\n ...styles.headerCellValue,\n width: colWidth('lastChange'),\n position: 'relative',\n }}\n data-min={100}\n data-name=\"lastChange\"\n >\n {that.props.t('ra_Last change')}\n {renderHandleRight(that)}\n </div>\n ) : null}\n </>\n )}\n {that.adapterColumns.map(item => (\n <div\n style={{\n ...styles.headerCell,\n ...styles.headerCellValue,\n width: (that.columnsVisibility as Record<string, number | string>)[item.id],\n }}\n title={item.adapter}\n key={item.id}\n data-min={100}\n data-name={item.id}\n >\n {item.name}\n </div>\n ))}\n {that.columnsVisibility.val ? (\n <div\n style={{\n ...styles.headerCell,\n ...styles.headerCellValue,\n width: colWidth('val'),\n position: 'relative',\n }}\n data-min={120}\n data-name=\"val\"\n >\n {that.props.t('ra_Value')}\n {filterClearInValue}\n {/* A handle takes the place from the column that follows, so it is only useful\n if there is one. It is the only way to resize the buttons column. */}\n {that.columnsVisibility.buttons ? renderHandleRight(that) : null}\n </div>\n ) : null}\n {that.columnsVisibility.buttons ? (\n <div\n title={that.texts.filter_custom}\n style={{ ...styles.headerCell, width: colWidth('buttons') }}\n data-min={80}\n data-name=\"buttons\"\n >\n {' '}\n {getFilterSelectCustoms(that)}\n </div>\n ) : null}\n </div>\n );\n}\n"]}
|
|
1
|
+
{"version":3,"file":"toolbar.js","sourceRoot":"./src/","sources":["Components/ObjectBrowser/toolbar.tsx"],"names":[],"mappings":"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","sourcesContent":["/**\n * Copyright 2020-2026, Denis Haev <dogafox@gmail.com>\n *\n * MIT License\n *\n * Part of the object browser, see ./ObjectBrowserClass.tsx\n */\nimport React, { type JSX } from 'react';\nimport { Badge, Box, IconButton, ListItemIcon, ListItemText, Menu, MenuItem, type Theme, Tooltip } from '@mui/material';\nimport {\n Add as AddIcon,\n Build as BuildIcon,\n Close as IconClose,\n LooksOne as LooksOneIcon,\n Publish as PublishIcon,\n Refresh as RefreshIcon,\n TextFields as TextFieldsIcon,\n ViewColumn as IconColumns,\n ContentPaste,\n UploadFile,\n} from '@mui/icons-material';\nimport { Utils } from '../Utils';\nimport { IconExpert } from '../../icons/IconExpert';\nimport { IconClosed } from '../../icons/IconClosed';\nimport { IconOpen } from '../../icons/IconOpen';\nimport { IconClearFilter } from '../../icons/IconClearFilter';\nimport { Icon } from '../Icon';\nimport {\n colGrow,\n colWidth,\n CustomFilterInput,\n CustomFilterSelect,\n getName,\n getSelectIdIconFromObjects,\n getVisibleItems,\n} from './utils';\nimport type { IobTheme } from '../../types';\nimport { type InputSelectItem } from './types';\nimport { styles } from './styles';\nimport { ITEM_IMAGES } from './constants';\nimport type { ObjectBrowserClass } from './ObjectBrowserClass';\n\nexport function getFilterInput(that: ObjectBrowserClass, name: 'id' | 'name'): JSX.Element {\n return (\n <CustomFilterInput\n key={`${name}_${that.state.filterKey}`}\n styles={that.styles.filterInput}\n name={name}\n texts={that.texts}\n t={that.props.t}\n initialValue={that.state.filter[name]}\n onChange={(name, value) => {\n const filter = { ...that.state.filter };\n if (value === undefined) {\n delete filter[name];\n } else {\n filter[name] = value;\n }\n that.setState({ filter }, () => {\n that.doFilter();\n that.props.onFilterChanged?.(filter);\n });\n }}\n />\n );\n}\n\nexport function getFilterSelect(\n that: ObjectBrowserClass,\n name: 'room' | 'func' | 'type' | 'custom' | 'role',\n values?: (string | InputSelectItem)[],\n): JSX.Element {\n return (\n <CustomFilterSelect\n key={`${name}_${that.state.filterKey}`}\n name={name}\n texts={that.texts}\n initialValue={that.state.filter[name] || []}\n values={values || []}\n onChange={(name, value) => {\n const filter = { ...that.state.filter };\n if (value === undefined) {\n delete filter[name];\n } else {\n filter[name] = value;\n }\n that.setState({ filter }, () => {\n that.doFilter();\n that.props.onFilterChanged?.(filter);\n });\n }}\n />\n );\n}\n\nexport function getFilterSelectRole(that: ObjectBrowserClass): JSX.Element {\n return getFilterSelect(\n that,\n 'role',\n that.info.roles.map(it => it.role),\n );\n}\n\nexport function getFilterSelectRoom(that: ObjectBrowserClass): JSX.Element {\n const rooms: InputSelectItem[] = that.info.roomEnums.map(\n id =>\n ({\n name: getName(that.objects[id]?.common?.name, that.props.lang) || id.split('.').pop(),\n value: id,\n icon: (\n <Icon\n src={that.objects[id]?.common?.icon || ''}\n style={styles.selectIcon}\n />\n ),\n }) as InputSelectItem,\n );\n\n return getFilterSelect(that, 'room', rooms);\n}\n\nexport function getFilterSelectFunction(that: ObjectBrowserClass): JSX.Element {\n const func: InputSelectItem[] = that.info.funcEnums.map(\n id =>\n ({\n name: getName(that.objects[id]?.common?.name, that.props.lang) || id.split('.').pop(),\n value: id,\n icon: (\n <Icon\n src={that.objects[id]?.common?.icon || ''}\n style={styles.selectIcon}\n />\n ),\n }) as InputSelectItem,\n );\n\n return getFilterSelect(that, 'func', func);\n}\n\nexport function getFilterSelectType(that: ObjectBrowserClass): JSX.Element {\n const types = that.info.types.map(type => ({\n name: type,\n value: type,\n icon: ITEM_IMAGES[type] || null,\n }));\n\n return getFilterSelect(that, 'type', types);\n}\n\nexport function getFilterSelectCustoms(that: ObjectBrowserClass): JSX.Element | null {\n if (that.info.customs.length > 1) {\n const customs = that.info.customs.map(id => ({\n name: id === '_' ? that.texts.filterCustomsWithout : id,\n value: id,\n icon:\n id === '_' ? null : (\n <Icon\n src={getSelectIdIconFromObjects(that.objects, id, that.props.lang, that.imagePrefix) || ''}\n style={styles.selectIcon}\n />\n ),\n }));\n return getFilterSelect(that, 'custom', customs);\n }\n return null;\n}\n\n/**\n * Renders the toolbar.\n */\nexport function getToolbar(that: ObjectBrowserClass): JSX.Element {\n let allowObjectCreation = false;\n if (that.state.selected.length || that.state.selectedNonObject) {\n const id = that.state.selected[0] || that.state.selectedNonObject;\n\n if (id.split('.').length < 2 || (that.objects[id] && that.objects[id].type === 'state')) {\n allowObjectCreation = false;\n } else if (that.state.filter.expertMode) {\n allowObjectCreation = true;\n } else if (id.startsWith('alias.0') || id.startsWith('0_userdata')) {\n allowObjectCreation = true;\n }\n }\n\n return (\n <div\n style={{\n display: 'flex',\n width: '100%',\n alignItems: 'center',\n overflowX: 'auto',\n }}\n >\n <div\n style={{\n display: 'flex',\n width: '100%',\n alignItems: 'center',\n }}\n >\n <Tooltip\n title={that.props.t('ra_Refresh tree')}\n slotProps={{ popper: { sx: styles.tooltip } }}\n >\n <div>\n <IconButton\n onClick={() => that.refreshComponent()}\n disabled={that.state.updating}\n size=\"large\"\n >\n <RefreshIcon />\n </IconButton>\n </div>\n </Tooltip>\n {that.props.showExpertButton && !that.props.expertMode && (\n <Tooltip\n title={that.props.t('ra_expertMode')}\n slotProps={{ popper: { sx: styles.tooltip } }}\n >\n <IconButton\n key=\"expertMode\"\n sx={(theme: IobTheme) => ({\n color: that.state.filter.expertMode ? theme.palette.expert : undefined,\n })}\n onClick={() => {\n const filter = { ...that.state.filter };\n filter.expertMode = !filter.expertMode;\n that.localStorage.setItem(\n `${that.props.dialogName || 'App'}.objectFilter`,\n JSON.stringify(filter),\n );\n\n that.setState({\n filter,\n });\n }}\n size=\"large\"\n >\n <IconExpert />\n </IconButton>\n </Tooltip>\n )}\n {!that.props.disableColumnSelector && that.width !== 'xs' && (\n <Tooltip\n title={that.props.t('ra_Configure')}\n slotProps={{ popper: { sx: styles.tooltip } }}\n >\n <IconButton\n key=\"columnSelector\"\n color={that.state.columnsAuto ? 'primary' : 'default'}\n onClick={() => that.setState({ columnsSelectorShow: true })}\n size=\"large\"\n >\n <IconColumns />\n </IconButton>\n </Tooltip>\n )}\n {that.width !== 'xs' && that.state.expandAllVisible && (\n <Tooltip\n title={that.props.t('ra_Expand all nodes')}\n slotProps={{ popper: { sx: styles.tooltip } }}\n >\n <IconButton\n key=\"expandAll\"\n onClick={() => that.onExpandAll()}\n size=\"large\"\n >\n <IconOpen />\n </IconButton>\n </Tooltip>\n )}\n <Tooltip\n title={that.props.t('ra_Collapse all nodes')}\n slotProps={{ popper: { sx: styles.tooltip } }}\n >\n <IconButton\n key=\"collapseAll\"\n onClick={() => that.onCollapseAll()}\n size=\"large\"\n >\n <IconClosed />\n </IconButton>\n </Tooltip>\n {that.width !== 'xs' && (\n <Tooltip\n title={that.props.t('ra_Expand one step node')}\n slotProps={{ popper: { sx: styles.tooltip } }}\n >\n <IconButton\n key=\"expandVisible\"\n color=\"primary\"\n onClick={() => that.onExpandVisible()}\n size=\"large\"\n >\n <Badge\n badgeContent={that.state.depth}\n color=\"secondary\"\n sx={(theme: Theme) => ({\n badge: {\n right: 3,\n top: 3,\n border: `2px solid ${theme.palette.background.paper}`,\n padding: '0 4px',\n },\n })}\n >\n <IconOpen />\n </Badge>\n </IconButton>\n </Tooltip>\n )}\n {that.width !== 'xs' && (\n <Tooltip\n title={that.props.t('ra_Collapse one step node')}\n slotProps={{ popper: { sx: styles.tooltip } }}\n >\n <IconButton\n key=\"collapseVisible\"\n color=\"primary\"\n onClick={() => that.onCollapseVisible()}\n size=\"large\"\n >\n <Badge\n sx={(theme: Theme) => ({\n badge: {\n right: 3,\n top: 3,\n border: `2px solid ${theme.palette.background.paper}`,\n padding: '0 4px',\n },\n })}\n badgeContent={that.state.depth}\n color=\"secondary\"\n >\n <IconClosed />\n </Badge>\n </IconButton>\n </Tooltip>\n )}\n {that.props.objectStatesView && (\n <Tooltip\n title={that.props.t('ra_Toggle the states view')}\n slotProps={{ popper: { sx: styles.tooltip } }}\n >\n <IconButton\n onClick={() => that.onStatesViewVisible()}\n size=\"large\"\n >\n <LooksOneIcon color={that.state.statesView ? 'primary' : 'inherit'} />\n </IconButton>\n </Tooltip>\n )}\n\n <Tooltip\n title={that.props.t('ra_Show/Hide object descriptions')}\n slotProps={{ popper: { sx: styles.tooltip } }}\n >\n <IconButton\n onClick={() => {\n that.localStorage.setItem(\n `${that.props.dialogName || 'App'}.desc`,\n that.state.showDescription ? 'false' : 'true',\n );\n that.setState({ showDescription: !that.state.showDescription });\n }}\n size=\"large\"\n >\n <TextFieldsIcon color={that.state.showDescription ? 'primary' : 'inherit'} />\n </IconButton>\n </Tooltip>\n\n {that.props.objectAddBoolean ? (\n <Tooltip\n title={that.toolTipObjectCreating()}\n slotProps={{ popper: { sx: styles.tooltip } }}\n >\n <div>\n <IconButton\n disabled={!allowObjectCreation}\n onClick={() =>\n that.setState({\n modalNewObj: {\n id: that.state.selected[0] || that.state.selectedNonObject,\n },\n })\n }\n size=\"large\"\n >\n <AddIcon />\n </IconButton>\n </div>\n </Tooltip>\n ) : null}\n\n {that.props.objectImportExport && (\n <Tooltip\n title={that.props.t('ra_Add objects tree from JSON file')}\n slotProps={{ popper: { sx: styles.tooltip } }}\n >\n <IconButton\n onClick={e => {\n if (that.props.objectBrowserInsertJsonObjects) {\n that.setState({ showImportMenu: e.currentTarget });\n } else {\n that.onOpenFile();\n }\n }}\n size=\"large\"\n >\n <PublishIcon />\n </IconButton>\n </Tooltip>\n )}\n {that.props.objectBrowserInsertJsonObjects ? (\n <Menu\n anchorEl={that.state.showImportMenu}\n open={!!that.state.showImportMenu}\n onClose={() => that.setState({ showImportMenu: null })}\n >\n <MenuItem onClick={() => that.setState({ showImportMenu: null }, () => that.onOpenFile())}>\n <ListItemIcon>\n <UploadFile />\n </ListItemIcon>\n <ListItemText>{that.props.t('ra_From file')}</ListItemText>\n </MenuItem>\n <MenuItem onClick={() => that.setState({ showImportMenu: null, showImportDialog: true })}>\n <ListItemIcon>\n <ContentPaste />\n </ListItemIcon>\n <ListItemText>{that.props.t('ra_From text')}</ListItemText>\n </MenuItem>\n </Menu>\n ) : null}\n {that.props.objectImportExport && (!!that.state.selected.length || that.state.selectedNonObject) && (\n <Tooltip\n title={that.props.t('ra_Save objects tree as JSON file')}\n slotProps={{ popper: { sx: styles.tooltip } }}\n >\n <IconButton\n onClick={() => that.setState({ showExportDialog: that._getSelectedIdsForExport().length })}\n size=\"large\"\n >\n <PublishIcon style={{ transform: 'rotate(180deg)' }} />\n </IconButton>\n </Tooltip>\n )}\n </div>\n {!!that.props.objectBrowserEditObject && that.width !== 'xs' && (\n <div style={{ display: 'flex', whiteSpace: 'nowrap' }}>\n {`${that.props.t('ra_Objects')}: ${Object.keys(that.info.objects).length}, ${that.props.t(\n 'ra_States',\n )}: ${Object.keys(that.info.objects).filter(el => that.info.objects[el].type === 'state').length}`}\n </div>\n )}\n {that.props.objectEditBoolean && (\n <Tooltip\n title={that.props.t('ra_Edit custom config')}\n slotProps={{ popper: { sx: styles.tooltip } }}\n >\n <IconButton\n onClick={() => {\n // get all visible states\n const ids = that.root ? getVisibleItems(that.root, 'state', that.objects) : [];\n\n if (ids.length) {\n that.pauseSubscribe(true);\n\n if (ids.length === 1) {\n that.localStorage.setItem(\n `${that.props.dialogName || 'App'}.objectSelected`,\n that.state.selected[0],\n );\n that.props.router?.doNavigate(null, 'custom', that.state.selected[0]);\n }\n that.setState({ customDialog: ids, customDialogAll: true });\n } else {\n that.setState({ toast: that.props.t('ra_please select object') });\n }\n }}\n size=\"large\"\n >\n <BuildIcon />\n </IconButton>\n </Tooltip>\n )}\n </div>\n );\n}\n\n/**\n * Render the right handle for resizing\n */\nexport function renderHandleRight(that: ObjectBrowserClass): JSX.Element {\n return (\n <Box\n component=\"div\"\n className=\"iob-ob-resize-handler\"\n sx={{ ...styles.resizeHandle, ...styles.resizeHandleRight }}\n onMouseDown={that.resizerMouseDown}\n onDoubleClick={that.resizerReset}\n title={that.props.t('ra_Double click to reset table layout')}\n />\n );\n}\n\nexport function renderHeader(that: ObjectBrowserClass): JSX.Element {\n let filterClearInValue = null;\n\n if (!that.columnsVisibility.buttons && !that.isFilterEmpty()) {\n filterClearInValue = (\n <IconButton\n onClick={() => that.clearFilter()}\n style={styles.buttonClearFilter}\n title={that.props.t('ra_Clear filter')}\n size=\"large\"\n >\n <IconClearFilter />\n <IconClose style={styles.buttonClearFilterIcon} />\n </IconButton>\n );\n }\n\n if (that.width === 'xs') {\n return (\n <div style={Utils.getStyle(that.props.theme, styles.headerRow)}>\n <div style={{ ...styles.headerCell, width: '100%' }}>{getFilterInput(that, 'id')}</div>\n </div>\n );\n }\n\n return (\n <div style={Utils.getStyle(that.props.theme, styles.headerRow)}>\n <div\n style={{ ...styles.headerCell, width: colWidth('id'), flexGrow: colGrow('id'), position: 'relative' }}\n data-min={240}\n data-name=\"id\"\n >\n {getFilterInput(that, 'id')}\n {renderHandleRight(that)}\n </div>\n {that.columnsVisibility.name ? (\n <div\n style={{\n ...styles.headerCell,\n width: colWidth('name'),\n flexGrow: colGrow('name'),\n position: 'relative',\n }}\n data-min={100}\n data-name=\"name\"\n >\n {getFilterInput(that, 'name')}\n {renderHandleRight(that)}\n </div>\n ) : null}\n {!that.state.statesView && (\n <>\n {that.columnsVisibility.type ? (\n <div\n style={{\n ...styles.headerCell,\n width: colWidth('type'),\n position: 'relative',\n }}\n data-min={100}\n data-name=\"type\"\n >\n {getFilterSelectType(that)}\n {renderHandleRight(that)}\n </div>\n ) : null}\n {that.columnsVisibility.role ? (\n <div\n style={{\n ...styles.headerCell,\n width: colWidth('role'),\n position: 'relative',\n }}\n data-min={100}\n data-name=\"role\"\n >\n {getFilterSelectRole(that)}\n {renderHandleRight(that)}\n </div>\n ) : null}\n {that.columnsVisibility.room ? (\n <div\n style={{\n ...styles.headerCell,\n width: colWidth('room'),\n position: 'relative',\n }}\n data-min={100}\n data-name=\"room\"\n >\n {getFilterSelectRoom(that)}\n {renderHandleRight(that)}\n </div>\n ) : null}\n {that.columnsVisibility.func ? (\n <div\n style={{\n ...styles.headerCell,\n width: colWidth('func'),\n position: 'relative',\n }}\n data-min={100}\n data-name=\"func\"\n >\n {getFilterSelectFunction(that)}\n {renderHandleRight(that)}\n </div>\n ) : null}\n </>\n )}\n {that.state.statesView && (\n <>\n {/* Every one of these columns can be switched off in the configuration dialog,\n so the header must ask for it just like the columns of the normal view do. */}\n {that.columnsVisibility.changedFrom ? (\n <div\n style={{\n ...styles.headerCell,\n ...styles.headerCellValue,\n width: colWidth('changedFrom'),\n position: 'relative',\n }}\n data-min={100}\n data-name=\"changedFrom\"\n >\n {that.props.t('ra_Changed from')}\n {renderHandleRight(that)}\n </div>\n ) : null}\n {that.columnsVisibility.qualityCode ? (\n <div\n style={{\n ...styles.headerCell,\n ...styles.headerCellValue,\n width: colWidth('qualityCode'),\n position: 'relative',\n }}\n data-min={100}\n data-name=\"qualityCode\"\n >\n {that.props.t('ra_Quality code')}\n {renderHandleRight(that)}\n </div>\n ) : null}\n {that.columnsVisibility.timestamp ? (\n <div\n style={{\n ...styles.headerCell,\n ...styles.headerCellValue,\n width: colWidth('timestamp'),\n position: 'relative',\n }}\n data-min={100}\n data-name=\"timestamp\"\n >\n {that.props.t('ra_Timestamp')}\n {renderHandleRight(that)}\n </div>\n ) : null}\n {that.columnsVisibility.lastChange ? (\n <div\n style={{\n ...styles.headerCell,\n ...styles.headerCellValue,\n width: colWidth('lastChange'),\n position: 'relative',\n }}\n data-min={100}\n data-name=\"lastChange\"\n >\n {that.props.t('ra_Last change')}\n {renderHandleRight(that)}\n </div>\n ) : null}\n </>\n )}\n {that.adapterColumns.map(item => (\n <div\n style={{\n ...styles.headerCell,\n ...styles.headerCellValue,\n width: (that.columnsVisibility as Record<string, number | string>)[item.id],\n }}\n title={item.adapter}\n key={item.id}\n data-min={100}\n data-name={item.id}\n >\n {item.name}\n </div>\n ))}\n {that.columnsVisibility.val ? (\n <div\n style={{\n ...styles.headerCell,\n ...styles.headerCellValue,\n width: colWidth('val'),\n position: 'relative',\n }}\n data-min={120}\n data-name=\"val\"\n >\n {that.props.t('ra_Value')}\n {filterClearInValue}\n {/* A handle takes the place from the column that follows, so it is only useful\n if there is one. It is the only way to resize the buttons column. */}\n {that.columnsVisibility.buttons ? renderHandleRight(that) : null}\n </div>\n ) : null}\n {that.columnsVisibility.buttons ? (\n <div\n title={that.texts.filter_custom}\n style={{ ...styles.headerCell, width: colWidth('buttons') }}\n data-min={80}\n data-name=\"buttons\"\n >\n {' '}\n {getFilterSelectCustoms(that)}\n </div>\n ) : null}\n </div>\n );\n}\n"]}
|
package/build/ThemeModern.js
CHANGED
|
@@ -371,10 +371,19 @@ export function getModernTheme(name, type) {
|
|
|
371
371
|
},
|
|
372
372
|
MuiIconButton: {
|
|
373
373
|
styleOverrides: {
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
|
|
374
|
+
// The color must only be set for `color="default"`. The style overrides of the theme are
|
|
375
|
+
// applied after the color variants of MUI, so a flat `color` in `root` would swallow
|
|
376
|
+
// `color="primary"`, `color="secondary"`, ... and all the buttons would look the same.
|
|
377
|
+
root: ({ ownerState }) => {
|
|
378
|
+
const isDefault = !ownerState.color || ownerState.color === 'default';
|
|
379
|
+
return {
|
|
380
|
+
borderRadius: 8,
|
|
381
|
+
color: isDefault ? t.textSecondary : undefined,
|
|
382
|
+
'&:hover': {
|
|
383
|
+
backgroundColor: t.hover,
|
|
384
|
+
color: isDefault ? t.textPrimary : undefined,
|
|
385
|
+
},
|
|
386
|
+
};
|
|
378
387
|
},
|
|
379
388
|
},
|
|
380
389
|
},
|
package/build/ThemeModern.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ThemeModern.js","sourceRoot":"./src/","sources":["ThemeModern.ts"],"names":[],"mappings":"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","sourcesContent":["import { alpha, type Shadows } from '@mui/material/styles';\n\nimport type { ThemeName, ThemeType } from './types';\nimport type { ThemeOptions } from './Theme';\n\n/**\n * Flat design tokens of the \"modern\" themes.\n * Everything that is used more than once in the theme definition below is listed here,\n * so a new variation can be created by copying this object only.\n */\nexport interface ModernTokens {\n /** Background of the page (behind the cards) */\n background: string;\n /** Background of cards, tables and dialogs */\n paper: string;\n /** Background of the left navigation */\n sidebar: string;\n /** Background of menus, popovers and dialogs (one step above `paper`) */\n elevated: string;\n /** Color of the dividers inside of the cards (table rows, lists) */\n border: string;\n /** Border of the cards. In the dark theme the cards are separated by the background, not by a border */\n cardBorder: string;\n textPrimary: string;\n textSecondary: string;\n textDisabled: string;\n primary: string;\n primaryDark: string;\n primaryLight: string;\n secondary: string;\n /** Background of the selected navigation item */\n gradient: string;\n /** Background of the selected navigation item if hovered */\n gradientHover: string;\n success: string;\n warning: string;\n error: string;\n info: string;\n /** Color of the expert-mode elements */\n expert: string;\n /** Color of the not acknowledged values in the object browser */\n nonAck: string;\n /** Background of the hovered rows and list items */\n hover: string;\n /** Background of the selected rows and list items */\n selected: string;\n}\n\nexport const MODERN_DARK: ModernTokens = {\n background: '#0A121D',\n paper: '#121A26',\n sidebar: '#141C29',\n elevated: '#1A2434',\n border: '#1E2837',\n cardBorder: '#1B2533',\n textPrimary: '#E8EDF5',\n textSecondary: '#8B97A8',\n textDisabled: '#586576',\n primary: '#137BF8',\n primaryDark: '#0B62D6',\n primaryLight: '#4B9BFA',\n secondary: '#436A93',\n gradient: 'linear-gradient(90deg, #2E93F9 0%, #0B76F5 100%)',\n gradientHover: 'linear-gradient(90deg, #48A1FA 0%, #1B84F8 100%)',\n success: '#2EA043',\n warning: '#E8A33D',\n error: '#E5534B',\n info: '#3FA9F5',\n expert: '#2EA043',\n nonAck: '#E5534B',\n hover: 'rgba(255, 255, 255, 0.05)',\n selected: 'rgba(19, 123, 248, 0.16)',\n};\n\nexport const MODERN_LIGHT: ModernTokens = {\n background: '#F4F7FB',\n paper: '#FFFFFF',\n sidebar: '#FFFFFF',\n elevated: '#FFFFFF',\n border: '#E2E8F0',\n cardBorder: '#E2E8F0',\n textPrimary: '#101827',\n textSecondary: '#5B6878',\n textDisabled: '#98A4B3',\n primary: '#137BF8',\n primaryDark: '#0B62D6',\n primaryLight: '#4B9BFA',\n secondary: '#164477',\n gradient: 'linear-gradient(90deg, #2E93F9 0%, #0B76F5 100%)',\n gradientHover: 'linear-gradient(90deg, #48A1FA 0%, #1B84F8 100%)',\n success: '#1E8E3E',\n warning: '#C77700',\n error: '#D93025',\n info: '#0B72D9',\n expert: '#1E8E3E',\n nonAck: '#D93025',\n hover: 'rgba(16, 24, 39, 0.04)',\n selected: 'rgba(19, 123, 248, 0.10)',\n};\n\nconst FONT_FAMILY = '\"Inter\", \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, sans-serif';\n/** Height of the app bar. Used for `MuiToolbar` and for `mixins.toolbar` - the two must not drift apart */\nconst TOOLBAR_HEIGHT = 52;\n\n/**\n * Build the 25 MUI shadows. The default MUI shadows are too heavy for this design,\n * so they are replaced by a soft two-layer shadow.\n */\nfunction buildShadows(type: ThemeType): Shadows {\n const rgb = type === 'dark' ? '0, 0, 0' : '15, 23, 42';\n const nearOpacity = type === 'dark' ? 0.24 : 0.04;\n const farOpacity = type === 'dark' ? 0.36 : 0.08;\n\n const shadows: string[] = ['none'];\n for (let i = 1; i <= 24; i++) {\n const y = Math.round(1 + i * 0.7);\n const blur = Math.round(2 + i * 1.6);\n shadows.push(\n `0px ${Math.max(1, Math.round(y / 2))}px ${Math.max(2, Math.round(blur / 2))}px rgba(${rgb}, ${nearOpacity}), ` +\n `0px ${y}px ${blur}px rgba(${rgb}, ${farOpacity})`,\n );\n }\n\n return shadows as unknown as Shadows;\n}\n\n/**\n * Options and component overrides of the \"modern\" themes (`modernDark` and `modernLight`).\n */\nexport function getModernTheme(\n name: ThemeName,\n type: ThemeType,\n): { options: ThemeOptions; components: Record<string, any> } {\n const t: ModernTokens = type === 'dark' ? MODERN_DARK : MODERN_LIGHT;\n\n const options: ThemeOptions = {\n name,\n shape: { borderRadius: 10 },\n // The app bar is lower than in the MUI default. `mixins.toolbar` has to say so too: consumers\n // (e.g. the admin) take the top margin of their content from it, and with MUI's 64px they\n // would leave a gap below the bar.\n mixins: {\n toolbar: {\n minHeight: TOOLBAR_HEIGHT,\n '@media (min-width:0px) and (orientation: landscape)': { minHeight: TOOLBAR_HEIGHT },\n '@media (min-width:600px)': { minHeight: TOOLBAR_HEIGHT },\n },\n },\n shadows: buildShadows(type),\n typography: {\n fontFamily: FONT_FAMILY,\n h1: { fontWeight: 700, letterSpacing: '-0.02em' },\n h2: { fontWeight: 700, letterSpacing: '-0.02em' },\n h3: { fontWeight: 600, letterSpacing: '-0.02em' },\n h4: { fontWeight: 600, letterSpacing: '-0.01em' },\n h5: { fontWeight: 600 },\n h6: { fontWeight: 600, fontSize: '1.05rem' },\n subtitle1: { fontWeight: 500 },\n subtitle2: { fontWeight: 500 },\n body2: { fontSize: '0.875rem' },\n button: { fontWeight: 500, textTransform: 'none', letterSpacing: 0 },\n caption: { fontSize: '0.75rem' },\n },\n palette: {\n mode: type,\n background: {\n default: t.background,\n paper: t.paper,\n },\n primary: {\n main: t.primary,\n dark: t.primaryDark,\n light: t.primaryLight,\n contrastText: '#FFFFFF',\n },\n secondary: {\n main: t.secondary,\n contrastText: '#FFFFFF',\n },\n success: { main: t.success },\n warning: { main: t.warning },\n error: { main: t.error },\n info: { main: t.info },\n divider: t.border,\n text: {\n primary: t.textPrimary,\n secondary: t.textSecondary,\n disabled: t.textDisabled,\n },\n action: {\n hover: t.hover,\n hoverOpacity: type === 'dark' ? 0.06 : 0.04,\n selected: t.selected,\n selectedOpacity: type === 'dark' ? 0.16 : 0.1,\n },\n expert: t.expert,\n nonAck: t.nonAck,\n },\n toolbar: {\n height: TOOLBAR_HEIGHT,\n },\n saveToolbar: {\n background: t.primary,\n button: {\n borderRadius: 8,\n height: 34,\n },\n },\n };\n\n const components: Record<string, any> = {\n // Only takes effect in GUIs that actually render `<CssBaseline />` - the admin does not.\n // The scrollbars used to be defined here too and were therefore dead in most GUIs; they now\n // live in the `ScrollbarStyles` component, which works without CssBaseline.\n MuiCssBaseline: {\n styleOverrides: {\n body: {\n backgroundColor: t.background,\n color: t.textPrimary,\n },\n },\n },\n MuiPaper: {\n defaultProps: {\n elevation: 0,\n },\n styleOverrides: {\n root: {\n // remove the MUI overlay gradient of the dark mode - the colors are defined explicitly\n backgroundImage: 'none',\n backgroundColor: t.paper,\n },\n outlined: {\n border: `1px solid ${t.border}`,\n },\n rounded: {\n borderRadius: 12,\n },\n },\n },\n MuiCard: {\n defaultProps: {\n elevation: 0,\n },\n styleOverrides: {\n root: {\n backgroundColor: t.paper,\n border: `1px solid ${t.cardBorder}`,\n borderRadius: 12,\n backgroundImage: 'none',\n boxShadow: type === 'dark' ? '0 1px 3px rgba(0, 0, 0, 0.4)' : '0 1px 2px rgba(15, 23, 42, 0.05)',\n },\n },\n },\n MuiCardHeader: {\n styleOverrides: {\n root: {\n padding: '16px 20px 8px 20px',\n },\n title: {\n fontSize: '1rem',\n fontWeight: 600,\n },\n subheader: {\n fontSize: '0.8125rem',\n color: t.textSecondary,\n },\n },\n },\n MuiCardContent: {\n styleOverrides: {\n root: {\n padding: 20,\n '&:last-child': { paddingBottom: 20 },\n },\n },\n },\n MuiAppBar: {\n defaultProps: {\n elevation: 0,\n color: 'default',\n },\n styleOverrides: {\n root: {\n backgroundColor: t.paper,\n backgroundImage: 'none',\n color: t.textPrimary,\n // Drawn inside instead of as a border: a real border would add a pixel to the bar\n // height, and the content below positions itself by `mixins.toolbar`.\n boxShadow: `inset 0 -1px 0 ${t.border}`,\n },\n colorDefault: {\n backgroundColor: t.paper,\n },\n colorPrimary: {\n backgroundColor: t.paper,\n color: t.textPrimary,\n },\n },\n },\n MuiToolbar: {\n styleOverrides: {\n root: {\n minHeight: TOOLBAR_HEIGHT,\n '@media (min-width: 600px)': { minHeight: TOOLBAR_HEIGHT },\n },\n },\n },\n MuiDrawer: {\n styleOverrides: {\n paper: {\n backgroundColor: t.sidebar,\n backgroundImage: 'none',\n borderRight: `1px solid ${t.border}`,\n },\n },\n },\n MuiDivider: {\n styleOverrides: {\n root: {\n borderColor: t.border,\n },\n },\n },\n MuiListItemButton: {\n styleOverrides: {\n root: {\n borderRadius: 8,\n paddingTop: 7,\n paddingBottom: 7,\n '&:hover': {\n backgroundColor: t.hover,\n },\n '&.Mui-selected': {\n // the active navigation item is filled with a gradient\n background: t.gradient,\n color: '#FFFFFF',\n boxShadow: `0 2px 8px ${alpha(t.primary, type === 'dark' ? 0.35 : 0.25)}`,\n '& .MuiListItemIcon-root': { color: '#FFFFFF' },\n '&:hover': { background: t.gradientHover },\n },\n },\n },\n },\n MuiListItemIcon: {\n styleOverrides: {\n root: {\n color: t.textSecondary,\n minWidth: 36,\n },\n },\n },\n MuiListItemText: {\n styleOverrides: {\n primary: {\n fontSize: '0.9rem',\n },\n },\n },\n MuiMenu: {\n styleOverrides: {\n paper: {\n backgroundColor: t.elevated,\n backgroundImage: 'none',\n border: `1px solid ${t.border}`,\n borderRadius: 10,\n },\n list: {\n padding: 6,\n },\n },\n },\n MuiMenuItem: {\n styleOverrides: {\n root: {\n borderRadius: 6,\n fontSize: '0.875rem',\n '&.Mui-selected': {\n backgroundColor: t.selected,\n },\n },\n },\n },\n MuiPopover: {\n styleOverrides: {\n paper: {\n backgroundColor: t.elevated,\n backgroundImage: 'none',\n border: `1px solid ${t.border}`,\n borderRadius: 10,\n },\n },\n },\n MuiDialog: {\n styleOverrides: {\n paper: {\n backgroundColor: t.elevated,\n backgroundImage: 'none',\n border: `1px solid ${t.border}`,\n borderRadius: 14,\n },\n },\n },\n MuiDialogTitle: {\n styleOverrides: {\n root: {\n fontSize: '1.05rem',\n fontWeight: 600,\n },\n },\n },\n MuiButton: {\n defaultProps: {\n disableElevation: true,\n },\n styleOverrides: {\n root: {\n borderRadius: 8,\n textTransform: 'none',\n fontWeight: 500,\n boxShadow: 'none',\n '&:hover': { boxShadow: 'none' },\n },\n sizeSmall: {\n borderRadius: 6,\n },\n outlined: {\n borderColor: t.border,\n },\n },\n },\n MuiIconButton: {\n styleOverrides: {\n root: {\n borderRadius: 8,\n color: t.textSecondary,\n '&:hover': { backgroundColor: t.hover, color: t.textPrimary },\n },\n },\n },\n MuiToggleButton: {\n styleOverrides: {\n root: {\n borderRadius: 8,\n borderColor: t.border,\n textTransform: 'none',\n '&.Mui-selected': {\n backgroundColor: t.selected,\n color: t.primaryLight,\n },\n },\n },\n },\n MuiChip: {\n styleOverrides: {\n root: {\n borderRadius: 6,\n fontWeight: 500,\n fontSize: '0.75rem',\n },\n sizeSmall: {\n height: 22,\n },\n outlined: {\n borderColor: t.border,\n },\n },\n },\n MuiTooltip: {\n styleOverrides: {\n tooltip: {\n backgroundColor: type === 'dark' ? '#242C37' : '#1F2937',\n border: type === 'dark' ? `1px solid ${t.border}` : undefined,\n borderRadius: 8,\n fontSize: '0.75rem',\n padding: '6px 10px',\n },\n arrow: {\n color: type === 'dark' ? '#242C37' : '#1F2937',\n },\n },\n },\n MuiOutlinedInput: {\n styleOverrides: {\n root: {\n borderRadius: 8,\n backgroundColor: type === 'dark' ? alpha('#FFFFFF', 0.03) : alpha('#0F172A', 0.02),\n '& .MuiOutlinedInput-notchedOutline': { borderColor: t.border },\n '&:hover .MuiOutlinedInput-notchedOutline': { borderColor: t.textDisabled },\n },\n input: {\n padding: '10px 12px',\n },\n },\n },\n MuiInputBase: {\n styleOverrides: {\n root: {\n fontSize: '0.875rem',\n },\n },\n },\n MuiInputLabel: {\n styleOverrides: {\n root: {\n color: t.textSecondary,\n },\n },\n },\n MuiSelect: {\n styleOverrides: {\n select: {\n fontSize: '0.875rem',\n },\n },\n },\n MuiTabs: {\n styleOverrides: {\n root: {\n minHeight: 42,\n borderBottom: `1px solid ${t.border}`,\n },\n indicator: {\n height: 2,\n borderRadius: 2,\n },\n },\n },\n MuiTab: {\n styleOverrides: {\n root: {\n minHeight: 42,\n textTransform: 'none',\n fontWeight: 500,\n fontSize: '0.8125rem',\n letterSpacing: '0.02em',\n color: t.textSecondary,\n '&.Mui-selected': { color: t.primaryLight },\n },\n },\n },\n MuiTable: {\n styleOverrides: {\n root: {\n borderCollapse: 'separate',\n },\n },\n },\n MuiTableCell: {\n styleOverrides: {\n root: {\n borderBottom: `1px solid ${t.border}`,\n fontSize: '0.8125rem',\n padding: '10px 14px',\n },\n head: {\n color: t.textSecondary,\n fontWeight: 600,\n fontSize: '0.75rem',\n backgroundColor: t.paper,\n },\n },\n },\n MuiTableRow: {\n styleOverrides: {\n root: {\n '&:hover': { backgroundColor: t.hover },\n '&.Mui-selected': {\n backgroundColor: t.selected,\n '&:hover': { backgroundColor: t.selected },\n },\n },\n },\n },\n MuiLinearProgress: {\n styleOverrides: {\n root: {\n height: 6,\n borderRadius: 4,\n backgroundColor: type === 'dark' ? alpha('#FFFFFF', 0.08) : alpha('#0F172A', 0.08),\n },\n bar: {\n borderRadius: 4,\n },\n },\n },\n MuiSwitch: {\n styleOverrides: {\n track: {\n borderRadius: 12,\n },\n },\n },\n MuiCheckbox: {\n styleOverrides: {\n root: {\n color: t.textDisabled,\n },\n },\n },\n MuiAlert: {\n styleOverrides: {\n root: {\n borderRadius: 10,\n border: `1px solid ${t.border}`,\n },\n },\n },\n MuiAccordion: {\n styleOverrides: {\n root: {\n backgroundColor: t.paper,\n backgroundImage: 'none',\n border: `1px solid ${t.border}`,\n borderRadius: 10,\n '&::before': { display: 'none' },\n },\n },\n },\n MuiLink: {\n styleOverrides: {\n root: {\n color: t.primaryLight,\n textDecorationColor: alpha(t.primaryLight, 0.4),\n transition: 'color .2s ease',\n '&:hover': { color: t.primary },\n },\n },\n },\n };\n\n return { options, components };\n}\n"]}
|
|
1
|
+
{"version":3,"file":"ThemeModern.js","sourceRoot":"./src/","sources":["ThemeModern.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAgB,MAAM,sBAAsB,CAAC;AAgD3D,MAAM,CAAC,MAAM,WAAW,GAAiB;IACrC,UAAU,EAAE,SAAS;IACrB,KAAK,EAAE,SAAS;IAChB,OAAO,EAAE,SAAS;IAClB,QAAQ,EAAE,SAAS;IACnB,MAAM,EAAE,SAAS;IACjB,UAAU,EAAE,SAAS;IACrB,WAAW,EAAE,SAAS;IACtB,aAAa,EAAE,SAAS;IACxB,YAAY,EAAE,SAAS;IACvB,OAAO,EAAE,SAAS;IAClB,WAAW,EAAE,SAAS;IACtB,YAAY,EAAE,SAAS;IACvB,SAAS,EAAE,SAAS;IACpB,QAAQ,EAAE,kDAAkD;IAC5D,aAAa,EAAE,kDAAkD;IACjE,OAAO,EAAE,SAAS;IAClB,OAAO,EAAE,SAAS;IAClB,KAAK,EAAE,SAAS;IAChB,IAAI,EAAE,SAAS;IACf,MAAM,EAAE,SAAS;IACjB,MAAM,EAAE,SAAS;IACjB,KAAK,EAAE,2BAA2B;IAClC,QAAQ,EAAE,0BAA0B;CACvC,CAAC;AAEF,MAAM,CAAC,MAAM,YAAY,GAAiB;IACtC,UAAU,EAAE,SAAS;IACrB,KAAK,EAAE,SAAS;IAChB,OAAO,EAAE,SAAS;IAClB,QAAQ,EAAE,SAAS;IACnB,MAAM,EAAE,SAAS;IACjB,UAAU,EAAE,SAAS;IACrB,WAAW,EAAE,SAAS;IACtB,aAAa,EAAE,SAAS;IACxB,YAAY,EAAE,SAAS;IACvB,OAAO,EAAE,SAAS;IAClB,WAAW,EAAE,SAAS;IACtB,YAAY,EAAE,SAAS;IACvB,SAAS,EAAE,SAAS;IACpB,QAAQ,EAAE,kDAAkD;IAC5D,aAAa,EAAE,kDAAkD;IACjE,OAAO,EAAE,SAAS;IAClB,OAAO,EAAE,SAAS;IAClB,KAAK,EAAE,SAAS;IAChB,IAAI,EAAE,SAAS;IACf,MAAM,EAAE,SAAS;IACjB,MAAM,EAAE,SAAS;IACjB,KAAK,EAAE,wBAAwB;IAC/B,QAAQ,EAAE,0BAA0B;CACvC,CAAC;AAEF,MAAM,WAAW,GAAG,kEAAkE,CAAC;AACvF,2GAA2G;AAC3G,MAAM,cAAc,GAAG,EAAE,CAAC;AAE1B;;;GAGG;AACH,SAAS,YAAY,CAAC,IAAe;IACjC,MAAM,GAAG,GAAG,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,YAAY,CAAC;IACvD,MAAM,WAAW,GAAG,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;IAClD,MAAM,UAAU,GAAG,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;IAEjD,MAAM,OAAO,GAAa,CAAC,MAAM,CAAC,CAAC;IACnC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC;QAC3B,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC;QAClC,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC;QACrC,OAAO,CAAC,IAAI,CACR,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,WAAW,GAAG,KAAK,WAAW,KAAK;YAC3G,OAAO,CAAC,MAAM,IAAI,WAAW,GAAG,KAAK,UAAU,GAAG,CACzD,CAAC;IACN,CAAC;IAED,OAAO,OAA6B,CAAC;AACzC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,cAAc,CAC1B,IAAe,EACf,IAAe;IAEf,MAAM,CAAC,GAAiB,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,YAAY,CAAC;IAErE,MAAM,OAAO,GAAiB;QAC1B,IAAI;QACJ,KAAK,EAAE,EAAE,YAAY,EAAE,EAAE,EAAE;QAC3B,8FAA8F;QAC9F,0FAA0F;QAC1F,mCAAmC;QACnC,MAAM,EAAE;YACJ,OAAO,EAAE;gBACL,SAAS,EAAE,cAAc;gBACzB,qDAAqD,EAAE,EAAE,SAAS,EAAE,cAAc,EAAE;gBACpF,0BAA0B,EAAE,EAAE,SAAS,EAAE,cAAc,EAAE;aAC5D;SACJ;QACD,OAAO,EAAE,YAAY,CAAC,IAAI,CAAC;QAC3B,UAAU,EAAE;YACR,UAAU,EAAE,WAAW;YACvB,EAAE,EAAE,EAAE,UAAU,EAAE,GAAG,EAAE,aAAa,EAAE,SAAS,EAAE;YACjD,EAAE,EAAE,EAAE,UAAU,EAAE,GAAG,EAAE,aAAa,EAAE,SAAS,EAAE;YACjD,EAAE,EAAE,EAAE,UAAU,EAAE,GAAG,EAAE,aAAa,EAAE,SAAS,EAAE;YACjD,EAAE,EAAE,EAAE,UAAU,EAAE,GAAG,EAAE,aAAa,EAAE,SAAS,EAAE;YACjD,EAAE,EAAE,EAAE,UAAU,EAAE,GAAG,EAAE;YACvB,EAAE,EAAE,EAAE,UAAU,EAAE,GAAG,EAAE,QAAQ,EAAE,SAAS,EAAE;YAC5C,SAAS,EAAE,EAAE,UAAU,EAAE,GAAG,EAAE;YAC9B,SAAS,EAAE,EAAE,UAAU,EAAE,GAAG,EAAE;YAC9B,KAAK,EAAE,EAAE,QAAQ,EAAE,UAAU,EAAE;YAC/B,MAAM,EAAE,EAAE,UAAU,EAAE,GAAG,EAAE,aAAa,EAAE,MAAM,EAAE,aAAa,EAAE,CAAC,EAAE;YACpE,OAAO,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE;SACnC;QACD,OAAO,EAAE;YACL,IAAI,EAAE,IAAI;YACV,UAAU,EAAE;gBACR,OAAO,EAAE,CAAC,CAAC,UAAU;gBACrB,KAAK,EAAE,CAAC,CAAC,KAAK;aACjB;YACD,OAAO,EAAE;gBACL,IAAI,EAAE,CAAC,CAAC,OAAO;gBACf,IAAI,EAAE,CAAC,CAAC,WAAW;gBACnB,KAAK,EAAE,CAAC,CAAC,YAAY;gBACrB,YAAY,EAAE,SAAS;aAC1B;YACD,SAAS,EAAE;gBACP,IAAI,EAAE,CAAC,CAAC,SAAS;gBACjB,YAAY,EAAE,SAAS;aAC1B;YACD,OAAO,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE;YAC5B,OAAO,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE;YAC5B,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,KAAK,EAAE;YACxB,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE;YACtB,OAAO,EAAE,CAAC,CAAC,MAAM;YACjB,IAAI,EAAE;gBACF,OAAO,EAAE,CAAC,CAAC,WAAW;gBACtB,SAAS,EAAE,CAAC,CAAC,aAAa;gBAC1B,QAAQ,EAAE,CAAC,CAAC,YAAY;aAC3B;YACD,MAAM,EAAE;gBACJ,KAAK,EAAE,CAAC,CAAC,KAAK;gBACd,YAAY,EAAE,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI;gBAC3C,QAAQ,EAAE,CAAC,CAAC,QAAQ;gBACpB,eAAe,EAAE,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG;aAChD;YACD,MAAM,EAAE,CAAC,CAAC,MAAM;YAChB,MAAM,EAAE,CAAC,CAAC,MAAM;SACnB;QACD,OAAO,EAAE;YACL,MAAM,EAAE,cAAc;SACzB;QACD,WAAW,EAAE;YACT,UAAU,EAAE,CAAC,CAAC,OAAO;YACrB,MAAM,EAAE;gBACJ,YAAY,EAAE,CAAC;gBACf,MAAM,EAAE,EAAE;aACb;SACJ;KACJ,CAAC;IAEF,MAAM,UAAU,GAAwB;QACpC,yFAAyF;QACzF,4FAA4F;QAC5F,4EAA4E;QAC5E,cAAc,EAAE;YACZ,cAAc,EAAE;gBACZ,IAAI,EAAE;oBACF,eAAe,EAAE,CAAC,CAAC,UAAU;oBAC7B,KAAK,EAAE,CAAC,CAAC,WAAW;iBACvB;aACJ;SACJ;QACD,QAAQ,EAAE;YACN,YAAY,EAAE;gBACV,SAAS,EAAE,CAAC;aACf;YACD,cAAc,EAAE;gBACZ,IAAI,EAAE;oBACF,uFAAuF;oBACvF,eAAe,EAAE,MAAM;oBACvB,eAAe,EAAE,CAAC,CAAC,KAAK;iBAC3B;gBACD,QAAQ,EAAE;oBACN,MAAM,EAAE,aAAa,CAAC,CAAC,MAAM,EAAE;iBAClC;gBACD,OAAO,EAAE;oBACL,YAAY,EAAE,EAAE;iBACnB;aACJ;SACJ;QACD,OAAO,EAAE;YACL,YAAY,EAAE;gBACV,SAAS,EAAE,CAAC;aACf;YACD,cAAc,EAAE;gBACZ,IAAI,EAAE;oBACF,eAAe,EAAE,CAAC,CAAC,KAAK;oBACxB,MAAM,EAAE,aAAa,CAAC,CAAC,UAAU,EAAE;oBACnC,YAAY,EAAE,EAAE;oBAChB,eAAe,EAAE,MAAM;oBACvB,SAAS,EAAE,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,8BAA8B,CAAC,CAAC,CAAC,kCAAkC;iBACnG;aACJ;SACJ;QACD,aAAa,EAAE;YACX,cAAc,EAAE;gBACZ,IAAI,EAAE;oBACF,OAAO,EAAE,oBAAoB;iBAChC;gBACD,KAAK,EAAE;oBACH,QAAQ,EAAE,MAAM;oBAChB,UAAU,EAAE,GAAG;iBAClB;gBACD,SAAS,EAAE;oBACP,QAAQ,EAAE,WAAW;oBACrB,KAAK,EAAE,CAAC,CAAC,aAAa;iBACzB;aACJ;SACJ;QACD,cAAc,EAAE;YACZ,cAAc,EAAE;gBACZ,IAAI,EAAE;oBACF,OAAO,EAAE,EAAE;oBACX,cAAc,EAAE,EAAE,aAAa,EAAE,EAAE,EAAE;iBACxC;aACJ;SACJ;QACD,SAAS,EAAE;YACP,YAAY,EAAE;gBACV,SAAS,EAAE,CAAC;gBACZ,KAAK,EAAE,SAAS;aACnB;YACD,cAAc,EAAE;gBACZ,IAAI,EAAE;oBACF,eAAe,EAAE,CAAC,CAAC,KAAK;oBACxB,eAAe,EAAE,MAAM;oBACvB,KAAK,EAAE,CAAC,CAAC,WAAW;oBACpB,kFAAkF;oBAClF,sEAAsE;oBACtE,SAAS,EAAE,kBAAkB,CAAC,CAAC,MAAM,EAAE;iBAC1C;gBACD,YAAY,EAAE;oBACV,eAAe,EAAE,CAAC,CAAC,KAAK;iBAC3B;gBACD,YAAY,EAAE;oBACV,eAAe,EAAE,CAAC,CAAC,KAAK;oBACxB,KAAK,EAAE,CAAC,CAAC,WAAW;iBACvB;aACJ;SACJ;QACD,UAAU,EAAE;YACR,cAAc,EAAE;gBACZ,IAAI,EAAE;oBACF,SAAS,EAAE,cAAc;oBACzB,2BAA2B,EAAE,EAAE,SAAS,EAAE,cAAc,EAAE;iBAC7D;aACJ;SACJ;QACD,SAAS,EAAE;YACP,cAAc,EAAE;gBACZ,KAAK,EAAE;oBACH,eAAe,EAAE,CAAC,CAAC,OAAO;oBAC1B,eAAe,EAAE,MAAM;oBACvB,WAAW,EAAE,aAAa,CAAC,CAAC,MAAM,EAAE;iBACvC;aACJ;SACJ;QACD,UAAU,EAAE;YACR,cAAc,EAAE;gBACZ,IAAI,EAAE;oBACF,WAAW,EAAE,CAAC,CAAC,MAAM;iBACxB;aACJ;SACJ;QACD,iBAAiB,EAAE;YACf,cAAc,EAAE;gBACZ,IAAI,EAAE;oBACF,YAAY,EAAE,CAAC;oBACf,UAAU,EAAE,CAAC;oBACb,aAAa,EAAE,CAAC;oBAChB,SAAS,EAAE;wBACP,eAAe,EAAE,CAAC,CAAC,KAAK;qBAC3B;oBACD,gBAAgB,EAAE;wBACd,uDAAuD;wBACvD,UAAU,EAAE,CAAC,CAAC,QAAQ;wBACtB,KAAK,EAAE,SAAS;wBAChB,SAAS,EAAE,aAAa,KAAK,CAAC,CAAC,CAAC,OAAO,EAAE,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE;wBACzE,yBAAyB,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE;wBAC/C,SAAS,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC,aAAa,EAAE;qBAC7C;iBACJ;aACJ;SACJ;QACD,eAAe,EAAE;YACb,cAAc,EAAE;gBACZ,IAAI,EAAE;oBACF,KAAK,EAAE,CAAC,CAAC,aAAa;oBACtB,QAAQ,EAAE,EAAE;iBACf;aACJ;SACJ;QACD,eAAe,EAAE;YACb,cAAc,EAAE;gBACZ,OAAO,EAAE;oBACL,QAAQ,EAAE,QAAQ;iBACrB;aACJ;SACJ;QACD,OAAO,EAAE;YACL,cAAc,EAAE;gBACZ,KAAK,EAAE;oBACH,eAAe,EAAE,CAAC,CAAC,QAAQ;oBAC3B,eAAe,EAAE,MAAM;oBACvB,MAAM,EAAE,aAAa,CAAC,CAAC,MAAM,EAAE;oBAC/B,YAAY,EAAE,EAAE;iBACnB;gBACD,IAAI,EAAE;oBACF,OAAO,EAAE,CAAC;iBACb;aACJ;SACJ;QACD,WAAW,EAAE;YACT,cAAc,EAAE;gBACZ,IAAI,EAAE;oBACF,YAAY,EAAE,CAAC;oBACf,QAAQ,EAAE,UAAU;oBACpB,gBAAgB,EAAE;wBACd,eAAe,EAAE,CAAC,CAAC,QAAQ;qBAC9B;iBACJ;aACJ;SACJ;QACD,UAAU,EAAE;YACR,cAAc,EAAE;gBACZ,KAAK,EAAE;oBACH,eAAe,EAAE,CAAC,CAAC,QAAQ;oBAC3B,eAAe,EAAE,MAAM;oBACvB,MAAM,EAAE,aAAa,CAAC,CAAC,MAAM,EAAE;oBAC/B,YAAY,EAAE,EAAE;iBACnB;aACJ;SACJ;QACD,SAAS,EAAE;YACP,cAAc,EAAE;gBACZ,KAAK,EAAE;oBACH,eAAe,EAAE,CAAC,CAAC,QAAQ;oBAC3B,eAAe,EAAE,MAAM;oBACvB,MAAM,EAAE,aAAa,CAAC,CAAC,MAAM,EAAE;oBAC/B,YAAY,EAAE,EAAE;iBACnB;aACJ;SACJ;QACD,cAAc,EAAE;YACZ,cAAc,EAAE;gBACZ,IAAI,EAAE;oBACF,QAAQ,EAAE,SAAS;oBACnB,UAAU,EAAE,GAAG;iBAClB;aACJ;SACJ;QACD,SAAS,EAAE;YACP,YAAY,EAAE;gBACV,gBAAgB,EAAE,IAAI;aACzB;YACD,cAAc,EAAE;gBACZ,IAAI,EAAE;oBACF,YAAY,EAAE,CAAC;oBACf,aAAa,EAAE,MAAM;oBACrB,UAAU,EAAE,GAAG;oBACf,SAAS,EAAE,MAAM;oBACjB,SAAS,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE;iBACnC;gBACD,SAAS,EAAE;oBACP,YAAY,EAAE,CAAC;iBAClB;gBACD,QAAQ,EAAE;oBACN,WAAW,EAAE,CAAC,CAAC,MAAM;iBACxB;aACJ;SACJ;QACD,aAAa,EAAE;YACX,cAAc,EAAE;gBACZ,yFAAyF;gBACzF,qFAAqF;gBACrF,uFAAuF;gBACvF,IAAI,EAAE,CAAC,EAAE,UAAU,EAAsC,EAAE,EAAE;oBACzD,MAAM,SAAS,GAAG,CAAC,UAAU,CAAC,KAAK,IAAI,UAAU,CAAC,KAAK,KAAK,SAAS,CAAC;oBACtE,OAAO;wBACH,YAAY,EAAE,CAAC;wBACf,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS;wBAC9C,SAAS,EAAE;4BACP,eAAe,EAAE,CAAC,CAAC,KAAK;4BACxB,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS;yBAC/C;qBACJ,CAAC;gBACN,CAAC;aACJ;SACJ;QACD,eAAe,EAAE;YACb,cAAc,EAAE;gBACZ,IAAI,EAAE;oBACF,YAAY,EAAE,CAAC;oBACf,WAAW,EAAE,CAAC,CAAC,MAAM;oBACrB,aAAa,EAAE,MAAM;oBACrB,gBAAgB,EAAE;wBACd,eAAe,EAAE,CAAC,CAAC,QAAQ;wBAC3B,KAAK,EAAE,CAAC,CAAC,YAAY;qBACxB;iBACJ;aACJ;SACJ;QACD,OAAO,EAAE;YACL,cAAc,EAAE;gBACZ,IAAI,EAAE;oBACF,YAAY,EAAE,CAAC;oBACf,UAAU,EAAE,GAAG;oBACf,QAAQ,EAAE,SAAS;iBACtB;gBACD,SAAS,EAAE;oBACP,MAAM,EAAE,EAAE;iBACb;gBACD,QAAQ,EAAE;oBACN,WAAW,EAAE,CAAC,CAAC,MAAM;iBACxB;aACJ;SACJ;QACD,UAAU,EAAE;YACR,cAAc,EAAE;gBACZ,OAAO,EAAE;oBACL,eAAe,EAAE,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS;oBACxD,MAAM,EAAE,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,SAAS;oBAC7D,YAAY,EAAE,CAAC;oBACf,QAAQ,EAAE,SAAS;oBACnB,OAAO,EAAE,UAAU;iBACtB;gBACD,KAAK,EAAE;oBACH,KAAK,EAAE,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS;iBACjD;aACJ;SACJ;QACD,gBAAgB,EAAE;YACd,cAAc,EAAE;gBACZ,IAAI,EAAE;oBACF,YAAY,EAAE,CAAC;oBACf,eAAe,EAAE,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,EAAE,IAAI,CAAC;oBAClF,oCAAoC,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;oBAC/D,0CAA0C,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC,YAAY,EAAE;iBAC9E;gBACD,KAAK,EAAE;oBACH,OAAO,EAAE,WAAW;iBACvB;aACJ;SACJ;QACD,YAAY,EAAE;YACV,cAAc,EAAE;gBACZ,IAAI,EAAE;oBACF,QAAQ,EAAE,UAAU;iBACvB;aACJ;SACJ;QACD,aAAa,EAAE;YACX,cAAc,EAAE;gBACZ,IAAI,EAAE;oBACF,KAAK,EAAE,CAAC,CAAC,aAAa;iBACzB;aACJ;SACJ;QACD,SAAS,EAAE;YACP,cAAc,EAAE;gBACZ,MAAM,EAAE;oBACJ,QAAQ,EAAE,UAAU;iBACvB;aACJ;SACJ;QACD,OAAO,EAAE;YACL,cAAc,EAAE;gBACZ,IAAI,EAAE;oBACF,SAAS,EAAE,EAAE;oBACb,YAAY,EAAE,aAAa,CAAC,CAAC,MAAM,EAAE;iBACxC;gBACD,SAAS,EAAE;oBACP,MAAM,EAAE,CAAC;oBACT,YAAY,EAAE,CAAC;iBAClB;aACJ;SACJ;QACD,MAAM,EAAE;YACJ,cAAc,EAAE;gBACZ,IAAI,EAAE;oBACF,SAAS,EAAE,EAAE;oBACb,aAAa,EAAE,MAAM;oBACrB,UAAU,EAAE,GAAG;oBACf,QAAQ,EAAE,WAAW;oBACrB,aAAa,EAAE,QAAQ;oBACvB,KAAK,EAAE,CAAC,CAAC,aAAa;oBACtB,gBAAgB,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,YAAY,EAAE;iBAC9C;aACJ;SACJ;QACD,QAAQ,EAAE;YACN,cAAc,EAAE;gBACZ,IAAI,EAAE;oBACF,cAAc,EAAE,UAAU;iBAC7B;aACJ;SACJ;QACD,YAAY,EAAE;YACV,cAAc,EAAE;gBACZ,IAAI,EAAE;oBACF,YAAY,EAAE,aAAa,CAAC,CAAC,MAAM,EAAE;oBACrC,QAAQ,EAAE,WAAW;oBACrB,OAAO,EAAE,WAAW;iBACvB;gBACD,IAAI,EAAE;oBACF,KAAK,EAAE,CAAC,CAAC,aAAa;oBACtB,UAAU,EAAE,GAAG;oBACf,QAAQ,EAAE,SAAS;oBACnB,eAAe,EAAE,CAAC,CAAC,KAAK;iBAC3B;aACJ;SACJ;QACD,WAAW,EAAE;YACT,cAAc,EAAE;gBACZ,IAAI,EAAE;oBACF,SAAS,EAAE,EAAE,eAAe,EAAE,CAAC,CAAC,KAAK,EAAE;oBACvC,gBAAgB,EAAE;wBACd,eAAe,EAAE,CAAC,CAAC,QAAQ;wBAC3B,SAAS,EAAE,EAAE,eAAe,EAAE,CAAC,CAAC,QAAQ,EAAE;qBAC7C;iBACJ;aACJ;SACJ;QACD,iBAAiB,EAAE;YACf,cAAc,EAAE;gBACZ,IAAI,EAAE;oBACF,MAAM,EAAE,CAAC;oBACT,YAAY,EAAE,CAAC;oBACf,eAAe,EAAE,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,EAAE,IAAI,CAAC;iBACrF;gBACD,GAAG,EAAE;oBACD,YAAY,EAAE,CAAC;iBAClB;aACJ;SACJ;QACD,SAAS,EAAE;YACP,cAAc,EAAE;gBACZ,KAAK,EAAE;oBACH,YAAY,EAAE,EAAE;iBACnB;aACJ;SACJ;QACD,WAAW,EAAE;YACT,cAAc,EAAE;gBACZ,IAAI,EAAE;oBACF,KAAK,EAAE,CAAC,CAAC,YAAY;iBACxB;aACJ;SACJ;QACD,QAAQ,EAAE;YACN,cAAc,EAAE;gBACZ,IAAI,EAAE;oBACF,YAAY,EAAE,EAAE;oBAChB,MAAM,EAAE,aAAa,CAAC,CAAC,MAAM,EAAE;iBAClC;aACJ;SACJ;QACD,YAAY,EAAE;YACV,cAAc,EAAE;gBACZ,IAAI,EAAE;oBACF,eAAe,EAAE,CAAC,CAAC,KAAK;oBACxB,eAAe,EAAE,MAAM;oBACvB,MAAM,EAAE,aAAa,CAAC,CAAC,MAAM,EAAE;oBAC/B,YAAY,EAAE,EAAE;oBAChB,WAAW,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE;iBACnC;aACJ;SACJ;QACD,OAAO,EAAE;YACL,cAAc,EAAE;gBACZ,IAAI,EAAE;oBACF,KAAK,EAAE,CAAC,CAAC,YAAY;oBACrB,mBAAmB,EAAE,KAAK,CAAC,CAAC,CAAC,YAAY,EAAE,GAAG,CAAC;oBAC/C,UAAU,EAAE,gBAAgB;oBAC5B,SAAS,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE;iBAClC;aACJ;SACJ;KACJ,CAAC;IAEF,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC;AACnC,CAAC","sourcesContent":["import { alpha, type Shadows } from '@mui/material/styles';\n\nimport type { ThemeName, ThemeType } from './types';\nimport type { ThemeOptions } from './Theme';\n\n/**\n * Flat design tokens of the \"modern\" themes.\n * Everything that is used more than once in the theme definition below is listed here,\n * so a new variation can be created by copying this object only.\n */\nexport interface ModernTokens {\n /** Background of the page (behind the cards) */\n background: string;\n /** Background of cards, tables and dialogs */\n paper: string;\n /** Background of the left navigation */\n sidebar: string;\n /** Background of menus, popovers and dialogs (one step above `paper`) */\n elevated: string;\n /** Color of the dividers inside of the cards (table rows, lists) */\n border: string;\n /** Border of the cards. In the dark theme the cards are separated by the background, not by a border */\n cardBorder: string;\n textPrimary: string;\n textSecondary: string;\n textDisabled: string;\n primary: string;\n primaryDark: string;\n primaryLight: string;\n secondary: string;\n /** Background of the selected navigation item */\n gradient: string;\n /** Background of the selected navigation item if hovered */\n gradientHover: string;\n success: string;\n warning: string;\n error: string;\n info: string;\n /** Color of the expert-mode elements */\n expert: string;\n /** Color of the not acknowledged values in the object browser */\n nonAck: string;\n /** Background of the hovered rows and list items */\n hover: string;\n /** Background of the selected rows and list items */\n selected: string;\n}\n\nexport const MODERN_DARK: ModernTokens = {\n background: '#0A121D',\n paper: '#121A26',\n sidebar: '#141C29',\n elevated: '#1A2434',\n border: '#1E2837',\n cardBorder: '#1B2533',\n textPrimary: '#E8EDF5',\n textSecondary: '#8B97A8',\n textDisabled: '#586576',\n primary: '#137BF8',\n primaryDark: '#0B62D6',\n primaryLight: '#4B9BFA',\n secondary: '#436A93',\n gradient: 'linear-gradient(90deg, #2E93F9 0%, #0B76F5 100%)',\n gradientHover: 'linear-gradient(90deg, #48A1FA 0%, #1B84F8 100%)',\n success: '#2EA043',\n warning: '#E8A33D',\n error: '#E5534B',\n info: '#3FA9F5',\n expert: '#2EA043',\n nonAck: '#E5534B',\n hover: 'rgba(255, 255, 255, 0.05)',\n selected: 'rgba(19, 123, 248, 0.16)',\n};\n\nexport const MODERN_LIGHT: ModernTokens = {\n background: '#F4F7FB',\n paper: '#FFFFFF',\n sidebar: '#FFFFFF',\n elevated: '#FFFFFF',\n border: '#E2E8F0',\n cardBorder: '#E2E8F0',\n textPrimary: '#101827',\n textSecondary: '#5B6878',\n textDisabled: '#98A4B3',\n primary: '#137BF8',\n primaryDark: '#0B62D6',\n primaryLight: '#4B9BFA',\n secondary: '#164477',\n gradient: 'linear-gradient(90deg, #2E93F9 0%, #0B76F5 100%)',\n gradientHover: 'linear-gradient(90deg, #48A1FA 0%, #1B84F8 100%)',\n success: '#1E8E3E',\n warning: '#C77700',\n error: '#D93025',\n info: '#0B72D9',\n expert: '#1E8E3E',\n nonAck: '#D93025',\n hover: 'rgba(16, 24, 39, 0.04)',\n selected: 'rgba(19, 123, 248, 0.10)',\n};\n\nconst FONT_FAMILY = '\"Inter\", \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, sans-serif';\n/** Height of the app bar. Used for `MuiToolbar` and for `mixins.toolbar` - the two must not drift apart */\nconst TOOLBAR_HEIGHT = 52;\n\n/**\n * Build the 25 MUI shadows. The default MUI shadows are too heavy for this design,\n * so they are replaced by a soft two-layer shadow.\n */\nfunction buildShadows(type: ThemeType): Shadows {\n const rgb = type === 'dark' ? '0, 0, 0' : '15, 23, 42';\n const nearOpacity = type === 'dark' ? 0.24 : 0.04;\n const farOpacity = type === 'dark' ? 0.36 : 0.08;\n\n const shadows: string[] = ['none'];\n for (let i = 1; i <= 24; i++) {\n const y = Math.round(1 + i * 0.7);\n const blur = Math.round(2 + i * 1.6);\n shadows.push(\n `0px ${Math.max(1, Math.round(y / 2))}px ${Math.max(2, Math.round(blur / 2))}px rgba(${rgb}, ${nearOpacity}), ` +\n `0px ${y}px ${blur}px rgba(${rgb}, ${farOpacity})`,\n );\n }\n\n return shadows as unknown as Shadows;\n}\n\n/**\n * Options and component overrides of the \"modern\" themes (`modernDark` and `modernLight`).\n */\nexport function getModernTheme(\n name: ThemeName,\n type: ThemeType,\n): { options: ThemeOptions; components: Record<string, any> } {\n const t: ModernTokens = type === 'dark' ? MODERN_DARK : MODERN_LIGHT;\n\n const options: ThemeOptions = {\n name,\n shape: { borderRadius: 10 },\n // The app bar is lower than in the MUI default. `mixins.toolbar` has to say so too: consumers\n // (e.g. the admin) take the top margin of their content from it, and with MUI's 64px they\n // would leave a gap below the bar.\n mixins: {\n toolbar: {\n minHeight: TOOLBAR_HEIGHT,\n '@media (min-width:0px) and (orientation: landscape)': { minHeight: TOOLBAR_HEIGHT },\n '@media (min-width:600px)': { minHeight: TOOLBAR_HEIGHT },\n },\n },\n shadows: buildShadows(type),\n typography: {\n fontFamily: FONT_FAMILY,\n h1: { fontWeight: 700, letterSpacing: '-0.02em' },\n h2: { fontWeight: 700, letterSpacing: '-0.02em' },\n h3: { fontWeight: 600, letterSpacing: '-0.02em' },\n h4: { fontWeight: 600, letterSpacing: '-0.01em' },\n h5: { fontWeight: 600 },\n h6: { fontWeight: 600, fontSize: '1.05rem' },\n subtitle1: { fontWeight: 500 },\n subtitle2: { fontWeight: 500 },\n body2: { fontSize: '0.875rem' },\n button: { fontWeight: 500, textTransform: 'none', letterSpacing: 0 },\n caption: { fontSize: '0.75rem' },\n },\n palette: {\n mode: type,\n background: {\n default: t.background,\n paper: t.paper,\n },\n primary: {\n main: t.primary,\n dark: t.primaryDark,\n light: t.primaryLight,\n contrastText: '#FFFFFF',\n },\n secondary: {\n main: t.secondary,\n contrastText: '#FFFFFF',\n },\n success: { main: t.success },\n warning: { main: t.warning },\n error: { main: t.error },\n info: { main: t.info },\n divider: t.border,\n text: {\n primary: t.textPrimary,\n secondary: t.textSecondary,\n disabled: t.textDisabled,\n },\n action: {\n hover: t.hover,\n hoverOpacity: type === 'dark' ? 0.06 : 0.04,\n selected: t.selected,\n selectedOpacity: type === 'dark' ? 0.16 : 0.1,\n },\n expert: t.expert,\n nonAck: t.nonAck,\n },\n toolbar: {\n height: TOOLBAR_HEIGHT,\n },\n saveToolbar: {\n background: t.primary,\n button: {\n borderRadius: 8,\n height: 34,\n },\n },\n };\n\n const components: Record<string, any> = {\n // Only takes effect in GUIs that actually render `<CssBaseline />` - the admin does not.\n // The scrollbars used to be defined here too and were therefore dead in most GUIs; they now\n // live in the `ScrollbarStyles` component, which works without CssBaseline.\n MuiCssBaseline: {\n styleOverrides: {\n body: {\n backgroundColor: t.background,\n color: t.textPrimary,\n },\n },\n },\n MuiPaper: {\n defaultProps: {\n elevation: 0,\n },\n styleOverrides: {\n root: {\n // remove the MUI overlay gradient of the dark mode - the colors are defined explicitly\n backgroundImage: 'none',\n backgroundColor: t.paper,\n },\n outlined: {\n border: `1px solid ${t.border}`,\n },\n rounded: {\n borderRadius: 12,\n },\n },\n },\n MuiCard: {\n defaultProps: {\n elevation: 0,\n },\n styleOverrides: {\n root: {\n backgroundColor: t.paper,\n border: `1px solid ${t.cardBorder}`,\n borderRadius: 12,\n backgroundImage: 'none',\n boxShadow: type === 'dark' ? '0 1px 3px rgba(0, 0, 0, 0.4)' : '0 1px 2px rgba(15, 23, 42, 0.05)',\n },\n },\n },\n MuiCardHeader: {\n styleOverrides: {\n root: {\n padding: '16px 20px 8px 20px',\n },\n title: {\n fontSize: '1rem',\n fontWeight: 600,\n },\n subheader: {\n fontSize: '0.8125rem',\n color: t.textSecondary,\n },\n },\n },\n MuiCardContent: {\n styleOverrides: {\n root: {\n padding: 20,\n '&:last-child': { paddingBottom: 20 },\n },\n },\n },\n MuiAppBar: {\n defaultProps: {\n elevation: 0,\n color: 'default',\n },\n styleOverrides: {\n root: {\n backgroundColor: t.paper,\n backgroundImage: 'none',\n color: t.textPrimary,\n // Drawn inside instead of as a border: a real border would add a pixel to the bar\n // height, and the content below positions itself by `mixins.toolbar`.\n boxShadow: `inset 0 -1px 0 ${t.border}`,\n },\n colorDefault: {\n backgroundColor: t.paper,\n },\n colorPrimary: {\n backgroundColor: t.paper,\n color: t.textPrimary,\n },\n },\n },\n MuiToolbar: {\n styleOverrides: {\n root: {\n minHeight: TOOLBAR_HEIGHT,\n '@media (min-width: 600px)': { minHeight: TOOLBAR_HEIGHT },\n },\n },\n },\n MuiDrawer: {\n styleOverrides: {\n paper: {\n backgroundColor: t.sidebar,\n backgroundImage: 'none',\n borderRight: `1px solid ${t.border}`,\n },\n },\n },\n MuiDivider: {\n styleOverrides: {\n root: {\n borderColor: t.border,\n },\n },\n },\n MuiListItemButton: {\n styleOverrides: {\n root: {\n borderRadius: 8,\n paddingTop: 7,\n paddingBottom: 7,\n '&:hover': {\n backgroundColor: t.hover,\n },\n '&.Mui-selected': {\n // the active navigation item is filled with a gradient\n background: t.gradient,\n color: '#FFFFFF',\n boxShadow: `0 2px 8px ${alpha(t.primary, type === 'dark' ? 0.35 : 0.25)}`,\n '& .MuiListItemIcon-root': { color: '#FFFFFF' },\n '&:hover': { background: t.gradientHover },\n },\n },\n },\n },\n MuiListItemIcon: {\n styleOverrides: {\n root: {\n color: t.textSecondary,\n minWidth: 36,\n },\n },\n },\n MuiListItemText: {\n styleOverrides: {\n primary: {\n fontSize: '0.9rem',\n },\n },\n },\n MuiMenu: {\n styleOverrides: {\n paper: {\n backgroundColor: t.elevated,\n backgroundImage: 'none',\n border: `1px solid ${t.border}`,\n borderRadius: 10,\n },\n list: {\n padding: 6,\n },\n },\n },\n MuiMenuItem: {\n styleOverrides: {\n root: {\n borderRadius: 6,\n fontSize: '0.875rem',\n '&.Mui-selected': {\n backgroundColor: t.selected,\n },\n },\n },\n },\n MuiPopover: {\n styleOverrides: {\n paper: {\n backgroundColor: t.elevated,\n backgroundImage: 'none',\n border: `1px solid ${t.border}`,\n borderRadius: 10,\n },\n },\n },\n MuiDialog: {\n styleOverrides: {\n paper: {\n backgroundColor: t.elevated,\n backgroundImage: 'none',\n border: `1px solid ${t.border}`,\n borderRadius: 14,\n },\n },\n },\n MuiDialogTitle: {\n styleOverrides: {\n root: {\n fontSize: '1.05rem',\n fontWeight: 600,\n },\n },\n },\n MuiButton: {\n defaultProps: {\n disableElevation: true,\n },\n styleOverrides: {\n root: {\n borderRadius: 8,\n textTransform: 'none',\n fontWeight: 500,\n boxShadow: 'none',\n '&:hover': { boxShadow: 'none' },\n },\n sizeSmall: {\n borderRadius: 6,\n },\n outlined: {\n borderColor: t.border,\n },\n },\n },\n MuiIconButton: {\n styleOverrides: {\n // The color must only be set for `color=\"default\"`. The style overrides of the theme are\n // applied after the color variants of MUI, so a flat `color` in `root` would swallow\n // `color=\"primary\"`, `color=\"secondary\"`, ... and all the buttons would look the same.\n root: ({ ownerState }: { ownerState: { color?: string } }) => {\n const isDefault = !ownerState.color || ownerState.color === 'default';\n return {\n borderRadius: 8,\n color: isDefault ? t.textSecondary : undefined,\n '&:hover': {\n backgroundColor: t.hover,\n color: isDefault ? t.textPrimary : undefined,\n },\n };\n },\n },\n },\n MuiToggleButton: {\n styleOverrides: {\n root: {\n borderRadius: 8,\n borderColor: t.border,\n textTransform: 'none',\n '&.Mui-selected': {\n backgroundColor: t.selected,\n color: t.primaryLight,\n },\n },\n },\n },\n MuiChip: {\n styleOverrides: {\n root: {\n borderRadius: 6,\n fontWeight: 500,\n fontSize: '0.75rem',\n },\n sizeSmall: {\n height: 22,\n },\n outlined: {\n borderColor: t.border,\n },\n },\n },\n MuiTooltip: {\n styleOverrides: {\n tooltip: {\n backgroundColor: type === 'dark' ? '#242C37' : '#1F2937',\n border: type === 'dark' ? `1px solid ${t.border}` : undefined,\n borderRadius: 8,\n fontSize: '0.75rem',\n padding: '6px 10px',\n },\n arrow: {\n color: type === 'dark' ? '#242C37' : '#1F2937',\n },\n },\n },\n MuiOutlinedInput: {\n styleOverrides: {\n root: {\n borderRadius: 8,\n backgroundColor: type === 'dark' ? alpha('#FFFFFF', 0.03) : alpha('#0F172A', 0.02),\n '& .MuiOutlinedInput-notchedOutline': { borderColor: t.border },\n '&:hover .MuiOutlinedInput-notchedOutline': { borderColor: t.textDisabled },\n },\n input: {\n padding: '10px 12px',\n },\n },\n },\n MuiInputBase: {\n styleOverrides: {\n root: {\n fontSize: '0.875rem',\n },\n },\n },\n MuiInputLabel: {\n styleOverrides: {\n root: {\n color: t.textSecondary,\n },\n },\n },\n MuiSelect: {\n styleOverrides: {\n select: {\n fontSize: '0.875rem',\n },\n },\n },\n MuiTabs: {\n styleOverrides: {\n root: {\n minHeight: 42,\n borderBottom: `1px solid ${t.border}`,\n },\n indicator: {\n height: 2,\n borderRadius: 2,\n },\n },\n },\n MuiTab: {\n styleOverrides: {\n root: {\n minHeight: 42,\n textTransform: 'none',\n fontWeight: 500,\n fontSize: '0.8125rem',\n letterSpacing: '0.02em',\n color: t.textSecondary,\n '&.Mui-selected': { color: t.primaryLight },\n },\n },\n },\n MuiTable: {\n styleOverrides: {\n root: {\n borderCollapse: 'separate',\n },\n },\n },\n MuiTableCell: {\n styleOverrides: {\n root: {\n borderBottom: `1px solid ${t.border}`,\n fontSize: '0.8125rem',\n padding: '10px 14px',\n },\n head: {\n color: t.textSecondary,\n fontWeight: 600,\n fontSize: '0.75rem',\n backgroundColor: t.paper,\n },\n },\n },\n MuiTableRow: {\n styleOverrides: {\n root: {\n '&:hover': { backgroundColor: t.hover },\n '&.Mui-selected': {\n backgroundColor: t.selected,\n '&:hover': { backgroundColor: t.selected },\n },\n },\n },\n },\n MuiLinearProgress: {\n styleOverrides: {\n root: {\n height: 6,\n borderRadius: 4,\n backgroundColor: type === 'dark' ? alpha('#FFFFFF', 0.08) : alpha('#0F172A', 0.08),\n },\n bar: {\n borderRadius: 4,\n },\n },\n },\n MuiSwitch: {\n styleOverrides: {\n track: {\n borderRadius: 12,\n },\n },\n },\n MuiCheckbox: {\n styleOverrides: {\n root: {\n color: t.textDisabled,\n },\n },\n },\n MuiAlert: {\n styleOverrides: {\n root: {\n borderRadius: 10,\n border: `1px solid ${t.border}`,\n },\n },\n },\n MuiAccordion: {\n styleOverrides: {\n root: {\n backgroundColor: t.paper,\n backgroundImage: 'none',\n border: `1px solid ${t.border}`,\n borderRadius: 10,\n '&::before': { display: 'none' },\n },\n },\n },\n MuiLink: {\n styleOverrides: {\n root: {\n color: t.primaryLight,\n textDecorationColor: alpha(t.primaryLight, 0.4),\n transition: 'color .2s ease',\n '&:hover': { color: t.primary },\n },\n },\n },\n };\n\n return { options, components };\n}\n"]}
|
package/package.json
CHANGED