2026-09-15 01:11:33 +03:00
|
|
|
import { computed, toValue } from 'vue'
|
|
|
|
|
|
|
|
|
|
import { useStatusesStore } from 'src/stores/statuses.js'
|
|
|
|
|
|
|
|
|
|
export function useMainStatus(statusId) {
|
2026-09-16 15:54:02 +03:00
|
|
|
const statusesStore = useStatusesStore()
|
|
|
|
|
const getStatusObject = (id) => statusesStore.allStatuses.get(id)
|
2026-09-15 01:11:33 +03:00
|
|
|
|
2026-09-16 20:44:41 +03:00
|
|
|
const status = computed(() => getStatusObject(toValue(statusId)) ?? null)
|
2026-09-15 01:11:33 +03:00
|
|
|
|
|
|
|
|
const mainStatus = computed(() => {
|
2026-09-16 00:05:46 +03:00
|
|
|
if (!status.value) return null
|
2026-09-15 01:11:33 +03:00
|
|
|
const retweetedStatusId = status.value.retweeted_status?.id
|
|
|
|
|
if (retweetedStatusId) {
|
|
|
|
|
return getStatusObject(retweetedStatusId)
|
|
|
|
|
} else {
|
|
|
|
|
return status.value
|
|
|
|
|
}
|
|
|
|
|
})
|
|
|
|
|
|
|
|
|
|
return {
|
|
|
|
|
status,
|
|
|
|
|
mainStatus,
|
|
|
|
|
}
|
|
|
|
|
}
|