{"version":3,"sources":["../src/hooks/useAppInitialization.ts"],"sourcesContent":["import { useMemo } from 'react';\nimport { useInstitutionId } from './useInstitution';\nimport { useAppStore } from '../store/appStore';\nimport { useAuthStore } from '../store/authStore';\n\n/**\n * Hook que gerencia a inicialização da aplicação e funções de autenticação\n * Combina a lógica de obtenção do institutionId, inicialização do app store e funções de auth\n *\n * @param {UseAppInitializationProps} props - Propriedades do hook\n * @returns {object} Estado da inicialização, funções relacionadas e funções de autenticação\n */\nexport function useAppInitialization() {\n  const getInstitutionId = useInstitutionId();\n  const { initialize, initialized, institutionId } = useAppStore();\n\n  // Create memoized auth functions for the AuthProvider to prevent unnecessary re-renders\n  const authFunctions = useMemo(\n    () => ({\n      checkAuth: async () => {\n        const { sessionInfo, tokens } = useAuthStore.getState();\n        return Boolean(sessionInfo && tokens);\n      },\n      signOut: () => {\n        const { signOut } = useAuthStore.getState();\n        signOut();\n      },\n      getUser: () => {\n        const { user } = useAuthStore.getState();\n        return user;\n      },\n      getSessionInfo: () => {\n        const { sessionInfo } = useAuthStore.getState();\n        return sessionInfo;\n      },\n      getTokens: () => {\n        const { tokens } = useAuthStore.getState();\n        return tokens;\n      },\n    }),\n    []\n  );\n\n  return {\n    // Estado da inicialização\n    getInstitutionId,\n    initialize,\n    initialized,\n    institutionId,\n\n    // Funções de autenticação\n    authFunctions,\n  };\n}\n"],"mappings":";;;;;;;;;;;AAAA,SAAS,eAAe;AAYjB,SAAS,uBAAuB;AACrC,QAAM,mBAAmB,iBAAiB;AAC1C,QAAM,EAAE,YAAY,aAAa,cAAc,IAAI,YAAY;AAG/D,QAAM,gBAAgB;AAAA,IACpB,OAAO;AAAA,MACL,WAAW,YAAY;AACrB,cAAM,EAAE,aAAa,OAAO,IAAI,aAAa,SAAS;AACtD,eAAO,QAAQ,eAAe,MAAM;AAAA,MACtC;AAAA,MACA,SAAS,MAAM;AACb,cAAM,EAAE,QAAQ,IAAI,aAAa,SAAS;AAC1C,gBAAQ;AAAA,MACV;AAAA,MACA,SAAS,MAAM;AACb,cAAM,EAAE,KAAK,IAAI,aAAa,SAAS;AACvC,eAAO;AAAA,MACT;AAAA,MACA,gBAAgB,MAAM;AACpB,cAAM,EAAE,YAAY,IAAI,aAAa,SAAS;AAC9C,eAAO;AAAA,MACT;AAAA,MACA,WAAW,MAAM;AACf,cAAM,EAAE,OAAO,IAAI,aAAa,SAAS;AACzC,eAAO;AAAA,MACT;AAAA,IACF;AAAA,IACA,CAAC;AAAA,EACH;AAEA,SAAO;AAAA;AAAA,IAEL;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA;AAAA,IAGA;AAAA,EACF;AACF;","names":[]}