@@ -168,12 +168,36 @@ const AccessModelForm: React.FC<AccessModelProps> = ({
168168
169169 const [ resId , setResId ] = useState ( '' ) ;
170170
171- // Inside handleAddResource function
172171 const handleAddResource = ( resourceId : any ) => {
173- setSelectedResources ( resourceId ) ;
172+ setSelectedResources ( ( prevResources ) => [ ... prevResources , resourceId ] ) ;
174173 setResId ( '' ) ;
175- setAvailableResources ( resourceId ) ; // Filter out the selected resource
176- setSelectedFields ( resourceId ) ;
174+ setAvailableResources ( ( prevAvailableResources ) =>
175+ prevAvailableResources . filter ( ( resource ) => resource . value !== resourceId )
176+ ) ;
177+ setSelectedFields ( ( prevFields ) => [ ...prevFields , resourceId ] ) ;
178+
179+ // setAccessModelData((prevData) => ({
180+ // ...prevData,
181+ // resources: [...prevData.resources, { id: resourceId }],
182+ // }));
183+ } ;
184+
185+ const handleSelectAll = ( ) => {
186+ const allResources =
187+ data ?. datasetResources . map ( ( resource : any ) => ( {
188+ label : resource . name ,
189+ value : resource . id ,
190+ schema : resource . schema ,
191+ } ) ) || [ ] ;
192+
193+ setSelectedFields ( allResources ) ;
194+ setSelectedResources ( allResources ) ;
195+ setShowSelectAll ( false ) ;
196+
197+ setAccessModelData ( ( prevData ) => ( {
198+ ...prevData ,
199+ resources : allResources . map ( ( resource : any ) => ( { id : resource . value } ) ) ,
200+ } ) ) ;
177201 } ;
178202
179203 const handleRemoveResource = ( resourceId : any ) => {
@@ -195,19 +219,6 @@ const AccessModelForm: React.FC<AccessModelProps> = ({
195219 } ) ) ;
196220 } ;
197221
198- const handleSelectAll = ( ) => {
199- const allResources =
200- data ?. datasetResources . map ( ( resource : any ) => ( {
201- label : resource . name ,
202- value : resource . id ,
203- schema : resource . schema ,
204- } ) ) || [ ] ;
205- setSelectedFields ( allResources ) ;
206-
207- setSelectedResources ( allResources ) ;
208- setShowSelectAll ( false ) ;
209- } ;
210-
211222 const { mutate, isLoading : editMutationLoading } = useMutation (
212223 ( data : { accessModelInput : EditAccessModelInput } ) =>
213224 GraphQL ( editaccessModel , data ) ,
@@ -305,7 +316,7 @@ const AccessModelForm: React.FC<AccessModelProps> = ({
305316 < div className = "text-center" >
306317 < Button
307318 onClick = { ( ) =>
308- mutate ( {
319+ console . log ( {
309320 accessModelInput : {
310321 name : accessModelData . name ,
311322 resources : accessModelData . resources ,
0 commit comments