code: function (urlStr) {
          var protocol = Url.isUrl(urlStr) ? urlStr.protocol : _.trimEnd(nodeUrl.parse(urlStr || E).protocol || E, COLON);
  
          // to allow target URLs without any protocol. e.g.: 'foo.com/bar'
          if (_.isEmpty(protocol)) {
              protocol = DEFAULT_PROTOCOL;
              urlStr = protocol + PROTOCOL_HOST_SEPARATOR + urlStr;
          }
  
          // this ensures we don't proceed any further for any non-supported protocol
          if (!_.includes(ALLOWED_PROTOCOLS, protocol)) {
              return false;
          }
  
          return this.match.test(urlStr);
      }
docs: Tests the url string with the match provided.
  Follows the https://developer.chrome.com/extensions/match_patterns pattern for pattern validation and matching
  
  @param {String=} [urlStr] The url string for which the proxy match needs to be done.