layrz-sdk 4.0.17__tar.gz → 4.0.19__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 (136) hide show
  1. layrz_sdk-4.0.19/.github/workflows/checks.yml +50 -0
  2. layrz_sdk-4.0.19/.github/workflows/deploy.yml +32 -0
  3. layrz_sdk-4.0.19/.gitignore +19 -0
  4. layrz_sdk-4.0.19/.vscode/extensions.json +9 -0
  5. layrz_sdk-4.0.19/CHANGELOG.md +609 -0
  6. layrz_sdk-4.0.19/CODE_OF_CONDUCT.md +29 -0
  7. layrz_sdk-4.0.19/CONTRIBUTING.md +26 -0
  8. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/PKG-INFO +1 -1
  9. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/ats_operation.py +4 -4
  10. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/case.py +6 -1
  11. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk.egg-info/PKG-INFO +1 -1
  12. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk.egg-info/SOURCES.txt +10 -0
  13. layrz_sdk-4.0.19/manual_deploy.py +12 -0
  14. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/pyproject.toml +1 -1
  15. layrz_sdk-4.0.19/tests/__init__.py +0 -0
  16. layrz_sdk-4.0.19/uv.lock +749 -0
  17. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/LICENSE +0 -0
  18. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/README.md +0 -0
  19. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/__init__.py +0 -0
  20. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/constants.py +0 -0
  21. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/decorators/__init__.py +0 -0
  22. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/decorators/func_timing.py +0 -0
  23. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/__init__.py +0 -0
  24. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/action.py +0 -0
  25. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/action_geofence_ownership.py +0 -0
  26. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/action_kind.py +0 -0
  27. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/action_subkind.py +0 -0
  28. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/asset.py +0 -0
  29. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/asset_constants.py +0 -0
  30. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/asset_contact.py +0 -0
  31. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/asset_operation_mode.py +0 -0
  32. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/ats_entry.py +0 -0
  33. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/ats_exit_history.py +0 -0
  34. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/ats_possible_entry.py +0 -0
  35. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/ats_possible_exit.py +0 -0
  36. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/ats_purchaseorder.py +0 -0
  37. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/ats_reception.py +0 -0
  38. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/broadcast/__init__.py +0 -0
  39. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/broadcast/payload.py +0 -0
  40. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/broadcast/request.py +0 -0
  41. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/broadcast/response.py +0 -0
  42. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/broadcast/result.py +0 -0
  43. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/broadcast/service.py +0 -0
  44. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/broadcast/status.py +0 -0
  45. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/case_ignored_status.py +0 -0
  46. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/case_status.py +0 -0
  47. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/charts/axis_config.py +0 -0
  48. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/charts/bar_chart.py +0 -0
  49. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/charts/chart_alignment.py +0 -0
  50. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/charts/chart_color.py +0 -0
  51. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/charts/chart_configuration.py +0 -0
  52. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/charts/chart_data_serie.py +0 -0
  53. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/charts/chart_data_serie_type.py +0 -0
  54. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/charts/chart_data_type.py +0 -0
  55. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/charts/chart_render_technology.py +0 -0
  56. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/charts/column_chart.py +0 -0
  57. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/charts/html_chart.py +0 -0
  58. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/charts/line_chart.py +0 -0
  59. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/charts/map_center_type.py +0 -0
  60. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/charts/map_chart.py +0 -0
  61. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/charts/map_point.py +0 -0
  62. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/charts/number_chart.py +0 -0
  63. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/charts/pie_chart.py +0 -0
  64. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/charts/radar_chart.py +0 -0
  65. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/charts/radial_bar_chart.py +0 -0
  66. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/charts/scatter_chart.py +0 -0
  67. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/charts/scatter_serie.py +0 -0
  68. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/charts/scatter_serie_item.py +0 -0
  69. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/charts/table_chart.py +0 -0
  70. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/charts/table_header.py +0 -0
  71. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/charts/table_row.py +0 -0
  72. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/charts/timeline_chart.py +0 -0
  73. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/charts/timeline_serie.py +0 -0
  74. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/charts/timeline_serie_item.py +0 -0
  75. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/checkpoint.py +0 -0
  76. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/command_series_ticket.py +0 -0
  77. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/comment.py +0 -0
  78. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/custom_field.py +0 -0
  79. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/custom_report_page.py +0 -0
  80. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/destination_phone.py +0 -0
  81. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/device.py +0 -0
  82. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/event.py +0 -0
  83. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/exchange_service.py +0 -0
  84. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/function.py +0 -0
  85. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/geofence.py +0 -0
  86. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/geofence_category.py +0 -0
  87. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/last_message.py +0 -0
  88. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/message.py +0 -0
  89. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/modbus/__init__.py +0 -0
  90. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/modbus/config.py +0 -0
  91. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/modbus/parameter.py +0 -0
  92. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/modbus/schema.py +0 -0
  93. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/modbus/status.py +0 -0
  94. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/modbus/wait.py +0 -0
  95. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/notification_type.py +0 -0
  96. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/operation.py +0 -0
  97. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/operation_case_payload.py +0 -0
  98. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/operation_payload.py +0 -0
  99. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/operation_type.py +0 -0
  100. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/outbound_service.py +0 -0
  101. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/platform.py +0 -0
  102. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/position.py +0 -0
  103. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/presence_type.py +0 -0
  104. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/preset.py +0 -0
  105. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/report.py +0 -0
  106. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/report_col.py +0 -0
  107. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/report_configuration.py +0 -0
  108. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/report_data_type.py +0 -0
  109. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/report_format.py +0 -0
  110. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/report_header.py +0 -0
  111. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/report_page.py +0 -0
  112. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/report_row.py +0 -0
  113. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/request_type.py +0 -0
  114. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/sensor.py +0 -0
  115. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/sound_effect.py +0 -0
  116. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/static_position.py +0 -0
  117. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/telemetry/__init__.py +0 -0
  118. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/telemetry/assetmessage.py +0 -0
  119. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/telemetry/devicemessage.py +0 -0
  120. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/text_alignment.py +0 -0
  121. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/timezone.py +0 -0
  122. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/trigger.py +0 -0
  123. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/trigger_kind.py +0 -0
  124. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/user.py +0 -0
  125. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/waypoint.py +0 -0
  126. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/entities/weekday.py +0 -0
  127. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/helpers/__init__.py +0 -0
  128. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/helpers/color.py +0 -0
  129. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/lcl/__init__.py +0 -0
  130. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/lcl/core.py +0 -0
  131. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk/py.typed +0 -0
  132. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk.egg-info/dependency_links.txt +0 -0
  133. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk.egg-info/requires.txt +0 -0
  134. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/layrz_sdk.egg-info/top_level.txt +0 -0
  135. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/setup.cfg +0 -0
  136. {layrz_sdk-4.0.17 → layrz_sdk-4.0.19}/tests/test_lcl.py +0 -0
@@ -0,0 +1,50 @@
1
+ name: "Checks before merging"
2
+
3
+ on:
4
+ pull_request:
5
+ types:
6
+ - opened
7
+ - synchronize
8
+ - reopened
9
+ branches:
10
+ - '*'
11
+
12
+ jobs:
13
+ lint:
14
+ runs-on: ubuntu-latest
15
+ container:
16
+ image: ghcr.io/goldenm-software/python-builder:uv-3.13-x86
17
+ options: --user root
18
+ credentials:
19
+ username: ${{ github.repository_owner }}
20
+ password: ${{ secrets.GITHUB_TOKEN }}
21
+
22
+ steps:
23
+ - name: Checkout
24
+ uses: actions/checkout@v4
25
+
26
+ - name: Lint
27
+ run: |
28
+ uv sync --only-group dev
29
+ uv run ruff check
30
+ uv run mypy .
31
+
32
+ uniitest:
33
+ needs: lint
34
+ runs-on: ubuntu-latest
35
+ container:
36
+ image: ghcr.io/goldenm-software/python-builder:uv-3.13-x86
37
+ options: --user root
38
+ credentials:
39
+ username: ${{ github.repository_owner }}
40
+ password: ${{ secrets.GITHUB_TOKEN }}
41
+
42
+ steps:
43
+ - name: Checkout
44
+ uses: actions/checkout@v4
45
+
46
+ - name: Install dependencies
47
+ run: |
48
+ uv sync
49
+ uv run pytest ./tests/
50
+
@@ -0,0 +1,32 @@
1
+ name: "Deploy package"
2
+
3
+ on:
4
+ push:
5
+ branches: [ "main" ]
6
+
7
+ jobs:
8
+ build:
9
+ permissions:
10
+ id-token: write
11
+ contents: read
12
+ repository-projects: read
13
+ packages: read
14
+
15
+ runs-on: ubuntu-latest
16
+ container:
17
+ image: ghcr.io/goldenm-software/python-builder:uv-3.13-x86
18
+ options: --user root
19
+ credentials:
20
+ username: ${{ github.repository_owner }}
21
+ password: ${{ secrets.GITHUB_TOKEN }}
22
+
23
+ steps:
24
+ - name: Checkout
25
+ uses: actions/checkout@v4
26
+
27
+ - name: Build and upload
28
+ run: |
29
+ uv venv --python 3.13
30
+ uv sync --only-group dev
31
+ uv run python -m build
32
+ uv run python -m twine upload -u ${{ secrets.LAYRZ_PYPI_USERNAME }} -p ${{ secrets.LAYRZ_PYPI_PASSWORD }} dist/*
@@ -0,0 +1,19 @@
1
+ /dist
2
+ /build
3
+ /*.egg-info
4
+ /.pypirc
5
+ /test.py
6
+ /**/*.pyc
7
+ /.venv
8
+ /site
9
+
10
+ /**/*/__pycache__
11
+
12
+ tests.py
13
+ *.xlsx
14
+
15
+ .ruff_cache
16
+ .mypy_cache
17
+ .pytest_cache
18
+
19
+ .env
@@ -0,0 +1,9 @@
1
+ {
2
+ "recommendations": [
3
+ "ms-python.python",
4
+ "charliermarsh.ruff",
5
+ "ms-python.vscode-pylance",
6
+ "njpwerner.autodocstring",
7
+ "oderwat.indent-rainbow"
8
+ ]
9
+ }
@@ -0,0 +1,609 @@
1
+ # Changelog
2
+
3
+ ## 4.0.19
4
+
5
+ - Applied fixes on `Case` entity to correctly generate the `sequence` field when creating a new case.
6
+
7
+ ## 4.0.14
8
+
9
+ - Added decorators to measure function execution time.
10
+
11
+ ## 4.0.13
12
+
13
+ - Added `partition_number` field to `Asset` entity to represent the partition number assigned to the asset.
14
+ - Added `pk` and `trigger_id` fields to `BroadcastResult` entity to represent the broadcast result ID and trigger ID respectively.
15
+ - Updated `BroadcastResult` entity to include an `error` field to represent any error message if the broadcast failed.
16
+ - Updated `BroadcastStatus` enum to include `BAD_REQUEST` and `INTERNAL_ERROR` as new status values.
17
+ - Added `algorithm` field to `BroadcastResult` entity to represent the algorithm used for the broadcast, if any.
18
+
19
+ ## 4.0.12
20
+
21
+ - Added `search_time_delta` field to `Trigger` entity to define the search time delta of the trigger.
22
+ - Updated `TriggerKind` enum to include `NESTED` as a new trigger kind
23
+
24
+ ## 4.0.11
25
+
26
+ - Added protection of worksheets in `Report` entity when exporting to Microsoft Excel to enable cell locking.
27
+
28
+ ## 4.0.10
29
+
30
+ - Added support for lock cells in `ReportCol` entity and their export to Microsoft Excel.
31
+ - Added support for `list[Geofence]` on `Message` entity for presence in geofences.
32
+
33
+ ## 4.0.9
34
+
35
+ - Added validation for `destination_phones` field in `Operation` entity to ensure it is a list of `DestinationPhone` objects.
36
+ - Updated `OperationPayload` entity to use `DestinationPhone` instead of a list of strings for `destinations`.
37
+
38
+
39
+ ## 4.0.8
40
+
41
+ - Allowed `int | str | None` for `account_id` in `Operation` and `OperationPayload` entities.
42
+
43
+ ## 4.0.7
44
+
45
+ - Added validation for `headers` field in `Operation` entity to ensure it is a list of dictionaries.
46
+ - Added validation for `reception_emails` field in `Operation` entity to ensure it is a list of strings or a single string.
47
+
48
+ ## 4.0.6
49
+
50
+ - Added validation for `manual_action_fields` in `Trigger` entity to ensure it is a list of dictionaries.
51
+ - Added validation for `priority` field in `Trigger` entity to ensure it is an integer
52
+
53
+ ## 4.0.5
54
+
55
+ - Missing doc
56
+
57
+ ## 4.0.4
58
+
59
+ - Fixes on `is_primary` field in `Device` entity to ensure it is a boolean value.
60
+
61
+ ## 4.0.3
62
+
63
+ - Added validation for `static_position` in `Asset` entity to ensure it can accept a dictionary representation of `StaticPosition`.
64
+
65
+ ## 4.0.2
66
+
67
+ - Missing doc
68
+
69
+ ## 4.0.1
70
+
71
+ - Missing doc
72
+
73
+ ## 4.0.0
74
+
75
+ - Removed all aliases to be more accurate and similar to the Dart equivalent on [`layrz_models`](https://pub.dev/packages/layrz_models).
76
+
77
+ ## 3.1.50
78
+
79
+ - Added `is_fixed` field to `CustomField` entity to indicate if the custom field is fixed or not.
80
+ - Updated `CustomField` entity to include `pk` field as an alias for `id`.
81
+
82
+ ## 3.1.49
83
+
84
+ - New models `AtsExitExecutionHistory` and `AtsPossibleExit` for Ats exits add formula field to `Sensor`.
85
+ ## 3.1.48
86
+
87
+ - Moved `DestinationPhone` entity to its own file, and renamed from `TwilioHostPhone` to `DestinationPhone`.
88
+ - Updated `Operation` entity to use `DestinationPhone` instead of a `list[str]` for `destination_phones`.
89
+
90
+ ## 3.1.47
91
+
92
+ - Changed datatype of `destinations` field in `OperationPayload` entity from `list[str]` to `list[TwilioHostPhone]`.
93
+
94
+ ## 3.1.46
95
+
96
+ - Added `AssetContact` entity to represent contacts of an asset.
97
+ - Updated `Asset` entity to use `AssetContact` instead of a list of strings for contacts.
98
+ - Added `contacts` field to `Asset` entity to represent the list of contacts associated with the asset.
99
+
100
+ ## 3.1.45
101
+
102
+ - Updates over `Checkpoint` and `Waypoint` models
103
+
104
+ ## 3.1.44
105
+
106
+ - Removed `asset_id` from `Checkpoint` entity, now using `name` field to represent the checkpoint name.
107
+
108
+ ## 3.1.43
109
+
110
+ - Fixes
111
+
112
+ ## 3.1.42
113
+
114
+ - New models `CheckpointRef` and `WaypointRef` to represent checkpoints with waypoints.
115
+
116
+ ## 3.1.41
117
+
118
+ - Added `owner_id` field to `Preset` entity to represent the owner of the preset.
119
+
120
+ ## 3.1.40
121
+
122
+ - Added `Preset` entity to represent presets with a name, valid before date, and comment.
123
+
124
+ ## 3.1.39
125
+
126
+ - Added `ExchangeService` entity to represent outbound services with credentials.
127
+ - New `CommandSeriesTicket` model
128
+ - Added more information on `OutboundService` model
129
+
130
+ ## 3.1.38
131
+
132
+ - Added `owner_id` field to `Asset`, `Action`, and `Trigger` models to represent the owner of the entity.
133
+
134
+ ## 3.1.37
135
+
136
+ - Fixes on `Timezone` model, added `offset` field to represent the timezone offset in seconds from UTC.
137
+ - Added some fields on `Operation` model
138
+
139
+ ## 3.1.36
140
+
141
+ - Updated enum of `OperationType`
142
+
143
+ ## 3.1.35
144
+
145
+ - Added models for operations handling
146
+
147
+ ## 3.1.34
148
+
149
+ - Fixes on data types onf `Action` model
150
+
151
+ ## 3.1.33
152
+
153
+ - New `Action` model
154
+ - New `ActionKind`, `ActionSubKind`, `GeofenceCategory` and `ActionGeofenceOwnership` enums
155
+
156
+ ## 3.1.32
157
+
158
+ - New `AtsREception` model
159
+
160
+ ## 3.1.31
161
+
162
+ - Expanded `Trigger` model with new fields (Almost closed to the Dart equivalent on [`layrz_models`](https://pub.dev/packages/layrz_models))
163
+ - Added `Weekday` enum to represent days of the week
164
+ - Added `TriggerKind`, `TriggerGeofenceKind`, `TriggerCaseKind`, and `TriggerCommentPattern` enums to represent different trigger types and patterns
165
+ - Almost removed all aliases from the models
166
+
167
+ ## 3.1.30
168
+
169
+ - New `Function` model
170
+
171
+ ## 3.1.29
172
+
173
+ - Serialization changes
174
+
175
+ ## 3.1.28
176
+
177
+ - Added `BroadcastPayload` and `BroadcastService` models
178
+
179
+ ## 3.1.27
180
+
181
+ - Fixes on `ChartDataSerieType` that can have a `None` value, removed str inheritance to avoid issues
182
+
183
+ ## 3.1.26
184
+
185
+ - Reverted StrEnum in favor to str + Enum due to compatibility issues
186
+
187
+ ## 3.1.25
188
+
189
+ - Added `AssetConstants` class to hold constants related to assets on sensors, triggers and functions.
190
+
191
+ ## 3.1.24
192
+ ## 3.1.23
193
+ ## 3.1.22
194
+
195
+ - Backwards compatibility for `StrEnum` in Python 3.11 and below, now using `layrz_sdk.backwards.StrEnum` for versions below 3.11.
196
+
197
+ ## 3.1.21
198
+
199
+ - Moved all enums to `StrEnum` and added compatibility for Python 3.11 and below.
200
+
201
+ ## 3.1.20
202
+
203
+ - Fixed condition of `StrEnum` on Python 3.11, for versions below 3.11 it will use `strenum.StrEnum` instead of `enum.StrEnum`
204
+
205
+ ## 3.1.19
206
+
207
+ - Added serializers for messages
208
+
209
+ ## 3.1.18
210
+
211
+ - Fixes
212
+
213
+ ## 3.1.17
214
+
215
+ - Fixes
216
+
217
+ ## 3.1.16
218
+
219
+ - Added `primary_id` into `Asset`
220
+
221
+ ## 3.1.15
222
+
223
+ - Added some parameters on `Asset` and `Device` classes
224
+ - Added `AssetMessage` and `DeviceMessage` classes to handle messages related to assets and devices
225
+
226
+ ## 3.1.14
227
+
228
+ - Some changes related to the `Case` entity
229
+
230
+ ## 3.1.12
231
+
232
+ - Adjustment of all typings
233
+
234
+ ## 3.1.11
235
+
236
+ - Fixes on data casting in `Message` class
237
+
238
+ ## 3.1.10
239
+
240
+ - Updated docstrings to provide more information about types and usage
241
+
242
+ ## 3.1.9
243
+
244
+ - Changed `json` to `parsed` on `BroadcastResponse` and `BroadcastRequest` to avoid confusion with the `json` property from `pydantic.BaseModel`
245
+
246
+ ## 3.1.8
247
+
248
+ - Replaced `str` in favor of using `Path` object to manage paths on `Report` export methods
249
+
250
+ ## 3.1.7
251
+
252
+ - Removed validation of asset type `SINGLE`
253
+
254
+ ## 3.1.6
255
+
256
+ - Fixes on model validate on `Asset` class
257
+
258
+ ## 3.1.5
259
+
260
+ - Changed `width` on `ReportHeader` from `int` to `float` due to backwards compatibility
261
+
262
+ ## 3.1.4
263
+
264
+ - Fixed iteration searching for the primary device on `Asset` class
265
+
266
+ ## 3.1.3
267
+
268
+ - Fixes on `Asset` entity validation, found by @simonjrojas!
269
+
270
+ ## 3.1.2
271
+
272
+ - Set as optional the `asset_type` argument in `Asset` class
273
+
274
+ ## 3.1.1
275
+
276
+ - Small fixes on some models to backwards compatibility
277
+
278
+ ## 3.1.0
279
+
280
+ - Migrated all models to Pydantic
281
+ - Removed models `Transaction`.
282
+ - Added `mypy` to the project to enforce type checking
283
+ - Migrated from `uniitest` to `pytest` to the project to enforce unit testing
284
+
285
+ ## 3.0.14
286
+
287
+ - Fixes on `GET_CUSTOM_FIELD` LCL function, now accepts a default value as the second argument (Fallback as '')
288
+
289
+ ## 3.0.13
290
+
291
+ - Added `LastMessage` entity to be used in `Trigger`s
292
+
293
+ ## 3.0.12
294
+
295
+ - Moved `Geofence` model from `checkpoints` to `general`
296
+ - Added `PresenceType` enum to be used in `Event` model
297
+
298
+ ## 3.0.11
299
+
300
+ - Added way to standarize the `int` and `float` arguments to `float`. Allowing comparison between `int` and `float` values in LCL formulas
301
+
302
+ ## 3.0.10
303
+
304
+ - Removed Self type annotation from all classes
305
+
306
+ ## 3.0.9
307
+
308
+ - Added different return data of Report when password is set
309
+
310
+ ## 3.0.8
311
+
312
+ - New linter and formatter using ruff
313
+ - Added typings on all classes and functions available
314
+ - New Report export format PDF (Not implemented yet)
315
+ - Added new way to encrypt .xslx files directly using the `Report` class
316
+
317
+ ## 3.0.7
318
+
319
+ - Added the value of `AssetOperationMode.ZONE`
320
+ - Added a check for `Asset.operation_mode == ASSETMULTIPLE` while savind the list of child's
321
+ - Clarified the deprecation of `ReportRow.height`
322
+
323
+ ## 3.0.6
324
+
325
+ - Changed print in `LineChart` to a `log.warning` and `log.fatal` in case of error
326
+
327
+ ## 3.0.3
328
+
329
+ - Implemented new chart rendering library `syncfusion_flutter_charts` for Flutter.
330
+ - Changed rendering method for `LineChart`, now you should provide the `technology` to select the rendering library.
331
+
332
+ ## 3.0.2
333
+
334
+ - Fixed issue with `IF()` LCL function, now only validates the nullability of the first argument.
335
+ - Added new `VERSION()` LCL Function to get the current version of the package
336
+
337
+ ## 3.0.1
338
+
339
+ - Added None validation on every LCL function, when any of the arguments is None, the function will return None
340
+ - Added unit tests for all LCL functions
341
+
342
+ ## 3.0.0
343
+
344
+ - Removed shared namespace to improve compatibility with other packages
345
+
346
+ ## 2.2.4
347
+
348
+ - Defined new class `ReportConfiguration` to handle the configuration of the report in Python scripts
349
+
350
+ ## 2.2.3
351
+
352
+ - Property `text_color` deprectated in `ReportCol`, replaced by a luminance-based color using the background color
353
+ - Property `text_color` deprectated in `ReportHeader`, replaced by a luminance-based color using the background color
354
+ - Property `width` deprectated in `ReportHeader`, replaced by the function `autofit()` to automatically fit the header width
355
+ - New entity `CustomReportPage` that receives a custom builder function to build the page
356
+ - Property `export_format` deprecated in `Report`, replaced to an argument of the function `export()`
357
+
358
+ ## 2.2.2
359
+
360
+ - Updated `AssetOperationMode` to support `STATIC` and removal of `FAILOVER` mode
361
+
362
+ ## 2.2.1
363
+
364
+ - Bug fixes related to removing __ from all classes
365
+
366
+ ## 2.2.0
367
+
368
+ - Removed support to Python 3.12 due to a shared namespace issue.
369
+ - Reorganized classes to better support.
370
+ - Added typings to all classes and functions.
371
+
372
+ ## 2.1.5
373
+
374
+ - Added declarative typing on all LCL functions
375
+ - Added support for timezone in `UNIX_TO_STR` LCL function
376
+
377
+ ## 2.1.3
378
+
379
+ - Changed build mode to pyproject.toml
380
+ - Updated `LcLCore.perform()` function to receive additional globals and locals in their arguments
381
+
382
+ ## v2.1.2
383
+
384
+ - Add UNIX_TO_STR LCL function
385
+
386
+ ## v2.1.1
387
+
388
+ - Added `compact` in the json return format in reports
389
+
390
+ ## v2.1.0
391
+
392
+ - Add bold format option to Col class
393
+ - Add freeze header option to Page class
394
+
395
+ ## v2.0.1
396
+
397
+ - Fixes on package namespace
398
+
399
+ ## v2.0.0
400
+
401
+ - Deprecated `lcl.core` module
402
+ - Changed `layrzsdk` to `layrz.sdk` package (With unified Layrz namespace)
403
+
404
+ ## v1.4.5
405
+
406
+ - Added CaseIgnoredStatus to init file
407
+
408
+ ## v1.4.4
409
+
410
+ - Added CaseIgnoredStatus to Case entity
411
+
412
+ ## v1.4.3
413
+
414
+ - Added new ChartType: TableChart and NumberChart
415
+ - Starting to replace documentation format from unstructured to a structured format
416
+
417
+ ## v1.4.2
418
+
419
+ - Fix, added SUBSTRING LCL to global functions
420
+
421
+ ## v1.4.1
422
+
423
+ - Fixed LineChart xAxis Datetime conversion for CanvasJS, now will multiply the timestamp by 1000 to use milliseconds
424
+
425
+ ## v1.4.0
426
+
427
+ - Added support for Flutter `graphic` library
428
+ - LineChart
429
+ - AreaChart (Replaced previous AreaChart to a temporal extend of LineChart)
430
+ - BarChart
431
+ - ColumnChart
432
+ - PieChart
433
+ - MapChart
434
+ - ScatterChart
435
+ - RadialBarChart
436
+
437
+ - Future deprecations:
438
+ - HTMLChart
439
+ - TimelineChart
440
+ - RadarChart
441
+
442
+ ## v1.3.9
443
+
444
+ - Internal changes related to GitLab CI automation
445
+
446
+ ## v1.3.8
447
+
448
+ - Added SUBSTRING LCL function
449
+
450
+ ## v.1.3.7
451
+
452
+ - Added sequence in cases
453
+
454
+ ## v1.3.6
455
+
456
+ - Added new Map Chart
457
+ - Added required entity MapPoint
458
+ - Added required enum MapCenterType
459
+ - Added new HTML Chart
460
+
461
+ ## v1.3.5
462
+
463
+ - Bug fix related to formula perform, added PRIMARY_DEVICE to simulation environment
464
+
465
+ ## v1.3.4
466
+
467
+ - Added Transaction entity for REPCOM reports
468
+
469
+ ## v1.3.3
470
+
471
+ - Added PRIMARY_DEVICE() function to Layrz Compute Language
472
+
473
+ ## v1.3.2
474
+
475
+ - Updated styles of charts return object to ApexCharts or CanvasJS
476
+ - Replaced all .rst files to .md files
477
+
478
+ ## v1.3.1
479
+
480
+ - Removed markerSize (in CanvasJS) for dashed series
481
+
482
+ ## v1.3.0
483
+
484
+ - Added support for CanvasJS Javascript Library
485
+ - Deprecated to_apexcharts property in charts.
486
+ - New method render() in charts with support for multiple Javascript rendering library
487
+ - Added color helpers in layrzsdk.helpers
488
+
489
+ ## v1.2.6
490
+
491
+ - Removed dataLabels in almost all charts (Except Pie and RadialBar)
492
+
493
+ ## v1.2.5
494
+
495
+ - Optimizations for Javascript renderer
496
+
497
+ ## v1.2.4
498
+
499
+ - Added dashed attribute to ChartDataSerie
500
+ - Added the Possibility to mix charts, only available for:
501
+ - LineChart
502
+ - AreaChart
503
+ - ColumnChart
504
+ - ScatterChart (Only as serie, not as main chart)
505
+
506
+ ## v1.2.3
507
+
508
+ - Added new value in BroadcastStatus
509
+
510
+ ## v1.2.2
511
+
512
+ - Updated ReportCol entity to set new default values
513
+ - New entity ReportDataType
514
+ - Possibility to export directly to the Report class
515
+ - Re-organized entities/ folder
516
+ - Added Broadcasts entities
517
+
518
+ ## v1.2.1
519
+
520
+ - Added Report Col entity
521
+
522
+ ## v1.2.0
523
+
524
+ - Added reports entities
525
+
526
+ ## v1.1.4
527
+
528
+ - Bug fixes
529
+
530
+ ## v1.1.3
531
+
532
+ - Bug fixes
533
+
534
+ ## v1.1.2
535
+
536
+ - Bug fixes
537
+
538
+ ## v1.1.1
539
+
540
+ - Bug fixes
541
+
542
+ ## v1.1.0
543
+
544
+ - Reorganized files
545
+ - Added new Charts entities
546
+
547
+ ## v1.0.14
548
+
549
+ - Added CONTAINS, STARTS_WITH, ENDS_WITH functions to the Layrz Computed Language
550
+
551
+ ## v1.0.13
552
+
553
+ - Fixed missing import into `layrzsdk.entities.__init__.py`
554
+
555
+ ## v1.0.12
556
+
557
+ - Added Geofence, Comment, Waypoint and Checkpoint entities
558
+
559
+ ## v1.0.11
560
+
561
+ - Added User, Comment and Case entities
562
+
563
+ ## v1.0.10
564
+
565
+ - Fixes
566
+
567
+ ## v1.0.9
568
+
569
+ - Added Event and Trigger entities
570
+ - Renamed file `mesage.py` to `message.py`
571
+
572
+ ## v1.0.8
573
+
574
+ - Added title getter of all charts entities
575
+
576
+ ## v1.0.7
577
+
578
+ - Added PieChart, BarChart, and RadialBarChart entities
579
+
580
+ ## v1.0.6
581
+
582
+ - Fixed STING to STRING bug in ChartDataType enum
583
+
584
+ ## v1.0.5
585
+
586
+ - Bug fixes
587
+
588
+ ## v1.0.4
589
+
590
+ - Added data_type argument of ChartDataSerie
591
+
592
+ ## v1.0.3
593
+
594
+ - Added Chart configuration entity
595
+
596
+ ## v1.0.2
597
+
598
+ - Added entities for Range Charts:
599
+ - Line Charts
600
+ - Area Charts
601
+ - Column Charts
602
+
603
+ ## v1.0.1
604
+
605
+ - Added entities for Sensors and Triggers
606
+
607
+ ## v1.0.0
608
+
609
+ - Initial release