MCPcopy Create free account
hub / github.com/ZenNotes/zennotes / deleteField

Function deleteField

packages/app-core/src/lib/database-cells.ts:145–164  ·  view source on GitHub ↗
(doc: DatabaseDoc, fieldId: string)

Source from the content-addressed store, hash-verified

143}
144
145export function deleteField(doc: DatabaseDoc, fieldId: string): DatabaseDoc {
146 if (fieldId === doc.idFieldId) return doc // never delete the id field
147 return {
148 ...doc,
149 fields: doc.fields.filter((f) => f.id !== fieldId),
150 rows: doc.rows.map((r) => {
151 const { [fieldId]: _drop, ...cells } = r.cells
152 void _drop
153 return { ...r, cells }
154 }),
155 views: doc.views.map((v) => ({
156 ...v,
157 columnOrder: v.columnOrder?.filter((id) => id !== fieldId),
158 hiddenFieldIds: v.hiddenFieldIds?.filter((id) => id !== fieldId),
159 sorts: v.sorts.filter((s) => s.fieldId !== fieldId),
160 filters: v.filters.filter((f) => f.fieldId !== fieldId),
161 groupByFieldId: v.groupByFieldId === fieldId ? undefined : v.groupByFieldId
162 }))
163 }
164}
165
166/** Reorder a table view's columns by moving `fieldId` one *visible* step left or
167 * right (#317). Works on the view's `columnOrder`, swapping with the nearest

Callers 1

fieldMenuItemsFunction · 0.90

Calls

no outgoing calls

Tested by

no test coverage detected