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>2020-10-05 12:08:17 +0300
committerGitLab Bot <gitlab-bot@gitlab.com>2020-10-05 12:08:17 +0300
commit2fe341d705700b3e99f82076b09b95885878ac0d (patch)
tree0e1775e230ea73b70b226aac8e08b11c2ca3d1ac /app/assets/javascripts/registry
parent34cd22d1a925bd4113e10279bbf98db28adff420 (diff)
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'app/assets/javascripts/registry')
-rw-r--r--app/assets/javascripts/registry/settings/components/registry_settings_app.vue6
-rw-r--r--app/assets/javascripts/registry/settings/components/settings_form.vue13
-rw-r--r--app/assets/javascripts/registry/settings/registry_settings_bundle.js5
3 files changed, 18 insertions, 6 deletions
diff --git a/app/assets/javascripts/registry/settings/components/registry_settings_app.vue b/app/assets/javascripts/registry/settings/components/registry_settings_app.vue
index fcb86fd18f0..264d39a406a 100644
--- a/app/assets/javascripts/registry/settings/components/registry_settings_app.vue
+++ b/app/assets/javascripts/registry/settings/components/registry_settings_app.vue
@@ -1,6 +1,6 @@
<script>
import { GlAlert, GlSprintf, GlLink } from '@gitlab/ui';
-import { isEqual } from 'lodash';
+import { isEqual, get } from 'lodash';
import expirationPolicyQuery from '../graphql/queries/get_expiration_policy.graphql';
import { FETCH_SETTINGS_ERROR_MESSAGE } from '../../shared/constants';
@@ -35,7 +35,7 @@ export default {
},
update: data => data.project?.containerExpirationPolicy,
result({ data }) {
- this.workingCopy = { ...data.project?.containerExpirationPolicy };
+ this.workingCopy = { ...get(data, 'project.containerExpirationPolicy', {}) };
},
error(e) {
this.fetchSettingsError = e;
@@ -74,7 +74,7 @@ export default {
<template>
<div>
<settings-form
- v-if="containerExpirationPolicy"
+ v-if="!isDisabled"
v-model="workingCopy"
:is-loading="$apollo.queries.containerExpirationPolicy.loading"
:is-edited="isEdited"
diff --git a/app/assets/javascripts/registry/settings/components/settings_form.vue b/app/assets/javascripts/registry/settings/components/settings_form.vue
index 7deb1f92686..a9b35d4e29f 100644
--- a/app/assets/javascripts/registry/settings/components/settings_form.vue
+++ b/app/assets/javascripts/registry/settings/components/settings_form.vue
@@ -55,6 +55,14 @@ export default {
};
},
computed: {
+ prefilledForm() {
+ return {
+ ...this.value,
+ cadence: this.findDefaultOption('cadence'),
+ keepN: this.findDefaultOption('keepN'),
+ olderThan: this.findDefaultOption('olderThan'),
+ };
+ },
showLoadingIcon() {
return this.isLoading || this.mutationLoading;
},
@@ -77,6 +85,9 @@ export default {
},
},
methods: {
+ findDefaultOption(option) {
+ return this.value[option] || this.$options.formOptions[option].find(f => f.default)?.key;
+ },
reset() {
this.track('reset_form');
this.apiErrors = null;
@@ -135,7 +146,7 @@ export default {
</template>
<template #default>
<expiration-policy-fields
- :value="value"
+ :value="prefilledForm"
:form-options="$options.formOptions"
:is-loading="isLoading"
:api-errors="apiErrors"
diff --git a/app/assets/javascripts/registry/settings/registry_settings_bundle.js b/app/assets/javascripts/registry/settings/registry_settings_bundle.js
index 5f25d508e2f..f7b1c5abd3a 100644
--- a/app/assets/javascripts/registry/settings/registry_settings_bundle.js
+++ b/app/assets/javascripts/registry/settings/registry_settings_bundle.js
@@ -1,6 +1,7 @@
import Vue from 'vue';
import { GlToast } from '@gitlab/ui';
import Translate from '~/vue_shared/translate';
+import { parseBoolean } from '~/lib/utils/common_utils';
import RegistrySettingsApp from './components/registry_settings_app.vue';
import { apolloProvider } from './graphql/index';
@@ -21,9 +22,9 @@ export default () => {
},
provide: {
projectPath,
- isAdmin,
+ isAdmin: parseBoolean(isAdmin),
adminSettingsPath,
- enableHistoricEntries,
+ enableHistoricEntries: parseBoolean(enableHistoricEntries),
},
render(createElement) {
return createElement('registry-settings-app', {});