selectors: use synchronous selectors returning Promise over async
This commit is contained in:
@@ -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(
|
||||||
|
|||||||
Reference in New Issue
Block a user