<commit_before>import React from 'react';
import SPELLS from 'common/SPELLS';
import ITEMS from 'common/ITEMS';
import SpellLink from 'common/SpellLink';
import { formatPercentage } from 'common/format';
import Analyzer from 'Parser/Core/Analyzer';
import Combatants from 'Parser/Core/Modules/Combatants';
import Wrapper from 'common/Wrapper';
import ItemDamageDone from 'Main/ItemDamageDone';

const DAMAGE_MODIFIER = 0.08;

class PromiseOfElune extends Analyzer {
  static dependencies = {
    combatants: Combatants,
  };

  solarWrathDamage = 0;
  lunarStrikeDamage = 0;

  on_initialized() {
    this.active = this.combatants.selected.hasFeet(ITEMS.PROMISE_OF_ELUNE.id);
  }

  on_byPlayer_damage(event) {
    if (event.ability.guid === SPELLS.SOLAR_WRATH_MOONKIN.id) {
      this.solarWrathDamage += this.damageContribution(event, DAMAGE_MODIFIER);
    }
    if (event.ability.guid === SPELLS.LUNAR_STRIKE.id) {
      this.lunarStrikeDamage += this.damageContribution(event, DAMAGE_MODIFIER);
    }     
  }

  damageContribution(event, mod) {
    const raw = (event.amount || 0) + (event.absorbed || 0);
    return raw - (raw / (1 + mod));
  }

  get bonusDamage() {
    return this.solarWrathDamage + this.lunarStrikeDamage;
  }

  item() {
    return {
      item: ITEMS.PROMISE_OF_ELUNE,
      result: (
        <dfn data-tip={`Damage Breakdown:
          <ul>
            <li>Solar Wrath: <b>${this.owner.formatItemDamageDone(this.solarWrathDamage)}</b></li>
            <li>Lunar Strike: <b>${this.owner.formatItemDamageDone(this.lunarStrikeDamage)}</b></li>
          </ul>
        `}>
          <ItemDamageDone amount={this.bonusDamage} />
        </dfn>
      ),
    };
  }
}

export default PromiseOfElune;
<commit_msg>Removed redudant dependencies<commit_after>import React from 'react';
import SPELLS from 'common/SPELLS';
import ITEMS from 'common/ITEMS';
import Analyzer from 'Parser/Core/Analyzer';
import Combatants from 'Parser/Core/Modules/Combatants';
import ItemDamageDone from 'Main/ItemDamageDone';

const DAMAGE_MODIFIER = 0.08;

class PromiseOfElune extends Analyzer {
  static dependencies = {
    combatants: Combatants,
  };

  solarWrathDamage = 0;
  lunarStrikeDamage = 0;

  on_initialized() {
    this.active = this.combatants.selected.hasFeet(ITEMS.PROMISE_OF_ELUNE.id);
  }

  on_byPlayer_damage(event) {
    if (event.ability.guid === SPELLS.SOLAR_WRATH_MOONKIN.id) {
      this.solarWrathDamage += this.damageContribution(event, DAMAGE_MODIFIER);
    }
    if (event.ability.guid === SPELLS.LUNAR_STRIKE.id) {
      this.lunarStrikeDamage += this.damageContribution(event, DAMAGE_MODIFIER);
    }     
  }

  damageContribution(event, mod) {
    const raw = (event.amount || 0) + (event.absorbed || 0);
    return raw - (raw / (1 + mod));
  }

  get bonusDamage() {
    return this.solarWrathDamage + this.lunarStrikeDamage;
  }

  item() {
    return {
      item: ITEMS.PROMISE_OF_ELUNE,
      result: (
        <dfn data-tip={`Damage Breakdown:
          <ul>
            <li>Solar Wrath: <b>${this.owner.formatItemDamageDone(this.solarWrathDamage)}</b></li>
            <li>Lunar Strike: <b>${this.owner.formatItemDamageDone(this.lunarStrikeDamage)}</b></li>
          </ul>
        `}>
          <ItemDamageDone amount={this.bonusDamage} />
        </dfn>
      ),
    };
  }
}

export default PromiseOfElune;

{'fraction_non_alphanumeric': 0.1299165673420739, 'fraction_numerical': 0.004767580452920143, 'mean_word_length': 3.314910025706941, 'pattern_counts': {'":': 0, '<': 29, '<?xml version=': 0, '>': 29, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '6076859', 'n_tokens_mistral': 1251, 'n_tokens_neox': 1219, 'n_words': 204}