When a component passes a function to children, defining that function during rendering creates a new identity each time. useCallback lets React preserve the identity until dependencies change. section 6.5 section 6.5.2
Call useCallback with a function and dependency list. React returns the cached function on subsequent renders, then redefines and returns it when a dependency changes. Stable functions can prevent effects from repeating unnecessarily and help memoized components avoid updates caused only by changed function identity. section 6.5.2 section 6.6
Stable booking selection
A BookablesView component wraps updateBookable in useCallback with an empty dependency list, then passes the stable function to BookablesList. The dependent effect can stop endlessly refetching bookables data. section 6.5.2
const stableFunction = useCallback(funtionToCache, dependencyList);
Use the compact signature to see the cached function and dependency-list roles. section 6.5.2

