2
0
Files
bot/packages/models/features/blocks/logic/logicBlock.ts

27 lines
1.0 KiB
TypeScript
Raw Normal View History

2022-06-11 07:27:38 +02:00
import { z } from 'zod'
import { scriptOptionsSchema, scriptBlockSchema } from './script'
2022-06-11 07:27:38 +02:00
import { conditionBlockSchema } from './condition'
import { redirectOptionsSchema, redirectBlockSchema } from './redirect'
import { setVariableOptionsSchema, setVariableBlockSchema } from './setVariable'
import { typebotLinkOptionsSchema, typebotLinkBlockSchema } from './typebotLink'
2023-01-26 18:23:09 +01:00
import { waitBlockSchema, waitOptionsSchema } from './wait'
import { jumpBlockSchema, jumpOptionsSchema } from './jump'
2022-06-11 07:27:38 +02:00
const logicBlockOptionsSchema = scriptOptionsSchema
2022-06-11 07:27:38 +02:00
.or(redirectOptionsSchema)
.or(setVariableOptionsSchema)
.or(typebotLinkOptionsSchema)
2023-01-26 18:23:09 +01:00
.or(waitOptionsSchema)
.or(jumpOptionsSchema)
2022-06-11 07:27:38 +02:00
export const logicBlockSchema = scriptBlockSchema
2022-06-11 07:27:38 +02:00
.or(conditionBlockSchema)
.or(redirectBlockSchema)
.or(typebotLinkBlockSchema)
.or(setVariableBlockSchema)
2023-01-26 18:23:09 +01:00
.or(waitBlockSchema)
.or(jumpBlockSchema)
2022-06-11 07:27:38 +02:00
export type LogicBlock = z.infer<typeof logicBlockSchema>
export type LogicBlockOptions = z.infer<typeof logicBlockOptionsSchema>