- Xcode에서 capability 추가로 entitlements가 빌드에 포함되도록 프로젝트에 반영
- aps-environment(Push) entitlement 추가
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
- 기존 kr.sblog.slimbudget 는 타 계정 선점 → iOS 전용 새 번들ID
- 안드로이드 패키지(kr.sblog.slimbudget)는 유지(플랫폼 독립)
- appleAuth clientId 정합(네이티브 aud=번들ID)
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
- accountApi: shopStatus(), buyShopItem(item) 추가; buyShopItem은 DEMO_WRITES에 등록
- router: /settings/shop → ShopView.vue 라우트 추가
- ShopView.vue: 포인트 잔액·상품 카드(계좌 슬롯/AI 통계) 구매 화면, PREMIUM 회원 안내 분기
- AccountInfoView: '기프트콘 교환' → '포인트 상점' 로 이름 변경 + 클릭 시 /settings/shop 이동
- AccountDashboardView: AI 코멘트 402 응답 시 크레딧 소진 안내 + 상점 이동 버튼 노출
- LAUNCH-PROGRESS: 포인트 상점 ✅ 완료 표시, 다음 재개 지점 현행화
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- 폼을 Teleport 전체화면 모달 대신 콘텐츠 영역 인라인 페이지로 렌더
(앱 헤더·하단바 유지 + 상단 뒤로가기, 계좌·정기결제 페이지와 동일 톤)
- 목록 뷰는 formOpen 시 숨김(v-if/v-else), ?entry 라우트 바인딩 유지
- 폼 로직(AI·OCR·상환 등)은 그대로 — 프레젠테이션만 변경
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
- openForm/closeForm: 폼 열 때 히스토리에 ?entry 추가, 닫을 때 뒤로가기로 URL 정리
- 뒤로가기(브라우저·앱 뒤로)로 폼 닫힘 → 페이지 전환처럼 동작
- AI 빠른입력·OCR·상환 로직은 목록에 그대로 두어 회귀 위험 없음
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
- CategoryPicker에 hideAdd prop 추가(+대분류/+소분류 숨김)
- 내역 검색 필터 분류: 평면 칩 → 트리거→시트(CategoryPicker hide-add) + '분류 전체'
- 타입은 구분 필터(기본 지출) 기준
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
- 검색 필터(구분·분류·계좌·태그) select → SheetSelect(바텀시트)
- 내역 추가/수정 폼: 계좌·상환대상 ChipSelect → SheetSelect,
분류 CategoryPicker → 트리거 → 바텀시트(선택 시 자동 닫힘)
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
- BottomSheet.vue: 아래에서 올라오는 콘텐츠 높이 시트(재사용)
- SheetSelect.vue: 필드형 트리거 → 바텀시트 단일 선택(계좌/카드)
- 정기결제 폼: 계좌는 SheetSelect, 분류는 트리거 → 시트 안 CategoryPicker
(선택 전에는 목록 미노출, 선택 시 값 채움)
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
- RecurringFormView.vue 신규: /account/recurrings/new · /:id/edit
- RecurringView: 목록 전용으로 정리(폼·모달·계좌/분류 로직 제거), +/수정은 화면 이동
- 무료 한도 초과 시 업셀은 목록에서 확인 후 이동
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
- WalletFormView.vue 신규: /account/wallets/new · /:id/edit 라우트
- 생성 시 '계좌 종류' 선택 UI 복원(탭 제거 후 빠졌던 부분)
- AccountWalletView: 모달·폼 로직 제거, +/수정 버튼은 화면 이동
- 상세 라우트는 :id(\d+)로 제한(new와 충돌 방지)
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
- 하단 내비가 position:fixed 인데 본문 하단 여백은 광고 있을 때만 있어,
광고 OFF 상태에서 마지막 내용/버튼이 내비 뒤로 가려져 클릭 불가
- .layout-body 에 기본 padding-bottom(56px+safe-area) 항상 적용(PC·모바일)
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
- 가계부에서 원리금균등 대출 선택 시 최초원금 PMT 추정값(옛 방식) 대신
저장된 월 상환금을 그대로 사용 → 은행/상환표와 일치
- 잔액이 작은 마지막 회차는 원금을 잔액까지만(초과 상환 방지)
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
- 대출 월 상환금 + 카드 할부(이번 달 회차) 합계를 홈 대시보드에 표기
- 현재일 기준, 가계부에 상환 기록(REPAYMENT) 있는 계좌는 제외
- 모두 기록 시 '이번 달 상환 완료' 표시, 부채 없으면 카드 숨김
- 계산은 utils/repayment.js 재사용
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
- 매월 이자 반올림 누적으로 마지막 정상 회차 뒤 수십원(원금 62·이자 1) 추가 회차
생기던 문제. 잔액<=월상환금이면 마지막 회차로 남은 잔액을 한 번에 정산(은행 동일)
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
- 계좌 관리 대출 폼에 '월 상환금(선택)' 입력(원리금균등)
- repayment.js: loanPayment 있으면 이자=잔액×이율, 원금=상환금-이자로 상각
→ 남은 개월수 추정 오차(±1회) 없이 은행 조회액과 일치. 미입력 시 기존 추정
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
- 원금 음수·잔액 증가 버그 수정: 최초원금 기준 상환액을 쓰면 잔액>원금 등
데이터 불일치 시 상환액<이자가 되어 원금이 음수가 되고 잔액이 늘어남
- 남은 개월수(n)는 기존대로 잔액 역산, 상환액은 현재 잔액을 n개월 상각 →
원금 항상 양수, 잔액 0 수렴. 역산 불가 시 이번 달 이자만(안내)
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
- 기존 대출(loanStart 없음)이 남은 회차=전체(60회)로 나오던 문제 수정:
현재 잔액과 최초 상환액으로 남은 개월수 역산(날짜 정보 불필요)
- '이번 달 상환' → '이번 달 상환 예정금액', 금액 앞 '이번 달' 제거
- '남은 N회' → '남은 회차 N회'
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
- 사이드바 '대출·할부 상환' 메뉴(프리미엄 잠금), /account/repayments 라우트
- 대출: 상환방식별(원리금균등·원금균등·만기일시) 남은 회차 상각 스케줄
- 카드 할부: 무이자 가정, 진행 중 할부 건별 남은 회차
- 회차별 원금·이자·합계 + 남은 잔액 표기, 이번 달/남은 총액 합계
- 계산은 프런트(utils/repayment.js), 지갑·카드 내역만으로 산출
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
- 탭 제거, 종류별(은행/현금/카드/대출/마이너스/투자) 섹션 목록으로 변경
- 계좌 클릭 시 인라인 드롭다운 대신 별도 상세 화면(/account/wallets/:id)으로 이동
- 상세 화면: 계좌 요약 + 월별 내역(월 네비/합계), 투자는 투자금(원금)만 표기
- 목록에서 투자 계좌는 평가액 제거하고 투자금만 표기
- 드래그 순서변경은 종류별 그룹 단위로 유지
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
라우터 requiresPremium 제거, 사이드바 🔒 제거, 자동실행을 전 사용자로,
RecurringView 한도 도달 시 추가 버튼 업셀 다이얼로그+힌트(→/upgrade).
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
원인: viewport에 maximum-scale 없어 iOS가 16px 미만 input 포커스 시 페이지 자동확대
→ 모든 화면에서 폼 선택 시 가로로 밀려 잘려 보임. maximum-scale=1,user-scalable=no로 해결.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
backdrop(flex)의 모달 아이템 기본 min-width:auto 가 넓은 그리드만큼 모달을 뷰포트보다
넓혔음. 모달 min-width:0 으로 고정(+칩 min-width:0, overflow-x:hidden 조합)으로 가로 오버플로우 해결.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
칩(그리드 아이템)의 기본 min-width:auto(=글자 전체너비)가 minmax(0,1fr)을 무력화해
긴 계좌명이 그리드를 넓혀 모달이 가로로 넘침. 칩에 min-width:0 추가로 축소+…처리.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>