Validate namespaces correctly

This commit is contained in:
René Pfeuffer
2020-09-10 09:18:50 +02:00
parent 4df9c2947b
commit 94105f7766
4 changed files with 30 additions and 14 deletions

View File

@@ -268,7 +268,7 @@ class RepositoryForm extends React.Component<Props, State> {
handleNamespaceChange = (namespace: string) => {
this.setState({
namespaceValidationError: !validator.isNameValid(namespace),
namespaceValidationError: !validator.isNamespaceValid(namespace),
repository: {
...this.state.repository,
namespace

View File

@@ -25,6 +25,11 @@
import { validation } from "@scm-manager/ui-components";
const nameRegex = /(?!^\.\.$)(?!^\.$)(?!.*[.]git$)(?!.*[\\\[\]])^[A-Za-z0-9\.][A-Za-z0-9\.\-_]*$/;
const namespaceExceptionsRegex = /^(([0-9]{1,3})|(create))$/;
export const isNamespaceValid = (name: string) => {
return nameRegex.test(name) && !namespaceExceptionsRegex.test(name);
};
export const isNameValid = (name: string) => {
return nameRegex.test(name);