Pre release (#1218)

This commit is contained in:
Abhinav Kumar 2023-06-30 16:33:02 +05:30 committed by GitHub
commit 02ef82a3db
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 48 additions and 0 deletions

8
.github/dependabot.yml vendored Normal file
View file

@ -0,0 +1,8 @@
version: 2
updates:
- package-ecosystem: 'npm'
directory: '/'
schedule:
interval: 'monthly'
open-pull-requests-limit: 5

View file

@ -547,6 +547,10 @@ export default function Gallery() {
archivedCollections,
]);
useEffect(() => {
return setupCtrlAHandler(filteredData);
}, [filteredData]);
const fileToCollectionsMap = useMemoSingleThreaded(() => {
return constructFileToCollectionMap(files);
}, [files]);
@ -612,6 +616,25 @@ export default function Gallery() {
}
};
const setupCtrlAHandler = (filteredData) => {
const ctrlAHandler = (e: KeyboardEvent) => {
// setup ctrl/cmd + a handler
if (
(e.ctrlKey || e.metaKey) &&
e.key.toLowerCase() === 'a' &&
!e.shiftKey &&
!e.altKey
) {
e.preventDefault();
selectAll(filteredData);
}
};
document.addEventListener('keydown', ctrlAHandler);
return () => {
document.removeEventListener('keydown', ctrlAHandler);
};
};
const setDerivativeState = async (
user: User,
collections: Collection[],
@ -642,6 +665,23 @@ export default function Gallery() {
setSelected({ ownCount: 0, count: 0, collectionID: 0 });
};
const selectAll = function (filteredData) {
const selected = {
ownCount: 0,
count: 0,
collectionID: activeCollection,
};
filteredData.forEach((item) => {
if (item.ownerID === user.id) {
selected.ownCount++;
}
selected.count++;
selected[item.id] = true;
});
setSelected(selected);
};
if (!collectionSummaries || !filteredData) {
return <div />;
}