Skip to content

Commit 52fa21d

Browse files
author
GitLab Bot
committed
Add latest changes from gitlab-org/gitlab@master
1 parent 8a0aaba commit 52fa21d

File tree

138 files changed

+1925
-1120
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

138 files changed

+1925
-1120
lines changed

app/assets/javascripts/batch_comments/components/review_bar.vue

Lines changed: 15 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -5,26 +5,22 @@ import { mapGetters as mapVuexGetters } from 'vuex';
55
import { GlButton, GlTooltipDirective as GlTooltip, GlModal } from '@gitlab/ui';
66
import { __ } from '~/locale';
77
import toast from '~/vue_shared/plugins/global_toast';
8-
import glFeatureFlagsMixin from '~/vue_shared/mixins/gl_feature_flags_mixin';
98
import { SET_REVIEW_BAR_RENDERED } from '~/batch_comments/stores/modules/batch_comments/mutation_types';
109
import { useBatchComments } from '~/batch_comments/store';
1110
import { REVIEW_BAR_VISIBLE_CLASS_NAME } from '../constants';
1211
import PreviewDropdown from './preview_dropdown.vue';
1312
import SubmitDropdown from './submit_dropdown.vue';
14-
import SubmitDrawer from './submit_drawer.vue';
1513
1614
export default {
1715
components: {
1816
GlModal,
1917
GlButton,
2018
PreviewDropdown,
2119
SubmitDropdown,
22-
SubmitDrawer,
2320
},
2421
directives: {
2522
GlTooltip,
2623
},
27-
mixins: [glFeatureFlagsMixin()],
2824
data() {
2925
return {
3026
discarding: false,
@@ -68,26 +64,24 @@ export default {
6864
},
6965
};
7066
</script>
67+
7168
<template>
7269
<nav class="review-bar-component js-review-bar" data-testid="review_bar_component">
7370
<div class="review-bar-content gl-flex gl-justify-end" data-testid="review-bar-content">
74-
<submit-drawer v-if="glFeatures.improvedReviewExperience" />
75-
<template v-else>
76-
<gl-button
77-
v-gl-tooltip
78-
icon="remove"
79-
variant="danger"
80-
category="tertiary"
81-
class="gl-mr-3"
82-
:title="__('Discard review')"
83-
:aria-label="__('Discard review')"
84-
:loading="discarding"
85-
data-testid="discard-review-btn"
86-
@click="showDiscardModal = true"
87-
/>
88-
<preview-dropdown />
89-
<submit-dropdown />
90-
</template>
71+
<gl-button
72+
v-gl-tooltip
73+
icon="remove"
74+
variant="danger"
75+
category="tertiary"
76+
class="gl-mr-3"
77+
:title="__('Discard review')"
78+
:aria-label="__('Discard review')"
79+
:loading="discarding"
80+
data-testid="discard-review-btn"
81+
@click="showDiscardModal = true"
82+
/>
83+
<preview-dropdown />
84+
<submit-dropdown />
9185
</div>
9286
<gl-modal
9387
v-model="showDiscardModal"
Lines changed: 74 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,74 @@
1+
<script>
2+
// eslint-disable-next-line no-restricted-imports
3+
import { mapActions as mapVuexActions } from 'vuex';
4+
import { mapActions, mapState } from 'pinia';
5+
import { GlDrawer } from '@gitlab/ui';
6+
import PreviewItem from '~/batch_comments/components/preview_item.vue';
7+
import { useBatchComments } from '~/batch_comments/store';
8+
import { setUrlParams, visitUrl } from '~/lib/utils/url_utility';
9+
import { getContentWrapperHeight } from '~/lib/utils/dom_utils';
10+
import { DRAWER_Z_INDEX } from '~/lib/utils/constants';
11+
12+
export default {
13+
name: 'ReviewDrawer',
14+
components: { GlDrawer, PreviewItem },
15+
computed: {
16+
...mapState(useBatchComments, ['sortedDrafts', 'draftsCount', 'drawerOpened']),
17+
getDrawerHeaderHeight() {
18+
if (!this.drawerOpened) return '0';
19+
20+
return getContentWrapperHeight();
21+
},
22+
},
23+
methods: {
24+
...mapVuexActions('diffs', ['goToFile']),
25+
...mapActions(useBatchComments, ['scrollToDraft', 'setDrawerOpened']),
26+
async onClickDraft(draft) {
27+
if (this.viewDiffsFileByFile) {
28+
await this.goToFile({ path: draft.file_path });
29+
}
30+
31+
if (draft.position && !this.isOnLatestDiff(draft)) {
32+
const url = new URL(setUrlParams({ commit_id: draft.position.head_sha }));
33+
url.hash = `note_${draft.id}`;
34+
visitUrl(url.toString());
35+
} else {
36+
await this.scrollToDraft(draft);
37+
}
38+
},
39+
},
40+
DRAWER_Z_INDEX,
41+
};
42+
</script>
43+
44+
<template>
45+
<gl-drawer
46+
:header-height="getDrawerHeaderHeight"
47+
:z-index="$options.DRAWER_Z_INDEX"
48+
:open="drawerOpened"
49+
class="merge-request-review-drawer"
50+
data-testid="review-drawer-toggle"
51+
@close="setDrawerOpened(false)"
52+
>
53+
<template #title>
54+
<h4 class="gl-m-0">{{ __('Submit your review') }}</h4>
55+
</template>
56+
<div>
57+
<h5 class="h6 gl-mb-5 gl-mt-0" data-testid="reviewer-drawer-heading">
58+
<template v-if="draftsCount > 0">
59+
{{ n__('%d pending comment', '%d pending comments', draftsCount) }}
60+
</template>
61+
<template v-else>
62+
{{ __('No pending comments') }}
63+
</template>
64+
</h5>
65+
<preview-item
66+
v-for="draft in sortedDrafts"
67+
:key="draft.id"
68+
:draft="draft"
69+
class="gl-mb-3 gl-block"
70+
@click="onClickDraft"
71+
/>
72+
</div>
73+
</gl-drawer>
74+
</template>

app/assets/javascripts/batch_comments/components/submit_drawer.vue

Lines changed: 0 additions & 94 deletions
This file was deleted.
Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
<script>
2+
import { GlButton } from '@gitlab/ui';
3+
import { mapActions, mapState } from 'pinia';
4+
import { useBatchComments } from '~/batch_comments/store';
5+
import DraftsCount from './drafts_count.vue';
6+
7+
export default {
8+
name: 'SubmitReviewButton',
9+
components: {
10+
GlButton,
11+
DraftsCount,
12+
},
13+
computed: {
14+
...mapState(useBatchComments, ['draftsCount', 'draftsCount', 'isReviewer']),
15+
},
16+
methods: {
17+
...mapActions(useBatchComments, ['setDrawerOpened']),
18+
},
19+
};
20+
</script>
21+
22+
<template>
23+
<div v-if="draftsCount > 0 || isReviewer">
24+
<gl-button variant="confirm" data-testid="review-drawer-toggle" @click="setDrawerOpened(true)">
25+
{{ __('Your review') }}
26+
<drafts-count
27+
v-if="draftsCount > 0"
28+
variant="info"
29+
data-testid="reviewer-drawer-drafts-count-badge"
30+
/>
31+
</gl-button>
32+
</div>
33+
</template>

app/assets/javascripts/batch_comments/index.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ export const initReviewBar = () => {
3737
...mapActions(useBatchComments, ['fetchDrafts']),
3838
},
3939
render(createElement) {
40-
if (this.draftsCount === 0) return null;
40+
if (window.gon?.features?.improvedReviewExperience || this.draftsCount === 0) return null;
4141

4242
return createElement('review-bar');
4343
},

app/assets/javascripts/batch_comments/store/actions.js

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -192,3 +192,7 @@ export function discardDrafts() {
192192
}),
193193
);
194194
}
195+
196+
export function setDrawerOpened(opened) {
197+
this.drawerOpened = opened;
198+
}

app/assets/javascripts/batch_comments/store/index.js

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,9 @@ export const useBatchComments = defineStore('batchComments', {
1919
shouldAnimateReviewButton: false,
2020
reviewBarRendered: false,
2121
isMergeRequest: false,
22+
drawerOpened: false,
23+
// TODO: this gets populated from the sidebar_reviewers.vue, we should have a separate store for this
24+
isReviewer: false,
2225
};
2326
},
2427
actions: {

app/assets/javascripts/ci/reports/components/report_section.vue

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -201,7 +201,7 @@ export default {
201201

202202
<slot name="action-buttons" :is-collapsible="isCollapsible"></slot>
203203

204-
<div v-if="isCollapsible" class="gl-border-l gl-ml-3 gl-pl-3">
204+
<div v-if="isCollapsible" class="gl-border-l gl-ml-3 gl-border-l-section gl-pl-3">
205205
<gl-button
206206
data-testid="report-section-expand-button"
207207
category="tertiary"

app/assets/javascripts/diffs/components/collapsed_files_warning.vue

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
11
<script>
22
import { GlAlert, GlButton } from '@gitlab/ui';
3-
// eslint-disable-next-line no-restricted-imports
4-
import { mapState } from 'vuex';
5-
3+
import { mapState } from 'pinia';
4+
import { useLegacyDiffs } from '~/diffs/stores/legacy_diffs';
65
import { EVT_EXPAND_ALL_FILES } from '../constants';
76
import eventHub from '../event_hub';
87
@@ -24,7 +23,7 @@ export default {
2423
};
2524
},
2625
computed: {
27-
...mapState('diffs', ['diffFiles']),
26+
...mapState(useLegacyDiffs, ['diffFiles']),
2827
shouldDisplay() {
2928
return !this.isDismissed && this.diffFiles.length > 1;
3029
},

app/assets/javascripts/diffs/components/compare_versions.vue

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
<script>
22
import { GlTooltipDirective, GlIcon, GlLink, GlButtonGroup, GlButton, GlSprintf } from '@gitlab/ui';
3-
// eslint-disable-next-line no-restricted-imports
4-
import { mapActions, mapGetters, mapState } from 'vuex';
3+
import { mapActions, mapState } from 'pinia';
54
import { __ } from '~/locale';
65
import { setUrlParams } from '~/lib/utils/url_utility';
76
import {
@@ -12,6 +11,7 @@ import {
1211
import { shouldDisableShortcuts } from '~/behaviors/shortcuts/shortcuts_toggle';
1312
import { sanitize } from '~/lib/dompurify';
1413
import FileBrowserToggle from '~/diffs/components/file_browser_toggle.vue';
14+
import { useLegacyDiffs } from '~/diffs/stores/legacy_diffs';
1515
import CompareDropdownLayout from './compare_dropdown_layout.vue';
1616
1717
export default {
@@ -35,11 +35,13 @@ export default {
3535
},
3636
},
3737
computed: {
38-
...mapGetters('diffs', [
38+
...mapState(useLegacyDiffs, [
39+
'commit',
40+
'startVersion',
41+
'latestVersionPath',
3942
'diffCompareDropdownTargetVersions',
4043
'diffCompareDropdownSourceVersions',
4144
]),
42-
...mapState('diffs', ['commit', 'startVersion', 'latestVersionPath']),
4345
hasSourceVersions() {
4446
return this.diffCompareDropdownSourceVersions.length > 0;
4547
},
@@ -92,7 +94,7 @@ export default {
9294
},
9395
},
9496
methods: {
95-
...mapActions('diffs', ['moveToNeighboringCommit']),
97+
...mapActions(useLegacyDiffs, ['moveToNeighboringCommit']),
9698
},
9799
};
98100
</script>

0 commit comments

Comments
 (0)