페이지 섹션·공개 목록 설정 누적 변경 일괄 반영
페이지 섹션 관리와 홈 Pages 진열장 연동, 공개 목록 표시개수 설정 관련 누적 로컬 변경을 기능 단위로 정리해 반영한다. 문서 이력과 패키지 버전을 v1.9.23으로 맞춰 코드와 문서 상태를 동기화한다. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
48
lib/display-count-settings.js
Normal file
48
lib/display-count-settings.js
Normal file
@@ -0,0 +1,48 @@
|
||||
export const DISPLAY_COUNT_OPTIONS = [6, 10, 12, 20, 30, 50]
|
||||
export const POST_LIST_COUNT_OPTIONS = [10, 20, 30, 50]
|
||||
|
||||
export const DEFAULT_HOME_LATEST_POST_LIMIT = 20
|
||||
export const DEFAULT_POST_LIST_PAGE_SIZE = 20
|
||||
export const DEFAULT_TAG_POST_LIST_PAGE_SIZE = 20
|
||||
export const DEFAULT_FEATURED_POST_LIMIT = 6
|
||||
export const DEFAULT_PAGE_SECTION_ITEM_LIMIT = 12
|
||||
|
||||
export const MIN_DISPLAY_COUNT = 1
|
||||
export const MAX_DISPLAY_COUNT = 50
|
||||
|
||||
/**
|
||||
* 공개 목록 표시 개수를 정규화한다.
|
||||
* @param {unknown} value - 원본 값
|
||||
* @param {number} fallback - 기본값
|
||||
* @returns {number} 표시 개수
|
||||
*/
|
||||
export const normalizeDisplayCount = (value, fallback) => {
|
||||
const parsed = Number(value)
|
||||
if (!Number.isFinite(parsed)) {
|
||||
return fallback
|
||||
}
|
||||
|
||||
const rounded = Math.round(parsed)
|
||||
if (rounded < MIN_DISPLAY_COUNT) {
|
||||
return MIN_DISPLAY_COUNT
|
||||
}
|
||||
if (rounded > MAX_DISPLAY_COUNT) {
|
||||
return MAX_DISPLAY_COUNT
|
||||
}
|
||||
|
||||
return rounded
|
||||
}
|
||||
|
||||
/**
|
||||
* 페이지 번호를 정규화한다.
|
||||
* @param {unknown} value - 원본 값
|
||||
* @returns {number} 페이지 번호
|
||||
*/
|
||||
export const normalizeListPage = (value) => {
|
||||
const parsed = Number(value)
|
||||
if (!Number.isFinite(parsed) || parsed < 1) {
|
||||
return 1
|
||||
}
|
||||
|
||||
return Math.floor(parsed)
|
||||
}
|
||||
Reference in New Issue
Block a user