Skip to content

Commit 2c2d273

Browse files
authored
Merge pull request #712 from trycompai/main
[comp] Production Deploy
2 parents d4cd24e + 8f45d30 commit 2c2d273

File tree

3 files changed

+26
-23
lines changed

3 files changed

+26
-23
lines changed

apps/app/src/actions/policies/create-new-policy.ts

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -16,10 +16,10 @@ export const createPolicyAction = authActionClient
1616
channel: "server",
1717
},
1818
})
19-
.action(async ({ parsedInput, ctx }) => {
20-
const { title, description, frameworkIds, controlIds } = parsedInput;
21-
const { activeOrganizationId } = ctx.session;
22-
const { user } = ctx;
19+
.action(async ({ parsedInput, ctx }) => {
20+
const { title, description, controlIds } = parsedInput;
21+
const { activeOrganizationId } = ctx.session;
22+
const { user } = ctx;
2323

2424
if (!activeOrganizationId) {
2525
return {

apps/app/src/actions/schema.ts

Lines changed: 11 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -240,13 +240,19 @@ export const updateResidualRiskEnumSchema = z.object({
240240

241241
// Policies
242242
export const createPolicySchema = z.object({
243-
title: z.string(),
244-
description: z.string(),
245-
frameworkIds: z.array(z.string()),
246-
controlIds: z.array(z.string()),
247-
entityId: z.string(),
243+
title: z
244+
.string({ required_error: "Title is required" })
245+
.min(1, "Title is required"),
246+
description: z
247+
.string({ required_error: "Description is required" })
248+
.min(1, "Description is required"),
249+
frameworkIds: z.array(z.string()).optional(),
250+
controlIds: z.array(z.string()).optional(),
251+
entityId: z.string().optional(),
248252
});
249253

254+
export type CreatePolicySchema = z.infer<typeof createPolicySchema>;
255+
250256
export const updatePolicySchema = z.object({
251257
id: z.string(),
252258
content: z.any(),

apps/app/src/components/forms/policies/create-new-policy.tsx

Lines changed: 11 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
"use client";
22

33
import { createPolicyAction } from "@/actions/policies/create-new-policy";
4-
import { createPolicySchema } from "@/actions/schema";
4+
import { createPolicySchema, type CreatePolicySchema } from "@/actions/schema";
55
import { useI18n } from "@/locales/client";
66
import {
77
Accordion,
@@ -27,7 +27,6 @@ import { useQueryState } from "nuqs";
2727
import React from "react";
2828
import { useForm } from "react-hook-form";
2929
import { toast } from "sonner";
30-
import type { z } from "zod";
3130

3231
export function CreateNewPolicyForm() {
3332
const t = useI18n();
@@ -43,19 +42,17 @@ export function CreateNewPolicyForm() {
4342
},
4443
});
4544

46-
const form = useForm<z.infer<typeof createPolicySchema>>({
47-
resolver: zodResolver(createPolicySchema),
48-
defaultValues: {
49-
title: "",
50-
description: "",
51-
frameworkIds: [],
52-
controlIds: [],
53-
},
54-
});
45+
const form = useForm<CreatePolicySchema>({
46+
resolver: zodResolver(createPolicySchema),
47+
defaultValues: {
48+
title: "",
49+
description: "",
50+
},
51+
});
5552

56-
const onSubmit = (data: z.infer<typeof createPolicySchema>) => {
57-
createPolicy.execute(data);
58-
};
53+
const onSubmit = (data: CreatePolicySchema) => {
54+
createPolicy.execute(data);
55+
};
5956

6057
return (
6158
<Form {...form}>

0 commit comments

Comments
 (0)