Populate url list of file finder as user types.

This commit is contained in:
Nathan Sobo
2011-12-28 14:21:43 -06:00
parent 51c89acc5b
commit 886c435b43
2 changed files with 30 additions and 3 deletions

View File

@@ -1,15 +1,24 @@
$ = require 'jquery'
Template = require 'template'
stringScore = require 'stringscore'
module.exports =
class FileFinder extends Template
content: -> @div
content: ->
@div class: 'file-finder', =>
@ol outlet: 'urlList'
@input outlet: 'input', keypress: 'populateUrlList'
viewProperties:
urls: null
initialize: ({@urls}) ->
populateUrlList: ->
@urlList.empty()
for url in @findMatches(@input.text())
@urlList.append $("<li>#{url}</li>")
findMatches: (query) ->
scoredUrls = ({url, score: stringScore(url, query)} for url in @urls)
sortedUrls = scoredUrls.sort (a, b) -> a.score > b.score