UNPKG

wcz-layout

Version:

84 lines (83 loc) 3.24 kB
import { t as createApi } from "./createApi-CLYWCzR2.mjs"; import { a as ResubmitApprovalSchema, c as ApprovalStatus, i as CreateApprovalSchema, n as ApproveApprovalSchema, o as WithdrawApprovalSchema, r as CancelApprovalSchema, u as ApprovalStepResult } from "./Approval-C-hF4jbT.mjs"; import { z as z$1 } from "zod"; import { createServerOnlyFn } from "@tanstack/react-start"; //#region src/data/server/approval.ts const GetApprovalsSchema = z$1.object({ appName: z$1.string().min(1).max(255), status: ApprovalStatus.optional(), approverEmployeeId: z$1.string().min(1).max(20).optional(), stepResult: ApprovalStepResult.optional() }); const GetApprovalSchema = z$1.object({ id: z$1.uuid() }); const approvalApi = () => createApi({ baseURL: "APPROVAL_BASE_URL", scopeKey: "approval" }); const getApprovals = createServerOnlyFn(async ({ data }) => { const input = GetApprovalsSchema.parse(data); const queryParams = new URLSearchParams(); queryParams.append("applicationName", input.appName); if (input.status) queryParams.append("status", input.status.toString()); if (input.approverEmployeeId) queryParams.append("approverEmployeeId", input.approverEmployeeId); if (input.stepResult) queryParams.append("stepResult", input.stepResult.toString()); const { data: approvals } = await (await approvalApi()).request({ url: `/Requests/Requests?${queryParams.toString()}`, method: "GET" }); return approvals; }); const getApproval = createServerOnlyFn(async ({ data }) => { const input = GetApprovalSchema.parse(data); const { data: approval } = await (await approvalApi()).request({ url: `/Requests/${input.id}`, method: "GET" }); return approval; }); const createApproval = createServerOnlyFn(async ({ data }) => { const input = CreateApprovalSchema.parse(data); const { data: approval } = await (await approvalApi()).request({ url: `/Requests`, method: "POST", data: input }); return approval; }); const approveApproval = createServerOnlyFn(async ({ data }) => { const input = ApproveApprovalSchema.parse(data); const { data: approval } = await (await approvalApi()).request({ url: `/Requests/${input.id}/single-approval`, method: "POST", data: input }); return approval; }); const resubmitApproval = createServerOnlyFn(async ({ data }) => { const input = ResubmitApprovalSchema.parse(data); const { data: approval } = await (await approvalApi()).request({ url: `/Requests/${input.id}/resubmit`, method: "POST", data: input }); return approval; }); const withdrawApproval = createServerOnlyFn(async ({ data }) => { const input = WithdrawApprovalSchema.parse(data); await (await approvalApi()).request({ url: `/Requests/${input.id}/withdraw`, method: "POST", data: input }); }); const cancelApproval = createServerOnlyFn(async ({ data }) => { const input = CancelApprovalSchema.parse(data); await (await approvalApi()).request({ url: `/Requests/${input.id}/cancel`, method: "POST", data: input }); }); //#endregion export { createApproval as a, resubmitApproval as c, cancelApproval as i, withdrawApproval as l, GetApprovalsSchema as n, getApproval as o, approveApproval as r, getApprovals as s, GetApprovalSchema as t }; //# sourceMappingURL=approval-DFExxyAJ.mjs.map