index/functions/extractPaginationMetadata.md
extractPaginationMetadata(
response):PaginationMetadata
Extract pagination metadata from API response
Safely extracts pagination info from various response formats. Provides sensible defaults when fields are missing. Handles both old and new pagination response structures.
pagination metadata
Parameters
| Parameter | Type | Description |
|---|---|---|
response | unknown | Raw API response (may be array, object, null, or undefined) |
Returns
PaginationMetadata with page, pageSize, totalCount, and hasMore
pagination metadata
Examples
With standard response object
const metadata = extractPaginationMetadata({
page: 2,
pageSize: 20,
totalCount: 100,
hasMore: true
});
// Result: { page: 2, pageSize: 20, totalCount: 100, hasMore: true }
With wrapped response
const metadata = extractPaginationMetadata({
data: {
items: [...],
meta: { page: 3, limit: 20, totalItems: 250 }
}
});
// Result: { page: 3, pageSize: 20, totalCount: 250, hasMore: true }
With missing fields (uses defaults)
const metadata = extractPaginationMetadata({ items: [] });
// Result: { page: 1, pageSize: 20, totalCount: -1, hasMore: false }
Since
6.5.0 @adoption_gap This pattern appears in 12+ locations with inline extraction (response.page ?? 1)