layrz-sdk 4.0.8__tar.gz → 4.0.9__tar.gz

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.

Potentially problematic release.


This version of layrz-sdk might be problematic. Click here for more details.

Files changed (132) hide show
  1. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/CHANGELOG.md +6 -0
  2. {layrz_sdk-4.0.8/layrz_sdk.egg-info → layrz_sdk-4.0.9}/PKG-INFO +1 -1
  3. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/operation.py +11 -0
  4. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/operation_payload.py +11 -0
  5. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9/layrz_sdk.egg-info}/PKG-INFO +1 -1
  6. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/pyproject.toml +1 -1
  7. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/uv.lock +1 -1
  8. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/.github/workflows/checks.yml +0 -0
  9. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/.github/workflows/deploy.yml +0 -0
  10. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/.gitignore +0 -0
  11. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/.vscode/extensions.json +0 -0
  12. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/CODE_OF_CONDUCT.md +0 -0
  13. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/CONTRIBUTING.md +0 -0
  14. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/LICENSE +0 -0
  15. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/README.md +0 -0
  16. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/__init__.py +0 -0
  17. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/constants.py +0 -0
  18. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/__init__.py +0 -0
  19. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/action.py +0 -0
  20. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/action_geofence_ownership.py +0 -0
  21. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/action_kind.py +0 -0
  22. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/action_subkind.py +0 -0
  23. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/asset.py +0 -0
  24. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/asset_constants.py +0 -0
  25. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/asset_contact.py +0 -0
  26. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/asset_operation_mode.py +0 -0
  27. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/ats_entry.py +0 -0
  28. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/ats_exit_history.py +0 -0
  29. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/ats_possible_entry.py +0 -0
  30. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/ats_possible_exit.py +0 -0
  31. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/ats_reception.py +0 -0
  32. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/broadcast/__init__.py +0 -0
  33. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/broadcast/payload.py +0 -0
  34. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/broadcast/request.py +0 -0
  35. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/broadcast/response.py +0 -0
  36. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/broadcast/result.py +0 -0
  37. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/broadcast/service.py +0 -0
  38. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/broadcast/status.py +0 -0
  39. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/case.py +0 -0
  40. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/case_ignored_status.py +0 -0
  41. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/case_status.py +0 -0
  42. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/charts/axis_config.py +0 -0
  43. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/charts/bar_chart.py +0 -0
  44. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/charts/chart_alignment.py +0 -0
  45. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/charts/chart_color.py +0 -0
  46. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/charts/chart_configuration.py +0 -0
  47. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/charts/chart_data_serie.py +0 -0
  48. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/charts/chart_data_serie_type.py +0 -0
  49. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/charts/chart_data_type.py +0 -0
  50. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/charts/chart_render_technology.py +0 -0
  51. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/charts/column_chart.py +0 -0
  52. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/charts/html_chart.py +0 -0
  53. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/charts/line_chart.py +0 -0
  54. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/charts/map_center_type.py +0 -0
  55. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/charts/map_chart.py +0 -0
  56. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/charts/map_point.py +0 -0
  57. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/charts/number_chart.py +0 -0
  58. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/charts/pie_chart.py +0 -0
  59. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/charts/radar_chart.py +0 -0
  60. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/charts/radial_bar_chart.py +0 -0
  61. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/charts/scatter_chart.py +0 -0
  62. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/charts/scatter_serie.py +0 -0
  63. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/charts/scatter_serie_item.py +0 -0
  64. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/charts/table_chart.py +0 -0
  65. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/charts/table_header.py +0 -0
  66. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/charts/table_row.py +0 -0
  67. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/charts/timeline_chart.py +0 -0
  68. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/charts/timeline_serie.py +0 -0
  69. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/charts/timeline_serie_item.py +0 -0
  70. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/checkpoint.py +0 -0
  71. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/command_series_ticket.py +0 -0
  72. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/comment.py +0 -0
  73. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/custom_field.py +0 -0
  74. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/custom_report_page.py +0 -0
  75. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/destination_phone.py +0 -0
  76. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/device.py +0 -0
  77. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/event.py +0 -0
  78. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/exchange_service.py +0 -0
  79. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/function.py +0 -0
  80. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/geofence.py +0 -0
  81. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/geofence_category.py +0 -0
  82. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/last_message.py +0 -0
  83. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/message.py +0 -0
  84. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/modbus/__init__.py +0 -0
  85. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/modbus/config.py +0 -0
  86. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/modbus/parameter.py +0 -0
  87. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/modbus/schema.py +0 -0
  88. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/modbus/status.py +0 -0
  89. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/modbus/wait.py +0 -0
  90. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/notification_type.py +0 -0
  91. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/operation_case_payload.py +0 -0
  92. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/operation_type.py +0 -0
  93. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/outbound_service.py +0 -0
  94. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/platform.py +0 -0
  95. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/position.py +0 -0
  96. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/presence_type.py +0 -0
  97. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/preset.py +0 -0
  98. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/report.py +0 -0
  99. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/report_col.py +0 -0
  100. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/report_configuration.py +0 -0
  101. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/report_data_type.py +0 -0
  102. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/report_format.py +0 -0
  103. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/report_header.py +0 -0
  104. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/report_page.py +0 -0
  105. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/report_row.py +0 -0
  106. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/request_type.py +0 -0
  107. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/sensor.py +0 -0
  108. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/sound_effect.py +0 -0
  109. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/static_position.py +0 -0
  110. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/telemetry/__init__.py +0 -0
  111. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/telemetry/assetmessage.py +0 -0
  112. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/telemetry/devicemessage.py +0 -0
  113. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/text_alignment.py +0 -0
  114. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/timezone.py +0 -0
  115. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/trigger.py +0 -0
  116. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/trigger_kind.py +0 -0
  117. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/user.py +0 -0
  118. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/waypoint.py +0 -0
  119. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/entities/weekday.py +0 -0
  120. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/helpers/__init__.py +0 -0
  121. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/helpers/color.py +0 -0
  122. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/lcl/__init__.py +0 -0
  123. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/lcl/core.py +0 -0
  124. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk/py.typed +0 -0
  125. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk.egg-info/SOURCES.txt +0 -0
  126. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk.egg-info/dependency_links.txt +0 -0
  127. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk.egg-info/requires.txt +0 -0
  128. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/layrz_sdk.egg-info/top_level.txt +0 -0
  129. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/manual_deploy.py +0 -0
  130. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/setup.cfg +0 -0
  131. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/tests/__init__.py +0 -0
  132. {layrz_sdk-4.0.8 → layrz_sdk-4.0.9}/tests/test_lcl.py +0 -0
@@ -1,5 +1,11 @@
1
1
  # Changelog
2
2
 
3
+ ## 4.0.9
4
+
5
+ - Added validation for `destination_phones` field in `Operation` entity to ensure it is a list of `DestinationPhone` objects.
6
+ - Updated `OperationPayload` entity to use `DestinationPhone` instead of a list of strings for `destinations`.
7
+
8
+
3
9
  ## 4.0.8
4
10
 
5
11
  - Allowed `int | str | None` for `account_id` in `Operation` and `OperationPayload` entities.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: layrz-sdk
3
- Version: 4.0.8
3
+ Version: 4.0.9
4
4
  Summary: Layrz SDK for Python
5
5
  Author-email: "Golden M, Inc." <software@goldenm.com>
6
6
  Maintainer-email: Kenny Mochizuki <kenny@goldenm.com>, Luis Reyes <lreyes@goldenm.com>, Kasen Li <kli@goldenm.com>, Miguel Zauzich <miguel@goldenm.com>, Angel Prieto <aprieto@goldenm.com>
@@ -150,6 +150,17 @@ class Operation(BaseModel):
150
150
  description='Defines the destination phone numbers for Twilio notifications',
151
151
  )
152
152
 
153
+ @field_validator('destination_phones', mode='before')
154
+ def serialize_destination_phones(cls, value: Any) -> list[DestinationPhone]:
155
+ """Serialize destination phones to a list of DestinationPhone"""
156
+ if isinstance(value, list):
157
+ return value
158
+
159
+ if isinstance(value, DestinationPhone):
160
+ return [value]
161
+
162
+ return []
163
+
153
164
  attach_image: bool = Field(
154
165
  default=False,
155
166
  description='Defines if the operation should attach an image',
@@ -204,6 +204,17 @@ class OperationPayload(BaseModel):
204
204
  description='Defines the destination phone numbers for Twilio notifications',
205
205
  )
206
206
 
207
+ @field_validator('destinations', mode='before')
208
+ def serialize_destinations(cls, value: Any) -> list[DestinationPhone]:
209
+ """Serialize destinations to a list of DestinationPhone"""
210
+ if isinstance(value, list):
211
+ return value
212
+
213
+ if isinstance(value, DestinationPhone):
214
+ return [value]
215
+
216
+ return []
217
+
207
218
  twilio_host_phone: DestinationPhone | None = Field(
208
219
  default=None,
209
220
  description='Defines the host phone number for Twilio notifications',
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: layrz-sdk
3
- Version: 4.0.8
3
+ Version: 4.0.9
4
4
  Summary: Layrz SDK for Python
5
5
  Author-email: "Golden M, Inc." <software@goldenm.com>
6
6
  Maintainer-email: Kenny Mochizuki <kenny@goldenm.com>, Luis Reyes <lreyes@goldenm.com>, Kasen Li <kli@goldenm.com>, Miguel Zauzich <miguel@goldenm.com>, Angel Prieto <aprieto@goldenm.com>
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "layrz-sdk"
3
- version = "4.0.8"
3
+ version = "4.0.9"
4
4
  description = "Layrz SDK for Python"
5
5
  authors = [{ name = "Golden M, Inc.", email = "software@goldenm.com" }]
6
6
  requires-python = ">=3.13"
@@ -233,7 +233,7 @@ wheels = [
233
233
 
234
234
  [[package]]
235
235
  name = "layrz-sdk"
236
- version = "4.0.8"
236
+ version = "4.0.9"
237
237
  source = { editable = "." }
238
238
  dependencies = [
239
239
  { name = "geopy" },
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes