stadiamaps 1.0.6__py3-none-any.whl → 2.0.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.
- stadiamaps/__init__.py +6 -24
- stadiamaps/api/geocoding_api.py +1917 -760
- stadiamaps/api/geospatial_api.py +483 -221
- stadiamaps/api/routing_api.py +1615 -723
- stadiamaps/api_client.py +275 -272
- stadiamaps/api_response.py +12 -16
- stadiamaps/configuration.py +13 -11
- stadiamaps/exceptions.py +67 -30
- stadiamaps/models/__init__.py +5 -23
- stadiamaps/models/access.py +44 -26
- stadiamaps/models/admin_region.py +46 -28
- stadiamaps/models/administrative.py +48 -30
- stadiamaps/models/auto_costing_options.py +69 -48
- stadiamaps/models/auto_costing_options_all_of.py +1 -1
- stadiamaps/models/base_costing_options.py +52 -33
- stadiamaps/models/base_trace_request.py +70 -40
- stadiamaps/models/bicycle_costing_options.py +61 -42
- stadiamaps/models/bicycle_costing_options_all_of.py +1 -1
- stadiamaps/models/bike_network.py +42 -24
- stadiamaps/models/contour.py +45 -27
- stadiamaps/models/coordinate.py +45 -26
- stadiamaps/models/costing_model.py +10 -12
- stadiamaps/models/costing_options.py +51 -33
- stadiamaps/models/directions_options.py +45 -27
- stadiamaps/models/distance_unit.py +8 -11
- stadiamaps/models/edge_sign.py +46 -28
- stadiamaps/models/edge_use.py +8 -11
- stadiamaps/models/end_node.py +48 -30
- stadiamaps/models/geo_attributes.py +47 -29
- stadiamaps/models/geo_json_geometry.py +25 -25
- stadiamaps/models/geo_json_geometry_base.py +45 -27
- stadiamaps/models/geo_json_line_string.py +47 -28
- stadiamaps/models/geo_json_line_string_all_of.py +2 -2
- stadiamaps/models/geo_json_point.py +47 -28
- stadiamaps/models/geo_json_point_all_of.py +2 -2
- stadiamaps/models/geo_json_polygon.py +47 -28
- stadiamaps/models/geo_json_polygon_all_of.py +2 -2
- stadiamaps/models/geocoding_object.py +46 -28
- stadiamaps/models/height_request.py +55 -34
- stadiamaps/models/height_response.py +49 -30
- stadiamaps/models/highway_classification.py +52 -34
- stadiamaps/models/intersecting_edge.py +45 -27
- stadiamaps/models/isochrone_costing_model.py +8 -11
- stadiamaps/models/isochrone_feature.py +45 -27
- stadiamaps/models/isochrone_properties.py +48 -30
- stadiamaps/models/isochrone_request.py +54 -35
- stadiamaps/models/isochrone_response.py +47 -29
- stadiamaps/models/locate_detailed_edge.py +73 -55
- stadiamaps/models/locate_edge.py +56 -39
- stadiamaps/models/locate_edge_info.py +47 -29
- stadiamaps/models/locate_node.py +50 -31
- stadiamaps/models/locate_node_all_of.py +1 -1
- stadiamaps/models/locate_object.py +49 -31
- stadiamaps/models/maneuver_sign.py +50 -32
- stadiamaps/models/maneuver_sign_element.py +45 -27
- stadiamaps/models/map_match_costing_model.py +8 -11
- stadiamaps/models/map_match_request.py +74 -44
- stadiamaps/models/map_match_request_all_of.py +1 -1
- stadiamaps/models/map_match_route_response.py +57 -29
- stadiamaps/models/map_match_route_response_all_of.py +1 -1
- stadiamaps/models/map_match_trace_options.py +47 -29
- stadiamaps/models/map_match_waypoint.py +49 -30
- stadiamaps/models/map_match_waypoint_all_of.py +1 -1
- stadiamaps/models/matched_point.py +52 -34
- stadiamaps/models/matrix_costing_model.py +9 -12
- stadiamaps/models/matrix_distance.py +46 -28
- stadiamaps/models/matrix_request.py +70 -39
- stadiamaps/models/matrix_response.py +60 -36
- stadiamaps/models/motor_scooter_costing_options.py +70 -49
- stadiamaps/models/motor_scooter_costing_options_all_of.py +1 -1
- stadiamaps/models/motorcycle_costing_options.py +69 -48
- stadiamaps/models/motorcycle_costing_options_all_of.py +1 -1
- stadiamaps/models/nearest_roads_request.py +65 -34
- stadiamaps/models/node_id.py +42 -24
- stadiamaps/models/node_type.py +8 -11
- stadiamaps/models/optimized_route_request.py +66 -35
- stadiamaps/models/pedestrian_costing_options.py +59 -40
- stadiamaps/models/pelias_geo_json_feature.py +50 -31
- stadiamaps/models/pelias_geo_json_properties.py +54 -36
- stadiamaps/models/pelias_geo_json_properties_addendum.py +43 -25
- stadiamaps/models/pelias_geo_json_properties_addendum_osm.py +42 -24
- stadiamaps/models/pelias_layer.py +8 -11
- stadiamaps/models/pelias_response.py +49 -30
- stadiamaps/models/pelias_response_geocoding.py +1 -1
- stadiamaps/models/pelias_source.py +8 -11
- stadiamaps/models/restrictions.py +44 -26
- stadiamaps/models/road_class.py +8 -11
- stadiamaps/models/route_leg.py +48 -29
- stadiamaps/models/route_maneuver.py +73 -55
- stadiamaps/models/route_request.py +76 -43
- stadiamaps/models/route_response.py +56 -28
- stadiamaps/models/route_response_alternates_inner.py +105 -0
- stadiamaps/models/route_response_trip.py +1 -1
- stadiamaps/models/route_summary.py +48 -30
- stadiamaps/models/route_trip.py +135 -0
- stadiamaps/models/routing_response_waypoint.py +49 -30
- stadiamaps/models/routing_response_waypoint_all_of.py +1 -1
- stadiamaps/models/routing_waypoint.py +60 -41
- stadiamaps/models/routing_waypoint_all_of.py +1 -1
- stadiamaps/models/routing_waypoint_all_of_search_filter.py +48 -30
- stadiamaps/models/simple_routing_waypoint.py +48 -29
- stadiamaps/models/simple_routing_waypoint_all_of.py +1 -1
- stadiamaps/models/speeds.py +49 -31
- stadiamaps/models/trace_attribute_filter_options.py +47 -28
- stadiamaps/models/trace_attribute_key.py +8 -11
- stadiamaps/models/trace_attributes_base_response.py +51 -32
- stadiamaps/models/trace_attributes_request.py +72 -42
- stadiamaps/models/trace_attributes_request_all_of.py +1 -1
- stadiamaps/models/trace_attributes_request_all_of_filters.py +2 -2
- stadiamaps/models/trace_attributes_response.py +54 -35
- stadiamaps/models/trace_attributes_response_all_of.py +1 -1
- stadiamaps/models/trace_edge.py +88 -70
- stadiamaps/models/travel_mode.py +8 -11
- stadiamaps/models/traversability.py +8 -11
- stadiamaps/models/truck_costing_options.py +72 -51
- stadiamaps/models/truck_costing_options_all_of.py +1 -1
- stadiamaps/models/tz_response.py +45 -27
- stadiamaps/models/valhalla_languages.py +8 -11
- stadiamaps/models/valhalla_long_units.py +8 -11
- stadiamaps/models/warning.py +42 -24
- stadiamaps/py.typed +0 -0
- stadiamaps/rest.py +127 -172
- {stadiamaps-1.0.6.dist-info → stadiamaps-2.0.0.dist-info}/METADATA +4 -4
- stadiamaps-2.0.0.dist-info/RECORD +128 -0
- {stadiamaps-1.0.6.dist-info → stadiamaps-2.0.0.dist-info}/WHEEL +1 -1
- stadiamaps-1.0.6.dist-info/RECORD +0 -125
- {stadiamaps-1.0.6.dist-info → stadiamaps-2.0.0.dist-info}/LICENSE.txt +0 -0
- {stadiamaps-1.0.6.dist-info → stadiamaps-2.0.0.dist-info}/top_level.txt +0 -0
@@ -3,14 +3,14 @@
|
|
3
3
|
"""
|
4
4
|
Stadia Maps Geospatial APIs
|
5
5
|
|
6
|
-
The Stadia Maps Geospatial APIs provide you with the data you need to build awesome applications.
|
6
|
+
The Stadia Maps Geospatial APIs provide you with the data you need to build awesome applications.
|
7
7
|
|
8
|
-
The version of the OpenAPI document:
|
8
|
+
The version of the OpenAPI document: 6.0.0
|
9
9
|
Contact: support@stadiamaps.com
|
10
10
|
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
11
11
|
|
12
12
|
Do not edit the class manually.
|
13
|
-
"""
|
13
|
+
""" # noqa: E501
|
14
14
|
|
15
15
|
|
16
16
|
from __future__ import annotations
|
@@ -18,52 +18,70 @@ import pprint
|
|
18
18
|
import re # noqa: F401
|
19
19
|
import json
|
20
20
|
|
21
|
-
|
22
|
-
from typing import List, Optional
|
23
|
-
from
|
21
|
+
from pydantic import BaseModel, ConfigDict, Field, StrictStr
|
22
|
+
from typing import Any, ClassVar, Dict, List, Optional
|
23
|
+
from typing_extensions import Annotated
|
24
24
|
from stadiamaps.models.coordinate import Coordinate
|
25
25
|
from stadiamaps.models.matrix_distance import MatrixDistance
|
26
26
|
from stadiamaps.models.valhalla_long_units import ValhallaLongUnits
|
27
27
|
from stadiamaps.models.warning import Warning
|
28
|
+
from typing import Optional, Set
|
29
|
+
from typing_extensions import Self
|
28
30
|
|
29
31
|
class MatrixResponse(BaseModel):
|
30
32
|
"""
|
31
33
|
MatrixResponse
|
32
|
-
"""
|
33
|
-
id: Optional[StrictStr] = Field(None, description="An identifier to disambiguate requests (echoed by the server).")
|
34
|
-
sources:
|
35
|
-
targets:
|
36
|
-
sources_to_targets:
|
37
|
-
warnings: Optional[
|
38
|
-
units: ValhallaLongUnits
|
34
|
+
""" # noqa: E501
|
35
|
+
id: Optional[StrictStr] = Field(default=None, description="An identifier to disambiguate requests (echoed by the server).")
|
36
|
+
sources: Annotated[List[Coordinate], Field(min_length=1)] = Field(description="The list of starting locations")
|
37
|
+
targets: Annotated[List[Coordinate], Field(min_length=1)] = Field(description="The list of ending locations")
|
38
|
+
sources_to_targets: Annotated[List[List[MatrixDistance]], Field(min_length=1)] = Field(description="The matrix of starting and ending locations, along with the computed distance and travel time. The array is row-ordered. This means that the time and distance from the first location to all others forms the first row of the array, followed by the time and distance from the second source location to all target locations, etc.")
|
39
|
+
warnings: Optional[List[Warning]] = None
|
40
|
+
units: ValhallaLongUnits
|
39
41
|
additional_properties: Dict[str, Any] = {}
|
40
|
-
__properties = ["id", "sources", "targets", "sources_to_targets", "warnings", "units"]
|
42
|
+
__properties: ClassVar[List[str]] = ["id", "sources", "targets", "sources_to_targets", "warnings", "units"]
|
43
|
+
|
44
|
+
model_config = ConfigDict(
|
45
|
+
populate_by_name=True,
|
46
|
+
validate_assignment=True,
|
47
|
+
protected_namespaces=(),
|
48
|
+
)
|
41
49
|
|
42
|
-
class Config:
|
43
|
-
"""Pydantic configuration"""
|
44
|
-
allow_population_by_field_name = True
|
45
|
-
validate_assignment = True
|
46
50
|
|
47
51
|
def to_str(self) -> str:
|
48
52
|
"""Returns the string representation of the model using alias"""
|
49
|
-
return pprint.pformat(self.
|
53
|
+
return pprint.pformat(self.model_dump(by_alias=True))
|
50
54
|
|
51
55
|
def to_json(self) -> str:
|
52
56
|
"""Returns the JSON representation of the model using alias"""
|
57
|
+
# TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
|
53
58
|
return json.dumps(self.to_dict())
|
54
59
|
|
55
60
|
@classmethod
|
56
|
-
def from_json(cls, json_str: str) ->
|
61
|
+
def from_json(cls, json_str: str) -> Optional[Self]:
|
57
62
|
"""Create an instance of MatrixResponse from a JSON string"""
|
58
63
|
return cls.from_dict(json.loads(json_str))
|
59
64
|
|
60
|
-
def to_dict(self):
|
61
|
-
"""
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
65
|
+
def to_dict(self) -> Dict[str, Any]:
|
66
|
+
"""Return the dictionary representation of the model using alias.
|
67
|
+
|
68
|
+
This has the following differences from calling pydantic's
|
69
|
+
`self.model_dump(by_alias=True)`:
|
70
|
+
|
71
|
+
* `None` is only added to the output dict for nullable fields that
|
72
|
+
were set at model initialization. Other fields with value `None`
|
73
|
+
are ignored.
|
74
|
+
* Fields in `self.additional_properties` are added to the output dict.
|
75
|
+
"""
|
76
|
+
excluded_fields: Set[str] = set([
|
77
|
+
"additional_properties",
|
78
|
+
])
|
79
|
+
|
80
|
+
_dict = self.model_dump(
|
81
|
+
by_alias=True,
|
82
|
+
exclude=excluded_fields,
|
83
|
+
exclude_none=True,
|
84
|
+
)
|
67
85
|
# override the default output from pydantic by calling `to_dict()` of each item in sources (list)
|
68
86
|
_items = []
|
69
87
|
if self.sources:
|
@@ -78,12 +96,14 @@ class MatrixResponse(BaseModel):
|
|
78
96
|
if _item:
|
79
97
|
_items.append(_item.to_dict())
|
80
98
|
_dict['targets'] = _items
|
81
|
-
# override the default output from pydantic by calling `to_dict()` of each item in sources_to_targets (list)
|
99
|
+
# override the default output from pydantic by calling `to_dict()` of each item in sources_to_targets (list of list)
|
82
100
|
_items = []
|
83
101
|
if self.sources_to_targets:
|
84
102
|
for _item in self.sources_to_targets:
|
85
103
|
if _item:
|
86
|
-
_items.append(
|
104
|
+
_items.append(
|
105
|
+
[_inner_item.to_dict() for _inner_item in _item if _inner_item is not None]
|
106
|
+
)
|
87
107
|
_dict['sources_to_targets'] = _items
|
88
108
|
# override the default output from pydantic by calling `to_dict()` of each item in warnings (list)
|
89
109
|
_items = []
|
@@ -100,20 +120,23 @@ class MatrixResponse(BaseModel):
|
|
100
120
|
return _dict
|
101
121
|
|
102
122
|
@classmethod
|
103
|
-
def from_dict(cls, obj:
|
123
|
+
def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
|
104
124
|
"""Create an instance of MatrixResponse from a dict"""
|
105
125
|
if obj is None:
|
106
126
|
return None
|
107
127
|
|
108
128
|
if not isinstance(obj, dict):
|
109
|
-
return
|
129
|
+
return cls.model_validate(obj)
|
110
130
|
|
111
|
-
_obj =
|
131
|
+
_obj = cls.model_validate({
|
112
132
|
"id": obj.get("id"),
|
113
|
-
"sources": [
|
114
|
-
"targets": [
|
115
|
-
"sources_to_targets": [
|
116
|
-
|
133
|
+
"sources": [Coordinate.from_dict(_item) for _item in obj["sources"]] if obj.get("sources") is not None else None,
|
134
|
+
"targets": [Coordinate.from_dict(_item) for _item in obj["targets"]] if obj.get("targets") is not None else None,
|
135
|
+
"sources_to_targets": [
|
136
|
+
[MatrixDistance.from_dict(_inner_item) for _inner_item in _item]
|
137
|
+
for _item in obj["sources_to_targets"]
|
138
|
+
] if obj.get("sources_to_targets") is not None else None,
|
139
|
+
"warnings": [Warning.from_dict(_item) for _item in obj["warnings"]] if obj.get("warnings") is not None else None,
|
117
140
|
"units": obj.get("units")
|
118
141
|
})
|
119
142
|
# store additional fields in additional_properties
|
@@ -123,3 +146,4 @@ class MatrixResponse(BaseModel):
|
|
123
146
|
|
124
147
|
return _obj
|
125
148
|
|
149
|
+
|
@@ -3,14 +3,14 @@
|
|
3
3
|
"""
|
4
4
|
Stadia Maps Geospatial APIs
|
5
5
|
|
6
|
-
The Stadia Maps Geospatial APIs provide you with the data you need to build awesome applications.
|
6
|
+
The Stadia Maps Geospatial APIs provide you with the data you need to build awesome applications.
|
7
7
|
|
8
|
-
The version of the OpenAPI document:
|
8
|
+
The version of the OpenAPI document: 6.0.0
|
9
9
|
Contact: support@stadiamaps.com
|
10
10
|
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
11
11
|
|
12
12
|
Do not edit the class manually.
|
13
|
-
"""
|
13
|
+
""" # noqa: E501
|
14
14
|
|
15
15
|
|
16
16
|
from __future__ import annotations
|
@@ -18,67 +18,86 @@ import pprint
|
|
18
18
|
import re # noqa: F401
|
19
19
|
import json
|
20
20
|
|
21
|
-
|
22
|
-
from typing import Optional, Union
|
23
|
-
from
|
21
|
+
from pydantic import BaseModel, ConfigDict, Field, StrictBool, StrictFloat, StrictInt
|
22
|
+
from typing import Any, ClassVar, Dict, List, Optional, Union
|
23
|
+
from typing_extensions import Annotated
|
24
|
+
from typing import Optional, Set
|
25
|
+
from typing_extensions import Self
|
24
26
|
|
25
27
|
class MotorScooterCostingOptions(BaseModel):
|
26
28
|
"""
|
27
29
|
MotorScooterCostingOptions
|
28
|
-
"""
|
29
|
-
maneuver_penalty: Optional[StrictInt] = Field(5, description="A penalty (in seconds) applied when transitioning between roads (determined by name).")
|
30
|
-
gate_cost: Optional[StrictInt] = Field(15, description="The estimated cost (in seconds) when a gate is encountered.")
|
31
|
-
gate_penalty: Optional[StrictInt] = Field(300, description="A penalty (in seconds) applied to the route cost when a gate is encountered. This penalty can be used to reduce the likelihood of suggesting a route with gates unless absolutely necessary.")
|
32
|
-
country_crossing_cost: Optional[StrictInt] = Field(600, description="The estimated cost (in seconds) when encountering an international border.")
|
33
|
-
country_crossing_penalty: Optional[StrictInt] = Field(0, description="A penalty applied to transitions to international border crossings. This penalty can be used to reduce the likelihood of suggesting a route with border crossings unless absolutely necessary.")
|
34
|
-
service_penalty: Optional[StrictInt] = Field(None, description="A penalty applied to transitions to service roads. This penalty can be used to reduce the likelihood of suggesting a route with service roads unless absolutely necessary. The default penalty is 15 for cars, busses, motor scooters, and motorcycles; and zero for others.")
|
35
|
-
service_factor: Optional[Union[StrictFloat, StrictInt]] = Field(1, description="A factor that multiplies the cost when service roads are encountered. The default is 1.2 for cars and busses, and 1 for trucks, motor scooters, and motorcycles.")
|
36
|
-
use_living_streets: Optional[Union[
|
37
|
-
use_ferry: Optional[Union[
|
38
|
-
height: Optional[Union[StrictFloat, StrictInt]] = Field(1.9, description="The height of the automobile (in meters).")
|
39
|
-
width: Optional[Union[StrictFloat, StrictInt]] = Field(1.6, description="The width of the automobile (in meters).")
|
40
|
-
toll_booth_cost: Optional[StrictInt] = Field(15, description="The estimated cost (in seconds) when a toll booth is encountered.")
|
41
|
-
toll_booth_penalty: Optional[StrictInt] = Field(0, description="A penalty (in seconds) applied to the route cost when a toll booth is encountered. This penalty can be used to reduce the likelihood of suggesting a route with toll booths unless absolutely necessary.")
|
42
|
-
ferry_cost: Optional[StrictInt] = Field(300, description="The estimated cost (in seconds) when a ferry is encountered.")
|
43
|
-
use_highways: Optional[Union[
|
44
|
-
use_tolls: Optional[Union[
|
45
|
-
use_tracks: Optional[Union[
|
46
|
-
top_speed: Optional[
|
47
|
-
shortest: Optional[StrictBool] = Field(False, description="If true changes the cost metric to be quasi-shortest (pure distance-based) costing. This will disable ALL other costing factors.")
|
48
|
-
ignore_closures: Optional[StrictBool] = Field(False, description="If true, ignores all known closures. This option cannot be set if `location.search_filter.exclude_closures` is also specified.")
|
49
|
-
include_hov2: Optional[StrictBool] = Field(False, description="If true, indicates the desire to include HOV roads with a 2-occupant requirement in the route when advantageous.")
|
50
|
-
include_hov3: Optional[StrictBool] = Field(False, description="If true, indicates the desire to include HOV roads with a 3-occupant requirement in the route when advantageous.")
|
51
|
-
include_hot: Optional[StrictBool] = Field(False, description="If true, indicates the desire to include toll roads which require the driver to pay a toll if the occupant requirement isn't met")
|
52
|
-
|
53
|
-
|
30
|
+
""" # noqa: E501
|
31
|
+
maneuver_penalty: Optional[StrictInt] = Field(default=5, description="A penalty (in seconds) applied when transitioning between roads (determined by name).")
|
32
|
+
gate_cost: Optional[StrictInt] = Field(default=15, description="The estimated cost (in seconds) when a gate is encountered.")
|
33
|
+
gate_penalty: Optional[StrictInt] = Field(default=300, description="A penalty (in seconds) applied to the route cost when a gate is encountered. This penalty can be used to reduce the likelihood of suggesting a route with gates unless absolutely necessary.")
|
34
|
+
country_crossing_cost: Optional[StrictInt] = Field(default=600, description="The estimated cost (in seconds) when encountering an international border.")
|
35
|
+
country_crossing_penalty: Optional[StrictInt] = Field(default=0, description="A penalty applied to transitions to international border crossings. This penalty can be used to reduce the likelihood of suggesting a route with border crossings unless absolutely necessary.")
|
36
|
+
service_penalty: Optional[StrictInt] = Field(default=None, description="A penalty applied to transitions to service roads. This penalty can be used to reduce the likelihood of suggesting a route with service roads unless absolutely necessary. The default penalty is 15 for cars, busses, motor scooters, and motorcycles; and zero for others.")
|
37
|
+
service_factor: Optional[Union[StrictFloat, StrictInt]] = Field(default=1, description="A factor that multiplies the cost when service roads are encountered. The default is 1.2 for cars and busses, and 1 for trucks, motor scooters, and motorcycles.")
|
38
|
+
use_living_streets: Optional[Union[Annotated[float, Field(le=1, strict=True, ge=0)], Annotated[int, Field(le=1, strict=True, ge=0)]]] = Field(default=None, description="A measure of willingness to take living streets. Values near 0 attempt to avoid them, and values near 1 will favour them. Note that as some routes may be impossible without living streets, 0 does not guarantee avoidance of them. The default value is 0 for trucks; 0.1 for other motor vehicles; 0.5 for bicycles; and 0.6 for pedestrians.")
|
39
|
+
use_ferry: Optional[Union[Annotated[float, Field(le=1, strict=True, ge=0)], Annotated[int, Field(le=1, strict=True, ge=0)]]] = Field(default=0.5, description="A measure of willingness to take ferries. Values near 0 attempt to avoid ferries, and values near 1 will favour them. Note that as some routes may be impossible without ferries, 0 does not guarantee avoidance of them.")
|
40
|
+
height: Optional[Union[StrictFloat, StrictInt]] = Field(default=1.9, description="The height of the automobile (in meters).")
|
41
|
+
width: Optional[Union[StrictFloat, StrictInt]] = Field(default=1.6, description="The width of the automobile (in meters).")
|
42
|
+
toll_booth_cost: Optional[StrictInt] = Field(default=15, description="The estimated cost (in seconds) when a toll booth is encountered.")
|
43
|
+
toll_booth_penalty: Optional[StrictInt] = Field(default=0, description="A penalty (in seconds) applied to the route cost when a toll booth is encountered. This penalty can be used to reduce the likelihood of suggesting a route with toll booths unless absolutely necessary.")
|
44
|
+
ferry_cost: Optional[StrictInt] = Field(default=300, description="The estimated cost (in seconds) when a ferry is encountered.")
|
45
|
+
use_highways: Optional[Union[Annotated[float, Field(le=1, strict=True, ge=0)], Annotated[int, Field(le=1, strict=True, ge=0)]]] = Field(default=0.5, description="A measure of willingness to take highways. Values near 0 attempt to avoid highways, and values near 1 will favour them. Note that as some routes may be impossible without highways, 0 does not guarantee avoidance of them.")
|
46
|
+
use_tolls: Optional[Union[Annotated[float, Field(le=1, strict=True, ge=0)], Annotated[int, Field(le=1, strict=True, ge=0)]]] = Field(default=0.5, description="A measure of willingness to take toll roads. Values near 0 attempt to avoid tolls, and values near 1 will favour them. Note that as some routes may be impossible without tolls, 0 does not guarantee avoidance of them.")
|
47
|
+
use_tracks: Optional[Union[Annotated[float, Field(le=1, strict=True, ge=0)], Annotated[int, Field(le=1, strict=True, ge=0)]]] = Field(default=None, description="A measure of willingness to take track roads. Values near 0 attempt to avoid them, and values near 1 will favour them. Note that as some routes may be impossible without track roads, 0 does not guarantee avoidance of them. The default value is 0 for automobiles, busses, and trucks; and 0.5 for all other costing modes.")
|
48
|
+
top_speed: Optional[Annotated[int, Field(le=252, strict=True, ge=10)]] = Field(default=140, description="The top speed (in kph) that the vehicle is capable of travelling.")
|
49
|
+
shortest: Optional[StrictBool] = Field(default=False, description="If true changes the cost metric to be quasi-shortest (pure distance-based) costing. This will disable ALL other costing factors.")
|
50
|
+
ignore_closures: Optional[StrictBool] = Field(default=False, description="If true, ignores all known closures. This option cannot be set if `location.search_filter.exclude_closures` is also specified.")
|
51
|
+
include_hov2: Optional[StrictBool] = Field(default=False, description="If true, indicates the desire to include HOV roads with a 2-occupant requirement in the route when advantageous.")
|
52
|
+
include_hov3: Optional[StrictBool] = Field(default=False, description="If true, indicates the desire to include HOV roads with a 3-occupant requirement in the route when advantageous.")
|
53
|
+
include_hot: Optional[StrictBool] = Field(default=False, description="If true, indicates the desire to include toll roads which require the driver to pay a toll if the occupant requirement isn't met")
|
54
|
+
alley_factor: Optional[Union[StrictFloat, StrictInt]] = Field(default=1, description="A factor that multiplies the cost when alleys are encountered.")
|
55
|
+
use_primary: Optional[Union[Annotated[float, Field(le=1, strict=True, ge=0)], Annotated[int, Field(le=1, strict=True, ge=0)]]] = Field(default=0.5, description="A measure of willingness to use primary roads. Values near 0 attempt to avoid primary roads and stay on roads with lower speeds, and values near 1 indicate the rider is more comfortable on these roads.")
|
56
|
+
use_hills: Optional[Union[Annotated[float, Field(le=1, strict=True, ge=0)], Annotated[int, Field(le=1, strict=True, ge=0)]]] = Field(default=0.5, description="A measure of willingness to take tackle hills. Values near 0 attempt to avoid hills and steeper grades even if it means a longer route, and values near 1 indicates that the rider does not fear them. Note that as some routes may be impossible without hills, 0 does not guarantee avoidance of them.")
|
54
57
|
additional_properties: Dict[str, Any] = {}
|
55
|
-
__properties = ["maneuver_penalty", "gate_cost", "gate_penalty", "country_crossing_cost", "country_crossing_penalty", "service_penalty", "service_factor", "use_living_streets", "use_ferry", "height", "width", "toll_booth_cost", "toll_booth_penalty", "ferry_cost", "use_highways", "use_tolls", "use_tracks", "top_speed", "shortest", "ignore_closures", "include_hov2", "include_hov3", "include_hot", "use_primary", "use_hills"]
|
58
|
+
__properties: ClassVar[List[str]] = ["maneuver_penalty", "gate_cost", "gate_penalty", "country_crossing_cost", "country_crossing_penalty", "service_penalty", "service_factor", "use_living_streets", "use_ferry", "height", "width", "toll_booth_cost", "toll_booth_penalty", "ferry_cost", "use_highways", "use_tolls", "use_tracks", "top_speed", "shortest", "ignore_closures", "include_hov2", "include_hov3", "include_hot", "alley_factor", "use_primary", "use_hills"]
|
59
|
+
|
60
|
+
model_config = ConfigDict(
|
61
|
+
populate_by_name=True,
|
62
|
+
validate_assignment=True,
|
63
|
+
protected_namespaces=(),
|
64
|
+
)
|
56
65
|
|
57
|
-
class Config:
|
58
|
-
"""Pydantic configuration"""
|
59
|
-
allow_population_by_field_name = True
|
60
|
-
validate_assignment = True
|
61
66
|
|
62
67
|
def to_str(self) -> str:
|
63
68
|
"""Returns the string representation of the model using alias"""
|
64
|
-
return pprint.pformat(self.
|
69
|
+
return pprint.pformat(self.model_dump(by_alias=True))
|
65
70
|
|
66
71
|
def to_json(self) -> str:
|
67
72
|
"""Returns the JSON representation of the model using alias"""
|
73
|
+
# TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
|
68
74
|
return json.dumps(self.to_dict())
|
69
75
|
|
70
76
|
@classmethod
|
71
|
-
def from_json(cls, json_str: str) ->
|
77
|
+
def from_json(cls, json_str: str) -> Optional[Self]:
|
72
78
|
"""Create an instance of MotorScooterCostingOptions from a JSON string"""
|
73
79
|
return cls.from_dict(json.loads(json_str))
|
74
80
|
|
75
|
-
def to_dict(self):
|
76
|
-
"""
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
|
81
|
+
def to_dict(self) -> Dict[str, Any]:
|
82
|
+
"""Return the dictionary representation of the model using alias.
|
83
|
+
|
84
|
+
This has the following differences from calling pydantic's
|
85
|
+
`self.model_dump(by_alias=True)`:
|
86
|
+
|
87
|
+
* `None` is only added to the output dict for nullable fields that
|
88
|
+
were set at model initialization. Other fields with value `None`
|
89
|
+
are ignored.
|
90
|
+
* Fields in `self.additional_properties` are added to the output dict.
|
91
|
+
"""
|
92
|
+
excluded_fields: Set[str] = set([
|
93
|
+
"additional_properties",
|
94
|
+
])
|
95
|
+
|
96
|
+
_dict = self.model_dump(
|
97
|
+
by_alias=True,
|
98
|
+
exclude=excluded_fields,
|
99
|
+
exclude_none=True,
|
100
|
+
)
|
82
101
|
# puts key-value pairs in additional_properties in the top level
|
83
102
|
if self.additional_properties is not None:
|
84
103
|
for _key, _value in self.additional_properties.items():
|
@@ -87,15 +106,15 @@ class MotorScooterCostingOptions(BaseModel):
|
|
87
106
|
return _dict
|
88
107
|
|
89
108
|
@classmethod
|
90
|
-
def from_dict(cls, obj:
|
109
|
+
def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
|
91
110
|
"""Create an instance of MotorScooterCostingOptions from a dict"""
|
92
111
|
if obj is None:
|
93
112
|
return None
|
94
113
|
|
95
114
|
if not isinstance(obj, dict):
|
96
|
-
return
|
115
|
+
return cls.model_validate(obj)
|
97
116
|
|
98
|
-
_obj =
|
117
|
+
_obj = cls.model_validate({
|
99
118
|
"maneuver_penalty": obj.get("maneuver_penalty") if obj.get("maneuver_penalty") is not None else 5,
|
100
119
|
"gate_cost": obj.get("gate_cost") if obj.get("gate_cost") is not None else 15,
|
101
120
|
"gate_penalty": obj.get("gate_penalty") if obj.get("gate_penalty") is not None else 300,
|
@@ -119,6 +138,7 @@ class MotorScooterCostingOptions(BaseModel):
|
|
119
138
|
"include_hov2": obj.get("include_hov2") if obj.get("include_hov2") is not None else False,
|
120
139
|
"include_hov3": obj.get("include_hov3") if obj.get("include_hov3") is not None else False,
|
121
140
|
"include_hot": obj.get("include_hot") if obj.get("include_hot") is not None else False,
|
141
|
+
"alley_factor": obj.get("alley_factor") if obj.get("alley_factor") is not None else 1,
|
122
142
|
"use_primary": obj.get("use_primary") if obj.get("use_primary") is not None else 0.5,
|
123
143
|
"use_hills": obj.get("use_hills") if obj.get("use_hills") is not None else 0.5
|
124
144
|
})
|
@@ -129,3 +149,4 @@ class MotorScooterCostingOptions(BaseModel):
|
|
129
149
|
|
130
150
|
return _obj
|
131
151
|
|
152
|
+
|
@@ -5,7 +5,7 @@
|
|
5
5
|
|
6
6
|
The Stadia Maps Geospatial APIs provide you with the data you need to build awesome applications. # noqa: E501
|
7
7
|
|
8
|
-
The version of the OpenAPI document: 5.0.
|
8
|
+
The version of the OpenAPI document: 5.0.6
|
9
9
|
Contact: support@stadiamaps.com
|
10
10
|
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
11
11
|
|
@@ -3,14 +3,14 @@
|
|
3
3
|
"""
|
4
4
|
Stadia Maps Geospatial APIs
|
5
5
|
|
6
|
-
The Stadia Maps Geospatial APIs provide you with the data you need to build awesome applications.
|
6
|
+
The Stadia Maps Geospatial APIs provide you with the data you need to build awesome applications.
|
7
7
|
|
8
|
-
The version of the OpenAPI document:
|
8
|
+
The version of the OpenAPI document: 6.0.0
|
9
9
|
Contact: support@stadiamaps.com
|
10
10
|
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
11
11
|
|
12
12
|
Do not edit the class manually.
|
13
|
-
"""
|
13
|
+
""" # noqa: E501
|
14
14
|
|
15
15
|
|
16
16
|
from __future__ import annotations
|
@@ -18,66 +18,85 @@ import pprint
|
|
18
18
|
import re # noqa: F401
|
19
19
|
import json
|
20
20
|
|
21
|
-
|
22
|
-
from typing import Optional, Union
|
23
|
-
from
|
21
|
+
from pydantic import BaseModel, ConfigDict, Field, StrictBool, StrictFloat, StrictInt
|
22
|
+
from typing import Any, ClassVar, Dict, List, Optional, Union
|
23
|
+
from typing_extensions import Annotated
|
24
|
+
from typing import Optional, Set
|
25
|
+
from typing_extensions import Self
|
24
26
|
|
25
27
|
class MotorcycleCostingOptions(BaseModel):
|
26
28
|
"""
|
27
29
|
MotorcycleCostingOptions
|
28
|
-
"""
|
29
|
-
maneuver_penalty: Optional[StrictInt] = Field(5, description="A penalty (in seconds) applied when transitioning between roads (determined by name).")
|
30
|
-
gate_cost: Optional[StrictInt] = Field(15, description="The estimated cost (in seconds) when a gate is encountered.")
|
31
|
-
gate_penalty: Optional[StrictInt] = Field(300, description="A penalty (in seconds) applied to the route cost when a gate is encountered. This penalty can be used to reduce the likelihood of suggesting a route with gates unless absolutely necessary.")
|
32
|
-
country_crossing_cost: Optional[StrictInt] = Field(600, description="The estimated cost (in seconds) when encountering an international border.")
|
33
|
-
country_crossing_penalty: Optional[StrictInt] = Field(0, description="A penalty applied to transitions to international border crossings. This penalty can be used to reduce the likelihood of suggesting a route with border crossings unless absolutely necessary.")
|
34
|
-
service_penalty: Optional[StrictInt] = Field(None, description="A penalty applied to transitions to service roads. This penalty can be used to reduce the likelihood of suggesting a route with service roads unless absolutely necessary. The default penalty is 15 for cars, busses, motor scooters, and motorcycles; and zero for others.")
|
35
|
-
service_factor: Optional[Union[StrictFloat, StrictInt]] = Field(1, description="A factor that multiplies the cost when service roads are encountered. The default is 1.2 for cars and busses, and 1 for trucks, motor scooters, and motorcycles.")
|
36
|
-
use_living_streets: Optional[Union[
|
37
|
-
use_ferry: Optional[Union[
|
38
|
-
height: Optional[Union[StrictFloat, StrictInt]] = Field(1.9, description="The height of the automobile (in meters).")
|
39
|
-
width: Optional[Union[StrictFloat, StrictInt]] = Field(1.6, description="The width of the automobile (in meters).")
|
40
|
-
toll_booth_cost: Optional[StrictInt] = Field(15, description="The estimated cost (in seconds) when a toll booth is encountered.")
|
41
|
-
toll_booth_penalty: Optional[StrictInt] = Field(0, description="A penalty (in seconds) applied to the route cost when a toll booth is encountered. This penalty can be used to reduce the likelihood of suggesting a route with toll booths unless absolutely necessary.")
|
42
|
-
ferry_cost: Optional[StrictInt] = Field(300, description="The estimated cost (in seconds) when a ferry is encountered.")
|
43
|
-
use_highways: Optional[Union[
|
44
|
-
use_tolls: Optional[Union[
|
45
|
-
use_tracks: Optional[Union[
|
46
|
-
top_speed: Optional[
|
47
|
-
shortest: Optional[StrictBool] = Field(False, description="If true changes the cost metric to be quasi-shortest (pure distance-based) costing. This will disable ALL other costing factors.")
|
48
|
-
ignore_closures: Optional[StrictBool] = Field(False, description="If true, ignores all known closures. This option cannot be set if `location.search_filter.exclude_closures` is also specified.")
|
49
|
-
include_hov2: Optional[StrictBool] = Field(False, description="If true, indicates the desire to include HOV roads with a 2-occupant requirement in the route when advantageous.")
|
50
|
-
include_hov3: Optional[StrictBool] = Field(False, description="If true, indicates the desire to include HOV roads with a 3-occupant requirement in the route when advantageous.")
|
51
|
-
include_hot: Optional[StrictBool] = Field(False, description="If true, indicates the desire to include toll roads which require the driver to pay a toll if the occupant requirement isn't met")
|
52
|
-
|
30
|
+
""" # noqa: E501
|
31
|
+
maneuver_penalty: Optional[StrictInt] = Field(default=5, description="A penalty (in seconds) applied when transitioning between roads (determined by name).")
|
32
|
+
gate_cost: Optional[StrictInt] = Field(default=15, description="The estimated cost (in seconds) when a gate is encountered.")
|
33
|
+
gate_penalty: Optional[StrictInt] = Field(default=300, description="A penalty (in seconds) applied to the route cost when a gate is encountered. This penalty can be used to reduce the likelihood of suggesting a route with gates unless absolutely necessary.")
|
34
|
+
country_crossing_cost: Optional[StrictInt] = Field(default=600, description="The estimated cost (in seconds) when encountering an international border.")
|
35
|
+
country_crossing_penalty: Optional[StrictInt] = Field(default=0, description="A penalty applied to transitions to international border crossings. This penalty can be used to reduce the likelihood of suggesting a route with border crossings unless absolutely necessary.")
|
36
|
+
service_penalty: Optional[StrictInt] = Field(default=None, description="A penalty applied to transitions to service roads. This penalty can be used to reduce the likelihood of suggesting a route with service roads unless absolutely necessary. The default penalty is 15 for cars, busses, motor scooters, and motorcycles; and zero for others.")
|
37
|
+
service_factor: Optional[Union[StrictFloat, StrictInt]] = Field(default=1, description="A factor that multiplies the cost when service roads are encountered. The default is 1.2 for cars and busses, and 1 for trucks, motor scooters, and motorcycles.")
|
38
|
+
use_living_streets: Optional[Union[Annotated[float, Field(le=1, strict=True, ge=0)], Annotated[int, Field(le=1, strict=True, ge=0)]]] = Field(default=None, description="A measure of willingness to take living streets. Values near 0 attempt to avoid them, and values near 1 will favour them. Note that as some routes may be impossible without living streets, 0 does not guarantee avoidance of them. The default value is 0 for trucks; 0.1 for other motor vehicles; 0.5 for bicycles; and 0.6 for pedestrians.")
|
39
|
+
use_ferry: Optional[Union[Annotated[float, Field(le=1, strict=True, ge=0)], Annotated[int, Field(le=1, strict=True, ge=0)]]] = Field(default=0.5, description="A measure of willingness to take ferries. Values near 0 attempt to avoid ferries, and values near 1 will favour them. Note that as some routes may be impossible without ferries, 0 does not guarantee avoidance of them.")
|
40
|
+
height: Optional[Union[StrictFloat, StrictInt]] = Field(default=1.9, description="The height of the automobile (in meters).")
|
41
|
+
width: Optional[Union[StrictFloat, StrictInt]] = Field(default=1.6, description="The width of the automobile (in meters).")
|
42
|
+
toll_booth_cost: Optional[StrictInt] = Field(default=15, description="The estimated cost (in seconds) when a toll booth is encountered.")
|
43
|
+
toll_booth_penalty: Optional[StrictInt] = Field(default=0, description="A penalty (in seconds) applied to the route cost when a toll booth is encountered. This penalty can be used to reduce the likelihood of suggesting a route with toll booths unless absolutely necessary.")
|
44
|
+
ferry_cost: Optional[StrictInt] = Field(default=300, description="The estimated cost (in seconds) when a ferry is encountered.")
|
45
|
+
use_highways: Optional[Union[Annotated[float, Field(le=1, strict=True, ge=0)], Annotated[int, Field(le=1, strict=True, ge=0)]]] = Field(default=1.0, description="A measure of willingness to use highways. Values near 0 attempt to avoid highways and stay on roads with lower speeds, and values near 1 indicate the rider is more comfortable on these roads.")
|
46
|
+
use_tolls: Optional[Union[Annotated[float, Field(le=1, strict=True, ge=0)], Annotated[int, Field(le=1, strict=True, ge=0)]]] = Field(default=0.5, description="A measure of willingness to take toll roads. Values near 0 attempt to avoid tolls, and values near 1 will favour them. Note that as some routes may be impossible without tolls, 0 does not guarantee avoidance of them.")
|
47
|
+
use_tracks: Optional[Union[Annotated[float, Field(le=1, strict=True, ge=0)], Annotated[int, Field(le=1, strict=True, ge=0)]]] = Field(default=None, description="A measure of willingness to take track roads. Values near 0 attempt to avoid them, and values near 1 will favour them. Note that as some routes may be impossible without track roads, 0 does not guarantee avoidance of them. The default value is 0 for automobiles, busses, and trucks; and 0.5 for all other costing modes.")
|
48
|
+
top_speed: Optional[Annotated[int, Field(le=252, strict=True, ge=10)]] = Field(default=140, description="The top speed (in kph) that the vehicle is capable of travelling.")
|
49
|
+
shortest: Optional[StrictBool] = Field(default=False, description="If true changes the cost metric to be quasi-shortest (pure distance-based) costing. This will disable ALL other costing factors.")
|
50
|
+
ignore_closures: Optional[StrictBool] = Field(default=False, description="If true, ignores all known closures. This option cannot be set if `location.search_filter.exclude_closures` is also specified.")
|
51
|
+
include_hov2: Optional[StrictBool] = Field(default=False, description="If true, indicates the desire to include HOV roads with a 2-occupant requirement in the route when advantageous.")
|
52
|
+
include_hov3: Optional[StrictBool] = Field(default=False, description="If true, indicates the desire to include HOV roads with a 3-occupant requirement in the route when advantageous.")
|
53
|
+
include_hot: Optional[StrictBool] = Field(default=False, description="If true, indicates the desire to include toll roads which require the driver to pay a toll if the occupant requirement isn't met")
|
54
|
+
alley_factor: Optional[Union[StrictFloat, StrictInt]] = Field(default=1, description="A factor that multiplies the cost when alleys are encountered.")
|
55
|
+
use_trails: Optional[Union[Annotated[float, Field(le=1, strict=True, ge=0)], Annotated[int, Field(le=1, strict=True, ge=0)]]] = Field(default=0.0, description="A measure of the rider's sense of adventure. Values near 0 attempt to avoid highways and stay on roads with potentially unsuitable terrain (trails, tracks, unclassified, or bad surfaces), and values near 1 will tend to avoid major roads and route on secondary roads.")
|
53
56
|
additional_properties: Dict[str, Any] = {}
|
54
|
-
__properties = ["maneuver_penalty", "gate_cost", "gate_penalty", "country_crossing_cost", "country_crossing_penalty", "service_penalty", "service_factor", "use_living_streets", "use_ferry", "height", "width", "toll_booth_cost", "toll_booth_penalty", "ferry_cost", "use_highways", "use_tolls", "use_tracks", "top_speed", "shortest", "ignore_closures", "include_hov2", "include_hov3", "include_hot", "use_trails"]
|
57
|
+
__properties: ClassVar[List[str]] = ["maneuver_penalty", "gate_cost", "gate_penalty", "country_crossing_cost", "country_crossing_penalty", "service_penalty", "service_factor", "use_living_streets", "use_ferry", "height", "width", "toll_booth_cost", "toll_booth_penalty", "ferry_cost", "use_highways", "use_tolls", "use_tracks", "top_speed", "shortest", "ignore_closures", "include_hov2", "include_hov3", "include_hot", "alley_factor", "use_trails"]
|
58
|
+
|
59
|
+
model_config = ConfigDict(
|
60
|
+
populate_by_name=True,
|
61
|
+
validate_assignment=True,
|
62
|
+
protected_namespaces=(),
|
63
|
+
)
|
55
64
|
|
56
|
-
class Config:
|
57
|
-
"""Pydantic configuration"""
|
58
|
-
allow_population_by_field_name = True
|
59
|
-
validate_assignment = True
|
60
65
|
|
61
66
|
def to_str(self) -> str:
|
62
67
|
"""Returns the string representation of the model using alias"""
|
63
|
-
return pprint.pformat(self.
|
68
|
+
return pprint.pformat(self.model_dump(by_alias=True))
|
64
69
|
|
65
70
|
def to_json(self) -> str:
|
66
71
|
"""Returns the JSON representation of the model using alias"""
|
72
|
+
# TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
|
67
73
|
return json.dumps(self.to_dict())
|
68
74
|
|
69
75
|
@classmethod
|
70
|
-
def from_json(cls, json_str: str) ->
|
76
|
+
def from_json(cls, json_str: str) -> Optional[Self]:
|
71
77
|
"""Create an instance of MotorcycleCostingOptions from a JSON string"""
|
72
78
|
return cls.from_dict(json.loads(json_str))
|
73
79
|
|
74
|
-
def to_dict(self):
|
75
|
-
"""
|
76
|
-
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
|
80
|
+
def to_dict(self) -> Dict[str, Any]:
|
81
|
+
"""Return the dictionary representation of the model using alias.
|
82
|
+
|
83
|
+
This has the following differences from calling pydantic's
|
84
|
+
`self.model_dump(by_alias=True)`:
|
85
|
+
|
86
|
+
* `None` is only added to the output dict for nullable fields that
|
87
|
+
were set at model initialization. Other fields with value `None`
|
88
|
+
are ignored.
|
89
|
+
* Fields in `self.additional_properties` are added to the output dict.
|
90
|
+
"""
|
91
|
+
excluded_fields: Set[str] = set([
|
92
|
+
"additional_properties",
|
93
|
+
])
|
94
|
+
|
95
|
+
_dict = self.model_dump(
|
96
|
+
by_alias=True,
|
97
|
+
exclude=excluded_fields,
|
98
|
+
exclude_none=True,
|
99
|
+
)
|
81
100
|
# puts key-value pairs in additional_properties in the top level
|
82
101
|
if self.additional_properties is not None:
|
83
102
|
for _key, _value in self.additional_properties.items():
|
@@ -86,15 +105,15 @@ class MotorcycleCostingOptions(BaseModel):
|
|
86
105
|
return _dict
|
87
106
|
|
88
107
|
@classmethod
|
89
|
-
def from_dict(cls, obj:
|
108
|
+
def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
|
90
109
|
"""Create an instance of MotorcycleCostingOptions from a dict"""
|
91
110
|
if obj is None:
|
92
111
|
return None
|
93
112
|
|
94
113
|
if not isinstance(obj, dict):
|
95
|
-
return
|
114
|
+
return cls.model_validate(obj)
|
96
115
|
|
97
|
-
_obj =
|
116
|
+
_obj = cls.model_validate({
|
98
117
|
"maneuver_penalty": obj.get("maneuver_penalty") if obj.get("maneuver_penalty") is not None else 5,
|
99
118
|
"gate_cost": obj.get("gate_cost") if obj.get("gate_cost") is not None else 15,
|
100
119
|
"gate_penalty": obj.get("gate_penalty") if obj.get("gate_penalty") is not None else 300,
|
@@ -118,6 +137,7 @@ class MotorcycleCostingOptions(BaseModel):
|
|
118
137
|
"include_hov2": obj.get("include_hov2") if obj.get("include_hov2") is not None else False,
|
119
138
|
"include_hov3": obj.get("include_hov3") if obj.get("include_hov3") is not None else False,
|
120
139
|
"include_hot": obj.get("include_hot") if obj.get("include_hot") is not None else False,
|
140
|
+
"alley_factor": obj.get("alley_factor") if obj.get("alley_factor") is not None else 1,
|
121
141
|
"use_trails": obj.get("use_trails") if obj.get("use_trails") is not None else 0.0
|
122
142
|
})
|
123
143
|
# store additional fields in additional_properties
|
@@ -127,3 +147,4 @@ class MotorcycleCostingOptions(BaseModel):
|
|
127
147
|
|
128
148
|
return _obj
|
129
149
|
|
150
|
+
|
@@ -5,7 +5,7 @@
|
|
5
5
|
|
6
6
|
The Stadia Maps Geospatial APIs provide you with the data you need to build awesome applications. # noqa: E501
|
7
7
|
|
8
|
-
The version of the OpenAPI document: 5.0.
|
8
|
+
The version of the OpenAPI document: 5.0.6
|
9
9
|
Contact: support@stadiamaps.com
|
10
10
|
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
11
11
|
|