Timeline MVVM 1 - Shared TimelineView and Overlay Buttons (#34464)
* Add shared timeline overlay buttons and view contract The TimelineOverlayButtons presentational component (unread bar, jump-to-bottom) plus the shared TimelineView VM contract (types) and its i18n strings. Consumed by the TimelineView virtualizer in a follow-up commit. * Add shared TimelineView component (TanStack Virtual) Headless TanStack-Virtual timeline driven from RoomTimelineViewModel: anchorTo:"end" viewport stability across prepends/trims, cold-load cover, jump-to via scrollToOffset, and visible-state reporting via the virtualizer's onChange. Adds the @tanstack/react-virtual dependency and the virtual-core isValidAnchorItem patch (runtime + types). * Use Compound spacing tokens in timeline overlay and clarify comments - Use Compound spacing tokens for overlay margins/insets instead of raw px - Drop the stale Virtuoso reference from the overlay CSS comment - Note the real-world duration of COLD_CAP_FRAMES - Describe each load phase in plain English * Remove jargon and explain/expand things in simple terms. * Use time rather than a frame count and improve description.
This commit is contained in:
Generated
+21
@@ -311,6 +311,7 @@ packageExtensionsChecksum: sha256-kCJccFy7l6HmjcpzmxV958fHndI9zZq246f1ttgkURI=
|
||||
patchedDependencies:
|
||||
'@arcmantle/vite-plugin-import-css-sheet': 8019aa9feca17db6bab3483612b4150c911d70b58fddc52bf2d7258a1484a747
|
||||
'@matrix-org/react-sdk-module-api': 016146c9cc96e6363609d2b2ac0896ccef567882eb1d73b75a77b8a30929de96
|
||||
'@tanstack/virtual-core@3.17.6': 9db9d80c4fe7a7a9911643522aef9bc9359075570c38f3d847ff75ed635d921c
|
||||
'@types/auto-launch': b60dc9846a11a1684ce52c55493f29ea398d3dc44b88f66ab44e9843d6c01538
|
||||
'@vector-im/matrix-wysiwyg': 7bdf6150f2905bc2f055a6bcaa7b9d78fa7ffde82e800bcc454ac7b0096bd65e
|
||||
await-lock: b767a571946a4f8710ac54b1a7bec8a7c1570f9b85d75922392fae20d0578964
|
||||
@@ -1384,6 +1385,9 @@ importers:
|
||||
'@matrix-org/spec':
|
||||
specifier: ^1.7.0
|
||||
version: 1.16.0
|
||||
'@tanstack/react-virtual':
|
||||
specifier: 3.14.8
|
||||
version: 3.14.8(react-dom@19.2.8)(react@19.2.8)
|
||||
'@vector-im/compound-design-tokens':
|
||||
specifier: 'catalog:'
|
||||
version: 10.2.1(@types/react@19.2.18)(react@19.2.8)
|
||||
@@ -5826,6 +5830,15 @@ packages:
|
||||
resolution: {integrity: sha512-4BAffykYOgO+5nzBWYwE3W90sBgLJoUPRWWcL8wlyiM8IB8ipJz3UMJ9KXQd1RKQXpKp8Tutn80HZtWsu2u76w==}
|
||||
engines: {node: '>=10'}
|
||||
|
||||
'@tanstack/react-virtual@3.14.8':
|
||||
resolution: {integrity: sha512-O39GJQpAYEJcIu3uN1//YtmhjSEOyw75vg9CKCatBDPiD5hKtZQoJHfferyrB/LdOD3UWaoMLWtdEjarwIwdDw==}
|
||||
peerDependencies:
|
||||
react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0
|
||||
react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0
|
||||
|
||||
'@tanstack/virtual-core@3.17.6':
|
||||
resolution: {integrity: sha512-h0/Ebo18CkOrChlQIhNtQkM5ySUnh/GumQ/D1st3hG2HWUPEF+ILUc2k29UtivCi/9G7w7G3/f7Xyd5cCFbKBw==}
|
||||
|
||||
'@testcontainers/postgresql@12.0.4':
|
||||
resolution: {integrity: sha512-a/pLU6j5lpKKAlUTPwqweqMGhOSjgTSb6HBX69TOrXn32ifU37nnQDmNFTj8ddOAw+BQL9oTRkeOxVbZkqhgZA==}
|
||||
|
||||
@@ -18405,6 +18418,14 @@ snapshots:
|
||||
dependencies:
|
||||
defer-to-connect: 2.0.1
|
||||
|
||||
'@tanstack/react-virtual@3.14.8(react-dom@19.2.8)(react@19.2.8)':
|
||||
dependencies:
|
||||
'@tanstack/virtual-core': 3.17.6(patch_hash=9db9d80c4fe7a7a9911643522aef9bc9359075570c38f3d847ff75ed635d921c)
|
||||
react: 19.2.8
|
||||
react-dom: 19.2.8(react@19.2.8)
|
||||
|
||||
'@tanstack/virtual-core@3.17.6(patch_hash=9db9d80c4fe7a7a9911643522aef9bc9359075570c38f3d847ff75ed635d921c)': {}
|
||||
|
||||
'@testcontainers/postgresql@12.0.4(supports-color@10.2.2)':
|
||||
dependencies:
|
||||
testcontainers: 12.0.4(supports-color@10.2.2)
|
||||
|
||||
Reference in New Issue
Block a user