package logic import "math" const ( defaultPage = 1 defaultPageSize = 10 maxPageSize = 100 ) // normalizePage applies defaults and bounds to the requested page/pageSize, // and keeps the computed offset within int64 even for absurd page numbers. func normalizePage(page, pageSize int64) (int64, int64) { if page < 1 { page = defaultPage } if pageSize < 1 { pageSize = defaultPageSize } if pageSize > maxPageSize { pageSize = maxPageSize } const safeOffset = math.MaxInt64 / 2 if page-1 > safeOffset/pageSize { page = safeOffset/pageSize + 1 } return page, pageSize }