diff --git a/scm-ui-components/packages/ui-components/src/index.js b/scm-ui-components/packages/ui-components/src/index.js index d7999bb66f..196c33c08f 100644 --- a/scm-ui-components/packages/ui-components/src/index.js +++ b/scm-ui-components/packages/ui-components/src/index.js @@ -19,6 +19,7 @@ export { default as LinkPaginator } from "./LinkPaginator.js"; export { default as ProtectedRoute } from "./ProtectedRoute.js"; export { default as Help } from "./Help.js"; export { default as LabelWithHelpIcon } from "./LabelWithHelpIcon.js"; +export { getPageFromMatch } from "./urls"; export { apiClient, NOT_FOUND_ERROR, UNAUTHORIZED_ERROR } from "./apiclient.js"; diff --git a/scm-ui-components/packages/ui-components/src/urls.js b/scm-ui-components/packages/ui-components/src/urls.js index 74e5388e16..543519f952 100644 --- a/scm-ui-components/packages/ui-components/src/urls.js +++ b/scm-ui-components/packages/ui-components/src/urls.js @@ -4,3 +4,11 @@ export const contextPath = window.ctxPath || ""; export function withContextPath(path: string) { return contextPath + path; } + +export function getPageFromMatch(match: any) { + let page = parseInt(match.params.page, 10); + if (isNaN(page) || !page) { + page = 1; + } + return page; +} diff --git a/scm-ui/src/repos/containers/Changesets.test.js b/scm-ui-components/packages/ui-components/src/urls.test.js similarity index 91% rename from scm-ui/src/repos/containers/Changesets.test.js rename to scm-ui-components/packages/ui-components/src/urls.test.js index deb684d31a..61803f213f 100644 --- a/scm-ui/src/repos/containers/Changesets.test.js +++ b/scm-ui-components/packages/ui-components/src/urls.test.js @@ -1,5 +1,5 @@ // @flow -import { getPageFromMatch } from "./Changesets"; +import { getPageFromMatch } from "./urls"; describe("tests for getPageFromMatch", () => { function createMatch(page: string) { diff --git a/scm-ui/src/containers/Main.js b/scm-ui/src/containers/Main.js index 0a5f99da43..a971bab54d 100644 --- a/scm-ui/src/containers/Main.js +++ b/scm-ui/src/containers/Main.js @@ -1,14 +1,14 @@ //@flow import React from "react"; -import {Redirect, Route, Switch, withRouter} from "react-router-dom"; +import { Redirect, Route, Switch, withRouter } from "react-router-dom"; import Overview from "../repos/containers/Overview"; import Users from "../users/containers/Users"; import Login from "../containers/Login"; import Logout from "../containers/Logout"; -import {ProtectedRoute} from "@scm-manager/ui-components"; +import { ProtectedRoute } from "@scm-manager/ui-components"; import AddUser from "../users/containers/AddUser"; import SingleUser from "../users/containers/SingleUser"; import RepositoryRoot from "../repos/containers/RepositoryRoot"; diff --git a/scm-ui/src/repos/containers/Changesets.js b/scm-ui/src/repos/containers/Changesets.js index 75e280cb00..224df5042a 100644 --- a/scm-ui/src/repos/containers/Changesets.js +++ b/scm-ui/src/repos/containers/Changesets.js @@ -21,7 +21,8 @@ import ChangesetList from "../components/changesets/ChangesetList"; import { ErrorNotification, LinkPaginator, - Loading + Loading, + getPageFromMatch } from "@scm-manager/ui-components"; import { compose } from "redux"; @@ -94,14 +95,6 @@ const mapDispatchToProps = dispatch => { }; }; -export function getPageFromMatch(match: any) { - let page = parseInt(match.params.page, 10); - if (isNaN(page) || !page) { - page = 1; - } - return page; -} - const mapStateToProps = (state: any, ownProps: Props) => { const { repository, branch, match } = ownProps; const changesets = getChangesets(state, repository, branch);