UNPKG

@helpwave/hightide

Version:

helpwave's component and theming library

26 lines 1.1 kB
// src/util/simpleSearch.ts var MultiSubjectSearchWithMapping = (search, objects, mapping) => { return objects.filter((object) => { const mappedSearchKeywords = mapping(object).map((value) => value ? value.toLowerCase().trim() : void 0); return search.every((searchValue) => !!mappedSearchKeywords.find((value) => !!value && value.includes(searchValue.toLowerCase().trim()))); }); }; var MultiSearchWithMapping = (search, objects, mapping) => { return objects.filter((object) => { const mappedSearchKeywords = mapping(object).map((value) => value.toLowerCase().trim()); return !!mappedSearchKeywords.find((value) => value.includes(search.toLowerCase().trim())); }); }; var SimpleSearchWithMapping = (search, objects, mapping) => { return MultiSearchWithMapping(search, objects, (value) => [mapping(value)]); }; var SimpleSearch = (search, objects) => { return SimpleSearchWithMapping(search, objects, (value) => value); }; export { MultiSearchWithMapping, MultiSubjectSearchWithMapping, SimpleSearch, SimpleSearchWithMapping }; //# sourceMappingURL=simpleSearch.mjs.map