showArenaRewardsScreen(arenaRunData) {
    // show rewards layer as needed
    // rewards layer should be reused until rewards have been claimed
    let transitionPromise;
    let showScreenPromise;
    if (!(this.outerLayer instanceof RewardsLayer)) {
      transitionPromise = this.transitionCurrentScreenOut();
      showScreenPromise = transitionPromise.then(() => {
        this.outerLayer = new RewardsLayer(arenaRunData);
        this.outerLayer.delegate = this;
        this.outerLayer.setPosition(UtilsEngine.getGSIWinCenterPosition());
        this.getNoFXLayer().addChild(this.outerLayer, this._z_order_content);

        return this.outerLayer.transitionIn();
      });
    } else {
      transitionPromise = Promise.resolve();
      showScreenPromise = Promise.resolve();
    }

    // immediately after transition
    transitionPromise = transitionPromise.then(() => {
      const generalId = this.dataSource.getArenaRunGeneralId();
      this.showFactionVisualsForFactionId(arenaRunData.faction_id, generalId);
      this.deckLayer.hideDeck();
      this.deckStatsLayer.hideDeckStats();
    });

    // show rewards after showing new screen
    return showScreenPromise.then(() => {
      this.outerLayer.showRewards(arenaRunData);
    });
  }
Shows arena rewards screen for data.
@param arenaRunData
@returns {Promise}