@ -0,0 +1,5 @@
|
||||
import { AudioBubbleBlock } from './schema'
|
||||
|
||||
export const defaultAudioBubbleContent = {
|
||||
isAutoplayEnabled: true,
|
||||
} as const satisfies AudioBubbleBlock['content']
|
1
packages/schemas/features/blocks/bubbles/audio/index.ts
Normal file
1
packages/schemas/features/blocks/bubbles/audio/index.ts
Normal file
@ -0,0 +1 @@
|
||||
export * from './schema'
|
18
packages/schemas/features/blocks/bubbles/audio/schema.ts
Normal file
18
packages/schemas/features/blocks/bubbles/audio/schema.ts
Normal file
@ -0,0 +1,18 @@
|
||||
import { z } from 'zod'
|
||||
import { blockBaseSchema } from '../../shared'
|
||||
import { BubbleBlockType } from '../constants'
|
||||
|
||||
export const audioBubbleContentSchema = z.object({
|
||||
url: z.string().optional(),
|
||||
isAutoplayEnabled: z.boolean().optional(),
|
||||
})
|
||||
|
||||
export const audioBubbleBlockSchema = blockBaseSchema.merge(
|
||||
z.object({
|
||||
type: z.enum([BubbleBlockType.AUDIO]),
|
||||
content: audioBubbleContentSchema.optional(),
|
||||
})
|
||||
)
|
||||
|
||||
export type AudioBubbleBlock = z.infer<typeof audioBubbleBlockSchema>
|
||||
export type AudioBubbleContent = z.infer<typeof audioBubbleContentSchema>
|
Reference in New Issue
Block a user