diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2022-12-13 15:07:56 +0000 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2022-12-13 15:07:56 +0000 |
commit | 0d55697d64b5f053bbd0f69da2962e7478097de3 (patch) | |
tree | 33dc75892313554223fb7dadd88e1c8875053d88 /app/assets/javascripts/diffs/utils/merge_request.js | |
parent | 9fdb3dbd6bacb125d40290aac8409da2f9fe19fc (diff) | |
download | gitlab-ce-0d55697d64b5f053bbd0f69da2962e7478097de3.tar.gz |
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'app/assets/javascripts/diffs/utils/merge_request.js')
-rw-r--r-- | app/assets/javascripts/diffs/utils/merge_request.js | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/app/assets/javascripts/diffs/utils/merge_request.js b/app/assets/javascripts/diffs/utils/merge_request.js index edb4304f558..43e04a814c5 100644 --- a/app/assets/javascripts/diffs/utils/merge_request.js +++ b/app/assets/javascripts/diffs/utils/merge_request.js @@ -1,14 +1,30 @@ const endpointRE = /^(\/?(.+?)\/(.+?)\/-\/merge_requests\/(\d+)).*$/i; +function getVersionInfo({ endpoint } = {}) { + const dummyRoot = 'https://gitlab.com'; + const endpointUrl = new URL(endpoint, dummyRoot); + const params = Object.fromEntries(endpointUrl.searchParams.entries()); + + const { start_sha: startSha, diff_id: diffId } = params; + + return { + diffId, + startSha, + }; +} + export function getDerivedMergeRequestInformation({ endpoint } = {}) { let mrPath; let userOrGroup; let project; let id; + let diffId; + let startSha; const matches = endpointRE.exec(endpoint); if (matches) { [, mrPath, userOrGroup, project, id] = matches; + ({ diffId, startSha } = getVersionInfo({ endpoint })); } return { @@ -16,5 +32,7 @@ export function getDerivedMergeRequestInformation({ endpoint } = {}) { userOrGroup, project, id, + diffId, + startSha, }; } |