From e9885f7a36065b9b45a35feb6c427c7742a906a4 Mon Sep 17 00:00:00 2001 From: GitLab Bot Date: Wed, 31 May 2023 18:10:31 +0000 Subject: Add latest changes from gitlab-org/gitlab@master --- .../add_context_commits_modal_trigger.vue | 2 +- .../password/components/password_input.vue | 10 +-- .../settings/components/access_dropdown.vue | 31 ++++++++ app/assets/javascripts/search/index.js | 2 +- .../javascripts/search/sidebar/components/app.vue | 23 +++--- .../sidebar/components/scope_legacy_navigation.vue | 85 ++++++++++++++++++++++ .../search/sidebar/components/scope_navigation.vue | 85 ---------------------- .../sidebar/components/scope_new_navigation.vue | 40 ---------- .../components/scope_sidebar_navigation.vue | 40 ++++++++++ app/assets/javascripts/search/store/index.js | 4 +- app/assets/javascripts/search/store/state.js | 4 +- 11 files changed, 180 insertions(+), 146 deletions(-) create mode 100644 app/assets/javascripts/search/sidebar/components/scope_legacy_navigation.vue delete mode 100644 app/assets/javascripts/search/sidebar/components/scope_navigation.vue delete mode 100644 app/assets/javascripts/search/sidebar/components/scope_new_navigation.vue create mode 100644 app/assets/javascripts/search/sidebar/components/scope_sidebar_navigation.vue (limited to 'app/assets/javascripts') diff --git a/app/assets/javascripts/add_context_commits_modal/components/add_context_commits_modal_trigger.vue b/app/assets/javascripts/add_context_commits_modal/components/add_context_commits_modal_trigger.vue index a58b6e62254..eb5d1d39142 100644 --- a/app/assets/javascripts/add_context_commits_modal/components/add_context_commits_modal_trigger.vue +++ b/app/assets/javascripts/add_context_commits_modal/components/add_context_commits_modal_trigger.vue @@ -38,7 +38,7 @@ export default { :class="[ { 'gl-ml-5': !contextCommitsEmpty, - 'gl-mt-5': !commitsEmpty && contextCommitsEmpty, + 'gl-mt-1': !commitsEmpty && contextCommitsEmpty, }, ]" :variant="commitsEmpty ? 'confirm' : 'default'" diff --git a/app/assets/javascripts/authentication/password/components/password_input.vue b/app/assets/javascripts/authentication/password/components/password_input.vue index fa9a7782b74..6e3af96cf33 100644 --- a/app/assets/javascripts/authentication/password/components/password_input.vue +++ b/app/assets/javascripts/authentication/password/components/password_input.vue @@ -15,27 +15,27 @@ export default { title: { type: String, required: false, - default: '', + default: null, }, id: { type: String, required: false, - default: '', + default: null, }, minimumPasswordLength: { type: String, required: false, - default: '', + default: null, }, qaSelector: { type: String, required: false, - default: '', + default: null, }, testid: { type: String, required: false, - default: '', + default: null, }, autocomplete: { type: String, diff --git a/app/assets/javascripts/projects/settings/components/access_dropdown.vue b/app/assets/javascripts/projects/settings/components/access_dropdown.vue index 08a1c586f69..a2e4827cbfa 100644 --- a/app/assets/javascripts/projects/settings/components/access_dropdown.vue +++ b/app/assets/javascripts/projects/settings/components/access_dropdown.vue @@ -63,6 +63,11 @@ export default { required: false, default: () => [], }, + items: { + type: Array, + required: false, + default: () => [], + }, }, data() { return { @@ -143,11 +148,37 @@ export default { query: debounce(function debouncedSearch() { return this.getData(); }, 500), + items(items) { + this.setDataForSave(items); + }, }, created() { this.getData({ initial: true }); }, methods: { + setDataForSave(items) { + this.selected = items.reduce( + (selected, item) => { + if (item.group_id) { + selected[LEVEL_TYPES.GROUP].push({ id: item.group_id, ...item }); + } else if (item.user_id) { + selected[LEVEL_TYPES.USER].push({ id: item.user_id, ...item }); + } else if (item.access_level) { + const level = this.accessLevelsData.find(({ id }) => item.access_level === id); + selected[LEVEL_TYPES.ROLE].push(level); + } else if (item.deploy_key_id) { + selected[LEVEL_TYPES.DEPLOY_KEY].push({ id: item.deploy_key_id, ...item }); + } + return selected; + }, + { + [LEVEL_TYPES.GROUP]: [], + [LEVEL_TYPES.USER]: [], + [LEVEL_TYPES.ROLE]: [], + [LEVEL_TYPES.DEPLOY_KEY]: [], + }, + ); + }, focusInput() { this.$refs.search.focusInput(); }, diff --git a/app/assets/javascripts/search/index.js b/app/assets/javascripts/search/index.js index 1e4b1e36514..f5684cebbf9 100644 --- a/app/assets/javascripts/search/index.js +++ b/app/assets/javascripts/search/index.js @@ -15,7 +15,7 @@ export const initSearchApp = () => { const store = createStore({ query, navigation, - useNewNavigation: gon.use_new_navigation, + useSidebarNavigation: gon.use_new_navigation, }); initTopbar(store); diff --git a/app/assets/javascripts/search/sidebar/components/app.vue b/app/assets/javascripts/search/sidebar/components/app.vue index 317145d4cd1..7046a57058d 100644 --- a/app/assets/javascripts/search/sidebar/components/app.vue +++ b/app/assets/javascripts/search/sidebar/components/app.vue @@ -1,7 +1,7 @@