Collapsable Diffs (GitHub)

Adds a button that allows you to collapse an individual diff in a pull request

Verze ze dne 20. 12. 2015. Zobrazit nejnovější verzi.

// ==UserScript==
// @name        Collapsable Diffs (GitHub)
// @namespace   chriskim06
// @description Adds a button that allows you to collapse an individual diff in a pull request
// @include     https://github.com/*/*
// @require     http://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js
// @version     1.3.2
// @grant       none
// @locale      en
// ==/UserScript==

this.$ = this.jQuery = jQuery.noConflict(true);

$(function() {
  function collapsable() {
    if ($('#diff').length) {
      var expanded = '<a class="octicon-btn custom-collapsable" href="javascript:void(0)" onclick="return false;"><span class="octicon octicon-triangle-down "></span></a>';
      $('#diff').find('#files > div[id^="diff-"]').each(function() {
        var diff = $(this);
        diff.find('.file-info').prepend(expanded);
        var area = diff.children('.data.highlight.blob-wrapper');
        diff.find('.octicon-btn.custom-collapsable').on('click', function() {
          var icon = $(this).children(':first');
          if (icon.hasClass('octicon-triangle-down')) {
            icon.attr('class', 'octicon octicon-triangle-right');
            area.hide();
          } else {
            icon.attr('class', 'octicon octicon-triangle-down');
            area.show();
          }
          //area.slideToggle('fast');
        });
      });
    }
  }
  
  collapsable();
  
  window.$(document).on('pjax:end', function() {
    collapsable();
  });
});