foxinternalclient 5.2.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (63) hide show
  1. foxinternalclient/__init__.py +83 -0
  2. foxinternalclient/api/__init__.py +10 -0
  3. foxinternalclient/api/device_api.py +1305 -0
  4. foxinternalclient/api/fox_factory_api.py +1906 -0
  5. foxinternalclient/api/gitlab_api.py +314 -0
  6. foxinternalclient/api/internal_api.py +4956 -0
  7. foxinternalclient/api/release_api.py +1511 -0
  8. foxinternalclient/api/stats_api.py +285 -0
  9. foxinternalclient/api_client.py +801 -0
  10. foxinternalclient/api_response.py +21 -0
  11. foxinternalclient/configuration.py +591 -0
  12. foxinternalclient/exceptions.py +217 -0
  13. foxinternalclient/models/__init__.py +61 -0
  14. foxinternalclient/models/body_change_password_profile_change_password_post.py +90 -0
  15. foxinternalclient/models/build_status_enum.py +42 -0
  16. foxinternalclient/models/build_task_response.py +116 -0
  17. foxinternalclient/models/build_task_short_response.py +107 -0
  18. foxinternalclient/models/device_internal_response.py +143 -0
  19. foxinternalclient/models/device_response.py +130 -0
  20. foxinternalclient/models/device_stats_response.py +92 -0
  21. foxinternalclient/models/device_update_body.py +128 -0
  22. foxinternalclient/models/ff_status_enum.py +39 -0
  23. foxinternalclient/models/ff_status_response.py +89 -0
  24. foxinternalclient/models/global_stats_aggregation_model.py +94 -0
  25. foxinternalclient/models/http_validation_error.py +96 -0
  26. foxinternalclient/models/list_response_release_response.py +100 -0
  27. foxinternalclient/models/list_response_short_device_response.py +100 -0
  28. foxinternalclient/models/list_response_short_release_response.py +100 -0
  29. foxinternalclient/models/list_response_str.py +92 -0
  30. foxinternalclient/models/list_response_user_short_response.py +100 -0
  31. foxinternalclient/models/log_list_response.py +102 -0
  32. foxinternalclient/models/log_response.py +134 -0
  33. foxinternalclient/models/maintainer_short_model.py +94 -0
  34. foxinternalclient/models/new_build_task_body.py +112 -0
  35. foxinternalclient/models/new_device_body.py +99 -0
  36. foxinternalclient/models/recovery_img_response.py +90 -0
  37. foxinternalclient/models/release_groups_response.py +105 -0
  38. foxinternalclient/models/release_internal_response.py +191 -0
  39. foxinternalclient/models/release_internal_response_prop_value.py +156 -0
  40. foxinternalclient/models/release_response.py +154 -0
  41. foxinternalclient/models/release_stats_response.py +92 -0
  42. foxinternalclient/models/release_type.py +39 -0
  43. foxinternalclient/models/release_update_body.py +114 -0
  44. foxinternalclient/models/releases_sort.py +38 -0
  45. foxinternalclient/models/response_get_releases_releases_get.py +135 -0
  46. foxinternalclient/models/short_device_response.py +110 -0
  47. foxinternalclient/models/short_release_response.py +124 -0
  48. foxinternalclient/models/task_update_body.py +101 -0
  49. foxinternalclient/models/token_response.py +90 -0
  50. foxinternalclient/models/user_gitlab.py +88 -0
  51. foxinternalclient/models/user_internal_response.py +146 -0
  52. foxinternalclient/models/user_mail.py +88 -0
  53. foxinternalclient/models/user_short_response.py +94 -0
  54. foxinternalclient/models/user_telegram.py +88 -0
  55. foxinternalclient/models/user_update_body.py +121 -0
  56. foxinternalclient/models/validation_error.py +100 -0
  57. foxinternalclient/models/validation_error_loc_inner.py +139 -0
  58. foxinternalclient/py.typed +0 -0
  59. foxinternalclient/rest.py +214 -0
  60. foxinternalclient-5.2.0.dist-info/METADATA +25 -0
  61. foxinternalclient-5.2.0.dist-info/RECORD +63 -0
  62. foxinternalclient-5.2.0.dist-info/WHEEL +5 -0
  63. foxinternalclient-5.2.0.dist-info/top_level.txt +1 -0
@@ -0,0 +1,285 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ Fox API
5
+
6
+ Warning: Please add a custom user agent header to your requests. This would help us fighting against DDoS attacks in future, while keeping your application's access to the API. In future, this may be a mandatory requirement. To reduce the system load, the API endpoints are rate limited. The default limit is 20 requests per minute. Contact admin@orangefox.tech if you need a higher limit. The requests may be logged for analytics and development purposes.
7
+
8
+ The version of the OpenAPI document: 5.2.0
9
+ Contact: admin@orangefox.tech
10
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
11
+
12
+ Do not edit the class manually.
13
+ """ # noqa: E501
14
+
15
+ import warnings
16
+ from pydantic import validate_call, Field, StrictFloat, StrictStr, StrictInt
17
+ from typing import Any, Dict, List, Optional, Tuple, Union
18
+ from typing_extensions import Annotated
19
+
20
+ from foxinternalclient.models.global_stats_aggregation_model import GlobalStatsAggregationModel
21
+
22
+ from foxinternalclient.api_client import ApiClient, RequestSerialized
23
+ from foxinternalclient.api_response import ApiResponse
24
+ from foxinternalclient.rest import RESTResponseType
25
+
26
+
27
+ class StatsApi:
28
+ """NOTE: This class is auto generated by OpenAPI Generator
29
+ Ref: https://openapi-generator.tech
30
+
31
+ Do not edit the class manually.
32
+ """
33
+
34
+ def __init__(self, api_client=None) -> None:
35
+ if api_client is None:
36
+ api_client = ApiClient.get_default()
37
+ self.api_client = api_client
38
+
39
+
40
+ @validate_call
41
+ async def public_stats_stats_get(
42
+ self,
43
+ _request_timeout: Union[
44
+ None,
45
+ Annotated[StrictFloat, Field(gt=0)],
46
+ Tuple[
47
+ Annotated[StrictFloat, Field(gt=0)],
48
+ Annotated[StrictFloat, Field(gt=0)]
49
+ ]
50
+ ] = None,
51
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
52
+ _content_type: Optional[StrictStr] = None,
53
+ _headers: Optional[Dict[StrictStr, Any]] = None,
54
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
55
+ ) -> GlobalStatsAggregationModel:
56
+ """Public Stats
57
+
58
+ Returns the global OrangeFox downloads statistics. This request causes an increased load to the database, as it needs to aggregate all the release stats data, therefore, it is limited to a small number of requests per minute for public usage.
59
+
60
+ :param _request_timeout: timeout setting for this request. If one
61
+ number provided, it will be total request
62
+ timeout. It can also be a pair (tuple) of
63
+ (connection, read) timeouts.
64
+ :type _request_timeout: int, tuple(int, int), optional
65
+ :param _request_auth: set to override the auth_settings for an a single
66
+ request; this effectively ignores the
67
+ authentication in the spec for a single request.
68
+ :type _request_auth: dict, optional
69
+ :param _content_type: force content-type for the request.
70
+ :type _content_type: str, Optional
71
+ :param _headers: set to override the headers for a single
72
+ request; this effectively ignores the headers
73
+ in the spec for a single request.
74
+ :type _headers: dict, optional
75
+ :param _host_index: set to override the host_index for a single
76
+ request; this effectively ignores the host_index
77
+ in the spec for a single request.
78
+ :type _host_index: int, optional
79
+ :return: Returns the result object.
80
+ """ # noqa: E501
81
+
82
+ _param = self._public_stats_stats_get_serialize(
83
+ _request_auth=_request_auth,
84
+ _content_type=_content_type,
85
+ _headers=_headers,
86
+ _host_index=_host_index
87
+ )
88
+
89
+ _response_types_map: Dict[str, Optional[str]] = {
90
+ '200': "GlobalStatsAggregationModel",
91
+ '429': None,
92
+ }
93
+ response_data = await self.api_client.call_api(
94
+ *_param,
95
+ _request_timeout=_request_timeout
96
+ )
97
+ await response_data.read()
98
+ return self.api_client.response_deserialize(
99
+ response_data=response_data,
100
+ response_types_map=_response_types_map,
101
+ ).data
102
+
103
+
104
+ @validate_call
105
+ async def public_stats_stats_get_with_http_info(
106
+ self,
107
+ _request_timeout: Union[
108
+ None,
109
+ Annotated[StrictFloat, Field(gt=0)],
110
+ Tuple[
111
+ Annotated[StrictFloat, Field(gt=0)],
112
+ Annotated[StrictFloat, Field(gt=0)]
113
+ ]
114
+ ] = None,
115
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
116
+ _content_type: Optional[StrictStr] = None,
117
+ _headers: Optional[Dict[StrictStr, Any]] = None,
118
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
119
+ ) -> ApiResponse[GlobalStatsAggregationModel]:
120
+ """Public Stats
121
+
122
+ Returns the global OrangeFox downloads statistics. This request causes an increased load to the database, as it needs to aggregate all the release stats data, therefore, it is limited to a small number of requests per minute for public usage.
123
+
124
+ :param _request_timeout: timeout setting for this request. If one
125
+ number provided, it will be total request
126
+ timeout. It can also be a pair (tuple) of
127
+ (connection, read) timeouts.
128
+ :type _request_timeout: int, tuple(int, int), optional
129
+ :param _request_auth: set to override the auth_settings for an a single
130
+ request; this effectively ignores the
131
+ authentication in the spec for a single request.
132
+ :type _request_auth: dict, optional
133
+ :param _content_type: force content-type for the request.
134
+ :type _content_type: str, Optional
135
+ :param _headers: set to override the headers for a single
136
+ request; this effectively ignores the headers
137
+ in the spec for a single request.
138
+ :type _headers: dict, optional
139
+ :param _host_index: set to override the host_index for a single
140
+ request; this effectively ignores the host_index
141
+ in the spec for a single request.
142
+ :type _host_index: int, optional
143
+ :return: Returns the result object.
144
+ """ # noqa: E501
145
+
146
+ _param = self._public_stats_stats_get_serialize(
147
+ _request_auth=_request_auth,
148
+ _content_type=_content_type,
149
+ _headers=_headers,
150
+ _host_index=_host_index
151
+ )
152
+
153
+ _response_types_map: Dict[str, Optional[str]] = {
154
+ '200': "GlobalStatsAggregationModel",
155
+ '429': None,
156
+ }
157
+ response_data = await self.api_client.call_api(
158
+ *_param,
159
+ _request_timeout=_request_timeout
160
+ )
161
+ await response_data.read()
162
+ return self.api_client.response_deserialize(
163
+ response_data=response_data,
164
+ response_types_map=_response_types_map,
165
+ )
166
+
167
+
168
+ @validate_call
169
+ async def public_stats_stats_get_without_preload_content(
170
+ self,
171
+ _request_timeout: Union[
172
+ None,
173
+ Annotated[StrictFloat, Field(gt=0)],
174
+ Tuple[
175
+ Annotated[StrictFloat, Field(gt=0)],
176
+ Annotated[StrictFloat, Field(gt=0)]
177
+ ]
178
+ ] = None,
179
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
180
+ _content_type: Optional[StrictStr] = None,
181
+ _headers: Optional[Dict[StrictStr, Any]] = None,
182
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
183
+ ) -> RESTResponseType:
184
+ """Public Stats
185
+
186
+ Returns the global OrangeFox downloads statistics. This request causes an increased load to the database, as it needs to aggregate all the release stats data, therefore, it is limited to a small number of requests per minute for public usage.
187
+
188
+ :param _request_timeout: timeout setting for this request. If one
189
+ number provided, it will be total request
190
+ timeout. It can also be a pair (tuple) of
191
+ (connection, read) timeouts.
192
+ :type _request_timeout: int, tuple(int, int), optional
193
+ :param _request_auth: set to override the auth_settings for an a single
194
+ request; this effectively ignores the
195
+ authentication in the spec for a single request.
196
+ :type _request_auth: dict, optional
197
+ :param _content_type: force content-type for the request.
198
+ :type _content_type: str, Optional
199
+ :param _headers: set to override the headers for a single
200
+ request; this effectively ignores the headers
201
+ in the spec for a single request.
202
+ :type _headers: dict, optional
203
+ :param _host_index: set to override the host_index for a single
204
+ request; this effectively ignores the host_index
205
+ in the spec for a single request.
206
+ :type _host_index: int, optional
207
+ :return: Returns the result object.
208
+ """ # noqa: E501
209
+
210
+ _param = self._public_stats_stats_get_serialize(
211
+ _request_auth=_request_auth,
212
+ _content_type=_content_type,
213
+ _headers=_headers,
214
+ _host_index=_host_index
215
+ )
216
+
217
+ _response_types_map: Dict[str, Optional[str]] = {
218
+ '200': "GlobalStatsAggregationModel",
219
+ '429': None,
220
+ }
221
+ response_data = await self.api_client.call_api(
222
+ *_param,
223
+ _request_timeout=_request_timeout
224
+ )
225
+ return response_data.response
226
+
227
+
228
+ def _public_stats_stats_get_serialize(
229
+ self,
230
+ _request_auth,
231
+ _content_type,
232
+ _headers,
233
+ _host_index,
234
+ ) -> RequestSerialized:
235
+
236
+ _host = None
237
+
238
+ _collection_formats: Dict[str, str] = {
239
+ }
240
+
241
+ _path_params: Dict[str, str] = {}
242
+ _query_params: List[Tuple[str, str]] = []
243
+ _header_params: Dict[str, Optional[str]] = _headers or {}
244
+ _form_params: List[Tuple[str, str]] = []
245
+ _files: Dict[
246
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
247
+ ] = {}
248
+ _body_params: Optional[bytes] = None
249
+
250
+ # process the path parameters
251
+ # process the query parameters
252
+ # process the header parameters
253
+ # process the form parameters
254
+ # process the body parameter
255
+
256
+
257
+ # set the HTTP header `Accept`
258
+ if 'Accept' not in _header_params:
259
+ _header_params['Accept'] = self.api_client.select_header_accept(
260
+ [
261
+ 'application/json'
262
+ ]
263
+ )
264
+
265
+
266
+ # authentication setting
267
+ _auth_settings: List[str] = [
268
+ ]
269
+
270
+ return self.api_client.param_serialize(
271
+ method='GET',
272
+ resource_path='/stats/',
273
+ path_params=_path_params,
274
+ query_params=_query_params,
275
+ header_params=_header_params,
276
+ body=_body_params,
277
+ post_params=_form_params,
278
+ files=_files,
279
+ auth_settings=_auth_settings,
280
+ collection_formats=_collection_formats,
281
+ _host=_host,
282
+ _request_auth=_request_auth
283
+ )
284
+
285
+