Skip to content

Commit c4e8d4d

Browse files
algolia-botmillotp
andcommitted
chore: generated code for commit d2b0f7d6. [skip ci]
algolia/api-clients-automation@d2b0f7d Co-authored-by: algolia-bot <[email protected]> Co-authored-by: Pierre Millot <[email protected]>
1 parent f956b88 commit c4e8d4d

File tree

8 files changed

+281
-82
lines changed

8 files changed

+281
-82
lines changed

algoliasearch/recommend/models/base_search_response.py

Lines changed: 0 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -73,9 +73,6 @@ class BaseSearchResponse(BaseModel):
7373
facets_stats: Optional[Dict[str, FacetsStats]] = Field(
7474
default=None, description="Statistics for numerical facets."
7575
)
76-
hits_per_page: Annotated[int, Field(le=1000, strict=True, ge=1)] = Field(
77-
description="Number of hits per page.", alias="hitsPerPage"
78-
)
7976
index: Optional[StrictStr] = Field(
8077
default=None, description="Index name used for the query."
8178
)
@@ -87,18 +84,11 @@ class BaseSearchResponse(BaseModel):
8784
message: Optional[StrictStr] = Field(
8885
default=None, description="Warnings about the query."
8986
)
90-
nb_hits: StrictInt = Field(description="Number of results (hits).", alias="nbHits")
91-
nb_pages: StrictInt = Field(
92-
description="Number of pages of results.", alias="nbPages"
93-
)
9487
nb_sorted_hits: Optional[StrictInt] = Field(
9588
default=None,
9689
description="Number of hits selected and sorted by the relevant sort algorithm.",
9790
alias="nbSortedHits",
9891
)
99-
page: Annotated[int, Field(strict=True, ge=0)] = Field(
100-
description="Page of search results to retrieve."
101-
)
10292
parsed_query: Optional[StrictStr] = Field(
10393
default=None,
10494
description="Post-[normalization](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/handling-natural-languages-nlp/#what-does-normalization-mean) query string that will be searched.",
@@ -154,14 +144,10 @@ class BaseSearchResponse(BaseModel):
154144
"exhaustiveTypo",
155145
"facets",
156146
"facets_stats",
157-
"hitsPerPage",
158147
"index",
159148
"indexUsed",
160149
"message",
161-
"nbHits",
162-
"nbPages",
163150
"nbSortedHits",
164-
"page",
165151
"parsedQuery",
166152
"processingTimeMS",
167153
"processingTimingsMS",
@@ -267,14 +253,10 @@ def from_dict(cls, obj: Dict) -> Self:
267253
if obj.get("facets_stats") is not None
268254
else None
269255
),
270-
"hitsPerPage": obj.get("hitsPerPage"),
271256
"index": obj.get("index"),
272257
"indexUsed": obj.get("indexUsed"),
273258
"message": obj.get("message"),
274-
"nbHits": obj.get("nbHits"),
275-
"nbPages": obj.get("nbPages"),
276259
"nbSortedHits": obj.get("nbSortedHits"),
277-
"page": obj.get("page"),
278260
"parsedQuery": obj.get("parsedQuery"),
279261
"processingTimeMS": obj.get("processingTimeMS"),
280262
"processingTimingsMS": obj.get("processingTimingsMS"),

algoliasearch/recommend/models/recommendations_results.py

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -74,9 +74,6 @@ class RecommendationsResults(BaseModel):
7474
facets_stats: Optional[Dict[str, FacetsStats]] = Field(
7575
default=None, description="Statistics for numerical facets."
7676
)
77-
hits_per_page: Annotated[int, Field(le=1000, strict=True, ge=1)] = Field(
78-
description="Number of hits per page.", alias="hitsPerPage"
79-
)
8077
index: Optional[StrictStr] = Field(
8178
default=None, description="Index name used for the query."
8279
)
@@ -88,18 +85,11 @@ class RecommendationsResults(BaseModel):
8885
message: Optional[StrictStr] = Field(
8986
default=None, description="Warnings about the query."
9087
)
91-
nb_hits: StrictInt = Field(description="Number of results (hits).", alias="nbHits")
92-
nb_pages: StrictInt = Field(
93-
description="Number of pages of results.", alias="nbPages"
94-
)
9588
nb_sorted_hits: Optional[StrictInt] = Field(
9689
default=None,
9790
description="Number of hits selected and sorted by the relevant sort algorithm.",
9891
alias="nbSortedHits",
9992
)
100-
page: Annotated[int, Field(strict=True, ge=0)] = Field(
101-
description="Page of search results to retrieve."
102-
)
10393
parsed_query: Optional[StrictStr] = Field(
10494
default=None,
10595
description="Post-[normalization](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/handling-natural-languages-nlp/#what-does-normalization-mean) query string that will be searched.",
@@ -143,6 +133,16 @@ class RecommendationsResults(BaseModel):
143133
description="Unique identifier for the query. This is used for [click analytics](https://www.algolia.com/doc/guides/analytics/click-analytics/).",
144134
alias="queryID",
145135
)
136+
page: Annotated[int, Field(strict=True, ge=0)] = Field(
137+
description="Page of search results to retrieve."
138+
)
139+
nb_hits: StrictInt = Field(description="Number of results (hits).", alias="nbHits")
140+
nb_pages: StrictInt = Field(
141+
description="Number of pages of results.", alias="nbPages"
142+
)
143+
hits_per_page: Annotated[int, Field(le=1000, strict=True, ge=1)] = Field(
144+
description="Number of hits per page.", alias="hitsPerPage"
145+
)
146146
hits: List[RecommendationsHit]
147147

148148
@field_validator("around_lat_lng")
@@ -236,14 +236,10 @@ def from_dict(cls, obj: Dict) -> Self:
236236
if obj.get("facets_stats") is not None
237237
else None
238238
),
239-
"hitsPerPage": obj.get("hitsPerPage"),
240239
"index": obj.get("index"),
241240
"indexUsed": obj.get("indexUsed"),
242241
"message": obj.get("message"),
243-
"nbHits": obj.get("nbHits"),
244-
"nbPages": obj.get("nbPages"),
245242
"nbSortedHits": obj.get("nbSortedHits"),
246-
"page": obj.get("page"),
247243
"parsedQuery": obj.get("parsedQuery"),
248244
"processingTimeMS": obj.get("processingTimeMS"),
249245
"processingTimingsMS": obj.get("processingTimingsMS"),
@@ -262,6 +258,10 @@ def from_dict(cls, obj: Dict) -> Self:
262258
"serverUsed": obj.get("serverUsed"),
263259
"userData": obj.get("userData"),
264260
"queryID": obj.get("queryID"),
261+
"page": obj.get("page"),
262+
"nbHits": obj.get("nbHits"),
263+
"nbPages": obj.get("nbPages"),
264+
"hitsPerPage": obj.get("hitsPerPage"),
265265
"hits": (
266266
[RecommendationsHit.from_dict(_item) for _item in obj.get("hits")]
267267
if obj.get("hits") is not None
Lines changed: 77 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,77 @@
1+
# coding: utf-8
2+
3+
"""
4+
Code generated by OpenAPI Generator (https://openapi-generator.tech), manual changes will be lost - read more on https://github.com/algolia/api-clients-automation. DO NOT EDIT.
5+
"""
6+
7+
from __future__ import annotations
8+
9+
from json import loads
10+
from typing import Annotated, Any, Dict, Self
11+
12+
from pydantic import BaseModel, ConfigDict, Field, StrictInt
13+
14+
15+
class SearchPagination(BaseModel):
16+
"""
17+
SearchPagination
18+
"""
19+
20+
page: Annotated[int, Field(strict=True, ge=0)] = Field(
21+
description="Page of search results to retrieve."
22+
)
23+
nb_hits: StrictInt = Field(description="Number of results (hits).", alias="nbHits")
24+
nb_pages: StrictInt = Field(
25+
description="Number of pages of results.", alias="nbPages"
26+
)
27+
hits_per_page: Annotated[int, Field(le=1000, strict=True, ge=1)] = Field(
28+
description="Number of hits per page.", alias="hitsPerPage"
29+
)
30+
31+
model_config = ConfigDict(
32+
use_enum_values=True, populate_by_name=True, validate_assignment=True
33+
)
34+
35+
def to_json(self) -> str:
36+
return self.model_dump_json(by_alias=True, exclude_unset=True)
37+
38+
@classmethod
39+
def from_json(cls, json_str: str) -> Self:
40+
"""Create an instance of SearchPagination from a JSON string"""
41+
return cls.from_dict(loads(json_str))
42+
43+
def to_dict(self) -> Dict[str, Any]:
44+
"""Return the dictionary representation of the model using alias.
45+
46+
This has the following differences from calling pydantic's
47+
`self.model_dump(by_alias=True)`:
48+
49+
* `None` is only added to the output dict for nullable fields that
50+
were set at model initialization. Other fields with value `None`
51+
are ignored.
52+
"""
53+
_dict = self.model_dump(
54+
by_alias=True,
55+
exclude={},
56+
exclude_none=True,
57+
)
58+
return _dict
59+
60+
@classmethod
61+
def from_dict(cls, obj: Dict) -> Self:
62+
"""Create an instance of SearchPagination from a dict"""
63+
if obj is None:
64+
return None
65+
66+
if not isinstance(obj, dict):
67+
return cls.model_validate(obj)
68+
69+
_obj = cls.model_validate(
70+
{
71+
"page": obj.get("page"),
72+
"nbHits": obj.get("nbHits"),
73+
"nbPages": obj.get("nbPages"),
74+
"hitsPerPage": obj.get("hitsPerPage"),
75+
}
76+
)
77+
return _obj

algoliasearch/search/models/base_search_response.py

Lines changed: 0 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -73,9 +73,6 @@ class BaseSearchResponse(BaseModel):
7373
facets_stats: Optional[Dict[str, FacetsStats]] = Field(
7474
default=None, description="Statistics for numerical facets."
7575
)
76-
hits_per_page: Annotated[int, Field(le=1000, strict=True, ge=1)] = Field(
77-
description="Number of hits per page.", alias="hitsPerPage"
78-
)
7976
index: Optional[StrictStr] = Field(
8077
default=None, description="Index name used for the query."
8178
)
@@ -87,18 +84,11 @@ class BaseSearchResponse(BaseModel):
8784
message: Optional[StrictStr] = Field(
8885
default=None, description="Warnings about the query."
8986
)
90-
nb_hits: StrictInt = Field(description="Number of results (hits).", alias="nbHits")
91-
nb_pages: StrictInt = Field(
92-
description="Number of pages of results.", alias="nbPages"
93-
)
9487
nb_sorted_hits: Optional[StrictInt] = Field(
9588
default=None,
9689
description="Number of hits selected and sorted by the relevant sort algorithm.",
9790
alias="nbSortedHits",
9891
)
99-
page: Annotated[int, Field(strict=True, ge=0)] = Field(
100-
description="Page of search results to retrieve."
101-
)
10292
parsed_query: Optional[StrictStr] = Field(
10393
default=None,
10494
description="Post-[normalization](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/handling-natural-languages-nlp/#what-does-normalization-mean) query string that will be searched.",
@@ -154,14 +144,10 @@ class BaseSearchResponse(BaseModel):
154144
"exhaustiveTypo",
155145
"facets",
156146
"facets_stats",
157-
"hitsPerPage",
158147
"index",
159148
"indexUsed",
160149
"message",
161-
"nbHits",
162-
"nbPages",
163150
"nbSortedHits",
164-
"page",
165151
"parsedQuery",
166152
"processingTimeMS",
167153
"processingTimingsMS",
@@ -267,14 +253,10 @@ def from_dict(cls, obj: Dict) -> Self:
267253
if obj.get("facets_stats") is not None
268254
else None
269255
),
270-
"hitsPerPage": obj.get("hitsPerPage"),
271256
"index": obj.get("index"),
272257
"indexUsed": obj.get("indexUsed"),
273258
"message": obj.get("message"),
274-
"nbHits": obj.get("nbHits"),
275-
"nbPages": obj.get("nbPages"),
276259
"nbSortedHits": obj.get("nbSortedHits"),
277-
"page": obj.get("page"),
278260
"parsedQuery": obj.get("parsedQuery"),
279261
"processingTimeMS": obj.get("processingTimeMS"),
280262
"processingTimingsMS": obj.get("processingTimingsMS"),
Lines changed: 79 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,79 @@
1+
# coding: utf-8
2+
3+
"""
4+
Code generated by OpenAPI Generator (https://openapi-generator.tech), manual changes will be lost - read more on https://github.com/algolia/api-clients-automation. DO NOT EDIT.
5+
"""
6+
7+
from __future__ import annotations
8+
9+
from json import loads
10+
from typing import Annotated, Any, Dict, Optional, Self
11+
12+
from pydantic import BaseModel, ConfigDict, Field, StrictInt
13+
14+
15+
class BrowsePagination(BaseModel):
16+
"""
17+
BrowsePagination
18+
"""
19+
20+
page: Optional[Annotated[int, Field(strict=True, ge=0)]] = Field(
21+
default=0, description="Page of search results to retrieve."
22+
)
23+
nb_hits: Optional[StrictInt] = Field(
24+
default=None, description="Number of results (hits).", alias="nbHits"
25+
)
26+
nb_pages: Optional[StrictInt] = Field(
27+
default=None, description="Number of pages of results.", alias="nbPages"
28+
)
29+
hits_per_page: Optional[Annotated[int, Field(le=1000, strict=True, ge=1)]] = Field(
30+
default=20, description="Number of hits per page.", alias="hitsPerPage"
31+
)
32+
33+
model_config = ConfigDict(
34+
use_enum_values=True, populate_by_name=True, validate_assignment=True
35+
)
36+
37+
def to_json(self) -> str:
38+
return self.model_dump_json(by_alias=True, exclude_unset=True)
39+
40+
@classmethod
41+
def from_json(cls, json_str: str) -> Self:
42+
"""Create an instance of BrowsePagination from a JSON string"""
43+
return cls.from_dict(loads(json_str))
44+
45+
def to_dict(self) -> Dict[str, Any]:
46+
"""Return the dictionary representation of the model using alias.
47+
48+
This has the following differences from calling pydantic's
49+
`self.model_dump(by_alias=True)`:
50+
51+
* `None` is only added to the output dict for nullable fields that
52+
were set at model initialization. Other fields with value `None`
53+
are ignored.
54+
"""
55+
_dict = self.model_dump(
56+
by_alias=True,
57+
exclude={},
58+
exclude_none=True,
59+
)
60+
return _dict
61+
62+
@classmethod
63+
def from_dict(cls, obj: Dict) -> Self:
64+
"""Create an instance of BrowsePagination from a dict"""
65+
if obj is None:
66+
return None
67+
68+
if not isinstance(obj, dict):
69+
return cls.model_validate(obj)
70+
71+
_obj = cls.model_validate(
72+
{
73+
"page": obj.get("page"),
74+
"nbHits": obj.get("nbHits"),
75+
"nbPages": obj.get("nbPages"),
76+
"hitsPerPage": obj.get("hitsPerPage"),
77+
}
78+
)
79+
return _obj

0 commit comments

Comments
 (0)