diff options
Diffstat (limited to 'app/assets/javascripts/import_entities/import_groups/components/import_actions_cell.vue')
-rw-r--r-- | app/assets/javascripts/import_entities/import_groups/components/import_actions_cell.vue | 35 |
1 files changed, 33 insertions, 2 deletions
diff --git a/app/assets/javascripts/import_entities/import_groups/components/import_actions_cell.vue b/app/assets/javascripts/import_entities/import_groups/components/import_actions_cell.vue index deaf2654424..8d72942447c 100644 --- a/app/assets/javascripts/import_entities/import_groups/components/import_actions_cell.vue +++ b/app/assets/javascripts/import_entities/import_groups/components/import_actions_cell.vue @@ -1,15 +1,27 @@ <script> -import { GlButton, GlIcon, GlTooltipDirective as GlTooltip } from '@gitlab/ui'; +import { + GlButton, + GlDropdown, + GlDropdownItem, + GlIcon, + GlTooltipDirective as GlTooltip, +} from '@gitlab/ui'; export default { components: { GlIcon, GlButton, + GlDropdown, + GlDropdownItem, }, directives: { GlTooltip, }, props: { + isProjectsImportEnabled: { + type: Boolean, + required: true, + }, isFinished: { type: Boolean, required: true, @@ -23,13 +35,32 @@ export default { required: true, }, }, + methods: { + importGroup(extraArgs = {}) { + this.$emit('import-group', extraArgs); + }, + }, }; </script> <template> <span class="gl-white-space-nowrap gl-inline-flex gl-align-items-center"> + <gl-dropdown + v-if="isProjectsImportEnabled && isAvailableForImport" + :text="isFinished ? __('Re-import with projects') : __('Import with projects')" + :disabled="isInvalid" + variant="confirm" + category="secondary" + data-qa-selector="import_group_button" + split + @click="importGroup({ migrateProjects: true })" + > + <gl-dropdown-item @click="importGroup({ migrateProjects: false })">{{ + isFinished ? __('Re-import without projects') : __('Import without projects') + }}</gl-dropdown-item> + </gl-dropdown> <gl-button - v-if="isAvailableForImport" + v-else-if="isAvailableForImport" :disabled="isInvalid" variant="confirm" category="secondary" |