/** * When true, the catalog domain is served by the in-memory mock (apis/mockApi.ts) behind the * CatalogApi seam — the b5 `catalog` + `nurse_variants` routes exist, but the mock lets the Home * grid and the nurse builder (incl. the required-option validation and the duplicate-listing 409) * demo standalone before the backend is reachable in this environment. Flip to false to hit the * live endpoints — no hook/component changes (see dev/shared-working-context/reports/mocks-registry.md). */ export const USE_CATALOG_MOCK = true; /** * Categories and a category's option groups/values are **admin-seeded reference data** that changes * rarely, so they are cached **for the whole session** (Infinite `staleTime`) exactly like the geo * hierarchy — fetched once and served from cache across the Home grid and every builder step, never * refetched per screen. A generous `gcTime` keeps them warm after the last consumer unmounts. */ export const CATALOG_REFERENCE_STALE_TIME = Infinity; export const CATALOG_REFERENCE_GC_TIME = 24 * 60 * 60 * 1000; // 24h /** The nurse's own offerings change on mutation; keep warm across remounts, invalidate on write. */ export const MY_VARIANTS_STALE_TIME = 60_000; /** api-conventions default/max page sizes. A nurse has a handful of offerings; categories are few. */ export const CATEGORIES_PAGE_SIZE = 50; export const MY_VARIANTS_PAGE_SIZE = 50;