checkpoint frontend

This commit is contained in:
x
2025-04-29 19:26:07 -04:00
parent 5641d334cd
commit 8b6c97d5bc
2 changed files with 62 additions and 3 deletions
@@ -56,6 +56,7 @@ export const useImportCertificate = () => {
const queryClient = useQueryClient(); const queryClient = useQueryClient();
return useMutation<TImportCertificateResponse, object, TImportCertificateDTO>({ return useMutation<TImportCertificateResponse, object, TImportCertificateDTO>({
mutationFn: async (body) => { mutationFn: async (body) => {
console.log("DBG-1");
const { data } = await apiRequest.post<TImportCertificateResponse>( const { data } = await apiRequest.post<TImportCertificateResponse>(
"/api/v1/pki/certificates/import-certificate", "/api/v1/pki/certificates/import-certificate",
body body
@@ -11,7 +11,8 @@ import {
Modal, Modal,
ModalContent, ModalContent,
Select, Select,
SelectItem SelectItem,
TextArea
} from "@app/components/v2"; } from "@app/components/v2";
import { useWorkspace } from "@app/context"; import { useWorkspace } from "@app/context";
import { useImportCertificate, useGetCert, useListWorkspacePkiCollections } from "@app/hooks/api"; import { useImportCertificate, useGetCert, useListWorkspacePkiCollections } from "@app/hooks/api";
@@ -104,7 +105,6 @@ export const CertificateImportModal = ({ popUp, handlePopUpToggle }: Props) => {
const { serialNumber, certificate, certificateChain, privateKey } = await importCertificate({ const { serialNumber, certificate, certificateChain, privateKey } = await importCertificate({
projectSlug: currentWorkspace.slug, projectSlug: currentWorkspace.slug,
projectSlug: currentWorkspace.slug,
certificatePem, certificatePem,
privateKeyPem, privateKeyPem,
@@ -153,9 +153,10 @@ export const CertificateImportModal = ({ popUp, handlePopUpToggle }: Props) => {
name="collectionId" name="collectionId"
render={({ field: { onChange, ...field }, fieldState: { error } }) => ( render={({ field: { onChange, ...field }, fieldState: { error } }) => (
<FormControl <FormControl
label="Certificate Collection (Optional)" label="Certificate Collection"
errorText={error?.message} errorText={error?.message}
isError={Boolean(error)} isError={Boolean(error)}
isOptional
className="mt-4" className="mt-4"
> >
<Select <Select
@@ -188,6 +189,63 @@ export const CertificateImportModal = ({ popUp, handlePopUpToggle }: Props) => {
</FormControl> </FormControl>
)} )}
/> />
<Controller
control={control}
defaultValue=""
name="certificatePem"
render={({ field, fieldState: { error } }) => (
<FormControl
label="Certificate PEM"
isError={Boolean(error)}
isRequired
errorText={error?.message}
>
<TextArea
{...field}
placeholder="TODO(andrey): Pem placeholder"
isDisabled={Boolean(cert)}
/>
</FormControl>
)}
/>
<Controller
control={control}
defaultValue=""
name="chainPem"
render={({ field, fieldState: { error } }) => (
<FormControl
label="Certificate Chain PEM"
isError={Boolean(error)}
isOptional
errorText={error?.message}
>
<TextArea
{...field}
placeholder="TODO(andrey): Pem placeholder"
isDisabled={Boolean(cert)}
/>
</FormControl>
)}
/>
<Controller
control={control}
defaultValue=""
name="privateKeyPem"
render={({ field, fieldState: { error } }) => (
<FormControl
label="Private Key PEM"
isError={Boolean(error)}
isOptional
errorText={error?.message}
>
<TextArea
{...field}
placeholder="TODO(andrey): Pem placeholder"
isDisabled={Boolean(cert)}
/>
</FormControl>
)}
/>
{!cert && ( {!cert && (
<div className="mt-4 flex items-center"> <div className="mt-4 flex items-center">
<Button <Button