Sha256: 3cb07e9ab79386137c5e1c37b1fe3e318966320da2af12657a4b9da7b8bcb198

Contents?: true

Size: 649 Bytes

Versions: 80

Compression:

Stored size: 649 Bytes

Contents

/**
 * Expose `sort`.
 */

exports = module.exports = sort;

/**
 * Sort `el`'s children with the given `fn(a, b)`.
 *
 * @param {Element} el
 * @param {Function} fn
 * @api public
 */

function sort(el, fn) {
  var arr = [].slice.call(el.children).sort(fn);
  var frag = document.createDocumentFragment();
  for (var i = 0; i < arr.length; i++) {
    frag.appendChild(arr[i]);
  }
  el.appendChild(frag);
};

/**
 * Sort descending.
 *
 * @param {Element} el
 * @param {Function} fn
 * @api public
 */

exports.desc = function(el, fn){
  sort(el, function(a, b){
    return ~fn(a, b) + 1;
  });
};

/**
 * Sort ascending.
 */

exports.asc = sort;

Version data entries

80 entries across 80 versions & 1 rubygems

Version Path
ende-0.5.22 components/component/sort/0.0.3/index.js
ende-0.5.21 components/component/sort/0.0.3/index.js
ende-0.5.20 components/component/sort/0.0.3/index.js
ende-0.5.19 components/component/sort/0.0.3/index.js
ende-0.5.18 components/component/sort/0.0.3/index.js
ende-0.5.17 components/component/sort/0.0.3/index.js
ende-0.5.16 components/component/sort/0.0.3/index.js
ende-0.5.15 components/component/sort/0.0.3/index.js
ende-0.5.14 components/component/sort/0.0.3/index.js
ende-0.5.13 components/component/sort/0.0.3/index.js
ende-0.5.12 components/component/sort/0.0.3/index.js
ende-0.5.10 components/component/sort/0.0.3/index.js
ende-0.5.9 components/component/sort/0.0.3/index.js
ende-0.5.8 components/component/sort/0.0.3/index.js
ende-0.5.7 components/component/sort/0.0.3/index.js
ende-0.5.6 components/component/sort/0.0.3/index.js
ende-0.4.25 vendor/components/component-sort/index.js
ende-0.5.5 components/component/sort/0.0.3/index.js
ende-0.5.4 components/component/sort/0.0.3/index.js
ende-0.5.3 components/component/sort/0.0.3/index.js