Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGitLab Bot <gitlab-bot@gitlab.com>2022-07-20 18:40:28 +0300
committerGitLab Bot <gitlab-bot@gitlab.com>2022-07-20 18:40:28 +0300
commitb595cb0c1dec83de5bdee18284abe86614bed33b (patch)
tree8c3d4540f193c5ff98019352f554e921b3a41a72 /app/assets/javascripts/import_entities/import_groups
parent2f9104a328fc8a4bddeaa4627b595166d24671d0 (diff)
Add latest changes from gitlab-org/gitlab@15-2-stable-eev15.2.0-rc42
Diffstat (limited to 'app/assets/javascripts/import_entities/import_groups')
-rw-r--r--app/assets/javascripts/import_entities/import_groups/components/import_table.vue15
-rw-r--r--app/assets/javascripts/import_entities/import_groups/index.js4
2 files changed, 17 insertions, 2 deletions
diff --git a/app/assets/javascripts/import_entities/import_groups/components/import_table.vue b/app/assets/javascripts/import_entities/import_groups/components/import_table.vue
index 6b96fa7c45c..98ee858ca91 100644
--- a/app/assets/javascripts/import_entities/import_groups/components/import_table.vue
+++ b/app/assets/javascripts/import_entities/import_groups/components/import_table.vue
@@ -78,6 +78,11 @@ export default {
type: String,
required: true,
},
+ defaultTargetNamespace: {
+ type: Number,
+ required: false,
+ default: null,
+ },
},
data() {
@@ -433,7 +438,15 @@ export default {
return this.importTargets[group.id];
}
- const defaultTargetNamespace = this.availableNamespaces[0] ?? ROOT_NAMESPACE;
+ // If we've reached this Vue application we have at least one potential import destination
+ const defaultTargetNamespace =
+ // first option: namespace id was explicitly provided
+ this.availableNamespaces.find((ns) => ns.id === this.defaultTargetNamespace) ??
+ // second option: first available namespace
+ this.availableNamespaces[0] ??
+ // last resort: if no namespaces are available - suggest creating new namespace at root
+ ROOT_NAMESPACE;
+
let importTarget;
if (group.lastImportTarget) {
const targetNamespace = [ROOT_NAMESPACE, ...this.availableNamespaces].find(
diff --git a/app/assets/javascripts/import_entities/import_groups/index.js b/app/assets/javascripts/import_entities/import_groups/index.js
index 02af0db7f9a..5d7e7911f5a 100644
--- a/app/assets/javascripts/import_entities/import_groups/index.js
+++ b/app/assets/javascripts/import_entities/import_groups/index.js
@@ -15,9 +15,10 @@ export function mountImportGroupsApp(mountElement) {
availableNamespacesPath,
createBulkImportPath,
jobsPath,
+ historyPath,
+ defaultTargetNamespace,
sourceUrl,
groupPathRegex,
- historyPath,
} = mountElement.dataset;
const apolloProvider = new VueApollo({
defaultClient: createApolloClient({
@@ -40,6 +41,7 @@ export function mountImportGroupsApp(mountElement) {
jobsPath,
groupPathRegex: new RegExp(`^(${groupPathRegex})$`),
historyPath,
+ defaultTargetNamespace: parseInt(defaultTargetNamespace, 10) || null,
},
});
},