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:
Diffstat (limited to 'app/assets/javascripts/alerts_settings/utils/mapping_transformations.js')
-rw-r--r--app/assets/javascripts/alerts_settings/utils/mapping_transformations.js22
1 files changed, 22 insertions, 0 deletions
diff --git a/app/assets/javascripts/alerts_settings/utils/mapping_transformations.js b/app/assets/javascripts/alerts_settings/utils/mapping_transformations.js
index 5c4b9bcd505..ed126dfafd6 100644
--- a/app/assets/javascripts/alerts_settings/utils/mapping_transformations.js
+++ b/app/assets/javascripts/alerts_settings/utils/mapping_transformations.js
@@ -1,4 +1,6 @@
import { isEqual } from 'lodash';
+import { capitalizeFirstCharacter } from '~/lib/utils/text_utility';
+
/**
* Given data for GitLab alert fields, parsed payload fields data and previously stored mapping (if any)
* creates an object in a form convenient to build UI && interact with it
@@ -32,6 +34,26 @@ export const getMappingData = (gitlabFields, payloadFields, savedMapping) => {
});
};
+export const setFieldsLabels = (fields) => {
+ return fields.map((field) => {
+ const { label } = field;
+ let displayLabel;
+ let tooltip;
+ const labels = label.split('/');
+ if (labels.length > 1) {
+ tooltip = labels.join('.');
+ displayLabel = `...${capitalizeFirstCharacter(labels.pop())}`;
+ } else {
+ displayLabel = capitalizeFirstCharacter(label);
+ }
+
+ return {
+ ...field,
+ displayLabel,
+ tooltip,
+ };
+ });
+};
/**
* Based on mapping data configured by the user creates an object in a format suitable for save on BE
* @param {Object} mappingData - structure describing mapping between GitLab fields and parsed payload fields