storeRuleHash()

in src/pro-src/rules.js [82:102]


  storeRuleHash(rule) {
    // We remove the payload and text so that they're not part of the rule when we
    // compute if it has already been ran or not.
    const rulesHash = hash(rule.trigger);

    // We store the hash on the rule object so that it can be used
    // further down the line.
    rule.hash = rulesHash;

    const ruleTriggered = this.history.rulesTriggered.find(
      ruleInStorage => ruleInStorage.hash === rulesHash
    );
    if (!(ruleTriggered && ruleTriggered.triggerLimit)) {
      this.history.rulesTriggered.push({
        hash: rulesHash,
        triggerLimit: rule.trigger.triggerLimit,
        triggered: 0
      });
      this.storeHistory();
    }
  }