57 lines
1.6 KiB
TypeScript
57 lines
1.6 KiB
TypeScript
import {
|
|
adminProcedure,
|
|
createTRPCRouter,
|
|
protectedProcedure,
|
|
resourceOverviewProcedure,
|
|
} from "../trpc.js";
|
|
import {
|
|
createOrgUnit,
|
|
deactivateOrgUnit,
|
|
getOrgUnitById,
|
|
getOrgUnitByIdentifier,
|
|
getOrgUnitTree,
|
|
listOrgUnits,
|
|
orgUnitIdInputSchema,
|
|
orgUnitIdentifierInputSchema,
|
|
orgUnitListInputSchema,
|
|
orgUnitTreeInputSchema,
|
|
orgUnitUpdateInputSchema,
|
|
resolveOrgUnitByIdentifier,
|
|
updateOrgUnit,
|
|
} from "./org-unit-procedure-support.js";
|
|
import { CreateOrgUnitSchema } from "@capakraken/shared";
|
|
|
|
export const orgUnitRouter = createTRPCRouter({
|
|
list: resourceOverviewProcedure
|
|
.input(orgUnitListInputSchema)
|
|
.query(({ ctx, input }) => listOrgUnits(ctx, input)),
|
|
|
|
getTree: resourceOverviewProcedure
|
|
.input(orgUnitTreeInputSchema)
|
|
.query(({ ctx, input }) => getOrgUnitTree(ctx, input)),
|
|
|
|
getById: resourceOverviewProcedure
|
|
.input(orgUnitIdInputSchema)
|
|
.query(({ ctx, input }) => getOrgUnitById(ctx, input)),
|
|
|
|
resolveByIdentifier: protectedProcedure
|
|
.input(orgUnitIdentifierInputSchema)
|
|
.query(({ ctx, input }) => resolveOrgUnitByIdentifier(ctx, input)),
|
|
|
|
getByIdentifier: resourceOverviewProcedure
|
|
.input(orgUnitIdentifierInputSchema)
|
|
.query(({ ctx, input }) => getOrgUnitByIdentifier(ctx, input)),
|
|
|
|
create: adminProcedure
|
|
.input(CreateOrgUnitSchema)
|
|
.mutation(({ ctx, input }) => createOrgUnit(ctx, input)),
|
|
|
|
update: adminProcedure
|
|
.input(orgUnitUpdateInputSchema)
|
|
.mutation(({ ctx, input }) => updateOrgUnit(ctx, input)),
|
|
|
|
deactivate: adminProcedure
|
|
.input(orgUnitIdInputSchema)
|
|
.mutation(({ ctx, input }) => deactivateOrgUnit(ctx, input)),
|
|
});
|