@@ -121,28 +121,23 @@ export const DynamicPageComponent = ({
121121 const [ isFormOpen , setIsFormOpen ] = useRecoilState ( isFormOpenState ) ;
122122 const { navigateSafely } = useFormNavigation ( ) ;
123123 const [ searchParams ] = useSearchParams ( ) ;
124- const showEdit = searchParams . get ( 'showEdit' ) ;
125124 const editColumn = searchParams . get ( 'editColumn' ) ;
126- const currColumnInfo = layoutColumn [ layoutNumber ] ?? layoutColumn . startColumn ;
127125
128- const [ selectedSectionIdState , setSelectedSectionIdState ] = useState (
129- showEdit &&
130- currColumnInfo ?. resourceName === layoutColumn ?. showEdit ?. resourceName
131- ? 'edit'
132- : 'view' ,
126+ const [ selectedTab , setSelectedTab ] = useState (
127+ layoutColumn ?. showEdit ? 'edit' : 'view' ,
133128 ) ;
134129
130+ useEffect ( ( ) => {
131+ setSelectedTab ( layoutColumn ?. showEdit ? 'edit' : 'view' ) ;
132+ } , [ layoutColumn ] ) ;
133+
135134 const dynamicPageRef = useRef ( null ) ;
136135 const tabContainerRef = useRef ( null ) ;
137136 const { headerHeight, tabContainerHeight } = useGetHeaderHeight (
138137 dynamicPageRef ,
139138 tabContainerRef ,
140139 ) ;
141140
142- useEffect ( ( ) => {
143- if ( showEdit ) setSelectedSectionIdState ( 'edit' ) ;
144- } , [ showEdit ] ) ;
145-
146141 const handleColumnClose = ( ) => {
147142 layoutNumber === 'midColumn'
148143 ? setLayoutColumn ( {
@@ -161,7 +156,10 @@ export const DynamicPageComponent = ({
161156 } ) ;
162157
163158 if ( layoutCloseUrl ) {
164- navigate ( layoutCloseUrl + ( editColumn ? `?showEdit=${ showEdit } ` : '' ) ) ;
159+ navigate (
160+ layoutCloseUrl +
161+ ( editColumn ? `?showEdit=${ ! ! layoutColumn . showEdit } ` : '' ) ,
162+ ) ;
165163 return ;
166164 }
167165
@@ -351,23 +349,16 @@ export const DynamicPageComponent = ({
351349 isFormOpen ,
352350 setIsFormOpen ,
353351 ) ;
354- setSelectedSectionIdState ( e . detail . tab . getAttribute ( 'data-mode' ) ) ;
352+ setSelectedTab ( e . detail . tab . getAttribute ( 'data-mode' ) ) ;
355353 return ;
356354 }
357355 if ( isFormOpen . formOpen ) {
358356 e . preventDefault ( ) ;
359357 }
360- if (
361- showEdit &&
362- currColumnInfo ?. resourceName !==
363- layoutColumn ?. showEdit ?. resourceName
364- ) {
365- return ;
366- }
367358
368359 const newTabName = e . detail . tab . getAttribute ( 'data-mode' ) ;
369360 navigateSafely ( ( ) => {
370- setSelectedSectionIdState ( newTabName ) ;
361+ setSelectedTab ( newTabName ) ;
371362
372363 if ( newTabName === 'edit' ) {
373364 const params = new URLSearchParams ( ) ;
@@ -382,7 +373,6 @@ export const DynamicPageComponent = ({
382373 setLayoutColumn ( {
383374 ...layoutColumn ,
384375 showEdit : {
385- ...currColumnInfo ,
386376 resource : null ,
387377 } ,
388378 } ) ;
@@ -406,18 +396,18 @@ export const DynamicPageComponent = ({
406396 < Tab
407397 data-mode = "view"
408398 text = { t ( 'common.tabs.view' ) }
409- selected = { selectedSectionIdState === 'view' }
399+ selected = { selectedTab === 'view' }
410400 > </ Tab >
411401 < Tab
412402 data-mode = "edit"
413403 text = { showYamlTab ? t ( 'common.tabs.yaml' ) : t ( 'common.tabs.edit' ) }
414- selected = { selectedSectionIdState === 'edit' }
404+ selected = { selectedTab === 'edit' }
415405 > </ Tab >
416406 </ TabContainer >
417407
418- { selectedSectionIdState === 'view' && content }
408+ { selectedTab === 'view' && content }
419409
420- { selectedSectionIdState === 'edit' &&
410+ { selectedTab === 'edit' &&
421411 inlineEditForm ( headerHeight + tabContainerHeight ) }
422412 </ DynamicPage >
423413 ) ;
0 commit comments