diff --git a/src/components/Dashboard/common/ObjectTable.jsx b/src/components/Dashboard/common/ObjectTable.jsx
index 664712c..5934ce5 100644
--- a/src/components/Dashboard/common/ObjectTable.jsx
+++ b/src/components/Dashboard/common/ObjectTable.jsx
@@ -39,7 +39,8 @@ import CheckIcon from '../../Icons/CheckIcon'
import { useNavigate } from 'react-router-dom'
import QuestionCircleIcon from '../../Icons/QuestionCircleIcon'
import { AuthContext } from '../context/AuthContext'
-import unionBy from 'lodash/unionBy'
+import { ElectronContext } from '../context/ElectronContext'
+
const logger = loglevel.getLogger('DasboardTable')
logger.setLevel(config.logLevel)
@@ -58,6 +59,7 @@ const ObjectTable = forwardRef(
ref
) => {
const { token } = useContext(AuthContext)
+ const { isElectron } = useContext(ElectronContext)
const {
fetchObjects,
connected,
@@ -73,6 +75,15 @@ const ObjectTable = forwardRef(
if (cards) {
adjustedScrollHeight = 'calc(var(--unit-100vh) - 280px)'
}
+ if (isElectron) {
+ adjustedScrollHeight = 'calc(var(--unit-100vh) - 244px)'
+ }
+ if (isMobile && isElectron) {
+ adjustedScrollHeight = 'calc(var(--unit-100vh) - 282px)'
+ }
+ if (cards && isElectron) {
+ adjustedScrollHeight = 'calc(var(--unit-100vh) - 260px)'
+ }
const [, contextHolder] = message.useMessage()
const tableRef = useRef(null)
const model = getModelByName(type)
@@ -108,26 +119,37 @@ const ObjectTable = forwardRef(
const renderActions = (objectData) => {
return (
- {rowActions.map((action, index) => (
-
-
- )
- }
- type={'text'}
- size={'small'}
- onClick={() => {
- if (action.url) {
- navigate(action.url(objectData._id))
+ {rowActions.map((action, index) => {
+ var disabled = false
+ if (action.disabled) {
+ if (typeof action.disabled === 'function') {
+ disabled = action.disabled(objectData)
+ } else {
+ disabled = action.disabled
+ }
+ }
+ return (
+
+
+ )
}
- }}
- />
-
- ))}
+ disabled={disabled}
+ type={'text'}
+ size={'small'}
+ onClick={() => {
+ if (action.url) {
+ navigate(action.url(objectData._id))
+ }
+ }}
+ />
+
+ )
+ })}
)
}
@@ -289,11 +311,12 @@ const ObjectTable = forwardRef(
const updateEventHandler = useCallback((id, updatedData) => {
setPages((prevPages) =>
prevPages.map((page) => {
- const updatedItems = unionBy(
- [{ ...updatedData, _id: id }],
- page.items,
- '_id'
- )
+ const updatedItems = page.items.map((item) => {
+ if (item._id === id) {
+ return { ...item, ...updatedData }
+ }
+ return item
+ })
return {
...page,
items: updatedItems
@@ -748,6 +771,7 @@ const ObjectTable = forwardRef(
onChange={handleTableChange}
showSorterTooltip={false}
style={{ height: '100%' }}
+ size={isElectron ? 'small' : 'middle'}
/>
{cards ? (
} spinning={loading}>