quick_search 0.2.0 copy "quick_search: ^0.2.0" to clipboard
quick_search: ^0.2.0 copied to clipboard

A package allow you to create a search repository for quick search.

Quick Search #

A package allow you to create a search repository for quick search.

Features #

  • Create custom search repositories
  • Efficient searching using a Trie data structure
  • Support for multiple search fields per item

Usage #

Create your own search repository #

import 'package:quick_search/quick_search.dart';

class Product {
  final String en;
  final String pinyin;

  Product({required this.en, required this.pinyin});
}

class ProductSearchRepository extends TrieSearchRepository<Product> {
  ProductSearchRepository(List<Product> products)
      : super(
          products,
          (product) => [
            product.en,
            product.pinyin,
          ],
        );
}

Use the search repository #


void main() async {
  final products = [
    Product(en: 'apple', pinyin: 'pingguo'),
    Product(en: 'banana', pinyin: 'xiangjiao'),
    Product(en: 'green apple', pinyin: 'lv pingguo'),
    Product(en: 'orange', pinyin: 'chengzi'),
  ];

  final searchRepository = ProductSearchRepository(products);
  final results = await searchRepository.search('app');

  results.forEach((product) => print(product.en));
  // Output:
  // apple
  // green apple
}

Contributing #

Contributions are welcome! Please feel free to submit a Pull Request.

License #

This project is licensed under the MIT License - see the LICENSE file for details.

0
likes
140
points
1
downloads

Publisher

unverified uploader

Weekly Downloads

A package allow you to create a search repository for quick search.

Repository (GitHub)
View/report issues

Documentation

API reference

License

MIT (license)

More

Packages that depend on quick_search