@webkitty/searchbox
v1.0.1
Published
A search box supporting multiple user-defined keywords.
Downloads
7
Readme
Text input augmented with Lexer magic✨ to support advanced search features. Searchbox supports multiple user-defined keywords (filters, variables) and also NOT operator.
Features
- [x] Parses user input string into a structured formula of literals.
- [x] Supports literal negation.
- [x] Supports unicode.
- [ ] Operators are configurable.
Usage
import * as searchbox from '@webkitty/searchbox';
const inputText = 'Never take title:raisins from -author:rabbits';
const keywords = ['title', 'author'];
const formula = searchbox.parse(inputText, {keywords});
// Formula:
// _: [Never,take,from] // words not matching any keyword (aka fulltext)
// title: [raisins] // "title" keyword match
// -author: [rabbits] // "author" keyword match with NOT operator ("-")
Please note that only case-sensitive keyword matching is supported.
📝 License
Copyright © 2019 stuchl4n3k. This project is MIT licensed.