Skip to content

Commit 74db165

Browse files
committed
fix: remove derived state
1 parent c7f8f71 commit 74db165

File tree

1 file changed

+8
-12
lines changed

1 file changed

+8
-12
lines changed

src/Shared/Components/CICDHistory/LogsRenderer.tsx

Lines changed: 8 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -184,15 +184,11 @@ export const LogsRenderer = ({
184184
triggerDetails.podStatus && triggerDetails.podStatus !== POD_STATUS.PENDING && logsURL,
185185
)
186186
const [stageList, setStageList] = useState<StageDetailType[]>([])
187-
const [openAllStages, setOpenAllStages] = useState(false)
188187
// State for logs list in case no stages are available
189188
const [logsList, setLogsList] = useState<string[]>([])
190189
const { searchKey, handleSearch } = useUrlFilters()
191190

192-
const handleSetStageList = (list: StageDetailType[]) => {
193-
setOpenAllStages(list.every((item) => item.isOpen))
194-
setStageList(list)
195-
}
191+
const areAllStagesExpanded = stageList.every((item) => item.isOpen)
196192

197193
const areStagesAvailable =
198194
(window._env_.FEATURE_STEP_WISE_LOGS_ENABLE && streamDataList[0]?.startsWith(LOGS_STAGE_IDENTIFIER)) || false
@@ -382,34 +378,34 @@ export const LogsRenderer = ({
382378
}
383379

384380
const newStageList = getStageListFromStreamData()
385-
handleSetStageList(newStageList)
381+
setStageList(newStageList)
386382
// NOTE: Not adding searchKey as dependency since on mount we would already have searchKey
387383
// And for other cases we would use handleSearchEnter
388384
}, [streamDataList, areEventsProgressing])
389385

390386
const handleSearchEnter = (searchText: string) => {
391387
handleSearch(searchText)
392388
const newStageList = getStageListFromStreamData(searchText)
393-
handleSetStageList(newStageList)
389+
setStageList(newStageList)
394390
}
395391

396392
const handleStageClose = (index: number) => {
397393
const newLogs = structuredClone(stageList)
398394
newLogs[index].isOpen = false
399-
handleSetStageList(newLogs)
395+
setStageList(newLogs)
400396
}
401397

402398
const handleStageOpen = (index: number) => {
403399
const newLogs = structuredClone(stageList)
404400
newLogs[index].isOpen = true
405-
handleSetStageList(newLogs)
401+
setStageList(newLogs)
406402
}
407403

408404
const handleToggleOpenAllStages = () => {
409-
handleSetStageList(
405+
setStageList(
410406
stageList.map((stage) => ({
411407
...stage,
412-
isOpen: !openAllStages,
408+
isOpen: !areAllStagesExpanded,
413409
})),
414410
)
415411
}
@@ -451,7 +447,7 @@ export const LogsRenderer = ({
451447
onClick={handleToggleOpenAllStages}
452448
aria-label="Expand all stages"
453449
>
454-
{openAllStages ? (
450+
{areAllStagesExpanded ? (
455451
<ICExpandAll className="icon-dim-16 dc__no-shrink dc__transition--transform scn-0" />
456452
) : (
457453
<ICCollapseAll className="icon-dim-16 dc__no-shrink dc__transition--transform scn-0" />

0 commit comments

Comments
 (0)