diff --git a/src/views/account/AccountView.vue b/src/views/account/AccountView.vue index a770a0c..4b9dc2c 100644 --- a/src/views/account/AccountView.vue +++ b/src/views/account/AccountView.vue @@ -866,32 +866,15 @@ async function parseAndApply(text, { silent } = {}) { } return false } -// 클립보드가 카드문자/거래처럼 보이는지 로컬로만 판단(AI 호출 없음 — 비용·오작동 방지) -function looksLikeTxn(t) { - return !!t && /\d/.test(t) && /(원|₩|승인|입금|출금|결제|카드|이체)/.test(t) -} -// 추가 팝업 열 때: 클립보드에 거래성 텍스트가 있으면 버튼에 점 배지만 표시(자동 전송 안 함) -async function tryClipboardOnOpen() { +// 추가 팝업 열 때: 클립보드 자동 읽기 제거(iOS 는 clipboard.readText() 마다 '붙여넣기' 시스템 토스트를 띄움). +// 배지 표시용 감지도 하지 않는다. 붙여넣기는 사용자가 모달 안에서 직접 한다. +function tryClipboardOnOpen() { pasteDetected.value = null - try { - const txt = await navigator.clipboard.readText() - if (looksLikeTxn(txt)) pasteDetected.value = { local: true } - } catch { - // 클립보드 접근 불가 — 무시 - } } -// '빠른 입력' 버튼 → 모달 열기. 클립보드가 카드문자처럼 보일 때만 미리 채워줌(자동 AI 전송 없음 — 사용자가 버튼으로 분석) -async function openPasteModal() { +// '빠른 입력' 버튼 → 모달 열기(자동 클립보드 읽기 없음). 사용자가 자연어 입력 또는 직접 붙여넣기. +function openPasteModal() { pasteError.value = '' pasteModalOpen.value = true - if (!pasteText.value) { - try { - const txt = await navigator.clipboard.readText() - if (looksLikeTxn(txt)) pasteText.value = txt - } catch { - // 클립보드 접근 불가 — 수동 입력 - } - } } // 모달에서 분석·채우기 async function analyzePasted() {