{#if record?.id} {/if} {#if formError}
{formError}
{/if}
{#each fields as field (field)} {@const type = fieldTypes[field] ?? 'String'} {@const ro = readonlyFields.includes(field)} {@const rel = relationOptions[field]} {@const value = record?.[field]} {@const err = fieldErrors[field]} {@const isCascadeParentField = isCascadeParent(field)} {@const isChildField = getChildFieldName(field) != null} {#if isCascadeParentField} {@const childField = getChildFieldName(field)!} {@const childVal = record?.[childField]} {@const childErr = fieldErrors[childField]}
{#if err}

{err}

{/if}
{#if childErr}

{childErr}

{/if}
{:else if isChildField} {:else if ro}

{formatReadonly(value, type)}

{:else if type === 'Tiptap'}
{#if err}

{err}

{/if}
{:else if rel}
{#if err}

{err}

{/if}
{:else if type === 'Boolean'}
{:else if type === 'DateTime'}
{#if err}

{err}

{/if}
{:else if type === 'Int' || type === 'Float'}
{#if err}

{err}

{/if}
{:else}
{#if err}

{err}

{/if}
{/if} {/each}