diff --git a/apps/builder/src/features/credentials/components/CredentialsCreateModal.tsx b/apps/builder/src/features/credentials/components/CredentialsCreateModal.tsx index 41e19e0d4..f7e5eac32 100644 --- a/apps/builder/src/features/credentials/components/CredentialsCreateModal.tsx +++ b/apps/builder/src/features/credentials/components/CredentialsCreateModal.tsx @@ -62,6 +62,8 @@ const CredentialsCreateModalContent = ({ onClose={onClose} /> ) + case 'zemanticAi': + return null default: return ( case 'whatsApp': return + case 'zemanticAi': + return null default: return } @@ -245,6 +247,8 @@ const CredentialsLabel = ({ WhatsApp ) + case 'zemanticAi': + return null default: return } diff --git a/apps/builder/src/features/credentials/components/CredentialsUpdateModal.tsx b/apps/builder/src/features/credentials/components/CredentialsUpdateModal.tsx index c2e2d5d83..62feacb0a 100644 --- a/apps/builder/src/features/credentials/components/CredentialsUpdateModal.tsx +++ b/apps/builder/src/features/credentials/components/CredentialsUpdateModal.tsx @@ -57,6 +57,7 @@ const CredentialsUpdateModalContent = ({ onUpdate={onSubmit} /> ) + case 'zemanticAi': case 'whatsApp': return null default: diff --git a/apps/builder/src/features/forge/components/credentials/CreateForgedCredentialsModal.tsx b/apps/builder/src/features/forge/components/credentials/CreateForgedCredentialsModal.tsx index f74d24d96..39d178303 100644 --- a/apps/builder/src/features/forge/components/credentials/CreateForgedCredentialsModal.tsx +++ b/apps/builder/src/features/forge/components/credentials/CreateForgedCredentialsModal.tsx @@ -16,7 +16,7 @@ import { import React, { useState } from 'react' import { ZodObjectLayout } from '../zodLayouts/ZodObjectLayout' import { ForgedBlockDefinition } from '@typebot.io/forge-repository/types' -import { Credentials } from '@typebot.io/schemas' +import { CredentialsWithoutLegacy } from '@typebot.io/schemas' type Props = { blockDef: ForgedBlockDefinition @@ -87,11 +87,11 @@ export const CreateForgedCredentialsModalContent = ({ if (!workspace || !blockDef.auth) return mutate({ credentials: { - type: blockDef.id as Credentials['type'], + type: blockDef.id, workspaceId: workspace.id, name, data, - } as Credentials, + } as CredentialsWithoutLegacy, }) } diff --git a/apps/builder/src/features/forge/components/credentials/UpdateForgedCredentialsModalContent.tsx b/apps/builder/src/features/forge/components/credentials/UpdateForgedCredentialsModalContent.tsx index 092673d7b..82f25df61 100644 --- a/apps/builder/src/features/forge/components/credentials/UpdateForgedCredentialsModalContent.tsx +++ b/apps/builder/src/features/forge/components/credentials/UpdateForgedCredentialsModalContent.tsx @@ -14,7 +14,7 @@ import { import React, { useEffect, useState } from 'react' import { ZodObjectLayout } from '../zodLayouts/ZodObjectLayout' import { ForgedBlockDefinition } from '@typebot.io/forge-repository/types' -import { Credentials } from '@typebot.io/schemas' +import { CredentialsWithoutLegacy } from '@typebot.io/schemas' type Props = { credentialsId: string @@ -76,7 +76,7 @@ export const UpdateForgedCredentialsModalContent = ({ workspaceId: workspace.id, name, data, - } as Credentials, + } as CredentialsWithoutLegacy, }) } diff --git a/packages/schemas/features/credentials.ts b/packages/schemas/features/credentials.ts index 08a9cdae7..23ab0e59b 100644 --- a/packages/schemas/features/credentials.ts +++ b/packages/schemas/features/credentials.ts @@ -1,4 +1,5 @@ import { z } from '../zod' +import { zemanticAiCredentialsSchema } from './blocks' import { stripeCredentialsSchema } from './blocks/inputs/payment/schema' import { googleSheetsCredentialsSchema } from './blocks/integrations/googleSheets/schema' import { smtpCredentialsSchema } from './blocks/integrations/sendEmail' @@ -10,19 +11,30 @@ const credentialsSchema = z.discriminatedUnion('type', [ googleSheetsCredentialsSchema, stripeCredentialsSchema, whatsAppCredentialsSchema, + zemanticAiCredentialsSchema, ...Object.values(forgedCredentialsSchemas), ]) export type Credentials = z.infer +export type CredentialsWithoutLegacy = Exclude< + Credentials, + { + type: 'zemanticAi' + } +> + export const credentialsTypes = [ 'smtp', 'google sheets', 'stripe', 'whatsApp', + 'zemanticAi', ...(Object.keys(forgedCredentialsSchemas) as Array< keyof typeof forgedCredentialsSchemas >), ] as const export const credentialsTypeSchema = z.enum(credentialsTypes) + +export const legacyCredentialsTypes = ['zemanticAi']