@@ -17,6 +17,7 @@ interface Props {
1717 onSetInputFields : any ;
1818 routeState ?: any ;
1919 onSubmit ?: any ;
20+ childStateRef ?: any ;
2021}
2122
2223const Selector : React . FC < Props > = ( {
@@ -25,14 +26,30 @@ const Selector: React.FC<Props> = ({
2526 values,
2627 routeState,
2728 onSubmit,
29+ childStateRef,
2830} ) => {
2931 // const [key, setKey] = useState('');
3032 // const [value, setValue] = useState('');
3133 const [ inputFields , setInputFields ] = useState ( [ ] ) as any ;
34+ useEffect ( ( ) => {
35+ if ( values ?. length ) {
36+ childStateRef . current = inputFields ;
37+ }
38+ // eslint-disable-next-line react-hooks/exhaustive-deps
39+ } , [ inputFields , childStateRef ] ) ;
3240 useEffect ( ( ) => {
3341 // ...values,
3442 // { key: '', value: '' },
3543 if (
44+ ( routeState ?. state ?. routeFromComponent ||
45+ routeState ?. state ?. routeFromEditComponent ) &&
46+ routeState ?. state ?. secretId
47+ ) {
48+ setInputFields ( [ ...values ] ) ;
49+ if ( values ?. length ) {
50+ childStateRef . current = values ;
51+ }
52+ } else if (
3653 routeState ?. state ?. routeFromComponent ||
3754 routeState ?. state ?. routeFromEditComponent
3855 ) {
@@ -58,20 +75,21 @@ const Selector: React.FC<Props> = ({
5875 } ;
5976
6077 setInputFields ( [ ...inputFields , secretKeyValuefromRoute ] ) ;
78+ } else if ( values ?. length && ! routeState ?. state ?. routeFromEditComponent ) {
79+ setInputFields ( [ ...values ] ) ;
80+ childStateRef . current = values ;
6181 }
62- // else if (values?.length && !routeState?.state?.routeFromEditComponent) {
63- // setInputFields([...values]);
64- // }
6582 } else if (
6683 values ?. length &&
6784 ! routeState ?. state ?. routeFromComponent &&
6885 ! routeState ?. state ?. routeFromEditComponent
6986 ) {
7087 setInputFields ( [ ...values ] ) ;
88+ childStateRef . current = values ;
7189 } else {
7290 setInputFields ( [ { key : '' , value : '' } ] ) ;
7391 }
74-
92+ // debugger;
7593 // eslint-disable-next-line react-hooks/exhaustive-deps
7694 } , [ routeState , setInputFields ] ) ;
7795 console . log ( inputFields , routeState , 'inputFisdsdeldsinputFields' ) ;
@@ -107,6 +125,7 @@ const Selector: React.FC<Props> = ({
107125
108126 setInputFields ( values ) ;
109127 onSetInputFields ( values ) ;
128+
110129 // const keys = values.map((object) => object.key);
111130 // const value = values.map((object) => object.value);
112131
0 commit comments