- 각 화면 내 <h1> 페이지 타이틀 제거 → 헤더 타이틀로 일원화 (가계부 pending 카운트는 유지, 액션 헤더는 우측 정렬) - 게시글 상세: 공지 등록/해제 버튼 제거 + '목록' 아이콘 추가(list 아이콘 신규) - 글 작성/수정 공지 체크박스로 일원화(편집 시 기존값 로드) - ProfileEdit/AccountInfo 화면 내 뒤로가기 제거, 미사용 router 정리 Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -324,9 +324,6 @@ onMounted(async () => {
|
||||
|
||||
<template>
|
||||
<section class="dash">
|
||||
<header class="head">
|
||||
<h1>통계</h1>
|
||||
</header>
|
||||
|
||||
<div class="month-nav">
|
||||
<IconBtn icon="chevronLeft" title="이전 달" size="sm" @click="prevMonth" />
|
||||
|
||||
@@ -1,12 +1,10 @@
|
||||
<script setup>
|
||||
import { onBeforeUnmount, onMounted, ref, nextTick } from 'vue'
|
||||
import { useRouter } from 'vue-router'
|
||||
import Sortable from 'sortablejs'
|
||||
import { accountApi } from '@/api/accountApi'
|
||||
import { useDialog } from '@/composables/dialog'
|
||||
import IconBtn from '@/components/ui/IconBtn.vue'
|
||||
|
||||
const router = useRouter()
|
||||
const dialog = useDialog()
|
||||
|
||||
const tags = ref([])
|
||||
@@ -100,9 +98,6 @@ onBeforeUnmount(() => sortable?.destroy())
|
||||
|
||||
<template>
|
||||
<section class="tag-admin">
|
||||
<header class="head">
|
||||
<h1>가계부 태그 관리</h1>
|
||||
</header>
|
||||
<p class="hint">내가 등록한 태그는 나의 가계부 내역에서만 사용됩니다.</p>
|
||||
|
||||
<form class="new-tag" @submit.prevent="addTag">
|
||||
|
||||
@@ -824,7 +824,7 @@ onMounted(async () => {
|
||||
<template>
|
||||
<section class="account">
|
||||
<header class="account-head">
|
||||
<h1>가계부<span v-if="pendingCount" class="pending-count">확인 필요 {{ pendingCount }}건</span></h1>
|
||||
<span class="pending-wrap"><span v-if="pendingCount" class="pending-count">확인 필요 {{ pendingCount }}건</span></span>
|
||||
<IconBtn icon="plus" title="내역 추가" variant="primary" @click="openCreate" />
|
||||
</header>
|
||||
<Transition name="fade"><p v-if="flashMsg" class="flash">{{ flashMsg }}</p></Transition>
|
||||
|
||||
@@ -1,12 +1,10 @@
|
||||
<script setup>
|
||||
import { onBeforeUnmount, onMounted, reactive, ref, watch, nextTick } from 'vue'
|
||||
import { useRouter } from 'vue-router'
|
||||
import Sortable from 'sortablejs'
|
||||
import { accountApi } from '@/api/accountApi'
|
||||
import { useDialog } from '@/composables/dialog'
|
||||
import IconBtn from '@/components/ui/IconBtn.vue'
|
||||
|
||||
const router = useRouter()
|
||||
const dialog = useDialog()
|
||||
|
||||
const TABS = [
|
||||
@@ -310,9 +308,6 @@ onBeforeUnmount(() => sortable?.destroy())
|
||||
|
||||
<template>
|
||||
<section class="wallet">
|
||||
<header class="head">
|
||||
<h1>계좌 관리</h1>
|
||||
</header>
|
||||
|
||||
<!-- 순자산 요약 -->
|
||||
<div class="networth">
|
||||
|
||||
@@ -1,11 +1,9 @@
|
||||
<script setup>
|
||||
import { computed, onMounted, reactive, ref } from 'vue'
|
||||
import { useRouter } from 'vue-router'
|
||||
import { accountApi } from '@/api/accountApi'
|
||||
import { useDialog } from '@/composables/dialog'
|
||||
import IconBtn from '@/components/ui/IconBtn.vue'
|
||||
|
||||
const router = useRouter()
|
||||
const dialog = useDialog()
|
||||
|
||||
const now = new Date()
|
||||
@@ -244,8 +242,7 @@ onMounted(() => {
|
||||
|
||||
<template>
|
||||
<section class="budget">
|
||||
<header class="head">
|
||||
<h1>예산 설정</h1>
|
||||
<header class="head" style="justify-content: flex-end">
|
||||
<div class="head-actions">
|
||||
<IconBtn icon="plus" title="예산 추가" variant="primary" @click="openCreate" />
|
||||
</div>
|
||||
|
||||
@@ -1,11 +1,9 @@
|
||||
<script setup>
|
||||
import { computed, onBeforeUnmount, onMounted, reactive, ref, watch, nextTick } from 'vue'
|
||||
import { useRouter } from 'vue-router'
|
||||
import Sortable from 'sortablejs'
|
||||
import { accountApi } from '@/api/accountApi'
|
||||
import IconBtn from '@/components/ui/IconBtn.vue'
|
||||
|
||||
const router = useRouter()
|
||||
|
||||
const categories = ref([])
|
||||
const rows = ref([]) // 현재 탭(activeType)의 분류 — 드래그 정렬 대상
|
||||
@@ -184,8 +182,7 @@ onBeforeUnmount(destroySortables)
|
||||
|
||||
<template>
|
||||
<section class="cat">
|
||||
<header class="head">
|
||||
<h1>분류 관리</h1>
|
||||
<header class="head" style="justify-content: flex-end">
|
||||
<div class="head-actions">
|
||||
<button type="button" class="text-btn" @click="importDefaults">기본 분류 불러오기</button>
|
||||
</div>
|
||||
|
||||
@@ -1,11 +1,9 @@
|
||||
<script setup>
|
||||
import { computed, onMounted, reactive, ref } from 'vue'
|
||||
import { useRouter } from 'vue-router'
|
||||
import { accountApi } from '@/api/accountApi'
|
||||
import { useDialog } from '@/composables/dialog'
|
||||
import IconBtn from '@/components/ui/IconBtn.vue'
|
||||
|
||||
const router = useRouter()
|
||||
const dialog = useDialog()
|
||||
|
||||
const recurrings = ref([])
|
||||
@@ -240,8 +238,7 @@ onMounted(load)
|
||||
|
||||
<template>
|
||||
<section class="recur">
|
||||
<header class="head">
|
||||
<h1>고정 지출</h1>
|
||||
<header class="head" style="justify-content: flex-end">
|
||||
<div class="head-actions">
|
||||
<IconBtn icon="refresh" title="지금 반영" @click="runNow" />
|
||||
<IconBtn icon="plus" title="고정 지출 추가" variant="primary" @click="openCreate" />
|
||||
|
||||
Reference in New Issue
Block a user