import { Application } from '@nocobase/server';
import { CollectionGroup } from '@nocobase/database';
export class CollectionGroupManager {
static collectionGroups: CollectionGroup[] = [];
static getGroups(app: Application) {
return app.db.collectionGroupManager.getGroups();
}
static getGroupsCollections(groups: CollectionGroup[]) {
if (!groups || groups.length == 0) {
return [];
return groups.map((collectionGroup) => collectionGroup.collections).flat();
static classifyCollectionGroups(collectionGroups: CollectionGroup[]) {
const requiredGroups = collectionGroups.filter((collectionGroup) => collectionGroup.dumpable === 'required');
const optionalGroups = collectionGroups.filter((collectionGroup) => collectionGroup.dumpable === 'optional');
return {
requiredGroups,
optionalGroups,
};