Keep the result of authenticated() memo-ed in category card for efficiency
CategoryCard recomputes authenticated() every time it re-renders, such as while filtering down categories. Since the result doesn't change, we can use useMemo
to cache the function call.