function fuzzyMatch(targetStr, searchStr) {
      targetStr = targetStr || ``;
      searchStr = (searchStr || ``).trim().toLowerCase();
      const match = fuzzyScoreItem(targetStr, searchStr);

      if (match) {
        return {
          score: match.score,
          highlights: highlightsFromRanges(targetStr, match.ranges),
        };
      }

      return null;
    }
Fuzzy match and return the score, highlights, and lowercased matchStr (for sort)
@param {string} targetStr - target to search on / haystack string
@param {string} searchStr - search filter / needle string
@returns {{score: number, highlights: string[]} | null} - null if no match