Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'app/assets/javascripts/sidebar/components/lock/lock_issue_sidebar.vue')
-rw-r--r--app/assets/javascripts/sidebar/components/lock/lock_issue_sidebar.vue140
1 files changed, 0 insertions, 140 deletions
diff --git a/app/assets/javascripts/sidebar/components/lock/lock_issue_sidebar.vue b/app/assets/javascripts/sidebar/components/lock/lock_issue_sidebar.vue
deleted file mode 100644
index 728f655d33d..00000000000
--- a/app/assets/javascripts/sidebar/components/lock/lock_issue_sidebar.vue
+++ /dev/null
@@ -1,140 +0,0 @@
-<script>
-import { __, sprintf } from '~/locale';
-import Flash from '~/flash';
-import tooltip from '~/vue_shared/directives/tooltip';
-import issuableMixin from '~/vue_shared/mixins/issuable';
-import Icon from '~/vue_shared/components/icon.vue';
-import eventHub from '~/sidebar/event_hub';
-import editForm from './edit_form.vue';
-
-export default {
- components: {
- editForm,
- Icon,
- },
-
- directives: {
- tooltip,
- },
-
- mixins: [issuableMixin],
-
- props: {
- isLocked: {
- required: true,
- type: Boolean,
- },
-
- isEditable: {
- required: true,
- type: Boolean,
- },
-
- mediator: {
- required: true,
- type: Object,
- validator(mediatorObject) {
- return mediatorObject.service && mediatorObject.service.update && mediatorObject.store;
- },
- },
- },
-
- computed: {
- lockIcon() {
- return this.isLocked ? 'lock' : 'lock-open';
- },
-
- isLockDialogOpen() {
- return this.mediator.store.isLockDialogOpen;
- },
-
- tooltipLabel() {
- return this.isLocked ? __('Locked') : __('Unlocked');
- },
- },
-
- created() {
- eventHub.$on('closeLockForm', this.toggleForm);
- },
-
- beforeDestroy() {
- eventHub.$off('closeLockForm', this.toggleForm);
- },
-
- methods: {
- toggleForm() {
- if (this.isEditable) {
- this.mediator.store.isLockDialogOpen = !this.mediator.store.isLockDialogOpen;
- }
- },
- updateLockedAttribute(locked) {
- this.mediator.service
- .update(this.issuableType, {
- discussion_locked: locked,
- })
- .then(() => window.location.reload())
- .catch(() =>
- Flash(
- sprintf(
- __(
- 'Something went wrong trying to change the locked state of this %{issuableDisplayName}',
- ),
- {
- issuableDisplayName: this.issuableDisplayName,
- },
- ),
- ),
- );
- },
- },
-};
-</script>
-
-<template>
- <div class="block issuable-sidebar-item lock">
- <div
- v-tooltip
- :title="tooltipLabel"
- class="sidebar-collapsed-icon"
- data-container="body"
- data-placement="left"
- data-boundary="viewport"
- @click="toggleForm"
- >
- <icon :name="lockIcon" class="sidebar-item-icon is-active" />
- </div>
-
- <div class="title hide-collapsed">
- {{ sprintf(__('Lock %{issuableDisplayName}'), { issuableDisplayName: issuableDisplayName }) }}
- <a
- v-if="isEditable"
- class="float-right lock-edit"
- href="#"
- data-track-event="click_edit_button"
- data-track-label="right_sidebar"
- data-track-property="lock_issue"
- @click.prevent="toggleForm"
- >
- {{ __('Edit') }}
- </a>
- </div>
-
- <div class="value sidebar-item-value hide-collapsed">
- <edit-form
- v-if="isLockDialogOpen"
- :is-locked="isLocked"
- :update-locked-attribute="updateLockedAttribute"
- :issuable-type="issuableType"
- />
-
- <div v-if="isLocked" class="value sidebar-item-value">
- <icon :size="16" name="lock" class="sidebar-item-icon inline is-active" />
- {{ __('Locked') }}
- </div>
-
- <div v-else class="no-value sidebar-item-value hide-collapsed">
- <icon :size="16" name="lock-open" class="sidebar-item-icon inline" /> {{ __('Unlocked') }}
- </div>
- </div>
- </div>
-</template>