import { ContainerRequestResource } from "models/container-request";
import { FavoritesState } from "store/favorites/favorites-reducer";
import { resourceIsFrozen } from "common/frozen-resources";
-import { ProjectResource } from "models/project";
import { getResourceWithEditableStatus } from "store/resources/resources";
import { GroupResource } from "models/group";
import { EditableResource } from "models/resource";
import { CollectionResource } from "models/collection";
import { getProcess } from "store/processes/process";
import { Process } from "store/processes/process";
+import { PublicFavoritesState } from "store/public-favorites/public-favorites-reducer";
type CssRules = "root" | "button";
checkedList: TCheckedList;
selectedUuid: string | null
iconProps: IconProps
- user: User
+ user: User | null
executeMulti: (action: ContextMenuAction, checkedList: TCheckedList, resources: ResourcesState) => void;
};
type IconProps = {
resources: ResourcesState;
- favorites: FavoritesState
+ favorites: FavoritesState;
+ publicFavorites: PublicFavoritesState;
}
export const MultiselectToolbar = connect(
<React.Fragment>
<Toolbar
className={classes.root}
- style={{ width: `${actions.length * 2.5}rem` }}
+ style={{ width: `${(actions.length * 2.5) + 1}rem` }}
>
{actions.length ? (
actions.map((action, i) =>
return actionArray[0].filter(action => filters.has(action.name as string));
}
-const resourceToMsResourceKind = (uuid: string, resources: ResourcesState, user: User, readonly = false): (msMenuResourceKind | ResourceKind) | undefined => {
+const resourceToMsResourceKind = (uuid: string, resources: ResourcesState, user: User | null, readonly = false): (msMenuResourceKind | ResourceKind) | undefined => {
+ if (!user) return;
const resource = getResourceWithEditableStatus<GroupResource & EditableResource>(uuid, user.uuid)(resources);
const { isAdmin } = user;
const kind = extractUuidKind(uuid);
});
}
});
-console.log(currentResourceKinds,allFiltersArray)
+
const filteredNameSet = allFiltersArray.map(filterArray => {
const resultSet = new Set<string>();
filterArray.forEach(action => resultSet.add(action.name as string || ""));
//--------------------------------------------------//
-function mapStateToProps({auth, multiselect, resources, favorites}: RootState) {
+function mapStateToProps({auth, multiselect, resources, favorites, publicFavorites}: RootState) {
return {
checkedList: multiselect.checkedList as TCheckedList,
selectedUuid: isExactlyOneSelected(multiselect.checkedList),
- user: auth.user,
+ user: auth && auth.user ? auth.user : null,
iconProps: {
resources,
- favorites
+ favorites,
+ publicFavorites
}
}
}