This commit is contained in:
Morten Olsen
2021-06-09 22:04:10 +02:00
parent 525b7194f0
commit c1393130ed
9 changed files with 340 additions and 95 deletions

View File

@@ -25,6 +25,7 @@ interface UpdateRequest extends BaseRequest {
interface BaseMessage {
id: string;
type: string;
self: boolean;
}
interface IncompleteMessage extends BaseMessage {
@@ -69,6 +70,7 @@ const updateMessage = (
return {
id: message.id,
type: 'complete',
self: message.self,
content: postProcess(JSON.parse(parts.join(''))),
};
}
@@ -83,12 +85,13 @@ const updateMessage = (
const useMessages = (postProcess: (input: any) => any) => {
const [messages, setMessage] = useState<Message[]>([]);
const addMessage = useCallback((request: Request) => {
const addMessage = useCallback((request: Request, self: boolean) => {
setMessage((current) => {
if (request.type === 'start-message') {
const message: IncompleteMessage = {
id: request.payload.id,
type: 'incomplete',
self,
length: request.payload.length,
current: 0,
parts: [],