|
|
|
@ -2,8 +2,10 @@ import type { FC } from 'react'
|
|
|
|
import type { SchemaRoot } from '../../../types'
|
|
|
|
import type { SchemaRoot } from '../../../types'
|
|
|
|
import SchemaNode from './schema-node'
|
|
|
|
import SchemaNode from './schema-node'
|
|
|
|
import { useSchemaNodeOperations } from './hooks'
|
|
|
|
import { useSchemaNodeOperations } from './hooks'
|
|
|
|
|
|
|
|
import cn from '@/utils/classnames'
|
|
|
|
|
|
|
|
|
|
|
|
export type VisualEditorProps = {
|
|
|
|
export type VisualEditorProps = {
|
|
|
|
|
|
|
|
className?: string
|
|
|
|
schema: SchemaRoot
|
|
|
|
schema: SchemaRoot
|
|
|
|
rootName?: string
|
|
|
|
rootName?: string
|
|
|
|
readOnly?: boolean
|
|
|
|
readOnly?: boolean
|
|
|
|
@ -11,11 +13,11 @@ export type VisualEditorProps = {
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
const VisualEditor: FC<VisualEditorProps> = (props) => {
|
|
|
|
const VisualEditor: FC<VisualEditorProps> = (props) => {
|
|
|
|
const { schema, readOnly } = props
|
|
|
|
const { className, schema, readOnly } = props
|
|
|
|
useSchemaNodeOperations(props)
|
|
|
|
useSchemaNodeOperations(props)
|
|
|
|
|
|
|
|
|
|
|
|
return (
|
|
|
|
return (
|
|
|
|
<div className='h-full overflow-auto rounded-xl bg-background-section-burn p-1 pl-2'>
|
|
|
|
<div className={cn('h-full overflow-auto rounded-xl bg-background-section-burn p-1 pl-2', className)}>
|
|
|
|
<SchemaNode
|
|
|
|
<SchemaNode
|
|
|
|
name={props.rootName || 'structured_output'}
|
|
|
|
name={props.rootName || 'structured_output'}
|
|
|
|
schema={schema}
|
|
|
|
schema={schema}
|
|
|
|
|