summaryrefslogtreecommitdiff
path: root/app/assets/javascripts/import_entities/import_groups/components/import_actions_cell.vue
diff options
context:
space:
mode:
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.vue35
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"