diff options
Diffstat (limited to 'app/assets/javascripts/issue_show/components/fields/type.vue')
-rw-r--r-- | app/assets/javascripts/issue_show/components/fields/type.vue | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/app/assets/javascripts/issue_show/components/fields/type.vue b/app/assets/javascripts/issue_show/components/fields/type.vue index 3eac448c637..9110a6924b4 100644 --- a/app/assets/javascripts/issue_show/components/fields/type.vue +++ b/app/assets/javascripts/issue_show/components/fields/type.vue @@ -2,7 +2,7 @@ import { GlFormGroup, GlDropdown, GlDropdownItem, GlIcon } from '@gitlab/ui'; import { capitalize } from 'lodash'; import { __ } from '~/locale'; -import { IssuableTypes } from '../../constants'; +import { IssuableTypes, IncidentType } from '../../constants'; import getIssueStateQuery from '../../queries/get_issue_state.query.graphql'; import updateIssueStateMutation from '../../queries/update_issue_state.mutation.graphql'; @@ -19,6 +19,14 @@ export default { GlDropdown, GlDropdownItem, }, + inject: { + canCreateIncident: { + default: false, + }, + issueType: { + default: 'issue', + }, + }, data() { return { issueState: {}, @@ -36,6 +44,9 @@ export default { } = this; return capitalize(issueType); }, + shouldShowIncident() { + return this.issueType === IncidentType || this.canCreateIncident; + }, }, methods: { updateIssueType(issueType) { @@ -47,6 +58,9 @@ export default { }, }); }, + isShown(type) { + return type.value !== IncidentType || this.shouldShowIncident; + }, }, }; </script> @@ -68,6 +82,7 @@ export default { > <gl-dropdown-item v-for="type in $options.IssuableTypes" + v-show="isShown(type)" :key="type.value" :is-checked="issueState.issueType === type.value" is-check-item |