full-static-search
v1.3.1
Published
A lib to build an smart search on a static array
Downloads
9
Maintainers
Readme
import { FullStaticSearch } from 'full-static-search'
let array = [...]
let search = new FullStaticSearch(array)
search.filter('term')
Installation
$ npm install full-static-search --save
Features
Create tags to search
let array = [{ jediName: 'yoda', master: true, age=120 }]
let search = new FullStaticSearch(array)
search.tags
//{'0': [Tag {name: 'yoda'}, Tag {name: 'master'}, Tag {name: '120'}, Tag {name: 'age=120'}]}
Full text search at a static array
let array = [
{ jediName: 'yoda', master: true, age=120 },
{ jediName: 'anakin', master: false, age=20 },
{ jediName: 'kenobi', master: true, age=46 }
]
let search = new FullStaticSearch(array)
search.filter('kenobi')
//[{ jediName: 'kenobi', master: true, age=120 }]
search.filter('a')
//[{ jediName: 'anakin', master: false, age=20 }, { jediName: 'yoda', master: true, age=120 }]
search.filter('master')
//[{ jediName: 'yoda', master: true, age=120 }, { jediName: 'kenobi', master: true, age=120 }]
search.filter('!master')
//[{ jediName: 'anakin', master: false, age=20 }]
search.filter('120 !master')
//[{ jediName: 'yoda', master: true, age=120 }, { jediName: 'anakin', master: false, age=20 }]
- [IN DEVELOP] Search with promises
- [IN DEVELOP] Sort array by query
- [IN DEVELOP] Search with operators (AND, OR, ...)
Tests
To run the test suite, first install the dependencies ...
$ npm install
... then run npm test
:
$ npm test
Lint
To check lint status and errors:
$ npm run lint
Build
To build the dist folder run npm run build
...
$ npm run build
... or run with watch:
$ npm run build:watch