UNPKG

@clerk/shared

Version:

Internal package utils used by the Clerk SDKs

18 lines (16 loc) 808 B
const require_contexts = require('../../contexts.js'); let react = require("react"); //#region src/react/hooks/base/useUserBase.ts function useUserBase() { const clerk = require_contexts.useClerkInstanceContext(); const initialState = require_contexts.useInitialStateContext(); const getInitialState = (0, react.useCallback)(() => initialState?.user, [initialState?.user]); return (0, react.useSyncExternalStore)((0, react.useCallback)((callback) => { return clerk.addListener(callback, { skipInitialEmit: true }); }, [clerk]), (0, react.useCallback)(() => { if (!clerk.loaded || !clerk.__internal_lastEmittedResources) return getInitialState(); return clerk.__internal_lastEmittedResources.user; }, [clerk, getInitialState]), getInitialState); } //#endregion exports.useUserBase = useUserBase;