* fix: replace filter implementations on /insights * add authorization for teamIds * replace all the implementations * provide eventTypeId * remove log * fix teamId for isAll * fix Download button * remove legacy implementations * clean up * nullish check * remove unusable filters * revert style * fix type error * fix e2e test * fix type error * fix type error * fix e2e * extract util method * fix type error * fix type error * fix type error --------- Co-authored-by: Benny Joo <sldisek783@gmail.com>
28 lines
908 B
TypeScript
28 lines
908 B
TypeScript
import { useSession } from "next-auth/react";
|
|
import { useContext } from "react";
|
|
|
|
import { InsightsOrgTeamsContext } from "../context/InsightsOrgTeamsProvider";
|
|
|
|
export function useInsightsOrgTeams() {
|
|
const context = useContext(InsightsOrgTeamsContext);
|
|
if (!context) {
|
|
throw new Error("useInsightsOrgTeams must be used within a InsightsOrgTeamsProvider");
|
|
}
|
|
const session = useSession();
|
|
const currentOrgId = session.data?.user.org?.id;
|
|
const { orgTeamsType, selectedTeamId, setOrgTeamsType, setSelectedTeamId } = context;
|
|
const isAll = orgTeamsType === "org";
|
|
const teamId = orgTeamsType === "org" ? currentOrgId : orgTeamsType === "team" ? selectedTeamId : undefined;
|
|
const userId = orgTeamsType === "yours" ? session.data?.user.id : undefined;
|
|
|
|
return {
|
|
orgTeamsType,
|
|
setOrgTeamsType,
|
|
selectedTeamId,
|
|
setSelectedTeamId,
|
|
isAll,
|
|
teamId,
|
|
userId,
|
|
};
|
|
}
|