diff --git a/src/shared/components/ncTable/sections/CustomTable.vue b/src/shared/components/ncTable/sections/CustomTable.vue index 014d753b50..7310a4619d 100644 --- a/src/shared/components/ncTable/sections/CustomTable.vue +++ b/src/shared/components/ncTable/sections/CustomTable.vue @@ -375,6 +375,7 @@ export default { width: 55px; background-color: inherit; padding-inline-end: 16px; + z-index: 5; } tr>td.sticky:last-child { diff --git a/src/store/data.js b/src/store/data.js index c3e58e9f1d..59d40cf590 100644 --- a/src/store/data.js +++ b/src/store/data.js @@ -250,8 +250,8 @@ export const useDataStore = defineStore('data', { const stateId = genStateKey(isView, elementId) if (stateId && this.rows[stateId]) { const row = res.data - const index = this.rows[stateId].findIndex(r => r.id === row.id) - set(this.rows[stateId], index, row) + const updatedRows = this.rows[stateId].map(r => r.id === row.id ? row : r) + set(this.rows, stateId, updatedRows) await this.removeRowIfNotInView({ rowId: row?.id, viewId, stateId }) } @@ -380,6 +380,13 @@ export const useDataStore = defineStore('data', { this.rows[stateId] = this.rows[stateId].filter(r => r.id !== rowId) } }, + + seedRows({ isView, elementId, rows }) { + const stateId = genStateKey(isView, elementId) + if (stateId) { + set(this.rows, stateId, rows) + } + }, }, }) diff --git a/src/views/ContentReferenceWidget.vue b/src/views/ContentReferenceWidget.vue index f57e165547..df55799df9 100644 --- a/src/views/ContentReferenceWidget.vue +++ b/src/views/ContentReferenceWidget.vue @@ -20,6 +20,8 @@