Просмотр исходного кода

refactor: update useSelectedPages to initialize selected pages based on pageMode

Shun Miyazawa 8 месяцев назад
Родитель
Сommit
deb53269d7
1 измененных файлов с 6 добавлено и 2 удалено
  1. 6 2
      apps/app/src/features/openai/client/services/use-selected-pages.tsx

+ 6 - 2
apps/app/src/features/openai/client/services/use-selected-pages.tsx

@@ -1,6 +1,8 @@
 import { useState, useCallback, useEffect } from 'react';
 import { useState, useCallback, useEffect } from 'react';
 
 
 import type { SelectedPage } from '../../interfaces/selected-page';
 import type { SelectedPage } from '../../interfaces/selected-page';
+import { useAiAssistantManagementModal } from '../stores/ai-assistant';
+
 
 
 type UseSelectedPages = {
 type UseSelectedPages = {
   selectedPages: Map<string, SelectedPage>,
   selectedPages: Map<string, SelectedPage>,
@@ -11,9 +13,11 @@ type UseSelectedPages = {
 
 
 export const useSelectedPages = (initialPages?: SelectedPage[]): UseSelectedPages => {
 export const useSelectedPages = (initialPages?: SelectedPage[]): UseSelectedPages => {
   const [selectedPages, setSelectedPages] = useState<Map<string, SelectedPage>>(new Map());
   const [selectedPages, setSelectedPages] = useState<Map<string, SelectedPage>>(new Map());
+  const { data: aiAssistantManagementModalData } = useAiAssistantManagementModal();
 
 
   useEffect(() => {
   useEffect(() => {
-    if (initialPages) {
+    // Initialize each time PageMode is changed
+    if (initialPages != null && aiAssistantManagementModalData?.pageMode != null) {
       const initialMap = new Map<string, SelectedPage>();
       const initialMap = new Map<string, SelectedPage>();
       initialPages.forEach((page) => {
       initialPages.forEach((page) => {
         if (page.path != null) {
         if (page.path != null) {
@@ -22,7 +26,7 @@ export const useSelectedPages = (initialPages?: SelectedPage[]): UseSelectedPage
       });
       });
       setSelectedPages(initialMap);
       setSelectedPages(initialMap);
     }
     }
-  }, [initialPages]);
+  }, [aiAssistantManagementModalData?.pageMode, initialPages]);
 
 
   const addPage = useCallback((page: SelectedPage) => {
   const addPage = useCallback((page: SelectedPage) => {
     setSelectedPages((prev) => {
     setSelectedPages((prev) => {