2022-01-13 04:52:14 +00:00
|
|
|
<template>
|
2022-06-17 05:06:05 +00:00
|
|
|
<!-- <h2 v-t="'video.chapters'" class="mb-5" /> -->
|
|
|
|
<div class="flex overflow-x-auto">
|
|
|
|
<div :key="chapter.start" v-for="chapter in chapters" @click="$emit('seek', chapter.start)" class="chapter">
|
|
|
|
<img :src="chapter.image" :alt="chapter.title" class="" />
|
|
|
|
<div class="m-1 flex">
|
|
|
|
<span class="text-truncate text-sm" :title="chapter.title" v-text="chapter.title" />
|
|
|
|
<span class="text-sm font-bold text-yellow-500" v-text="timeFormat(chapter.start)" />
|
|
|
|
</div>
|
2022-01-13 04:52:14 +00:00
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</template>
|
|
|
|
|
2022-01-26 04:39:36 +00:00
|
|
|
<style>
|
2022-06-17 05:06:05 +00:00
|
|
|
::-webkit-scrollbar {
|
|
|
|
height: 5px;
|
|
|
|
}
|
2022-01-26 04:39:36 +00:00
|
|
|
.chapter {
|
2022-06-17 05:06:05 +00:00
|
|
|
@apply cursor-pointer;
|
|
|
|
align-self: center;
|
|
|
|
padding: 10px;
|
|
|
|
img {
|
|
|
|
width: 100%;
|
|
|
|
height: 100%;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
.text-truncate {
|
|
|
|
white-space: nowrap;
|
|
|
|
width: 10em;
|
|
|
|
overflow: hidden;
|
|
|
|
text-overflow: ellipsis;
|
|
|
|
display: inline-block;
|
2022-01-26 04:39:36 +00:00
|
|
|
}
|
|
|
|
</style>
|
|
|
|
|
2022-01-13 04:52:14 +00:00
|
|
|
<script setup>
|
|
|
|
import { defineProps, defineEmits } from "vue";
|
|
|
|
|
2022-05-19 21:17:58 +00:00
|
|
|
defineProps({
|
2022-01-13 04:52:14 +00:00
|
|
|
chapters: Object,
|
|
|
|
});
|
|
|
|
|
|
|
|
defineEmits(["seek"]);
|
|
|
|
</script>
|