MM-56630 Scroll Fix of center panel (#30144)

* pageup/pagedown button scroll for center post-list

* revert package.json

* changing id, using ? and returning in keyHandler

* added e2e test for pageup/pagedown scroll

* Fix dynamic-virtualized-list not being in lockfile and update path

Moving the package under the MM namespace wasn't necessary, but it stops
some warnings from NPM.

* Move E2E test from Cypress to Playwright

Cypress's cy.type doesn't seem to properly trigger browser functions
because it doesn't seem to use native keyboard events. A newer version
of Cypress has a new cy.press method which is supposed to use native
keyboard events, but it also only supports the tab key currently, so it
wouldn't be useful here.

* Fix new test on iPad

* Add page up/down support to RHS and Threads view

* Update type definitions for dynamic-virtualized-list

---------

Co-authored-by: Harrison Healey <harrisonmhealey@gmail.com>
Этот коммит содержится в:
Arya Khochare
2025-04-24 20:45:40 +05:30
коммит произвёл GitHub
родитель 89319cafb1
Коммит faf68a6d86
10 изменённых файлов: 180 добавлений и 29 удалений

46
webapp/package-lock.json сгенерированный
Просмотреть файл

@@ -67,6 +67,7 @@
"@mattermost/client": "*",
"@mattermost/compass-components": "^0.2.12",
"@mattermost/desktop-api": "5.10.0-2",
"@mattermost/dynamic-virtualized-list": "github:mattermost/dynamic-virtualized-list#08dde0c34a12d0384740db27d55e398d139d7a51",
"@mattermost/types": "*",
"@mui/base": "5.0.0-alpha.127",
"@mui/material": "5.11.16",
@@ -87,7 +88,6 @@
"crypto-browserify": "3.12.0",
"css-vars-ponyfill": "2.4.8",
"date-fns": "2.29.3",
"dynamic-virtualized-list": "github:mattermost/dynamic-virtualized-list#3fe918b41de4cb08dbf43f1207bb58827b38e833",
"emoji-regex": "10.2.1",
"exif2css": "1.3.0",
"fast-deep-equal": "3.1.3",
@@ -335,27 +335,6 @@
"node": ">=12"
}
},
"channels/node_modules/dynamic-virtualized-list": {
"version": "1.0.0-beta",
"resolved": "git+ssh://git@github.com/mattermost/dynamic-virtualized-list.git#3fe918b41de4cb08dbf43f1207bb58827b38e833",
"integrity": "sha512-dXhFLX7i5VZahMCPNr+i1SX+KW+/kAxYfOyYLFhKMTJW/aMS9Yrv5kbeIqoGMSMOG5M82N+ZFiVn8jGingkO5Q==",
"dependencies": {
"@babel/runtime": "^7.0.0",
"memoize-one": "^3.1.1"
},
"engines": {
"node": ">8.0.0"
},
"peerDependencies": {
"react": "^17.0.2",
"react-dom": "^17.0.2"
}
},
"channels/node_modules/dynamic-virtualized-list/node_modules/memoize-one": {
"version": "3.1.1",
"resolved": "https://registry.npmjs.org/memoize-one/-/memoize-one-3.1.1.tgz",
"integrity": "sha512-YqVh744GsMlZu6xkhGslPSqSurOv6P+kLN2J3ysBZfagLcL5FdRK/0UpgLoL8hwjjEvvAVkjJZyFP+1T6p1vgA=="
},
"channels/node_modules/enzyme-adapter-react-17-updated": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/enzyme-adapter-react-17-updated/-/enzyme-adapter-react-17-updated-1.0.2.tgz",
@@ -5287,6 +5266,29 @@
}
}
},
"node_modules/@mattermost/dynamic-virtualized-list": {
"name": "dynamic-virtualized-list",
"version": "1.0.0-beta",
"resolved": "git+ssh://git@github.com/mattermost/dynamic-virtualized-list.git#08dde0c34a12d0384740db27d55e398d139d7a51",
"integrity": "sha512-uz8U9ufO7HvY9MMa/aoiyqiLEFqyHH67PM0sTVqdX9ooQ9ZPwNx4H4hudXgL9OKfqFbRTciOFfL5tCODUPdGcA==",
"license": "MIT",
"dependencies": {
"@babel/runtime": "^7.0.0",
"memoize-one": "^3.1.1"
},
"engines": {
"node": ">8.0.0"
},
"peerDependencies": {
"react": "^17.0.2",
"react-dom": "^17.0.2"
}
},
"node_modules/@mattermost/dynamic-virtualized-list/node_modules/memoize-one": {
"version": "3.1.1",
"resolved": "https://registry.npmjs.org/memoize-one/-/memoize-one-3.1.1.tgz",
"integrity": "sha512-YqVh744GsMlZu6xkhGslPSqSurOv6P+kLN2J3ysBZfagLcL5FdRK/0UpgLoL8hwjjEvvAVkjJZyFP+1T6p1vgA=="
},
"node_modules/@mattermost/eslint-plugin": {
"resolved": "platform/eslint-plugin",
"link": true