Helper
Helper
this.listOfFilters.push(filterObject);
this.listOfFieldApi.push(filterObject.fieldApi);
}
component.set("v.listOfFieldApi", this.listOfFieldApi);
this.getFieldType(component, event, helper,
this.listOfFieldApi, this.listOfFilters);
} else {
helper.displayToast();
}
} else {
helper.displayToast();
}
} else if (this.validateInputFormat(inputString)) {
var splittedval = inputString.split(';');
var field = splittedval[0].trim();
var operator = splittedval[1].trim();
var value = splittedval[2].trim();
let filterObject = {
fieldApi: field,
operatorValue: operator,
fieldValue: value
};
this.listOfFilters.push(filterObject);
this.listOfFieldApi.push(filterObject.fieldApi);
component.set("v.listOfFieldApi", this.listOfFieldApi);
this.getFieldType(component, event, helper, this.listOfFieldApi,
this.listOfFilters);
} else {
helper.displayToast();
}
} else {
this.getRecordId(component, "");
}
},
// LWC JavaScript method to remove characters after the last closing bracket
removeCharactersAfterLastClosingBracket: function(component,inputString) {
const lastIndexClosingBracket = inputString.lastIndexOf(')');
if (lastIndexClosingBracket !== -1) {
// Remove characters after the last closing bracket
const resultString = inputString.substring(0, lastIndexClosingBracket +
1);
return resultString;
}
// If no closing bracket is found, return the original string
return inputString;
},
checkFormat: function(inputStringToValidate) {
var inputString = inputStringToValidate;
const failFormat = /\([^)]*;[^)]*;[^)]*\)\([^)]*\)/;
const acceptedFormat = /\([^)]*\),\([^)]*\)/;
if (failFormat.test(inputString)) {
return false;
} else if (acceptedFormat.test(inputString)) {
var validFormat = true;
var parts = inputString.split(',');
for (var i = 0; i < parts.length; i++) {
const regex = /\([^()]*;[^()]*;[^()]*\)/;
if (!regex.test(parts[i])) {
validFormat = false;
}
}
return validFormat;
} else {
return false;
}
},
validateInputFormat: function(inputString) {
const pattern = /^[^;]+;[^;]+;[^;]+$/;
var isValidFormat = pattern.test(inputString);
if (isValidFormat) {
return true;
} else {
return false;
}
},
getFilterData: function() {
return {
value : '',
operators : [],
operatorLabel : '',
operator : '',
fieldType : '',
fieldLabel : '',
field : ''
}
},
displayToast : function() {
$A.get("e.force:closeQuickAction").fire();
var toastEvent = $A.get("e.force:showToast");
toastEvent.setParams({
"title": 'Error!',
"message": $A.get("$Label.c.SUBMISSION_FILTER_ERROR"),
"duration" : '2000',
"type": 'error'
});
toastEvent.fire();
}
})