import { useState } from "react"; import { useAppContextWithSchema } from "@calcom/app-store/EventTypeAppContext"; import type { EventTypeAppCardApp } from "../types"; function useIsAppEnabled(app: EventTypeAppCardApp) { const { getAppData, setAppData } = useAppContextWithSchema(); const [enabled, setEnabled] = useState(() => { if (!app.credentialOwner) { return getAppData("enabled"); } const credentialId = getAppData("credentialId"); const isAppEnabledForCredential = app.userCredentialIds.some((id) => id === credentialId) || app.credentialOwner.credentialId === credentialId; return isAppEnabledForCredential; }); const updateEnabled = (newValue: boolean) => { if (!newValue) { setAppData("credentialId", undefined); } if (newValue && (app.userCredentialIds?.length || app.credentialOwner?.credentialId)) { setAppData("credentialId", app.credentialOwner?.credentialId || app.userCredentialIds[0]); } setEnabled(newValue); }; return { enabled, updateEnabled }; } export default useIsAppEnabled;