]> source.dussan.org Git - sonarqube.git/commitdiff
SONAR-18535 SONAR-18547 Microfocus compilation constants for COBOL language is broken...
authorstanislavh <stanislav.honcharov@sonarsource.com>
Fri, 24 Feb 2023 14:20:44 +0000 (15:20 +0100)
committersonartech <sonartech@sonarsource.com>
Wed, 1 Mar 2023 20:03:05 +0000 (20:03 +0000)
server/sonar-web/src/main/js/api/settings.ts
server/sonar-web/src/main/js/apps/settings/utils.ts

index e42dfd6bfa723c2f5517f712024c37a1ba30ae9a..1d81865ddbe4e87c607114dd801dfc5cd644c620 100644 (file)
@@ -25,6 +25,7 @@ import { BranchParameters } from '../types/branch-like';
 import {
   ExtendedSettingDefinition,
   SettingDefinition,
+  SettingType,
   SettingValue,
   SettingValueResponse,
 } from '../types/settings';
@@ -71,12 +72,12 @@ export function setSettingValue(
   const { key } = definition;
   const data: RequestData = { key, component };
 
-  if (isCategoryDefinition(definition) && definition.multiValues) {
-    data.values = value;
-  } else if (definition.type === 'PROPERTY_SET') {
+  if (definition.type === SettingType.PROPERTY_SET) {
     data.fieldValues = value
       .map((fields: any) => omitBy(fields, (value) => value == null))
       .map(JSON.stringify);
+  } else if (isCategoryDefinition(definition) && definition.multiValues) {
+    data.values = value;
   } else {
     data.value = value;
   }
index b1879ee1c4ccf20998cb5da0f7960d58fb2c8989..d1654f6e323474bc9e1c0e2a288e15b9344657bf 100644 (file)
@@ -86,10 +86,10 @@ export function getUniqueName(definition: SettingDefinition, index?: string) {
 
 export function getSettingValue(definition: SettingDefinition, settingValue?: SettingValue) {
   const { fieldValues, value, values } = settingValue || {};
-  if (isCategoryDefinition(definition) && definition.multiValues) {
-    return values;
-  } else if (definition.type === SettingType.PROPERTY_SET) {
+  if (definition.type === SettingType.PROPERTY_SET) {
     return fieldValues;
+  } else if (isCategoryDefinition(definition) && definition.multiValues) {
+    return values;
   } else if (definition.type === SettingType.FORMATTED_TEXT) {
     return values ? values[0] : undefined;
   }
@@ -151,15 +151,15 @@ export function isCategoryDefinition(item: SettingDefinition): item is ExtendedS
 
 export function getEmptyValue(item: SettingDefinition | ExtendedSettingDefinition): any {
   if (isCategoryDefinition(item)) {
-    if (item.multiValues) {
-      return [getEmptyValue({ ...item, multiValues: false })];
-    }
-
-    if (item.type === 'PROPERTY_SET') {
+    if (item.type === SettingType.PROPERTY_SET) {
       const value: Dict<string> = {};
       item.fields.forEach((field) => (value[field.key] = getEmptyValue(field)));
       return [value];
     }
+
+    if (item.multiValues) {
+      return [getEmptyValue({ ...item, multiValues: false })];
+    }
   }
 
   if (item.type === 'BOOLEAN' || item.type === 'SINGLE_SELECT_LIST') {
@@ -193,7 +193,11 @@ export function getDefaultValue(setting: Setting) {
     return parentValues.join(', ');
   }
 
-  if (definition.type === 'PROPERTY_SET' && parentFieldValues && parentFieldValues.length > 0) {
+  if (
+    definition.type === SettingType.PROPERTY_SET &&
+    parentFieldValues &&
+    parentFieldValues.length > 0
+  ) {
     return translate('settings.default.complex_value');
   }