File tree Expand file tree Collapse file tree 3 files changed +11
-11
lines changed Expand file tree Collapse file tree 3 files changed +11
-11
lines changed Original file line number Diff line number Diff line change 1
1
var MongoDBInstance = require ( 'mongodb-instance-model' ) ;
2
2
var MongoDBCollection = require ( './mongodb-collection' ) ;
3
3
var scoutClientMixin = require ( './scout-client-mixin' ) ;
4
+ var filterableMixin = require ( 'ampersand-collection-filterable' ) ;
4
5
var selectableMixin = require ( './selectable-collection-mixin' ) ;
5
6
var toNS = require ( 'mongodb-ns' ) ;
6
7
7
8
/**
8
9
* A user selectable collection of `MongoDBCollection`'s with `specialish`
9
10
* collections filtered out.
10
11
*/
11
- var MongoDBCollectionOnInstanceCollection = MongoDBCollection . Collection . extend ( selectableMixin , {
12
+ var MongoDBCollectionOnInstanceCollection = MongoDBCollection . Collection . extend ( {
12
13
namespace : 'MongoDBCollectionOnInstanceCollection' ,
13
14
model : MongoDBCollection ,
14
15
parse : function ( res ) {
15
16
return res . filter ( function ( d ) {
16
17
return ! toNS ( d . _id ) . specialish ;
17
18
} ) ;
18
19
}
19
- } ) ;
20
+ } , filterableMixin , selectableMixin ) ;
20
21
21
22
/**
22
23
* Metadata for a MongoDB Instance, such as a `db.hostInfo()`, `db.listDatabases()`,
Original file line number Diff line number Diff line change 1
1
var View = require ( 'ampersand-view' ) ;
2
+ var debug = require ( 'debug' ) ( 'scout:sidebar:collection-filter' ) ;
2
3
3
4
var CollectionFilterView = View . extend ( {
4
5
template : require ( './collection-filter.jade' ) ,
@@ -22,7 +23,9 @@ var CollectionFilterView = View.extend({
22
23
this . search = this . input . value . trim ( ) ;
23
24
} ,
24
25
applyFilter : function ( ) {
26
+ debug ( 'applying filter for `%s`' , this . search ) ;
25
27
this . parent . filterCollections ( this . search ) ;
28
+ debug ( 'filter applied' ) ;
26
29
}
27
30
} ) ;
28
31
module . exports = CollectionFilterView ;
Original file line number Diff line number Diff line change 1
1
var View = require ( 'ampersand-view' ) ;
2
- var _ = require ( 'lodash' ) ;
3
2
var mousetrap = require ( 'mousetrap' ) ;
4
3
var CollectionFilterView = require ( './collection-filter' ) ;
5
4
var CollectionListView = require ( './collection-list' ) ;
6
5
7
- function fast_filter_collection ( collection , pattern ) {
8
- var re = new RegExp ( pattern || '.*' ) ;
9
- collection . filter ( function ( model ) {
10
- return re . test ( model . getId ( ) ) ;
11
- } ) ;
12
- }
13
-
14
6
var SidebarView = View . extend ( {
15
7
props : {
16
8
open : {
@@ -63,7 +55,11 @@ var SidebarView = View.extend({
63
55
}
64
56
} ,
65
57
filterCollections : function ( pattern ) {
66
- _ . defer ( fast_filter_collection , this . collection , pattern ) ;
58
+ var re = new RegExp ( pattern ) ;
59
+
60
+ this . collection . filter ( function ( model ) {
61
+ return re . test ( model . getId ( ) ) ;
62
+ } ) ;
67
63
}
68
64
} ) ;
69
65
You can’t perform that action at this time.
0 commit comments