rudeshark.net/packages/client/src/pages/user/clips.vue

60 lines
1.1 KiB
Vue
Raw Normal View History

2020-11-29 04:34:39 +01:00
<template>
2023-04-08 02:01:42 +02:00
<MkSpacer :content-max="800">
<div class="pages-user-clips">
<MkPagination
v-slot="{ items }"
ref="list"
:pagination="pagination"
class="list"
>
<MkA
v-for="item in items"
:key="item.id"
:to="`/clips/${item.id}`"
class="item _panel _gap"
>
<b>{{ item.name }}</b>
<div v-if="item.description" class="description">
{{ item.description }}
</div>
</MkA>
</MkPagination>
</div>
</MkSpacer>
2020-11-29 04:34:39 +01:00
</template>
2022-08-31 16:12:22 +02:00
<script lang="ts" setup>
2023-04-08 02:01:42 +02:00
import { computed } from "vue";
import * as misskey from "calckey-js";
import MkPagination from "@/components/MkPagination.vue";
2020-11-29 04:34:39 +01:00
2022-08-31 16:12:22 +02:00
const props = defineProps<{
user: misskey.entities.User;
}>();
2020-11-29 04:34:39 +01:00
2022-08-31 16:12:22 +02:00
const pagination = {
2023-04-08 02:01:42 +02:00
endpoint: "users/clips" as const,
2022-08-31 16:12:22 +02:00
limit: 20,
params: computed(() => ({
userId: props.user.id,
})),
};
2020-11-29 04:34:39 +01:00
</script>
<style lang="scss" scoped>
.pages-user-clips {
> .list {
> .item {
display: block;
padding: 16px;
2020-11-29 04:34:39 +01:00
> .description {
margin-top: 8px;
padding-top: 8px;
border-top: solid 0.5px var(--divider);
}
}
}
}
2020-11-29 04:34:39 +01:00
</style>