diff --git a/package-lock.json b/package-lock.json index 1d26bdc779..0c99431506 100644 --- a/package-lock.json +++ b/package-lock.json @@ -8579,9 +8579,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001731", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001731.tgz", - "integrity": "sha512-lDdp2/wrOmTRWuoB5DpfNkC0rJDU8DqRa6nYL6HK6sytw70QMopt/NIc/9SM7ylItlBWfACXk0tEn37UWM/+mg==", + "version": "1.0.30001766", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001766.tgz", + "integrity": "sha512-4C0lfJ0/YPjJQHagaE9x2Elb69CIqEPZeG0anQt9SIvIoOH4a4uaRl73IavyO+0qZh6MDLH//DrXThEYKHkmYA==", "dev": true, "funding": [ { diff --git a/src/autokitteh b/src/autokitteh index 3d8d84c7a3..bb6b5b9b68 160000 --- a/src/autokitteh +++ b/src/autokitteh @@ -1 +1 @@ -Subproject commit 3d8d84c7a31c56777f11c23d122cfed4bd865509 +Subproject commit bb6b5b9b68b4ae4765e0a572314d67863aba44b8 diff --git a/src/components/organisms/configuration/connections/integrations/index.ts b/src/components/organisms/configuration/connections/integrations/index.ts index f1a1437d76..fb6317e88e 100644 --- a/src/components/organisms/configuration/connections/integrations/index.ts +++ b/src/components/organisms/configuration/connections/integrations/index.ts @@ -71,3 +71,7 @@ export { NotionIntegrationAddForm, NotionIntegrationEditForm, } from "@components/organisms/configuration/connections/integrations/notion"; +export { + PydanticGatewayIntegrationAddForm, + PydanticGatewayIntegrationEditForm, +} from "@components/organisms/configuration/connections/integrations/pydanticgw"; diff --git a/src/components/organisms/configuration/connections/integrations/pydanticgw/add.tsx b/src/components/organisms/configuration/connections/integrations/pydanticgw/add.tsx new file mode 100644 index 0000000000..71b746aa22 --- /dev/null +++ b/src/components/organisms/configuration/connections/integrations/pydanticgw/add.tsx @@ -0,0 +1,81 @@ +import React, { useEffect } from "react"; + +import { useTranslation } from "react-i18next"; +import { Link } from "react-router-dom"; + +import { IntegrationAddFormProps } from "@interfaces/components"; +import { ConnectionAuthType } from "@src/enums"; +import { Integrations } from "@src/enums/components"; +import { useConnectionForm } from "@src/hooks"; +import { pydanticgwIntegrationSchema } from "@validations"; + +import { Button, ErrorMessage, Input, Spinner } from "@components/atoms"; +import { Accordion } from "@components/molecules"; + +import { ExternalLinkIcon, FloppyDiskIcon } from "@assets/image/icons"; + +export const PydanticGatewayIntegrationAddForm = ({ + connectionId, + triggerParentFormSubmit, + onSuccess, + isOrgConnection, +}: IntegrationAddFormProps) => { + const { t } = useTranslation("integrations"); + + const { createConnection, errors, handleSubmit, isLoading, register } = useConnectionForm( + pydanticgwIntegrationSchema, + "create", + undefined, + onSuccess, + isOrgConnection + ); + + useEffect(() => { + if (connectionId) { + createConnection(connectionId, ConnectionAuthType.ApiKey, Integrations.pydanticgw); + } + // eslint-disable-next-line react-hooks/exhaustive-deps + }, [connectionId]); + + return ( +
+ ); +}; diff --git a/src/components/organisms/configuration/connections/integrations/pydanticgw/edit.tsx b/src/components/organisms/configuration/connections/integrations/pydanticgw/edit.tsx new file mode 100644 index 0000000000..7182b58491 --- /dev/null +++ b/src/components/organisms/configuration/connections/integrations/pydanticgw/edit.tsx @@ -0,0 +1,70 @@ +import React, { useState } from "react"; + +import { useWatch } from "react-hook-form"; +import { useTranslation } from "react-i18next"; +import { Link } from "react-router-dom"; + +import { useConnectionForm } from "@src/hooks"; +import { pydanticgwIntegrationSchema } from "@validations"; + +import { Button, ErrorMessage, SecretInput, Spinner } from "@components/atoms"; +import { Accordion } from "@components/molecules"; + +import { ExternalLinkIcon, FloppyDiskIcon } from "@assets/image/icons"; + +export const PydanticGatewayIntegrationEditForm = () => { + const { t } = useTranslation("integrations"); + const [lockState, setLockState] = useState(true); + const { control, errors, handleSubmit, isLoading, onSubmitEdit, register, setValue } = useConnectionForm( + pydanticgwIntegrationSchema, + "edit" + ); + + const apiKey = useWatch({ control, name: "api_key" }); + + return ( + + ); +}; diff --git a/src/components/organisms/configuration/connections/integrations/pydanticgw/index.ts b/src/components/organisms/configuration/connections/integrations/pydanticgw/index.ts new file mode 100644 index 0000000000..d6386626e6 --- /dev/null +++ b/src/components/organisms/configuration/connections/integrations/pydanticgw/index.ts @@ -0,0 +1,2 @@ +export { PydanticGatewayIntegrationAddForm } from "./add"; +export { PydanticGatewayIntegrationEditForm } from "./edit"; diff --git a/src/constants/connections/addComponentsMapping.constants.ts b/src/constants/connections/addComponentsMapping.constants.ts index 70ab15ac80..dde22af52a 100644 --- a/src/constants/connections/addComponentsMapping.constants.ts +++ b/src/constants/connections/addComponentsMapping.constants.ts @@ -25,6 +25,7 @@ import { RedditIntegrationAddForm, PipedriveIntegrationAddForm, NotionIntegrationAddForm, + PydanticGatewayIntegrationAddForm, } from "@components/organisms/configuration/connections/integrations"; import { MicrosoftTeamsIntegrationAddForm } from "@components/organisms/configuration/connections/integrations/microsoft/teams"; @@ -57,4 +58,5 @@ export const integrationAddFormComponents: Partial