• Chandan Sagar 9
  • NEWBIE
  • 0 Points
  • Member since 2021

  • Chatter
    Feed
  • 0
    Best Answers
  • 0
    Likes Received
  • 0
    Likes Given
  • 1
    Questions
  • 0
    Replies
  public with sharing class MessageTemplatesCtrl {
   @TestVisible
   private MessageTemplatesCtrl() { /** controller class, non-constructable */ }

    @AuraEnabled(cacheable=true)
    public static List<QuickText> getQuickTextTemplates(List<String> folderNames, List<String> categories){
        // null checks
        if(folderNames == null || folderNames.size() == 0)
            throw new AuraHandledException('folderNames argument may not be null or an empty array');

        List<QuickText> templates = (List<QuickText>) Database.query(
            'SELECT FIELDS(Standard) FROM QuickText WHERE Folder.DeveloperName IN :folderNames' + 
            ((categories == null || categories.size() == 0) ? '' : ' AND Category IN :categories')
            );
        
        return templates;
    }

}