remix-nlux
Version:
Remix IDE NLUX integration. Remix IDE is the leading IDE for building and deploying smart contracts on Ethereum. NLUX is a JavaScript and React library for building conversational AI experiences.
25 lines (21 loc) • 726 B
text/typescript
import {emptyInnerHtml} from '../../../utils/dom/emptyInnerHtml';
import {MessageProps} from '../props';
import {statusClassName} from './applyNewStatusClassName';
export const updateContentOnStatusChange = (
element: HTMLElement,
propsBefore: MessageProps,
propsAfter: MessageProps,
) => {
const newStatus = propsAfter.status;
if (newStatus === 'streaming') {
return;
}
if (newStatus === 'complete') {
const innerHtml = propsAfter.message ? propsAfter.message : '';
const textNode = document.createTextNode(innerHtml);
element.classList.add(statusClassName[newStatus]);
emptyInnerHtml(element);
element.append(textNode);
return;
}
};