mirror of
https://github.com/gosticks/plane.git
synced 2025-10-16 12:45:33 +00:00
* chore(repo): migrate to pnpm * chore(repo): cleanup pnpm integration with turbo * chore(repo): run lint * chore(repo): cleanup tsconfigs * chore: align TypeScript to 5.8.3 across monorepo; update pnpm override and catalog; pnpm install to update lockfile * chore(repo): revert logger.ts changes * fix: type errors * fix: build errors * fix: pnpm home setup in dockerfiles --------- Co-authored-by: sriramveeraghanta <veeraghanta.sriram@gmail.com> Co-authored-by: Prateek Shourya <prateekshourya29@gmail.com>
95 lines
3.0 KiB
TypeScript
95 lines
3.0 KiB
TypeScript
import { useProjectEstimates } from "./store/estimates";
|
|
import { useCycle } from "./store/use-cycle";
|
|
import { useLabel } from "./store/use-label";
|
|
import { useMember } from "./store/use-member";
|
|
import { useModule } from "./store/use-module";
|
|
import { useProjectState } from "./store/use-project-state";
|
|
|
|
export const useProjectIssueProperties = () => {
|
|
const { fetchProjectStates } = useProjectState();
|
|
const {
|
|
project: { fetchProjectMembers },
|
|
} = useMember();
|
|
const { fetchProjectLabels } = useLabel();
|
|
const { fetchAllCycles: fetchProjectAllCycles } = useCycle();
|
|
const { fetchModules: fetchProjectAllModules } = useModule();
|
|
const { getProjectEstimates } = useProjectEstimates();
|
|
|
|
// fetching project states
|
|
const fetchStates = async (
|
|
workspaceSlug: string | string[] | undefined,
|
|
projectId: string | string[] | undefined
|
|
) => {
|
|
if (workspaceSlug && projectId) {
|
|
await fetchProjectStates(workspaceSlug.toString(), projectId.toString());
|
|
}
|
|
};
|
|
// fetching project members
|
|
const fetchMembers = async (
|
|
workspaceSlug: string | string[] | undefined,
|
|
projectId: string | string[] | undefined
|
|
) => {
|
|
if (workspaceSlug && projectId) {
|
|
await fetchProjectMembers(workspaceSlug.toString(), projectId.toString());
|
|
}
|
|
};
|
|
|
|
// fetching project labels
|
|
const fetchLabels = async (
|
|
workspaceSlug: string | string[] | undefined,
|
|
projectId: string | string[] | undefined
|
|
) => {
|
|
if (workspaceSlug && projectId) {
|
|
await fetchProjectLabels(workspaceSlug.toString(), projectId.toString());
|
|
}
|
|
};
|
|
// fetching project cycles
|
|
const fetchCycles = async (
|
|
workspaceSlug: string | string[] | undefined,
|
|
projectId: string | string[] | undefined
|
|
) => {
|
|
if (workspaceSlug && projectId) {
|
|
await fetchProjectAllCycles(workspaceSlug.toString(), projectId.toString());
|
|
}
|
|
};
|
|
// fetching project modules
|
|
const fetchModules = async (
|
|
workspaceSlug: string | string[] | undefined,
|
|
projectId: string | string[] | undefined
|
|
) => {
|
|
if (workspaceSlug && projectId) {
|
|
await fetchProjectAllModules(workspaceSlug.toString(), projectId.toString());
|
|
}
|
|
};
|
|
// fetching project estimates
|
|
const fetchEstimates = async (
|
|
workspaceSlug: string | string[] | undefined,
|
|
projectId: string | string[] | undefined
|
|
) => {
|
|
if (workspaceSlug && projectId) {
|
|
await getProjectEstimates(workspaceSlug.toString(), projectId.toString());
|
|
}
|
|
};
|
|
|
|
const fetchAll = async (workspaceSlug: string | string[] | undefined, projectId: string | string[] | undefined) => {
|
|
if (workspaceSlug && projectId) {
|
|
await fetchStates(workspaceSlug, projectId);
|
|
await fetchMembers(workspaceSlug, projectId);
|
|
await fetchLabels(workspaceSlug, projectId);
|
|
await fetchCycles(workspaceSlug, projectId);
|
|
await fetchModules(workspaceSlug, projectId);
|
|
await fetchEstimates(workspaceSlug, projectId);
|
|
}
|
|
};
|
|
|
|
return {
|
|
fetchAll,
|
|
fetchStates,
|
|
fetchMembers,
|
|
fetchLabels,
|
|
fetchCycles,
|
|
fetchModules,
|
|
fetchEstimates,
|
|
};
|
|
};
|