selectors: use synchronous selectors returning Promise over async

This commit is contained in:
rektdeckard
2020-09-14 17:40:09 -04:00
parent 4df0ac7295
commit 2298b1d377

View File

@@ -15,7 +15,7 @@ const isQueryMatch = (icon: IconEntry, query: string): boolean => {
export const filteredQueryResultsSelector = selector<Readonly<IconEntry[]>>({ export const filteredQueryResultsSelector = selector<Readonly<IconEntry[]>>({
key: "filteredQueryResultsSelector", key: "filteredQueryResultsSelector",
get: async ({ get }) => { get: ({ get }) => {
const query = get(searchQueryAtom).trim().toLowerCase(); const query = get(searchQueryAtom).trim().toLowerCase();
const style = get(iconStyleAtom); const style = get(iconStyleAtom);
@@ -33,7 +33,7 @@ export const categorizedQueryResultsSelector = selector<
Readonly<CategorizedIcons> Readonly<CategorizedIcons>
>({ >({
key: "categorizedQueryResultsSelector", key: "categorizedQueryResultsSelector",
get: async ({ get }) => { get: ({ get }) => {
const filteredResults = get(filteredQueryResultsSelector); const filteredResults = get(filteredQueryResultsSelector);
return new Promise((resolve) => return new Promise((resolve) =>
resolve( resolve(
@@ -54,7 +54,7 @@ export const singleCategoryQueryResultsSelector = selectorFamily<
IconCategory IconCategory
>({ >({
key: "singleCategoryQueryResultsSelector", key: "singleCategoryQueryResultsSelector",
get: (category: IconCategory) => async ({ get }) => { get: (category: IconCategory) => ({ get }) => {
const filteredResults = get(filteredQueryResultsSelector); const filteredResults = get(filteredQueryResultsSelector);
return new Promise((resolve) => return new Promise((resolve) =>
resolve( resolve(