Collapse already-seen sets of timeline items

This commit is contained in:
Scott Nonnenberg
2026-03-21 02:58:24 +10:00
committed by GitHub
parent 3f34ef9693
commit 27ad6f3294
17 changed files with 1422 additions and 169 deletions

View File

@@ -210,7 +210,12 @@ describe('<Timeline> utilities', () => {
});
describe('getScrollAnchorBeforeUpdate', () => {
const fakeItems = (count: number) => times(count, () => uuid());
const fakeItems = (count: number) =>
times(count, () => ({
type: 'none' as const,
id: uuid(),
messages: undefined,
}));
const defaultProps = {
haveNewest: true,
@@ -400,7 +405,13 @@ describe('<Timeline> utilities', () => {
describe('when a new message comes in', () => {
const oldItems = fakeItems(5);
const prevProps = { ...defaultProps, items: oldItems };
const props = { ...defaultProps, items: [...oldItems, uuid()] };
const props = {
...defaultProps,
items: [
...oldItems,
{ type: 'none' as const, id: uuid(), messages: undefined },
],
};
it('does nothing if not scrolled to the bottom', () => {
const isAtBottom = false;