layrz-sdk 3.0.9__py3-none-any.whl → 3.0.11__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.

Potentially problematic release.


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

Files changed (55) hide show
  1. layrz_sdk/entities/broadcasts/request.py +10 -9
  2. layrz_sdk/entities/broadcasts/response.py +10 -9
  3. layrz_sdk/entities/broadcasts/result.py +13 -11
  4. layrz_sdk/entities/broadcasts/service.py +8 -9
  5. layrz_sdk/entities/broadcasts/status.py +10 -9
  6. layrz_sdk/entities/cases/case.py +33 -30
  7. layrz_sdk/entities/cases/comment.py +10 -10
  8. layrz_sdk/entities/cases/trigger.py +9 -10
  9. layrz_sdk/entities/charts/alignment.py +9 -8
  10. layrz_sdk/entities/charts/bar.py +31 -45
  11. layrz_sdk/entities/charts/color.py +12 -10
  12. layrz_sdk/entities/charts/column.py +30 -49
  13. layrz_sdk/entities/charts/configuration.py +11 -12
  14. layrz_sdk/entities/charts/data_type.py +9 -8
  15. layrz_sdk/entities/charts/exceptions.py +11 -12
  16. layrz_sdk/entities/charts/html.py +6 -5
  17. layrz_sdk/entities/charts/line.py +52 -46
  18. layrz_sdk/entities/charts/map.py +23 -19
  19. layrz_sdk/entities/charts/number.py +6 -5
  20. layrz_sdk/entities/charts/pie.py +27 -34
  21. layrz_sdk/entities/charts/radar.py +14 -34
  22. layrz_sdk/entities/charts/radial_bar.py +27 -34
  23. layrz_sdk/entities/charts/render_technology.py +9 -8
  24. layrz_sdk/entities/charts/scatter.py +52 -53
  25. layrz_sdk/entities/charts/serie.py +4 -3
  26. layrz_sdk/entities/charts/serie_type.py +9 -8
  27. layrz_sdk/entities/charts/table.py +6 -6
  28. layrz_sdk/entities/charts/timeline.py +21 -32
  29. layrz_sdk/entities/checkpoints/checkpoint.py +15 -12
  30. layrz_sdk/entities/checkpoints/geofence.py +9 -10
  31. layrz_sdk/entities/checkpoints/waypoint.py +14 -12
  32. layrz_sdk/entities/events/event.py +15 -13
  33. layrz_sdk/entities/formatting/text_align.py +10 -9
  34. layrz_sdk/entities/general/asset.py +16 -13
  35. layrz_sdk/entities/general/asset_operation_mode.py +9 -8
  36. layrz_sdk/entities/general/custom_field.py +9 -10
  37. layrz_sdk/entities/general/device.py +13 -12
  38. layrz_sdk/entities/general/sensor.py +9 -10
  39. layrz_sdk/entities/general/user.py +9 -10
  40. layrz_sdk/entities/repcom/transaction.py +4 -4
  41. layrz_sdk/entities/reports/col.py +17 -15
  42. layrz_sdk/entities/reports/format.py +3 -4
  43. layrz_sdk/entities/reports/header.py +4 -5
  44. layrz_sdk/entities/reports/page.py +12 -11
  45. layrz_sdk/entities/reports/report.py +14 -14
  46. layrz_sdk/entities/reports/row.py +10 -10
  47. layrz_sdk/entities/telemetry/message.py +5 -4
  48. layrz_sdk/entities/telemetry/position.py +13 -12
  49. layrz_sdk/lcl/core.py +93 -65
  50. {layrz_sdk-3.0.9.dist-info → layrz_sdk-3.0.11.dist-info}/METADATA +2 -1
  51. layrz_sdk-3.0.11.dist-info/RECORD +69 -0
  52. {layrz_sdk-3.0.9.dist-info → layrz_sdk-3.0.11.dist-info}/WHEEL +1 -1
  53. layrz_sdk-3.0.9.dist-info/RECORD +0 -69
  54. {layrz_sdk-3.0.9.dist-info → layrz_sdk-3.0.11.dist-info}/LICENSE +0 -0
  55. {layrz_sdk-3.0.9.dist-info → layrz_sdk-3.0.11.dist-info}/top_level.txt +0 -0
@@ -1,5 +1,6 @@
1
- """ Broadcast Result Request data """
2
- from typing import Dict, List, Self
1
+ """Broadcast Result Request data"""
2
+
3
+ from typing import Dict, List
3
4
 
4
5
 
5
6
  class BroadcastRequest:
@@ -11,19 +12,19 @@ class BroadcastRequest:
11
12
  - raw : Raw data
12
13
  """
13
14
 
14
- def __init__(self: Self, json: Dict | List, raw: str) -> None:
15
+ def __init__(self, json: Dict | List, raw: str) -> None:
15
16
  self.json = json
16
17
  self.raw = raw
17
18
 
18
19
  @property
19
- def _readable(self: Self) -> str | None | bool:
20
- """ Readable """
20
+ def _readable(self) -> str | None | bool:
21
+ """Readable"""
21
22
  return f'BroadcastRequest(json={self.json}, raw={self.raw})'
22
23
 
23
- def __repr__(self: Self) -> str | None | bool:
24
- """ Readable property """
24
+ def __repr__(self) -> str | None | bool:
25
+ """Readable property"""
25
26
  return self._readable
26
27
 
27
- def __str__(self: Self) -> str | None | bool:
28
- """ Readable property """
28
+ def __str__(self) -> str | None | bool:
29
+ """Readable property"""
29
30
  return self._readable
@@ -1,5 +1,6 @@
1
- """ Broadcast Result Response data """
2
- from typing import Dict, List, Self
1
+ """Broadcast Result Response data"""
2
+
3
+ from typing import Dict, List
3
4
 
4
5
 
5
6
  class BroadcastResponse:
@@ -11,19 +12,19 @@ class BroadcastResponse:
11
12
  - raw (str): Raw data
12
13
  """
13
14
 
14
- def __init__(self: Self, json: Dict | List, raw: str) -> str | None | bool:
15
+ def __init__(self, json: Dict | List, raw: str) -> str | None | bool:
15
16
  self.json = json
16
17
  self.raw = raw
17
18
 
18
19
  @property
19
- def _readable(self: Self) -> str | None | bool:
20
- """ Readable """
20
+ def _readable(self) -> str | None | bool:
21
+ """Readable"""
21
22
  return f'BroadcastResponse(json={self.json}, raw={self.raw})'
22
23
 
23
- def __repr__(self: Self) -> str | None | bool:
24
- """ Readable property """
24
+ def __repr__(self) -> str | None | bool:
25
+ """Readable property"""
25
26
  return self._readable
26
27
 
27
- def __str__(self: Self) -> str | None | bool:
28
- """ Readable property """
28
+ def __str__(self) -> str | None | bool:
29
+ """Readable property"""
29
30
  return self._readable
@@ -1,6 +1,6 @@
1
- """ Broadcast result """
1
+ """Broadcast result"""
2
+
2
3
  from datetime import datetime
3
- from typing import Self
4
4
 
5
5
  from .request import BroadcastRequest
6
6
  from .response import BroadcastResponse
@@ -21,7 +21,7 @@ class BroadcastResult:
21
21
  """
22
22
 
23
23
  def __init__(
24
- self: Self,
24
+ self,
25
25
  service_id: int,
26
26
  asset_id: int,
27
27
  status: BroadcastStatus,
@@ -37,15 +37,17 @@ class BroadcastResult:
37
37
  self.submitted_at = submitted_at
38
38
 
39
39
  @property
40
- def _readable(self: Self) -> str | None | bool:
41
- """ Readable """
42
- return f'BroadcastResult(service_id={self.service_id}, asset_id={self.asset_id}, status={self.status}, ' +\
43
- f'request={self.request}, response={self.response}, submitted_at={self.submitted_at})'
40
+ def _readable(self) -> str | None | bool:
41
+ """Readable"""
42
+ return (
43
+ f'BroadcastResult(service_id={self.service_id}, asset_id={self.asset_id}, status={self.status}, '
44
+ + f'request={self.request}, response={self.response}, submitted_at={self.submitted_at})'
45
+ )
44
46
 
45
- def __repr__(self: Self) -> str | None | bool:
46
- """ Readable property """
47
+ def __repr__(self) -> str | None | bool:
48
+ """Readable property"""
47
49
  return self._readable
48
50
 
49
- def __str__(self: Self) -> str | None | bool:
50
- """ Readable property """
51
+ def __str__(self) -> str | None | bool:
52
+ """Readable property"""
51
53
  return self._readable
@@ -1,5 +1,4 @@
1
- """ Service entity """
2
- from typing import Self
1
+ """Service entity"""
3
2
 
4
3
 
5
4
  class OutboundService:
@@ -11,19 +10,19 @@ class OutboundService:
11
10
  - name : Service Name
12
11
  """
13
12
 
14
- def __init__(self: Self, pk: int, name: str) -> str | None | bool:
13
+ def __init__(self, pk: int, name: str) -> str | None | bool:
15
14
  self.pk = pk
16
15
  self.name = name
17
16
 
18
17
  @property
19
- def _readable(self: Self) -> str | None | bool:
20
- """ Readable """
18
+ def _readable(self) -> str | None | bool:
19
+ """Readable"""
21
20
  return f'OutboundService(pk={self.pk}, name={self.name})'
22
21
 
23
- def __repr__(self: Self) -> str | None | bool:
24
- """ Readable property """
22
+ def __repr__(self) -> str | None | bool:
23
+ """Readable property"""
25
24
  return self._readable
26
25
 
27
- def __str__(self: Self) -> str | None | bool:
28
- """ Readable property """
26
+ def __str__(self) -> str | None | bool:
27
+ """Readable property"""
29
28
  return self._readable
@@ -1,10 +1,11 @@
1
- """ Broadcast result Status """
1
+ """Broadcast result Status"""
2
+
2
3
  from enum import Enum
3
- from typing import Self
4
4
 
5
5
 
6
6
  class BroadcastStatus(Enum):
7
- """ Broadcast result status """
7
+ """Broadcast result status"""
8
+
8
9
  OK = 'OK'
9
10
  BADREQUEST = 'BADREQUEST'
10
11
  INTERNALERROR = 'INTERNALERROR'
@@ -13,14 +14,14 @@ class BroadcastStatus(Enum):
13
14
  DISCONNECTED = 'DISCONNECTED'
14
15
 
15
16
  @property
16
- def _readable(self: Self) -> str | None | bool:
17
- """ Readable """
17
+ def _readable(self) -> str | None | bool:
18
+ """Readable"""
18
19
  return f'BroadcastStatus.{self.value}'
19
20
 
20
- def __str__(self: Self) -> str | None | bool:
21
- """ Readable property """
21
+ def __str__(self) -> str | None | bool:
22
+ """Readable property"""
22
23
  return self._readable
23
24
 
24
- def __repr__(self: Self) -> str | None | bool:
25
- """ Readable property """
25
+ def __repr__(self) -> str | None | bool:
26
+ """Readable property"""
26
27
  return self._readable
@@ -1,29 +1,29 @@
1
- """ Events entitites """
1
+ """Events entitites"""
2
2
 
3
3
  from datetime import datetime
4
4
  from enum import Enum
5
- from typing import Self
6
5
 
7
6
  from .trigger import Trigger
8
7
 
9
8
 
10
9
  class CaseStatus(Enum):
11
- """ Case status enum """
10
+ """Case status enum"""
11
+
12
12
  PENDING = 'PENDING'
13
13
  FOLLOWED = 'FOLLOWED'
14
14
  CLOSED = 'CLOSED'
15
15
 
16
16
  @property
17
- def _readable(self: Self) -> str | None | bool:
18
- """ Readable """
17
+ def _readable(self) -> str | None | bool:
18
+ """Readable"""
19
19
  return f'BroadcastStatus.{self.value}'
20
20
 
21
- def __str__(self: Self) -> str | None | bool:
22
- """ Readable property """
21
+ def __str__(self) -> str | None | bool:
22
+ """Readable property"""
23
23
  return self._readable
24
24
 
25
- def __repr__(self: Self) -> str | None | bool:
26
- """ Readable property """
25
+ def __repr__(self) -> str | None | bool:
26
+ """Readable property"""
27
27
  return self._readable
28
28
 
29
29
 
@@ -31,22 +31,23 @@ class CaseIgnoredStatus(Enum):
31
31
  """
32
32
  Case ignore status, will define what kind ignore happened.
33
33
  """
34
+
34
35
  NORMAL = 'NORMAL'
35
36
  IGNORED = 'IGNORED'
36
37
  PRESSET = 'PRESSET'
37
38
  AUTO = 'AUTO'
38
39
 
39
40
  @property
40
- def _readable(self: Self) -> str | None | bool:
41
- """ Readable """
41
+ def _readable(self) -> str | None | bool:
42
+ """Readable"""
42
43
  return f'BroadcastStatus.{self.value}'
43
44
 
44
- def __str__(self: Self) -> str | None | bool:
45
- """ Readable property """
45
+ def __str__(self) -> str | None | bool:
46
+ """Readable property"""
46
47
  return self._readable
47
48
 
48
- def __repr__(self: Self) -> str | None | bool:
49
- """ Readable property """
49
+ def __repr__(self) -> str | None | bool:
50
+ """Readable property"""
50
51
  return self._readable
51
52
 
52
53
 
@@ -67,7 +68,7 @@ class Case:
67
68
  """
68
69
 
69
70
  def __init__(
70
- self: Self,
71
+ self,
71
72
  pk: int,
72
73
  trigger: Trigger,
73
74
  asset_id: int,
@@ -78,7 +79,7 @@ class Case:
78
79
  status: CaseStatus = CaseStatus.CLOSED,
79
80
  ignored_status: CaseIgnoredStatus = CaseIgnoredStatus.NORMAL,
80
81
  ) -> None:
81
- """ Constructor """
82
+ """Constructor"""
82
83
  self.pk = pk
83
84
  self.trigger = trigger
84
85
  self.asset_id = asset_id
@@ -89,29 +90,31 @@ class Case:
89
90
  self._sequence = sequence
90
91
  self.ignored_status = ignored_status
91
92
 
92
- def get_sequence(self: Self) -> str | None | bool:
93
- """ Sequence getter """
93
+ def get_sequence(self) -> str | None | bool:
94
+ """Sequence getter"""
94
95
  if self._sequence is not None:
95
96
  return f'{self.trigger.code}/{self._sequence}'
96
97
  else:
97
98
  return f'GENERIC/{self.pk}'
98
99
 
99
- def set_sequence(self: Self, sequence: int) -> None:
100
- """ Sequence setter """
100
+ def set_sequence(self, sequence: int) -> None:
101
+ """Sequence setter"""
101
102
  self._sequence = sequence
102
103
 
103
104
  sequence = property(get_sequence, set_sequence)
104
105
 
105
106
  @property
106
- def _readable(self: Self) -> str | None | bool:
107
- """ Readable """
108
- return f'Case(pk={self.pk}, trigger={self.trigger}, asset_id={self.asset_id}, ' +\
109
- f'comments={len(self.comments)}, opened_at={self.opened_at}, closed_at={self.closed_at})'
110
-
111
- def __str__(self: Self) -> str | None | bool:
112
- """ Readable property """
107
+ def _readable(self) -> str | None | bool:
108
+ """Readable"""
109
+ return (
110
+ f'Case(pk={self.pk}, trigger={self.trigger}, asset_id={self.asset_id}, '
111
+ + f'comments={len(self.comments)}, opened_at={self.opened_at}, closed_at={self.closed_at})'
112
+ )
113
+
114
+ def __str__(self) -> str | None | bool:
115
+ """Readable property"""
113
116
  return self._readable
114
117
 
115
- def __repr__(self: Self) -> str | None | bool:
116
- """ Readable property """
118
+ def __repr__(self) -> str | None | bool:
119
+ """Readable property"""
117
120
  return self._readable
@@ -1,6 +1,6 @@
1
- """ Comment entity """
1
+ """Comment entity"""
2
+
2
3
  from datetime import datetime
3
- from typing import Self
4
4
 
5
5
  from layrz_sdk.entities.general.user import User
6
6
 
@@ -16,22 +16,22 @@ class Comment:
16
16
  - submitted_at : Date of comment submission
17
17
  """
18
18
 
19
- def __init__(self: Self, pk: int, content: str, user: User, submitted_at: datetime) -> None:
20
- """ Constructor """
19
+ def __init__(self, pk: int, content: str, user: User, submitted_at: datetime) -> None:
20
+ """Constructor"""
21
21
  self.pk = pk
22
22
  self.content = content
23
23
  self.user = user
24
24
  self.submitted_at = submitted_at
25
25
 
26
26
  @property
27
- def _readable(self: Self) -> str | None | bool:
28
- """ Readable """
27
+ def _readable(self) -> str | None | bool:
28
+ """Readable"""
29
29
  return f'Comment(pk={self.pk}, content="{self.content}", user={self.user}, submitted_at={self.submitted_at})'
30
30
 
31
- def __str__(self: Self) -> str | None | bool:
32
- """ Readable property """
31
+ def __str__(self) -> str | None | bool:
32
+ """Readable property"""
33
33
  return self._readable
34
34
 
35
- def __repr__(self: Self) -> str | None | bool:
36
- """ Readable property """
35
+ def __repr__(self) -> str | None | bool:
36
+ """Readable property"""
37
37
  return self._readable
@@ -1,5 +1,4 @@
1
- """ Trigger entity """
2
- from typing import Self
1
+ """Trigger entity"""
3
2
 
4
3
 
5
4
  class Trigger:
@@ -12,21 +11,21 @@ class Trigger:
12
11
  - code : Trigger code
13
12
  """
14
13
 
15
- def __init__(self: Self, pk: int, name: str, code: str) -> None:
16
- """ Constructor """
14
+ def __init__(self, pk: int, name: str, code: str) -> None:
15
+ """Constructor"""
17
16
  self.pk = pk
18
17
  self.name = name
19
18
  self.code = code
20
19
 
21
20
  @property
22
- def _readable(self: Self) -> str | None | bool:
23
- """ Readable """
21
+ def _readable(self) -> str | None | bool:
22
+ """Readable"""
24
23
  return f'Trigger(pk={self.pk}, name="{self.name}", code="{self.code}")'
25
24
 
26
- def __str__(self: Self) -> str | None | bool:
27
- """ Readable property """
25
+ def __str__(self) -> str | None | bool:
26
+ """Readable property"""
28
27
  return self._readable
29
28
 
30
- def __repr__(self: Self) -> str | None | bool:
31
- """ Readable property """
29
+ def __repr__(self) -> str | None | bool:
30
+ """Readable property"""
32
31
  return self._readable
@@ -1,25 +1,26 @@
1
- """ Chart alignment """
1
+ """Chart alignment"""
2
+
2
3
  from enum import Enum
3
- from typing import Self
4
4
 
5
5
 
6
6
  class ChartAlignment(Enum):
7
7
  """
8
8
  Chart Alignment
9
9
  """
10
+
10
11
  CENTER = 'center'
11
12
  LEFT = 'left'
12
13
  RIGHT = 'right'
13
14
 
14
15
  @property
15
- def _readable(self: Self) -> str | None | bool:
16
- """ Readable """
16
+ def _readable(self) -> str | None | bool:
17
+ """Readable"""
17
18
  return f'ChartAlignment.{self.value}'
18
19
 
19
- def __str__(self: Self) -> str | None | bool:
20
- """ Readable property """
20
+ def __str__(self) -> str | None | bool:
21
+ """Readable property"""
21
22
  return self._readable
22
23
 
23
- def __repr__(self: Self) -> str | None | bool:
24
- """ Readable property """
24
+ def __repr__(self) -> str | None | bool:
25
+ """Readable property"""
25
26
  return self._readable
@@ -1,5 +1,6 @@
1
- """ Bar chart """
2
- from typing import Any, List, Self
1
+ """Bar chart"""
2
+
3
+ from typing import Any, List
3
4
 
4
5
  from .alignment import ChartAlignment
5
6
  from .configuration import AxisConfig
@@ -15,7 +16,7 @@ class BarChart:
15
16
  """
16
17
 
17
18
  def __init__(
18
- self: Self,
19
+ self,
19
20
  x_axis: ChartDataSerie,
20
21
  y_axis: List[ChartDataSerie],
21
22
  title: str = 'Chart',
@@ -68,7 +69,7 @@ class BarChart:
68
69
  self.y_axis_config = y_axis_config
69
70
 
70
71
  def render(
71
- self: Self,
72
+ self,
72
73
  technology: ChartRenderTechnology = ChartRenderTechnology.SYNCFUSION_FLUTTER_CHARTS,
73
74
  ) -> Any:
74
75
  """
@@ -105,7 +106,7 @@ class BarChart:
105
106
  'configuration': [f'Unsupported rendering technology {technology.name}'],
106
107
  }
107
108
 
108
- def _render_syncfusion_flutter_charts(self: Self) -> Any:
109
+ def _render_syncfusion_flutter_charts(self) -> Any:
109
110
  """
110
111
  Converts the configuration of the chart to Syncfusion Flutter Charts.
111
112
  """
@@ -117,11 +118,13 @@ class BarChart:
117
118
  x_axis = self.x_axis.data[i]
118
119
  values.append({'xAxis': x_axis, 'yAxis': value})
119
120
 
120
- series.append({
121
- 'label': serie.label,
122
- 'color': serie.color,
123
- 'values': values,
124
- })
121
+ series.append(
122
+ {
123
+ 'label': serie.label,
124
+ 'color': serie.color,
125
+ 'values': values,
126
+ }
127
+ )
125
128
 
126
129
  return {
127
130
  'series': series,
@@ -141,7 +144,7 @@ class BarChart:
141
144
  },
142
145
  }
143
146
 
144
- def _render_graphic(self: Self) -> Any:
147
+ def _render_graphic(self) -> Any:
145
148
  """
146
149
  Converts the configuration of the chart to Flutter library graphic.
147
150
  """
@@ -151,16 +154,18 @@ class BarChart:
151
154
  for serie in self.y_axis:
152
155
  for i, value in enumerate(serie.data):
153
156
  x_axis = self.x_axis.data[i]
154
- series.append({
155
- 'label': serie.label,
156
- 'color': serie.color,
157
- 'category': x_axis,
158
- 'value': value,
159
- })
157
+ series.append(
158
+ {
159
+ 'label': serie.label,
160
+ 'color': serie.color,
161
+ 'category': x_axis,
162
+ 'value': value,
163
+ }
164
+ )
160
165
 
161
166
  return series
162
167
 
163
- def _render_apexcharts(self: Self) -> Any:
168
+ def _render_apexcharts(self) -> Any:
164
169
  """
165
170
  Converts the configuration of the chart to Javascript library ApexCharts.
166
171
  """
@@ -183,40 +188,21 @@ class BarChart:
183
188
  'xaxis': {
184
189
  'categories': self.x_axis.data,
185
190
  'type': self.x_axis.data_type.value,
186
- 'title': {
187
- 'text': self.x_axis.label
188
- }
191
+ 'title': {'text': self.x_axis.label},
189
192
  },
190
193
  'title': {
191
194
  'text': self.title,
192
195
  'align': self.align.value,
193
- 'style': {
194
- 'fontFamily': 'Fira Sans Condensed',
195
- 'fontSize': '20px',
196
- 'fontWeight': 'normal'
197
- }
198
- },
199
- 'plotOptions': {
200
- 'bar': {
201
- 'horizontal': True,
202
- 'borderRadius': 4
203
- }
204
- },
205
- 'dataLabels': {
206
- 'enabled': False
196
+ 'style': {'fontFamily': 'Fira Sans Condensed', 'fontSize': '20px', 'fontWeight': 'normal'},
207
197
  },
198
+ 'plotOptions': {'bar': {'horizontal': True, 'borderRadius': 4}},
199
+ 'dataLabels': {'enabled': False},
208
200
  'chart': {
209
201
  'type': 'bar',
210
- 'animations': {
211
- 'enabled': False
212
- },
213
- 'toolbar': {
214
- 'show': False
215
- },
216
- 'zoom': {
217
- 'enabled': False
218
- }
219
- }
202
+ 'animations': {'enabled': False},
203
+ 'toolbar': {'show': False},
204
+ 'zoom': {'enabled': False},
205
+ },
220
206
  }
221
207
 
222
208
  return config
@@ -1,10 +1,12 @@
1
- """ Chart alignment """
1
+ """Chart alignment"""
2
+
2
3
  from enum import Enum
3
- from typing import Any, Self
4
+ from typing import Any
4
5
 
5
6
 
6
7
  class ChartColor(Enum):
7
- """ Chart color list, ideal to use to colorize the series """
8
+ """Chart color list, ideal to use to colorize the series"""
9
+
8
10
  RED = '#F44336'
9
11
  BLUE = '#2196F3'
10
12
  GREEN = '#4CAF50'
@@ -18,19 +20,19 @@ class ChartColor(Enum):
18
20
  LIME = '#CDDC39'
19
21
 
20
22
  @property
21
- def _readable(self: Self) -> str | None | bool:
22
- """ Readable """
23
+ def _readable(self) -> str | None | bool:
24
+ """Readable"""
23
25
  return f'ChartColor.{self.value}'
24
26
 
25
- def __str__(self: Self) -> str | None | bool:
26
- """ Readable property """
27
+ def __str__(self) -> str | None | bool:
28
+ """Readable property"""
27
29
  return self._readable
28
30
 
29
- def __repr__(self: Self) -> str | None | bool:
30
- """ Readable property """
31
+ def __repr__(self) -> str | None | bool:
32
+ """Readable property"""
31
33
  return self._readable
32
34
 
33
35
 
34
36
  def get_color_list() -> Any:
35
- """ Get all colors """
37
+ """Get all colors"""
36
38
  return [color.value for color in ChartColor]