Fix bulk delete
This commit is contained in:
parent
71159e4f4a
commit
b966ed221d
|
@ -156,7 +156,10 @@ export async function destroy(ctx: UserCtx) {
|
||||||
}
|
}
|
||||||
const table = await sdk.tables.getTable(row.tableId)
|
const table = await sdk.tables.getTable(row.tableId)
|
||||||
// update the row to include full relationships before deleting them
|
// update the row to include full relationships before deleting them
|
||||||
row = await outputProcessing(table, row, { squash: false })
|
row = await outputProcessing(table, row, {
|
||||||
|
squash: false,
|
||||||
|
skipBBReferences: true,
|
||||||
|
})
|
||||||
// now remove the relationships
|
// now remove the relationships
|
||||||
await linkRows.updateLinks({
|
await linkRows.updateLinks({
|
||||||
eventType: linkRows.EventType.ROW_DELETE,
|
eventType: linkRows.EventType.ROW_DELETE,
|
||||||
|
@ -190,6 +193,7 @@ export async function bulkDestroy(ctx: UserCtx) {
|
||||||
// they need to be the full rows (including previous relationships) for automations
|
// they need to be the full rows (including previous relationships) for automations
|
||||||
const processedRows = (await outputProcessing(table, rows, {
|
const processedRows = (await outputProcessing(table, rows, {
|
||||||
squash: false,
|
squash: false,
|
||||||
|
skipBBReferences: true,
|
||||||
})) as Row[]
|
})) as Row[]
|
||||||
|
|
||||||
// remove the relationships first
|
// remove the relationships first
|
||||||
|
|
|
@ -201,9 +201,14 @@ export async function inputProcessing(
|
||||||
export async function outputProcessing<T extends Row[] | Row>(
|
export async function outputProcessing<T extends Row[] | Row>(
|
||||||
table: Table,
|
table: Table,
|
||||||
rows: T,
|
rows: T,
|
||||||
opts: { squash?: boolean; preserveLinks?: boolean } = {
|
opts: {
|
||||||
|
squash?: boolean
|
||||||
|
preserveLinks?: boolean
|
||||||
|
skipBBReferences?: boolean
|
||||||
|
} = {
|
||||||
squash: true,
|
squash: true,
|
||||||
preserveLinks: false,
|
preserveLinks: false,
|
||||||
|
skipBBReferences: false,
|
||||||
}
|
}
|
||||||
): Promise<T> {
|
): Promise<T> {
|
||||||
let safeRows: Row[]
|
let safeRows: Row[]
|
||||||
|
@ -230,7 +235,10 @@ export async function outputProcessing<T extends Row[] | Row>(
|
||||||
attachment.url = objectStore.getAppFileUrl(attachment.key)
|
attachment.url = objectStore.getAppFileUrl(attachment.key)
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
} else if (column.type == FieldTypes.BB_REFERENCE) {
|
} else if (
|
||||||
|
!opts.skipBBReferences &&
|
||||||
|
column.type == FieldTypes.BB_REFERENCE
|
||||||
|
) {
|
||||||
for (let row of enriched) {
|
for (let row of enriched) {
|
||||||
row[property] = await processOutputBBReferences(
|
row[property] = await processOutputBBReferences(
|
||||||
row[property],
|
row[property],
|
||||||
|
|
Loading…
Reference in New Issue