WIP - refresh list after AI record creation
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
<script setup lang="ts">
|
||||
import { ref, computed, onMounted, watch, nextTick } from 'vue'
|
||||
import { ref, computed, onMounted, onBeforeUnmount, watch, nextTick } from 'vue'
|
||||
import { useRoute, useRouter } from 'vue-router'
|
||||
import { useApi } from '@/composables/useApi'
|
||||
import { useFields, useViewState } from '@/composables/useFieldViews'
|
||||
@@ -41,6 +41,27 @@ const {
|
||||
handleSave,
|
||||
} = useViewState(`/runtime/objects/${objectApiName.value}/records`)
|
||||
|
||||
const handleAiRecordCreated = (event: Event) => {
|
||||
const detail = (event as CustomEvent).detail || {}
|
||||
if (
|
||||
detail?.objectApiName &&
|
||||
detail.objectApiName.toLowerCase() !== objectApiName.value.toLowerCase()
|
||||
) {
|
||||
return
|
||||
}
|
||||
if (view.value === 'list') {
|
||||
fetchRecords()
|
||||
}
|
||||
}
|
||||
|
||||
onMounted(() => {
|
||||
window.addEventListener('ai-record-created', handleAiRecordCreated)
|
||||
})
|
||||
|
||||
onBeforeUnmount(() => {
|
||||
window.removeEventListener('ai-record-created', handleAiRecordCreated)
|
||||
})
|
||||
|
||||
// View configs
|
||||
const listConfig = computed(() => {
|
||||
if (!objectDefinition.value) return null
|
||||
|
||||
Reference in New Issue
Block a user