diff options
Diffstat (limited to 'app/assets/javascripts/issue_show/components/form.vue')
-rw-r--r-- | app/assets/javascripts/issue_show/components/form.vue | 135 |
1 files changed, 135 insertions, 0 deletions
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..d7e812b7f7f --- /dev/null +++ b/app/assets/javascripts/issue_show/components/form.vue @@ -0,0 +1,135 @@ +<script> +<<<<<<< HEAD +<<<<<<< HEAD +======= + import eventHub from '../event_hub'; +>>>>>>> 6a14a51... Show warning if realtime data has changed since the form has opened +======= +>>>>>>> 982ab87... Added specs for testing when warning is visible + import lockedWarning from './locked_warning.vue'; + import titleField from './fields/title.vue'; + import descriptionField from './fields/description.vue'; + import editActions from './edit_actions.vue'; + import descriptionTemplate from './fields/description_template.vue'; + import projectMove from './fields/project_move.vue'; + import confidentialCheckbox from './fields/confidential_checkbox.vue'; + + export default { + props: { + canMove: { + type: Boolean, + required: true, + }, + canDestroy: { + type: Boolean, + required: true, + }, + formState: { + type: Object, + required: true, + }, + issuableTemplates: { + type: Array, + required: false, + default: () => [], + }, + markdownPreviewUrl: { + type: String, + required: true, + }, + markdownDocs: { + type: String, + required: true, + }, + projectPath: { + type: String, + required: true, + }, + projectNamespace: { + type: String, + required: true, + }, + projectsAutocompleteUrl: { + type: String, + required: true, + }, + }, + components: { + lockedWarning, + titleField, + descriptionField, + descriptionTemplate, + editActions, + projectMove, + confidentialCheckbox, + }, +<<<<<<< HEAD +<<<<<<< HEAD + computed: { + hasIssuableTemplates() { + return this.issuableTemplates.length; +======= + methods: { + closeForm() { + eventHub.$emit('close.form'); + this.formState.lockedWarningVisible = false; +>>>>>>> 6a14a51... Show warning if realtime data has changed since the form has opened + }, + }, +======= +>>>>>>> 982ab87... Added specs for testing when warning is visible + }; +</script> + +<template> + <form> +<<<<<<< HEAD +<<<<<<< HEAD + <locked-warning v-if="formState.lockedWarningVisible" /> + <div class="row"> + <div + class="col-sm-4 col-lg-3" + v-if="hasIssuableTemplates"> + <description-template + :form-state="formState" + :issuable-templates="issuableTemplates" + :project-path="projectPath" + :project-namespace="projectNamespace" /> + </div> + <div + :class="{ + 'col-sm-8 col-lg-9': hasIssuableTemplates, + 'col-xs-12': !hasIssuableTemplates, + }"> + <title-field + :form-state="formState" + :issuable-templates="issuableTemplates" /> + </div> + </div> +======= + <locked-warning + v-if="formState.lockedWarningVisible" + @closeForm="closeForm" /> +======= + <locked-warning v-if="formState.lockedWarningVisible" /> +>>>>>>> 982ab87... Added specs for testing when warning is visible + <title-field + :form-state="formState" /> + <confidential-checkbox + :form-state="formState" /> +>>>>>>> 6a14a51... Show warning if realtime data has changed since the form has opened + <description-field + :form-state="formState" + :markdown-preview-url="markdownPreviewUrl" + :markdown-docs="markdownDocs" /> + <confidential-checkbox + :form-state="formState" /> + <project-move + v-if="canMove" + :form-state="formState" + :projects-autocomplete-url="projectsAutocompleteUrl" /> + <edit-actions + :form-state="formState" + :can-destroy="canDestroy" /> + </form> +</template> |