You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Hydro/packages/ui-default/pages/record_detail.page.ts

24 lines
745 B
TypeScript

import { NamedPage } from 'vj/misc/Page';
const page = new NamedPage('record_detail', async () => {
if (!UiContext.socketUrl) return;
const [{ default: SockJs }, { DiffDOM }] = await Promise.all([
import('../components/socket'),
import('diff-dom'),
]);
const sock = new SockJs(UiContext.socketUrl);
const dd = new DiffDOM();
sock.onmessage = (message) => {
const msg = JSON.parse(message.data);
const newStatus = $(msg.status_html);
const oldStatus = $('#status');
dd.apply(oldStatus[0], dd.diff(oldStatus[0], newStatus[0]));
const newSummary = $(msg.summary_html);
const oldSummary = $('#summary');
dd.apply(oldSummary[0], dd.diff(oldSummary[0], newSummary[0]));
};
});
export default page;