2024-04-27 09:39:26 +02:00
|
|
|
<template>
|
2024-06-29 05:05:50 +02:00
|
|
|
<Timeline type="status" :items="(items as Status[])" :is-loading="isLoading" :has-reached-end="hasReachedEnd"
|
|
|
|
|
:error="error" :load-next="loadNext" :load-prev="loadPrev" :remove-item="removeItem"
|
|
|
|
|
:update-item="updateItem" />
|
2024-04-27 09:39:26 +02:00
|
|
|
</template>
|
|
|
|
|
|
|
|
|
|
<script lang="ts" setup>
|
2024-06-29 05:05:50 +02:00
|
|
|
import type { Status } from "@lysand-org/client/types";
|
2024-06-21 04:09:09 +02:00
|
|
|
import Timeline from "./timeline.vue";
|
|
|
|
|
|
2024-04-27 09:39:26 +02:00
|
|
|
const props = defineProps<{
|
2024-06-29 05:05:50 +02:00
|
|
|
id: string;
|
2024-04-27 09:39:26 +02:00
|
|
|
}>();
|
|
|
|
|
|
2024-06-29 05:05:50 +02:00
|
|
|
const {
|
|
|
|
|
error,
|
|
|
|
|
hasReachedEnd,
|
|
|
|
|
isLoading,
|
|
|
|
|
items,
|
|
|
|
|
loadNext,
|
|
|
|
|
loadPrev,
|
|
|
|
|
removeItem,
|
|
|
|
|
updateItem,
|
|
|
|
|
} = useAccountTimeline(client.value, props.id);
|
2024-04-27 09:39:26 +02:00
|
|
|
|
2024-04-28 07:02:27 +02:00
|
|
|
useListen("note:delete", ({ id }) => {
|
2024-06-29 05:05:50 +02:00
|
|
|
removeItem(id);
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
useListen("note:edit", (updatedNote) => {
|
|
|
|
|
updateItem(updatedNote);
|
2024-04-28 07:02:27 +02:00
|
|
|
});
|
2024-07-21 21:17:01 +02:00
|
|
|
|
|
|
|
|
useListen("composer:send", (ee) => {
|
|
|
|
|
loadPrev();
|
|
|
|
|
});
|
2024-04-27 09:39:26 +02:00
|
|
|
</script>
|