Skip to content

public-transport/vbb-sort-lines

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

vbb-sort-lines

Sort VBB lines by their importance. Implements a heuristic to sort lines based on their mode of transport and name.

npm version build status ISC-licensed chat on gitter

Installing

npm install vbb-sort-lines

Usage

sortLines compares two lines in Friendly Public Transport Format, so that it works with Array.prototype.sort.

const sortLines = require('vbb-sort-lines')

console.log([
	{type: 'line', id: '1', name: '11', mode: 'train'},
	{type: 'line', id: '5', name: '300', mode: 'bus'},
	{type: 'line', id: '2', name: '100', mode: 'train'},
	{type: 'line', id: '4', name: 'M45', mode: 'bus'},
	{type: 'line', id: '3', name: '10', mode: 'ferry'}
].sort(sortLines))
[
	{type: 'line', id: '1', name: '11', mode: 'train'},
	{type: 'line', id: '2', name: '100', mode: 'train'},
	{type: 'line', id: '3', name: '10', mode: 'ferry'},
	{type: 'line', id: '4', name: 'M45', mode: 'bus'},
	{type: 'line', id: '5', name: '300', mode: 'bus'}
]

Contributing

If you have a question, found a bug or want to propose a feature, have a look at the issues page.