gitlab-ce/app/assets/javascripts/batch_comments/components/review_bar.vue

51 lines
1.4 KiB
Vue

<script>
// eslint-disable-next-line no-restricted-imports
import { mapActions, mapGetters } from 'vuex';
import glFeatureFlagMixin from '~/vue_shared/mixins/gl_feature_flags_mixin';
import { SET_REVIEW_BAR_RENDERED } from '~/batch_comments/stores/modules/batch_comments/mutation_types';
import { REVIEW_BAR_VISIBLE_CLASS_NAME } from '../constants';
import PreviewDropdown from './preview_dropdown.vue';
import SubmitDropdown from './submit_dropdown.vue';
export default {
components: {
PreviewDropdown,
SubmitDropdown,
},
mixins: [glFeatureFlagMixin()],
computed: {
...mapGetters(['isNotesFetched']),
},
watch: {
isNotesFetched() {
if (this.isNotesFetched) {
this.expandAllDiscussions();
}
},
},
mounted() {
document.body.classList.add(REVIEW_BAR_VISIBLE_CLASS_NAME);
this.$store.commit(`batchComments/${SET_REVIEW_BAR_RENDERED}`);
},
beforeDestroy() {
document.body.classList.remove(REVIEW_BAR_VISIBLE_CLASS_NAME);
},
methods: {
...mapActions('batchComments', ['expandAllDiscussions']),
},
};
</script>
<template>
<div>
<nav class="review-bar-component js-review-bar" data-testid="review_bar_component">
<div
class="review-bar-content d-flex gl-justify-content-end"
data-testid="review-bar-content"
>
<preview-dropdown />
<submit-dropdown />
</div>
</nav>
</div>
</template>