in public/pages/CreateTrigger/containers/CreateTrigger/utils/formikToTrigger.js [148:187]
export function formikToTriggerUiMetadata(values, monitorUiMetadata) {
switch (monitorUiMetadata.monitor_type) {
case MONITOR_TYPE.QUERY_LEVEL:
const searchType = _.get(monitorUiMetadata, 'search.searchType', 'query');
const queryLevelTriggersUiMetadata = {};
_.get(values, 'triggerDefinitions', []).forEach((trigger) => {
const { anomalyDetector, thresholdEnum, thresholdValue } = trigger;
const triggerMetadata = { value: thresholdValue, enum: thresholdEnum };
//Store AD values only if AD trigger.
if (searchType === SEARCH_TYPE.AD && anomalyDetector.triggerType === TRIGGER_TYPE.AD) {
triggerMetadata.adTriggerMetadata = {
triggerType: anomalyDetector.triggerType,
anomalyGrade: {
value: anomalyDetector.anomalyGradeThresholdValue,
enum: anomalyDetector.anomalyGradeThresholdEnum,
},
anomalyConfidence: {
value: anomalyDetector.anomalyConfidenceThresholdValue,
enum: anomalyDetector.anomalyConfidenceThresholdEnum,
},
};
}
_.set(queryLevelTriggersUiMetadata, `${trigger.name}`, triggerMetadata);
});
return queryLevelTriggersUiMetadata;
case MONITOR_TYPE.BUCKET_LEVEL:
const bucketLevelTriggersUiMetadata = {};
_.get(values, 'triggerDefinitions', []).forEach((trigger) => {
const triggerMetadata = trigger.triggerConditions.map((condition) => ({
value: condition.thresholdValue,
enum: condition.thresholdEnum,
}));
_.set(bucketLevelTriggersUiMetadata, `${trigger.name}`, triggerMetadata);
});
return bucketLevelTriggersUiMetadata;
}
}