+
+
+
+
+
+
+ setTaskCount(Number(e.currentTarget.value))}
+ disabled={isFormDisabled}
+ />
+
+
+ {postError && (
+ Error submitting task list
+ )}
+ {useCasesError && (
+ Error fetching task list results
+ )}
+
+ {useCasesData?.result && (
+
+
+ Generated Task Lists:
+
+ {useCasesData.result.useCases.map((useCase: any) => (
+
+
+
+
+
+
+
+
+
+
+ ))}
+
+ )}
+
+ );
+};
diff --git a/src/pages/Plan/modules/Factory/modules/Tasks/Component/parts/TasksList.tsx b/src/pages/Plan/modules/Factory/modules/Tasks/Component/parts/TasksList.tsx
index c8b319c20..e579b2fb1 100644
--- a/src/pages/Plan/modules/Factory/modules/Tasks/Component/parts/TasksList.tsx
+++ b/src/pages/Plan/modules/Factory/modules/Tasks/Component/parts/TasksList.tsx
@@ -5,19 +5,22 @@ import {
Message,
Span,
} from '@appquality/unguess-design-system';
-import { useState } from 'react';
+import { useMemo, useState } from 'react';
import { useTranslation } from 'react-i18next';
import { appTheme } from 'src/app/theme';
import { FEATURE_FLAG_CHANGE_MODULES_VARIANTS } from 'src/constants';
+import { useGetServicesApiKHealthQuery } from 'src/features/api';
import { useModule } from 'src/features/modules/useModule';
import { useModuleConfiguration } from 'src/features/modules/useModuleConfiguration';
import { useFeatureFlag } from 'src/hooks/useFeatureFlag';
import useWindowSize from 'src/hooks/useWindowSize';
+import { useCanShowAiChat } from 'src/pages/Dashboard/hooks/useCanShowAiChat';
import { DeleteModuleConfirmationModal } from 'src/pages/Plan/modules/modal/DeleteModuleConfirmationModal';
import styled from 'styled-components';
import { useIconWithValidation } from '../../useIcon';
import { useModuleTasks } from '../hooks';
import { AddTaskButton } from './AddTaskButton';
+import { CreateTaskListsWithAI } from './CreateTaskListsWithAI';
import { TasksModal } from './modal';
import { TasksContainerAnimation } from './TasksContainerAnimation';
@@ -51,12 +54,22 @@ const TasksList = () => {
const { getPlanStatus } = useModuleConfiguration();
const { t } = useTranslation();
const { hasFeatureFlag } = useFeatureFlag();
+ const { data: apiK_HealthResponse } = useGetServicesApiKHealthQuery();
const [isOpenDeleteModal, setIsOpenDeleteModal] = useState(false);
const Icon = useIconWithValidation();
const { width } = useWindowSize();
const breakpointSm = parseInt(appTheme.breakpoints.sm, 10);
const isMobile = width < breakpointSm;
+ const canShowChat = useCanShowAiChat();
+ const canShowAiFeatures = useMemo(
+ () =>
+ canShowChat &&
+ apiK_HealthResponse?.success &&
+ apiK_HealthResponse?.status === 'healthy',
+ [apiK_HealthResponse, canShowChat]
+ );
+
const handleDelete = () => {
setIsOpenDeleteModal(true);
};
@@ -100,7 +113,7 @@ const TasksList = () => {
{t('__PLAN_PAGE_MODULE_TASKS_SUBTITLE')}