v0.1.50 - 이월 할 일 흐름과 사이드 패널 정리

This commit is contained in:
2026-04-23 15:01:50 +09:00
parent 6d9aa2c002
commit bebd8ed8a6
6 changed files with 278 additions and 98 deletions

View File

@@ -62,6 +62,7 @@ const emit = defineEmits([
'update:task-title',
'toggle:task',
'clear:tasks',
'inspect:carryover',
'update:memo-label',
'update:memo',
'update:timetable',
@@ -303,7 +304,7 @@ onBeforeUnmount(() => {
</div>
<div class="planner-sheet__body flex flex-col gap-5 py-[10px] lg:flex-row lg:gap-4">
<div class="planner-sheet__lists flex w-full flex-1 flex-col gap-7 sm:gap-9 lg:w-[394px]">
<div class="planner-sheet__lists flex w-full flex-1 flex-col gap-6 lg:w-[394px]">
<section>
<div class="flex items-center gap-2 text-muted">
<span class="shrink-0">TASKS</span>
@@ -320,10 +321,10 @@ onBeforeUnmount(() => {
v-for="(task, index) in tasks"
:key="task.id ?? index"
:data-task-index="index"
class="flex min-h-[38px] select-none items-center border-b transition-colors"
class="flex h-[38px] select-none items-center border-b transition-colors"
:class="[
index % 5 === 4 || index === tasks.length - 1 ? 'border-ink' : 'border-line',
isTaskSelected(index) ? 'bg-amber-100/55 ring-1 ring-inset ring-amber-500/40' : '',
isTaskSelected(index) ? 'bg-amber-100/55' : '',
]"
@pointerdown="startTaskSelection(index, $event)"
@pointerenter="moveTaskSelection(index)"
@@ -338,7 +339,7 @@ onBeforeUnmount(() => {
@input="emit('update:task-label', { index, value: $event.target.value })"
/>
</div>
<div class="flex min-w-0 flex-1 items-center px-2 sm:px-3">
<div class="flex min-w-0 flex-1 items-center gap-2 px-2 sm:px-3">
<input
:value="task.title"
type="text"
@@ -348,6 +349,14 @@ onBeforeUnmount(() => {
@focus="clearTaskSelectionOnFocus"
@input="emit('update:task-title', { index, value: $event.target.value })"
/>
<button
v-if="task.carryoverFrom"
type="button"
class="shrink-0 rounded-full border border-stone-300 px-2 py-1 text-[8px] font-bold tracking-[0.12em] text-stone-500 transition hover:border-stone-500 hover:text-stone-900"
@click="emit('inspect:carryover', task)"
>
이월
</button>
</div>
<div class="flex h-full w-[36px] shrink-0 items-center justify-center p-[8px] sm:w-[42px] sm:p-[10px]">
<button
@@ -373,7 +382,7 @@ onBeforeUnmount(() => {
<div
v-for="(memoItem, index) in memo"
:key="`memo-${index}`"
class="flex min-h-[38px] items-center border-b"
class="flex h-[38px] items-center border-b"
:class="index === memo.length - 1 ? 'border-ink' : 'border-line'"
>
<div class="h-full w-[52px] shrink-0 border-r border-dashed border-ink px-1.5 py-[7px] sm:w-[62px] sm:px-2">
@@ -409,7 +418,7 @@ onBeforeUnmount(() => {
<div
v-for="(hour, index) in hours"
:key="`${hour}-${index}`"
class="flex h-[26px] border-b sm:h-[30px]"
class="flex h-[25px] border-b sm:h-[30px]"
:class="index === hours.length - 1 ? 'border-ink' : 'border-line'"
>
<div