import { Field } from '@formily/core'; import { observer, RecursionField, useField, useFieldSchema } from '@formily/react'; import React from 'react'; import { useCollection } from '..'; import { SchemaComponent } from '../schema-component'; import { ActionLogDesigner } from './ActionLog.Designer'; import { createSchema } from './utils'; export const ActionLog = () => { const schema = createSchema(); return ; }; ActionLog.Designer = ActionLogDesigner; ActionLog.Field = observer((props: any) => { const { value } = props; return
{value?.uiSchema?.title || value?.name}
; }); ActionLog.FieldValue = observer((props: any) => { const field = useField(); const fieldSchema = useFieldSchema(); const { getField } = useCollection(); const collectionField = getField(fieldSchema.name); if (!collectionField.uiSchema) { if (!field.value) { return
; } if (typeof field.value === 'boolean') { return
{field.value ? 'true' : 'false'}
; } if (typeof field.value === 'string' || typeof field.value === 'number') { return
{field.value}
; } return
{JSON.stringify(field.value, null, 2)}
; } return ( ); });