|
1 | 1 | import type { debounce } from '@ui5/webcomponents-react-base'; |
2 | 2 | import { enrichEventWithDetails } from '@ui5/webcomponents-react-base'; |
3 | 3 | import type { Dispatch, JSXElementConstructor, MutableRefObject, ReactElement, RefObject, SetStateAction } from 'react'; |
4 | | -import { isValidElement, useEffect, useState } from 'react'; |
| 4 | +import { isValidElement } from 'react'; |
5 | 5 | import { ObjectPageMode } from '../../enums/ObjectPageMode.js'; |
6 | 6 | import type { TabContainerPropTypes } from '../../webComponents/TabContainer/index.js'; |
7 | 7 | import type { ObjectPageSectionPropTypes } from '../ObjectPageSection/index.js'; |
@@ -44,16 +44,6 @@ export const useHandleTabSelect = ({ |
44 | 44 | setTabSelectId, |
45 | 45 | setWasUserSectionChange, |
46 | 46 | }: UseHandleTabSelectProps) => { |
47 | | - const [onSectionSelectedArgs, setOnSectionSelectedArgs] = useState< |
48 | | - | false |
49 | | - | [ |
50 | | - Parameters<TabContainerPropTypes['onTabSelect']>[0], |
51 | | - undefined | string, |
52 | | - string, |
53 | | - ReactElement<ObjectPageSectionPropTypes>, |
54 | | - ] |
55 | | - >(false); |
56 | | - |
57 | 47 | const handleOnSubSectionSelected = (e) => { |
58 | 48 | isProgrammaticallyScrolled.current = true; |
59 | 49 | const sectionId = e.detail.sectionId; |
@@ -105,20 +95,13 @@ export const useHandleTabSelect = ({ |
105 | 95 | const section = childrenArray.find((el) => { |
106 | 96 | return el.props.id == sectionId; |
107 | 97 | }); |
108 | | - setOnSectionSelectedArgs([event, section?.props?.id, index, section]); |
| 98 | + handleOnSectionSelected(event, section?.props?.id, index, section); |
109 | 99 | } |
110 | 100 |
|
111 | 101 | if (mode === ObjectPageMode.IconTabBar) { |
112 | 102 | setWasUserSectionChange(true); |
113 | 103 | } |
114 | 104 | }; |
115 | | - // effect required - if event is called in `handleTabItemSelect` it's invoked twice in StrictMode |
116 | | - useEffect(() => { |
117 | | - if (onSectionSelectedArgs) { |
118 | | - handleOnSectionSelected(...onSectionSelectedArgs); |
119 | | - setOnSectionSelectedArgs(false); |
120 | | - } |
121 | | - }, [onSectionSelectedArgs]); |
122 | 105 |
|
123 | 106 | return handleTabItemSelect; |
124 | 107 | }; |
0 commit comments