feat(reader): Read entry points — TagCard icon, TagsView route, SeriesManageView button
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -25,6 +25,11 @@
|
||||
icon="mdi-book-open-page-variant"
|
||||
title="Manage series" @click.stop="$emit('manage', card.id)"
|
||||
/>
|
||||
<v-icon
|
||||
v-if="card.kind === 'series'"
|
||||
class="fc-tagcard__edit" size="14" icon="mdi-book-open"
|
||||
title="Read series" @click.stop="$emit('read', card.id)"
|
||||
/>
|
||||
</template>
|
||||
<v-text-field
|
||||
v-else
|
||||
@@ -49,7 +54,7 @@
|
||||
import { ref } from 'vue'
|
||||
|
||||
const props = defineProps({ card: { type: Object, required: true } })
|
||||
const emit = defineEmits(['open', 'rename', 'manage'])
|
||||
const emit = defineEmits(['open', 'rename', 'manage', 'read'])
|
||||
|
||||
const editing = ref(false)
|
||||
const draft = ref('')
|
||||
|
||||
@@ -3,6 +3,13 @@
|
||||
<div class="fc-series__head">
|
||||
<span class="fc-series__name">{{ store.series?.name || 'Series' }}</span>
|
||||
<span class="fc-series__count">{{ store.pages.length }} page(s)</span>
|
||||
<v-btn
|
||||
v-if="store.pages.length > 0"
|
||||
size="small" variant="tonal" color="accent"
|
||||
prepend-icon="mdi-book-open"
|
||||
class="fc-series__read"
|
||||
@click="$router.push({ name: 'series-read', params: { tagId: store.tagId } })"
|
||||
>Read</v-btn>
|
||||
</div>
|
||||
|
||||
<div class="fc-series__body">
|
||||
|
||||
@@ -26,7 +26,7 @@
|
||||
<div class="fc-tags__grid">
|
||||
<TagCard
|
||||
v-for="c in store.cards" :key="c.id" :card="c"
|
||||
@open="openTag" @rename="onRename" @manage="onManage"
|
||||
@open="openTag" @rename="onRename" @manage="onManage" @read="onRead"
|
||||
/>
|
||||
</div>
|
||||
|
||||
@@ -101,6 +101,10 @@ function openTag(tagId) {
|
||||
function onManage(id) {
|
||||
router.push({ name: 'series-manage', params: { tagId: id } })
|
||||
}
|
||||
|
||||
function onRead(id) {
|
||||
router.push({ name: 'series-read', params: { tagId: id } })
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped>
|
||||
|
||||
Reference in New Issue
Block a user