From 24da17e0a917ba0cffe7233c27b3de07dad0678d Mon Sep 17 00:00:00 2001 From: Florian Scholdei Date: Tue, 9 Apr 2019 14:47:37 +0200 Subject: [PATCH] added no repositories found notification --- scm-ui/public/locales/de/repos.json | 1 + scm-ui/public/locales/en/repos.json | 1 + scm-ui/src/groups/containers/Groups.js | 5 ++--- scm-ui/src/repos/containers/Overview.js | 26 ++++++++++++++++++++----- 4 files changed, 25 insertions(+), 8 deletions(-) diff --git a/scm-ui/public/locales/de/repos.json b/scm-ui/public/locales/de/repos.json index 6f7846df72..38adddf7dd 100644 --- a/scm-ui/public/locales/de/repos.json +++ b/scm-ui/public/locales/de/repos.json @@ -37,6 +37,7 @@ "overview": { "title": "Repositories", "subtitle": "Übersicht aller verfügbaren Repositories", + "noRepositories": "Keine Repositories gefunden.", "createButton": "Repository erstellen" }, "create": { diff --git a/scm-ui/public/locales/en/repos.json b/scm-ui/public/locales/en/repos.json index 89492f427d..84f7fd5740 100644 --- a/scm-ui/public/locales/en/repos.json +++ b/scm-ui/public/locales/en/repos.json @@ -37,6 +37,7 @@ "overview": { "title": "Repositories", "subtitle": "Overview of available repositories", + "noRepositories": "No repositories found.", "createButton": "Create Repository" }, "create": { diff --git a/scm-ui/src/groups/containers/Groups.js b/scm-ui/src/groups/containers/Groups.js index 8315614b4c..d54f4f5be4 100644 --- a/scm-ui/src/groups/containers/Groups.js +++ b/scm-ui/src/groups/containers/Groups.js @@ -2,13 +2,13 @@ import React from "react"; import { connect } from "react-redux"; import { translate } from "react-i18next"; -import type { Group } from "@scm-manager/ui-types"; -import type { PagedCollection } from "@scm-manager/ui-types"; +import type { Group, PagedCollection } from "@scm-manager/ui-types"; import type { History } from "history"; import { Page, PageActions, Button, + Notification, Paginator } from "@scm-manager/ui-components"; import { GroupTable } from "./../components/table"; @@ -24,7 +24,6 @@ import { selectListAsCollection } from "../modules/groups"; import { getGroupsLink } from "../../modules/indexResource"; -import Notification from "@scm-manager/ui-components/src/Notification"; type Props = { groups: Group[], diff --git a/scm-ui/src/repos/containers/Overview.js b/scm-ui/src/repos/containers/Overview.js index 1d672aafb1..b8cffae191 100644 --- a/scm-ui/src/repos/containers/Overview.js +++ b/scm-ui/src/repos/containers/Overview.js @@ -19,6 +19,7 @@ import { PageActions, Button, CreateButton, + Notification, Paginator } from "@scm-manager/ui-components"; import RepositoryList from "../components/list"; @@ -72,19 +73,34 @@ class Overview extends React.Component { loading={loading} error={error} > - {this.renderList()} + {this.renderOverview()} {this.renderPageActionCreateButton()} ); } - renderList() { - const { collection, fetchReposByLink } = this.props; + renderRepositoryList() { + const { collection, fetchReposByLink, t } = this.props; + + if (collection._embedded && collection._embedded.repositories.length > 0) { + return ( + <> + + + + ); + } + return ( + {t("overview.noRepositories")} + ); + } + + renderOverview() { + const { collection } = this.props; if (collection) { return (
- - + {this.renderRepositoryList()} {this.renderCreateButton()}
);