Skip to content

Commit 235febf

Browse files
committed
Minor refactor
1 parent 44d2b4a commit 235febf

File tree

2 files changed

+20
-20
lines changed

2 files changed

+20
-20
lines changed

index.js

Lines changed: 19 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1,28 +1,28 @@
11
// Setup
22
var leven = require('leven')
33

4-
// Export main function
5-
module.exports = function (ary, src1, key1, src2, key2) {
6-
if (key1 instanceof Array) {
7-
var levMinInAry = function (array) {
8-
var min = 1000
9-
var len = array.length
10-
for (var counter = 0; counter < len; counter++) {
11-
var val = array[counter]
12-
if (val && val.length && val.length > 0) {
13-
var levScore = leven(src1, array[counter])
14-
if (levScore < min) min = levScore
15-
}
16-
}
17-
return min
4+
// Helpers
5+
var levMinInAry = function (array, src) {
6+
var min = 1000
7+
var len = array.length
8+
for (var counter = 0; counter < len; counter++) {
9+
var val = array[counter]
10+
if (val && val.length && val.length > 0) {
11+
var levScore = leven(src, array[counter])
12+
if (levScore < min) min = levScore
1813
}
19-
return ary.sort(function (a, b) {
20-
var aLev = levMinInAry(key1.map(function (k) { return a[k] }))
21-
var bLev = levMinInAry(key1.map(function (k) { return b[k] }))
22-
return aLev - bLev
23-
})
2414
}
15+
return min
16+
}
17+
18+
// Export main function
19+
module.exports = function (ary, src1, key1, src2, key2) {
2520
return ary.sort(function (a, b) {
21+
if (key1 instanceof Array) {
22+
var aLev = levMinInAry(key1.map(function (k) { return a[k] }), src1)
23+
var bLev = levMinInAry(key1.map(function (k) { return b[k] }), src1)
24+
return aLev - bLev
25+
}
2626
if (!key1 && !key2) return leven(src1, a) < leven(src1, b) ? -1 : 1
2727
if (!key2) return leven(src1, a[key1]) < leven(src1, b[key1]) ? -1 : 1
2828
var score = 0

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "leven-sort",
3-
"version": "1.1.2",
3+
"version": "1.1.3",
44
"description": "Simply sort by similarity, starring Levenshtein via leven",
55
"keywords": [
66
"sort",

0 commit comments

Comments
 (0)