Coverage

100%
11
11
0

/Users/sebastiansandqvist/Documents/Sites & Projects/apps/~modules/s-sortbydistance/index.js

100%
11
11
0
LineHitsSource
11'use strict';
2
3// ----- dependencies
4// ---------------------------------------
51var sift = require('sift-distance');
6
7// ----- sort function
8// -- @param arr {Array} strings to sort
9// -- @param str {String} sort against this
10// -- @param max {Number} remove items >= max
11// -- @return {Array} sorted by distance to str
12// ---------------------------------------
131function sort(arr, str, max) {
14
153 if (max) {
161 arr = arr.filter(function(el) {
175 return sift(el, str, {maxDistance: max, maxOffset: sort.maxOffset}) < max;
18 });
19 }
20
213 var opts = {maxOffset: sort.maxOffset};
22
233 return arr.sort(function(a, b) {
2417 return sift(a, str, opts) - sift(b, str, opts);
25 });
26
27}
28
291sort.maxOffset = 5;
30
311module.exports = sort;