|
1 | 1 | import { message } from 'antd';
|
2 |
| -import { useCallback } from 'react'; |
| 2 | +import { useCallback, useMemo } from 'react'; |
3 | 3 |
|
4 | 4 | import { ModulePositionInput } from '@app/homeV3/template/types';
|
5 | 5 |
|
@@ -149,14 +149,24 @@ export function useModuleOperations(
|
149 | 149 | const [upsertPageModuleMutation] = useUpsertPageModuleMutation();
|
150 | 150 |
|
151 | 151 | // Create context object to avoid passing many parameters
|
152 |
| - const context: TemplateUpdateContext = { |
153 |
| - isEditingGlobalTemplate, |
154 |
| - personalTemplate, |
155 |
| - globalTemplate, |
156 |
| - setPersonalTemplate, |
157 |
| - setGlobalTemplate, |
158 |
| - upsertTemplate, |
159 |
| - }; |
| 152 | + const context: TemplateUpdateContext = useMemo( |
| 153 | + () => ({ |
| 154 | + isEditingGlobalTemplate, |
| 155 | + personalTemplate, |
| 156 | + globalTemplate, |
| 157 | + setPersonalTemplate, |
| 158 | + setGlobalTemplate, |
| 159 | + upsertTemplate, |
| 160 | + }), |
| 161 | + [ |
| 162 | + isEditingGlobalTemplate, |
| 163 | + personalTemplate, |
| 164 | + globalTemplate, |
| 165 | + setPersonalTemplate, |
| 166 | + setGlobalTemplate, |
| 167 | + upsertTemplate, |
| 168 | + ], |
| 169 | + ); |
160 | 170 |
|
161 | 171 | // Updates template state with a new module and updates the appropriate template on the backend
|
162 | 172 | const addModule = useCallback(
|
@@ -187,15 +197,7 @@ export function useModuleOperations(
|
187 | 197 | // Persist changes
|
188 | 198 | persistTemplateChanges(context, updatedTemplate, isPersonal, 'add module');
|
189 | 199 | },
|
190 |
| - [ |
191 |
| - isEditingGlobalTemplate, |
192 |
| - personalTemplate, |
193 |
| - globalTemplate, |
194 |
| - setPersonalTemplate, |
195 |
| - setGlobalTemplate, |
196 |
| - upsertTemplate, |
197 |
| - updateTemplateWithModule, |
198 |
| - ], |
| 200 | + [context, updateTemplateWithModule], |
199 | 201 | );
|
200 | 202 |
|
201 | 203 | // Removes a module from the template state and updates the appropriate template on the backend
|
@@ -227,15 +229,7 @@ export function useModuleOperations(
|
227 | 229 | // Persist changes
|
228 | 230 | persistTemplateChanges(context, updatedTemplate, isPersonal, 'remove module');
|
229 | 231 | },
|
230 |
| - [ |
231 |
| - isEditingGlobalTemplate, |
232 |
| - personalTemplate, |
233 |
| - globalTemplate, |
234 |
| - setPersonalTemplate, |
235 |
| - setGlobalTemplate, |
236 |
| - upsertTemplate, |
237 |
| - removeModuleFromTemplate, |
238 |
| - ], |
| 232 | + [context, removeModuleFromTemplate], |
239 | 233 | );
|
240 | 234 |
|
241 | 235 | // Takes input and makes a call to create a module then add that module to the template
|
|
0 commit comments