Fix pipeline detail hook order causing React error 310

This commit is contained in:
Matt 2026-02-14 17:04:43 +01:00
parent 3975b5c51f
commit 2d91ce02fc
1 changed files with 27 additions and 26 deletions

View File

@ -281,13 +281,33 @@ export default function PipelineDetailPage() {
}, [pipeline]) }, [pipeline])
// Scroll to stage panel when a stage is selected // Scroll to stage panel when a stage is selected
useEffect(() => { useEffect(() => {
if (selectedStageId && stagePanelRef.current) { if (selectedStageId && stagePanelRef.current) {
stagePanelRef.current.scrollIntoView({ behavior: 'smooth', block: 'start' }) stagePanelRef.current.scrollIntoView({ behavior: 'smooth', block: 'start' })
} }
}, [selectedStageId]) }, [selectedStageId])
if (isLoading) { const trackOptionsForEditors = useMemo(
() =>
(pipeline?.tracks ?? [])
.slice()
.sort((a, b) => a.sortOrder - b.sortOrder)
.map((track) => ({
id: track.id,
name: track.name,
stages: track.stages
.slice()
.sort((a, b) => a.sortOrder - b.sortOrder)
.map((stage) => ({
id: stage.id,
name: stage.name,
sortOrder: stage.sortOrder,
})),
})),
[pipeline]
)
if (isLoading) {
return ( return (
<div className="space-y-6"> <div className="space-y-6">
<div className="flex items-center gap-3"> <div className="flex items-center gap-3">
@ -328,25 +348,6 @@ export default function PipelineDetailPage() {
(s) => s.id === selectedStageId (s) => s.id === selectedStageId
) )
const mainTrackDraft = structureTracks.find((track) => track.kind === 'MAIN') const mainTrackDraft = structureTracks.find((track) => track.kind === 'MAIN')
const trackOptionsForEditors = useMemo(
() =>
pipeline.tracks
.slice()
.sort((a, b) => a.sortOrder - b.sortOrder)
.map((track) => ({
id: track.id,
name: track.name,
stages: track.stages
.slice()
.sort((a, b) => a.sortOrder - b.sortOrder)
.map((stage) => ({
id: stage.id,
name: stage.name,
sortOrder: stage.sortOrder,
})),
})),
[pipeline.tracks]
)
const handleTrackChange = (trackId: string) => { const handleTrackChange = (trackId: string) => {
setSelectedTrackId(trackId) setSelectedTrackId(trackId)