diff --git a/scm-ui/ui-components/src/layout/GroupEntries.tsx b/scm-ui/ui-components/src/layout/GroupEntries.tsx index ceeb88525d..14523f3e87 100644 --- a/scm-ui/ui-components/src/layout/GroupEntries.tsx +++ b/scm-ui/ui-components/src/layout/GroupEntries.tsx @@ -24,25 +24,17 @@ import React, { FC, ReactNode } from "react"; import classNames from "classnames"; import styled from "styled-components"; -import { Link } from "react-router-dom"; -import { useTranslation } from "react-i18next"; -import { RepositoryGroup } from "@scm-manager/ui-types"; -import { useLocalStorage } from "@scm-manager/ui-api"; -import Icon from "../Icon"; const Separator = styled.div` border-bottom: 1px solid rgb(219, 219, 219, 0.5); `; type Props = { - group: RepositoryGroup; + namespaceHeader: ReactNode; elements: ReactNode[]; }; -const GroupEntries: FC = ({ group, elements }) => { - const [t] = useTranslation("namespaces"); - const [collapsed, setCollapsed] = useLocalStorage(`repoNamespace.${group.name}.collapsed`, null); - +const GroupEntries: FC = ({ namespaceHeader, elements }) => { const content = elements.map((entry, index) => (
{entry}
@@ -50,45 +42,12 @@ const GroupEntries: FC = ({ group, elements }) => {
)); - const settingsLink = group.namespace?._links?.permissions && ( - - - - ); - return ( <> -
setCollapsed(!collapsed)} - > - - - {group.name} - {" "} - {settingsLink} - - +
+ {namespaceHeader}
- {collapsed ? null :
{content}
} +
{content}
); diff --git a/scm-ui/ui-webapp/src/repos/components/list/RepositoryGroupEntry.tsx b/scm-ui/ui-webapp/src/repos/components/list/RepositoryGroupEntry.tsx index ebe099e81c..6464327fdf 100644 --- a/scm-ui/ui-webapp/src/repos/components/list/RepositoryGroupEntry.tsx +++ b/scm-ui/ui-webapp/src/repos/components/list/RepositoryGroupEntry.tsx @@ -22,18 +22,35 @@ * SOFTWARE. */ import React, { FC } from "react"; -import { GroupEntries, RepositoryEntry } from "@scm-manager/ui-components"; +import { Link } from "react-router-dom"; +import { Icon, RepositoryEntry, GroupEntries } from "@scm-manager/ui-components"; import { RepositoryGroup } from "@scm-manager/ui-types"; +import { useTranslation } from "react-i18next"; type Props = { group: RepositoryGroup; }; const RepositoryGroupEntry: FC = ({ group }) => { + const [t] = useTranslation("namespaces"); + + const settingsLink = group.namespace?._links?.permissions && ( + + + + ); + const namespaceHeader = ( + <> + + {group.name} + {" "} + {settingsLink} + + ); const entries = group.repositories.map((repository, index) => { return ; }); - return ; + return ; }; export default RepositoryGroupEntry;