Skip to content

Commit d4b4718

Browse files
committed
upgrades customization
1 parent 0500055 commit d4b4718

File tree

1 file changed

+15
-11
lines changed
  • services/api-server/src/simcore_service_api_server/models

1 file changed

+15
-11
lines changed

services/api-server/src/simcore_service_api_server/models/pagination.py

Lines changed: 15 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -9,10 +9,9 @@
99
from collections.abc import Sequence
1010
from typing import Any, ClassVar, Generic, TypeAlias, TypeVar
1111

12-
from fastapi_pagination.limit_offset import LimitOffsetParams
13-
from fastapi_pagination.links.limit_offset import (
14-
LimitOffsetPage as _FastApiLimitOffsetPage,
15-
)
12+
from fastapi_pagination.customization import CustomizedPage, UseParamsFields
13+
from fastapi_pagination.limit_offset import LimitOffsetPage as _LimitOffsetPage
14+
from fastapi_pagination.limit_offset import LimitOffsetParams as _LimitOffsetParams
1615
from models_library.rest_pagination import (
1716
DEFAULT_NUMBER_OF_ITEMS_PER_PAGE,
1817
MAXIMUM_NUMBER_OF_ITEMS_PER_PAGE,
@@ -23,16 +22,21 @@
2322

2423
T = TypeVar("T")
2524

26-
# NOTE: same pagination limits and defaults as web-server
27-
Page = _FastApiLimitOffsetPage.with_custom_options(
28-
limit=Field(
29-
DEFAULT_NUMBER_OF_ITEMS_PER_PAGE, ge=1, le=MAXIMUM_NUMBER_OF_ITEMS_PER_PAGE
30-
)
31-
)
25+
26+
# NOTE: same pagination limits and defaults as web-server,
27+
# otherwise it is more difficult to sync
28+
Page = CustomizedPage[
29+
_LimitOffsetPage[T],
30+
UseParamsFields(
31+
limit=Field(
32+
DEFAULT_NUMBER_OF_ITEMS_PER_PAGE, ge=1, le=MAXIMUM_NUMBER_OF_ITEMS_PER_PAGE
33+
)
34+
),
35+
]
3236
# NOTE: Renamed to make shorter clients name models
3337
Page.__name__ = "Page"
3438

35-
PaginationParams: TypeAlias = LimitOffsetParams
39+
PaginationParams: TypeAlias = _LimitOffsetParams
3640

3741

3842
class OnePage(GenericModel, Generic[T]):

0 commit comments

Comments
 (0)