99f765507b
- 비운영 환경 + DB 설정 활성 시 세션 유지(타임아웃 무시) 지원 - FAQ 단건 조회 API 추가 (`FaqFacade`, `FaqFacadeImpl`) - 헤더 세션 타이머 UI 개선 및 유지 옵션 체크박스 추가
83 lines
2.1 KiB
SCSS
83 lines
2.1 KiB
SCSS
@use '../abstracts/variables' as *;
|
|
|
|
// -----------------------------------------------------------------------------
|
|
// Session Timer Component
|
|
// 인증 사용자 헤더에 남은 세션 시간을 표시. 만료 임박(<=60s) 시 경고색.
|
|
// -----------------------------------------------------------------------------
|
|
|
|
.session-timer {
|
|
display: inline-flex;
|
|
align-items: center;
|
|
gap: $spacing-xs;
|
|
white-space: nowrap;
|
|
font-size: $font-size-sm;
|
|
font-weight: $font-weight-semibold;
|
|
color: $text-gray;
|
|
|
|
.session-timer-icon {
|
|
font-size: $font-size-xs;
|
|
color: $text-gray;
|
|
}
|
|
|
|
.session-timer-text {
|
|
// 카운트다운 중 폭 흔들림 방지
|
|
font-variant-numeric: tabular-nums;
|
|
min-width: 40px;
|
|
text-align: center;
|
|
|
|
&.session-timer-warning {
|
|
color: #e03131;
|
|
font-weight: $font-weight-bold;
|
|
}
|
|
}
|
|
}
|
|
|
|
// -----------------------------------------------------------------------------
|
|
// 우측 상단 Float 세션 타이머 위젯
|
|
// 데스크톱: 헤더 우측(유저 메뉴 우측)에 상단 정렬로 고정(fixed).
|
|
// 모바일: 헤더 우측 햄버거(메뉴 버튼) 바로 왼쪽에 배치.
|
|
// -----------------------------------------------------------------------------
|
|
.session-float {
|
|
position: fixed;
|
|
top: 16px;
|
|
right: 20px;
|
|
z-index: 1000;
|
|
display: flex;
|
|
align-items: center;
|
|
gap: $spacing-sm;
|
|
padding: 6px 14px;
|
|
background: #fff;
|
|
border: 1px solid #e0e0e0;
|
|
border-radius: 20px;
|
|
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.12);
|
|
|
|
// 세션 유지 체크박스 (비운영 전용, 조건부 렌더)
|
|
.session-keepalive {
|
|
display: inline-flex;
|
|
align-items: center;
|
|
gap: 4px;
|
|
margin: 0;
|
|
padding-left: 8px;
|
|
border-left: 1px solid #e0e0e0;
|
|
font-size: $font-size-xs;
|
|
color: $text-gray;
|
|
cursor: pointer;
|
|
white-space: nowrap;
|
|
|
|
input {
|
|
margin: 0;
|
|
cursor: pointer;
|
|
}
|
|
}
|
|
}
|
|
|
|
// 모바일: 헤더 우측 햄버거(메뉴 버튼) 바로 왼쪽에 나란히 배치.
|
|
// right = 헤더 padding(20px) + 햄버거 폭(~32px) + 간격(~20px) ≈ 72px
|
|
@media (max-width: $breakpoint-sm) {
|
|
.session-float {
|
|
top: 12px;
|
|
right: 72px;
|
|
padding: 4px 10px;
|
|
}
|
|
}
|