diff --git a/pkg/harvester/edit/management.cattle.io.project.vue b/pkg/harvester/edit/management.cattle.io.project.vue
index 11836dea..a12925c2 100644
--- a/pkg/harvester/edit/management.cattle.io.project.vue
+++ b/pkg/harvester/edit/management.cattle.io.project.vue
@@ -63,6 +63,7 @@ export default {
RANCHER_TYPES,
fvFormRuleSets: [{ path: 'spec.displayName', rules: ['required'] }],
canEditPSPBindings: true,
+ isQuotasValid: true,
};
},
computed: {
@@ -190,15 +191,13 @@ export default {
this['membershipUpdate'] = update;
},
- removeQuota(key) {
- ['resourceQuota', 'namespaceDefaultResourceQuota'].forEach((specProp) => {
- if (this.value?.spec[specProp]?.limit && this.value?.spec[specProp]?.limit[key]) {
- delete this.value?.spec[specProp]?.limit[key];
- }
- if (this.value?.spec[specProp]?.usedLimit && this.value?.spec[specProp]?.usedLimit[key]) {
- delete this.value?.spec[specProp]?.usedLimit[key];
- }
- });
+ validateQuotas(isValid) {
+ this.isQuotasValid = isValid;
+ },
+
+ onQuotasInput({ projectLimit, nsLimit } = {}) {
+ this.value.spec.resourceQuota = { ...this.value.spec.resourceQuota, limit: projectLimit };
+ this.value.spec.namespaceDefaultResourceQuota = { ...this.value.spec.namespaceDefaultResourceQuota, limit: nsLimit };
}
},
};
@@ -212,7 +211,7 @@ export default {
:resource="value"
:subtypes="[]"
:can-yaml="false"
- :validation-passed="fvFormIsValid"
+ :validation-passed="fvFormIsValid && isQuotasValid"
@error="e=>errors=e"
@finish="save"
@cancel="done"
@@ -267,10 +266,11 @@ export default {
:weight="9"
>