import React, { useMemo } from 'react';
import { QueryResult, QueryResultItem } from '@aws-sdk/client-kendra';
import Answer from './kendra/Answer';
import QuestionAnswer from './kendra/QuestionAnswer';
import Documents from './kendra/Documents';
import NotFound from './kendra/NotFound';
interface KendraContentProps {
json: string;
}
function KendraContent(props: KendraContentProps) {
const { answer, questionAnswer, documents } = useMemo(() => {
const res: QueryResult = JSON.parse(props.json);
const items: QueryResultItem[] = res.ResultItems || [];
const answer = items.find((item) => item.Type === 'ANSWER');
const questionAnswer = items.find(
(item) => item.Type === 'QUESTION_ANSWER'
);
const documents = items.filter((item) => item.Type === 'DOCUMENT');
return { answer, questionAnswer, documents };
}, [props]);
if (answer) {
return ;
} else if (questionAnswer) {
return ;
} else if (documents.length > 0) {
return ;
} else {
return ;
}
}
export default KendraContent;