diff options
author | Phil Hughes <me@iamphill.com> | 2017-05-16 09:43:33 +0100 |
---|---|---|
committer | Phil Hughes <me@iamphill.com> | 2017-05-16 09:43:33 +0100 |
commit | 64e159ada06a6f69742cb530894334cd099b667f (patch) | |
tree | 91261fdc4dc5263820b0c89c25ea1b2ff48ab5ad /app/assets/javascripts/issue_show | |
parent | 36df19e71b53a78da9db15b65c405c50089da7b3 (diff) | |
download | gitlab-ce-64e159ada06a6f69742cb530894334cd099b667f.tar.gz |
Created form component instead of using :is incorrectly
[ci skip]
Diffstat (limited to 'app/assets/javascripts/issue_show')
-rw-r--r-- | app/assets/javascripts/issue_show/components/app.vue | 38 | ||||
-rw-r--r-- | app/assets/javascripts/issue_show/components/form.vue | 30 | ||||
-rw-r--r-- | app/assets/javascripts/issue_show/components/title.vue | 36 |
3 files changed, 57 insertions, 47 deletions
diff --git a/app/assets/javascripts/issue_show/components/app.vue b/app/assets/javascripts/issue_show/components/app.vue index abddcaa2594..b4034849c71 100644 --- a/app/assets/javascripts/issue_show/components/app.vue +++ b/app/assets/javascripts/issue_show/components/app.vue @@ -7,7 +7,7 @@ import Service from '../services/index'; import Store from '../stores'; import titleComponent from './title.vue'; import descriptionComponent from './description.vue'; -import editActions from './edit_actions.vue'; +import formComponent from './form.vue'; export default { props: { @@ -56,9 +56,6 @@ export default { }; }, computed: { - elementType() { - return this.showForm ? 'form' : 'div'; - }, formState() { return this.store.formState; }, @@ -66,7 +63,7 @@ export default { components: { descriptionComponent, titleComponent, - editActions, + formComponent, }, methods: { openForm() { @@ -143,22 +140,23 @@ export default { </script> <template> - <div :is="elementType"> - <title-component - :form-state="formState" - :show-form="showForm" - :issuable-ref="issuableRef" - :title-html="state.titleHtml" - :title-text="state.titleText" /> - <description-component - v-if="state.descriptionHtml" - :can-update="canUpdate" - :description-html="state.descriptionHtml" - :description-text="state.descriptionText" - :updated-at="state.updatedAt" - :task-status="state.taskStatus" /> - <edit-actions + <div> + <form-component v-if="canUpdate && showForm" + :form-state="formState" :can-destroy="canDestroy" /> + <div v-else> + <title-component + :issuable-ref="issuableRef" + :title-html="state.titleHtml" + :title-text="state.titleText" /> + <description-component + v-if="state.descriptionHtml" + :can-update="canUpdate" + :description-html="state.descriptionHtml" + :description-text="state.descriptionText" + :updated-at="state.updatedAt" + :task-status="state.taskStatus" /> + </div> </div> </template> diff --git a/app/assets/javascripts/issue_show/components/form.vue b/app/assets/javascripts/issue_show/components/form.vue new file mode 100644 index 00000000000..7dd8ffb5af2 --- /dev/null +++ b/app/assets/javascripts/issue_show/components/form.vue @@ -0,0 +1,30 @@ +<script> + import titleField from './fields/title.vue'; + import editActions from './edit_actions.vue'; + + export default { + props: { + canDestroy: { + type: Boolean, + required: true, + }, + formState: { + type: Object, + required: true, + }, + }, + components: { + titleField, + editActions, + }, + }; +</script> + +<template> + <form> + <title-field + :form-state="formState" /> + <edit-actions + :can-destroy="canDestroy" /> + </form> +</template> diff --git a/app/assets/javascripts/issue_show/components/title.vue b/app/assets/javascripts/issue_show/components/title.vue index d410c61b655..a9dabd4cff1 100644 --- a/app/assets/javascripts/issue_show/components/title.vue +++ b/app/assets/javascripts/issue_show/components/title.vue @@ -1,12 +1,8 @@ <script> import animateMixin from '../mixins/animate'; - import titleField from './fields/title.vue'; export default { mixins: [animateMixin], - components: { - titleField, - }, data() { return { preAnimation: false, @@ -27,14 +23,6 @@ type: String, required: true, }, - formState: { - type: Object, - required: true, - }, - showForm: { - type: Boolean, - required: true, - }, }, watch: { titleHtml() { @@ -53,19 +41,13 @@ </script> <template> - <div> - <title-field - v-if="showForm" - :form-state="formState" /> - <h2 - v-else - class="title" - :class="{ - 'issue-realtime-pre-pulse': preAnimation, - 'issue-realtime-trigger-pulse': pulseAnimation - }" - v-html="titleHtml" - > - </h2> - </div> + <h2 + class="title" + :class="{ + 'issue-realtime-pre-pulse': preAnimation, + 'issue-realtime-trigger-pulse': pulseAnimation + }" + v-html="titleHtml" + > + </h2> </template> |