feat: Collection admins (#5273

* Split permissions for reading documents from updating collection

* fix: Admins should have collection read permission, tests

* tsc

* Add admin option to permission selector

* Combine publish and create permissions, update -> createDocuments where appropriate

* Plural -> singular

* wip

* Quick version of collection structure loading, will revisit

* Remove documentIds method

* stash

* fixing tests to account for admin creation

* Add self-hosted migration

* fix: Allow groups to have admin permission

* Prefetch collection documents

* fix: Document explorer (move/publish) not working with async documents

* fix: Cannot re-parent document to collection by drag and drop

* fix: Cannot drag to import into collection item without admin permission

* Remove unused isEditor getter
This commit is contained in:
Tom Moor
2023-04-30 09:38:47 -04:00
committed by GitHub
parent 2942e9c78e
commit d8b4fef554
44 changed files with 799 additions and 535 deletions

View File

@@ -73,9 +73,11 @@ export default function useCollectionTrees(): NavigationNode[] {
return addParent(addCollectionId(addDepth(addType(collectionNode))));
};
const key = collections.orderedData.map((o) => o.documents?.length).join("-");
const collectionTrees = React.useMemo(
() => collections.orderedData.map(getCollectionTree),
[collections.orderedData]
// eslint-disable-next-line react-hooks/exhaustive-deps
[collections.orderedData, key]
);
return collectionTrees;