verifyUrl()

in src/pro-src/rules.js [360:388]


  verifyUrl(trigger) {
    // rule is not defined
    if (!trigger.url) return true;

    let urlToUse = {};
    if (trigger.url && Array.isArray(trigger.url) && trigger.url.length === 1) {
      urlToUse = trigger.url[0];
    } else {
      urlToUse = trigger.url;
    }
    // one url
    if (typeof urlToUse === 'object' && typeof urlToUse.path === 'string') {
      return RulesHandler.compareUrls(this.url, urlToUse.path, urlToUse.partialMatch);
    }

    // multiple urls
    if (Array.isArray(urlToUse)) {
      if (trigger.urlIsSequence) {
        return this.verifyUrlSequence(trigger);
      }
      return urlToUse.every(url =>
        this.history.path.some(historyUrl =>
          RulesHandler.compareUrls(historyUrl, url.path, url.partialMatch)
        )
      );
    }

    return false;
  }