diff --git a/scm-ui-components/packages/ui-components/src/ErrorNotification.js b/scm-ui-components/packages/ui-components/src/ErrorNotification.js index b8acf89733..72173679dd 100644 --- a/scm-ui-components/packages/ui-components/src/ErrorNotification.js +++ b/scm-ui-components/packages/ui-components/src/ErrorNotification.js @@ -10,35 +10,33 @@ type Props = { error?: Error }; - class ErrorNotification extends React.Component { render() { const { t, error } = this.props; if (error) { if (error instanceof BackendError) { - return + return ; } else if (error instanceof UnauthorizedError) { return ( - {t("error-notification.prefix")}:{" "} - {t("error-notification.timeout")}{" "} + {t("errorNotification.prefix")}:{" "} + {t("errorNotification.timeout")}{" "} - {t("error-notification.loginLink")} + {t("errorNotification.loginLink")} ); } else if (error instanceof ForbiddenError) { return ( - {t("error-notification.prefix")}:{" "} - {t("error-notification.forbidden")} + {t("errorNotification.prefix")}:{" "} + {t("errorNotification.forbidden")} - ) - } else - { + ); + } else { return ( - {t("error-notification.prefix")}: {error.message} + {t("errorNotification.prefix")}: {error.message} ); } @@ -47,4 +45,4 @@ class ErrorNotification extends React.Component { } } -export default translate("commons")(ErrorNotification); +export default translate("commons")(ErrorNotification); diff --git a/scm-ui-components/packages/ui-components/src/GroupAutocomplete.js b/scm-ui-components/packages/ui-components/src/GroupAutocomplete.js index 2a9feeec14..e39130f1d7 100644 --- a/scm-ui-components/packages/ui-components/src/GroupAutocomplete.js +++ b/scm-ui-components/packages/ui-components/src/GroupAutocomplete.js @@ -1,34 +1,24 @@ // @flow import React from "react"; import { translate } from "react-i18next"; -import type { SelectValue } from "@scm-manager/ui-types"; +import type AutocompleteProps from "./UserGroupAutocomplete"; import UserGroupAutocomplete from "./UserGroupAutocomplete"; -type Props = { - groupAutocompleteLink: string, - valueSelected: SelectValue => void, - value?: SelectValue, - +type Props = AutocompleteProps & { // Context props t: string => string }; class GroupAutocomplete extends React.Component { - selectName = (selection: SelectValue) => { - this.props.valueSelected(selection); - }; - render() { - const { groupAutocompleteLink, t, value } = this.props; + const { t } = this.props; return ( ); } diff --git a/scm-ui-components/packages/ui-components/src/UserAutocomplete.js b/scm-ui-components/packages/ui-components/src/UserAutocomplete.js index 3f9873608c..9ef7aaa7a7 100644 --- a/scm-ui-components/packages/ui-components/src/UserAutocomplete.js +++ b/scm-ui-components/packages/ui-components/src/UserAutocomplete.js @@ -1,34 +1,24 @@ // @flow import React from "react"; import { translate } from "react-i18next"; -import type { SelectValue } from "@scm-manager/ui-types"; +import type AutocompleteProps from "./UserGroupAutocomplete"; import UserGroupAutocomplete from "./UserGroupAutocomplete"; -type Props = { - userAutocompleteLink: string, - valueSelected: SelectValue => void, - value?: SelectValue, - +type Props = AutocompleteProps & { // Context props t: string => string }; class UserAutocomplete extends React.Component { - selectName = (selection: SelectValue) => { - this.props.valueSelected(selection); - }; - render() { - const { userAutocompleteLink, t, value } = this.props; + const { t } = this.props; return ( ); } diff --git a/scm-ui-components/packages/ui-components/src/UserGroupAutocomplete.js b/scm-ui-components/packages/ui-components/src/UserGroupAutocomplete.js index e0af92f205..0d6e3ec46e 100644 --- a/scm-ui-components/packages/ui-components/src/UserGroupAutocomplete.js +++ b/scm-ui-components/packages/ui-components/src/UserGroupAutocomplete.js @@ -3,12 +3,20 @@ import React from "react"; import type { SelectValue } from "@scm-manager/ui-types"; import Autocomplete from "./Autocomplete"; -type Props = { +export type AutocompleteProps = { autocompleteLink: string, - valueSelected: SelectValue => void + valueSelected: SelectValue => void, + value?: SelectValue }; -class UserGroupAutocomplete extends React.Component { +type Props = AutocompleteProps & { + label: string, + noOptionsMessage: string, + loadingMessage: string, + placeholder: string +}; + +export default class UserGroupAutocomplete extends React.Component { loadSuggestions = (inputValue: string) => { const url = this.props.autocompleteLink; const link = url + "?q="; @@ -42,5 +50,3 @@ class UserGroupAutocomplete extends React.Component { ); } } - -export default UserGroupAutocomplete; diff --git a/scm-ui/public/locales/de/commons.json b/scm-ui/public/locales/de/commons.json index 7c0e326507..012c990833 100644 --- a/scm-ui/public/locales/de/commons.json +++ b/scm-ui/public/locales/de/commons.json @@ -19,11 +19,11 @@ "subtitle": "Ein unbekannter Fehler ist aufgetreten." } }, - "error-notification": { + "errorNotification": { "prefix": "Fehler", "loginLink": "Erneute Anmeldung", "timeout": "Die Session ist abgelaufen.", - "wrong-login-credentials": "Ungültige Anmeldedaten", + "wrongLoginCredentials": "Ungültige Anmeldedaten", "forbidden": "Sie haben nicht die Berechtigung, diesen Datensatz zu sehen" }, "loading": { diff --git a/scm-ui/public/locales/en/commons.json b/scm-ui/public/locales/en/commons.json index d360b557f2..3ec981b0c0 100644 --- a/scm-ui/public/locales/en/commons.json +++ b/scm-ui/public/locales/en/commons.json @@ -19,11 +19,11 @@ "subtitle": "Unknown error occurred" } }, - "error-notification": { + "errorNotification": { "prefix": "Error", "loginLink": "You can login here again.", "timeout": "The session has expired", - "wrong-login-credentials": "Invalid credentials", + "wrongLoginCredentials": "Invalid credentials", "forbidden": "You don't have permission to view this entity" }, "loading": { diff --git a/scm-ui/src/containers/Login.js b/scm-ui/src/containers/Login.js index 4ae9b5a622..d14d9f5896 100644 --- a/scm-ui/src/containers/Login.js +++ b/scm-ui/src/containers/Login.js @@ -95,7 +95,7 @@ class Login extends React.Component { areCredentialsInvalid() { const { t, error } = this.props; if (error instanceof UnauthorizedError) { - return new Error(t("error-notification.wrong-login-credentials")); + return new Error(t("errorNotification.wrongLoginCredentials")); } else { return error; } diff --git a/scm-ui/src/repos/permissions/containers/CreatePermissionForm.js b/scm-ui/src/repos/permissions/containers/CreatePermissionForm.js index 51b43fc2ff..efd92914d3 100644 --- a/scm-ui/src/repos/permissions/containers/CreatePermissionForm.js +++ b/scm-ui/src/repos/permissions/containers/CreatePermissionForm.js @@ -74,7 +74,7 @@ class CreatePermissionForm extends React.Component { if (group) { return ( @@ -82,7 +82,7 @@ class CreatePermissionForm extends React.Component { } return (