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']