(open = false)}>
{#each modes as mode} {@const item = radioGroup.getItem(mode)}
{mode}
{/each}
{#if radioGroup.value === "form"}

Properties

{#if schemaObj.current.schema?.properties}
{#each Object.entries(schemaObj.current.schema.properties) as [propertyName, propertyDefinition]} propertyName, value => { const updatedProperties = renameKey( schemaObj.current.schema?.properties ?? {}, propertyName, value, ); updateSchemaNested({ properties: updatedProperties }); } } bind:definition={ () => propertyDefinition, v => { const updatedProperties = { ...schemaObj.current.schema?.properties }; if (updatedProperties && updatedProperties[propertyName]) { updatedProperties[propertyName] = v; updateSchemaNested({ properties: updatedProperties }); } } } bind:required={ () => schemaObj.current.schema?.required?.includes(propertyName) ?? false, v => { let updatedRequired = [...(schemaObj.current.schema?.required || [])]; if (v) { if (!updatedRequired.includes(propertyName)) { updatedRequired.push(propertyName); } } else { updatedRequired = updatedRequired.filter(name => name !== name); } updateSchemaNested({ required: updatedRequired }); } } onDelete={() => { const updatedProperties = { ...schemaObj.current.schema?.properties }; if (!updatedProperties || !updatedProperties[propertyName]) return; delete updatedProperties[propertyName]; updateSchemaNested({ properties: updatedProperties }); }} /> {:else}

No properties defined yet.

{/each}
{:else}

No properties defined yet.

{/if}

Options

updateSchemaNested({ additionalProperties: e.currentTarget.checked })} />

If unchecked, only properties defined in the schema are allowed.

updateSchema({ strict: e.currentTarget.checked })} />

Enforces stricter validation rules.

{:else}
{/if} {#snippet footer()} {/snippet}