feat(travel): 사진 동기화 버튼 추가 — POST /api/travel/sync 호출 + 결과 토스트
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -92,6 +92,64 @@
|
||||
max-width: 420px;
|
||||
}
|
||||
|
||||
/* Sync button */
|
||||
.tv-sync-btn {
|
||||
display: inline-flex;
|
||||
align-items: center;
|
||||
gap: 6px;
|
||||
margin-top: 14px;
|
||||
padding: 6px 14px;
|
||||
background: var(--tv-surface-2);
|
||||
border: 1px solid var(--tv-line);
|
||||
border-radius: var(--tv-r-sm);
|
||||
color: var(--tv-muted);
|
||||
font-family: var(--tv-mono);
|
||||
font-size: 11px;
|
||||
cursor: pointer;
|
||||
transition: color 0.2s, border-color 0.2s;
|
||||
}
|
||||
|
||||
.tv-sync-btn:hover:not(:disabled) {
|
||||
color: var(--tv-text);
|
||||
border-color: var(--tv-line-bright);
|
||||
}
|
||||
|
||||
.tv-sync-btn:disabled {
|
||||
opacity: 0.5;
|
||||
cursor: not-allowed;
|
||||
}
|
||||
|
||||
.tv-sync-btn.is-syncing svg {
|
||||
animation: tv-spin 1s linear infinite;
|
||||
}
|
||||
|
||||
@keyframes tv-spin {
|
||||
to { transform: rotate(360deg); }
|
||||
}
|
||||
|
||||
.tv-sync-toast {
|
||||
margin-top: 8px;
|
||||
padding: 6px 12px;
|
||||
background: rgba(200, 144, 94, 0.12);
|
||||
border: 1px solid rgba(200, 144, 94, 0.25);
|
||||
border-radius: var(--tv-r-sm);
|
||||
font-family: var(--tv-mono);
|
||||
font-size: 11px;
|
||||
color: var(--tv-accent);
|
||||
animation: tv-fade-in 0.3s ease;
|
||||
}
|
||||
|
||||
.tv-sync-toast.is-error {
|
||||
background: rgba(220, 80, 80, 0.12);
|
||||
border-color: rgba(220, 80, 80, 0.25);
|
||||
color: #dc5050;
|
||||
}
|
||||
|
||||
@keyframes tv-fade-in {
|
||||
from { opacity: 0; transform: translateY(-4px); }
|
||||
to { opacity: 1; transform: translateY(0); }
|
||||
}
|
||||
|
||||
/* Active region info */
|
||||
.tv-header__active-region {
|
||||
display: flex;
|
||||
|
||||
Reference in New Issue
Block a user