Adds a check for empty pages in the pagination logic to return a
nil slice and empty PageInfo when there are no items to display.
Updates tests to verify the behavior when no more items are
available, ensuring robustness in pagination functionality.
Refactor the GetPage function to check for an empty slice of items
instead of a nil pointer. Update tests to cover cases for nil and
empty slices, ensuring consistent behavior and improved clarity.
Ensure the pagination function correctly handles out-of-bounds indices
when slicing items. Update the slice logic to prevent slice bounds
errors and add a test case for better coverage of edge cases.