diff options
Diffstat (limited to 'app/assets/javascripts/alerts_settings/utils/mapping_transformations.js')
-rw-r--r-- | app/assets/javascripts/alerts_settings/utils/mapping_transformations.js | 22 |
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 |