public search()

in src/api/catalog-search/catalog-search.ts [178:195]


  public search(params?: CatalogSearchParams): CatalogSearchResults {
    const { query, filters, sort } = params ?? {};

    let results = query ? this.query(query) : new Map(this.map);

    // TODO: Investigate if we can leverage lunr for filtering
    if (filters) {
      results = this.filter(results, filters);
    }

    results = this.dedup(results);

    if (sort) {
      results = this.sort(results, sort);
    }

    return results;
  }