{constraintInfo ? `Edit foreign key` : `Add foreign key`}
Constraint name
(constraintName = e.target['value'])} focused />
Referenced table
({ label: fullNameToLabel(tbl), value: fullNameToString(tbl), }))} on:change={e => { if (e.detail) { const name = fullNameFromString(e.detail); refTableName = name.pureName; refSchemaName = name.schemaName; } }} />
On update action
{ updateAction = e.detail || null; }} />
On delete action
{ deleteAction = e.detail || null; }} />
Base column - {tableInfo.pureName}
Ref column - {refTableName || '(table not set)'}
{#each columns as column, index}
{#key column.columnName} ({ label: col.columnName, value: col.columnName, }))} on:change={e => { if (e.detail) { columns = columns.map((col, i) => (i == index ? { ...col, columnName: e.detail } : col)); } }} /> {/key}
{#key column.refColumnName} ({ label: col.columnName, value: col.columnName, }))} on:change={e => { if (e.detail) { columns = columns.map((col, i) => (i == index ? { ...col, refColumnName: e.detail } : col)); } }} /> {/key}
{ const x = [...columns]; x.splice(index, 1); columns = x; }} />
{/each} { columns = [...columns, {}]; }} />
{ closeCurrentModal(); if (constraintInfo) { setTableInfo(tbl => editorModifyConstraint(tbl, getConstraint())); } else { setTableInfo(tbl => editorAddConstraint(tbl, getConstraint())); } }} /> {#if constraintInfo} { closeCurrentModal(); setTableInfo(tbl => editorDeleteConstraint(tbl, constraintInfo)); }} /> {/if}