Skip to content

Commit

Permalink
Merge pull request #620 from SUI-Components/feat/filter-tasks
Browse files Browse the repository at this point in the history
feat(components/tool/taskManager): Add the possibility to filter task…
  • Loading branch information
oegea committed Sep 21, 2023
2 parents 55980ba + 77bd2b4 commit e3c49c4
Showing 1 changed file with 20 additions and 3 deletions.
23 changes: 20 additions & 3 deletions components/tool/taskManager/src/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -12,16 +12,31 @@ import useBeforeUnloadEffect from './hooks/useBeforeUnloadEffect.js'
import useContext from './hooks/useContext.js'
import useDevMode from './hooks/useDevMode.js'

export default function ToolTaskManager({isVisible = true, statusIcons = {}}) {
export default function ToolTaskManager({
isVisible = true,
statusIcons = {},
taskIdsFilter = [],
taskAmountFilter = 0
}) {
const {countWork, countFinishedWork, getState} = useContext()
const state = getState()
const {isDevModeEnabled, registerClick} = useDevMode()
useBeforeUnloadEffect({isVisible})
const getItems = () => {
return (
<>
{state.tasks.map(task => {
{state.tasks.map((task, index) => {
if (task.visibleWork === 0 && isDevModeEnabled === false) return

if (
Array.isArray(taskIdsFilter) &&
taskIdsFilter.length > 0 &&
taskIdsFilter.find(id => id === task.id) === undefined
)
return

if (taskAmountFilter !== 0 && taskAmountFilter > index) return

const Icon = statusIcons[task.status] || ''
const taskClassName = cx(
'sui-ToolTaskManager-task',
Expand Down Expand Up @@ -114,7 +129,9 @@ ToolTaskManager.propTypes = {
IN_PROGRESS: PropTypes.node,
QUEUED: PropTypes.node
})
)
),
taskAmountFilter: PropTypes.number,
taskIdsFilter: PropTypes.arrayOf(PropTypes.string)
}

export {TaskManagerProvider, useContext as useTaskManagerContext}

0 comments on commit e3c49c4

Please sign in to comment.