diff --git a/scm-ui-components/packages/ui-components/src/forms/MarkdownView.js b/scm-ui-components/packages/ui-components/src/forms/MarkdownView.js new file mode 100644 index 0000000000..c1f46f7881 --- /dev/null +++ b/scm-ui-components/packages/ui-components/src/forms/MarkdownView.js @@ -0,0 +1,20 @@ +//@flow +import React from "react"; + +type Props = { + content: string +}; + +class MarkdownView extends React.Component { + + render() { + const {content } = this.props; + return ( +
+ {content} +
+ ); + } +} + +export default MarkdownView; diff --git a/scm-ui-components/packages/ui-components/src/forms/index.js b/scm-ui-components/packages/ui-components/src/forms/index.js index ef4d7a1ae4..ae983cb147 100644 --- a/scm-ui-components/packages/ui-components/src/forms/index.js +++ b/scm-ui-components/packages/ui-components/src/forms/index.js @@ -11,4 +11,5 @@ export { default as Textarea } from "./Textarea.js"; export { default as PasswordConfirmation } from "./PasswordConfirmation.js"; export { default as LabelWithHelpIcon } from "./LabelWithHelpIcon.js"; export { default as DropDown } from "./DropDown.js"; +export { default as MarkdownView } from "./MarkdownView.js"; diff --git a/scm-ui/src/containers/Main.js b/scm-ui/src/containers/Main.js index e963fb00f9..6ce4e982fa 100644 --- a/scm-ui/src/containers/Main.js +++ b/scm-ui/src/containers/Main.js @@ -40,7 +40,7 @@ class Main extends React.Component { return (
- + { stripEndingSlash = (url: string) => { if (url.endsWith("/")) { - return url.substring(0, url.length - 2); + return url.substring(0, url.length - 1); } return url; }; @@ -101,13 +101,22 @@ class RepositoryRoot extends React.Component { indexLinks }; + const redirectUrlFactory = binder.getExtension("repository.redirect", this.props); + let redirectedUrl; + if (redirectUrlFactory){ + redirectedUrl = url + redirectUrlFactory(this.props); + }else{ + redirectedUrl = url + "/info"; + } + return (
+ } /> @@ -172,8 +181,13 @@ class RepositoryRoot extends React.Component {
+