import { useMe } from "./useMe"; import type { Plan } from "./useMe"; export type { Plan }; /** * Plan des eingeloggten Users — abgeleitet aus useMe() (single source of truth, * inkl. Live-Invalidierung via invalidateMe()). * * Vorher hatte useUserPlan einen eigenen Modul-Cache + fetch-once-on-mount — * das war ein Bug: der __DEV__-Tier-Toggle (ruft invalidateMe() auf) erreichte * die useUserPlan-Consumer NICHT, also reagierte die App nicht auf den Plan-Wechsel. * Jetzt erbt useUserPlan die Invalidierung von useMe → Toggle propagiert überall. */ export function useUserPlan(): { plan: Plan; loading: boolean } { const { me, loading } = useMe(); return { plan: me?.plan ?? "free", loading }; }