clappia-api-tools 2.0.0__tar.gz → 2.0.2__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.
- {clappia_api_tools-2.0.0 → clappia_api_tools-2.0.2}/PKG-INFO +1 -1
- {clappia_api_tools-2.0.0 → clappia_api_tools-2.0.2}/clappia_api_tools/client/analytics_client.py +119 -18
- {clappia_api_tools-2.0.0 → clappia_api_tools-2.0.2}/clappia_api_tools/client/app_definition_client.py +541 -93
- {clappia_api_tools-2.0.0 → clappia_api_tools-2.0.2}/clappia_api_tools/client/workflow_definition_client.py +167 -37
- clappia_api_tools-2.0.2/clappia_api_tools/enums/__init__.py +17 -0
- {clappia_api_tools-2.0.0 → clappia_api_tools-2.0.2}/clappia_api_tools/enums/enums.py +0 -142
- {clappia_api_tools-2.0.0 → clappia_api_tools-2.0.2}/clappia_api_tools/models/__init__.py +4 -0
- {clappia_api_tools-2.0.0 → clappia_api_tools-2.0.2}/clappia_api_tools/models/request/__init__.py +4 -0
- {clappia_api_tools-2.0.0 → clappia_api_tools-2.0.2}/clappia_api_tools/models/request/analytics/model.py +36 -47
- {clappia_api_tools-2.0.0 → clappia_api_tools-2.0.2}/clappia_api_tools/models/request/app_definition/__init__.py +7 -0
- clappia_api_tools-2.0.2/clappia_api_tools/models/request/app_definition/app_metadata/__init__.py +7 -0
- clappia_api_tools-2.0.2/clappia_api_tools/models/request/app_definition/app_metadata/request.py +73 -0
- {clappia_api_tools-2.0.0 → clappia_api_tools-2.0.2}/clappia_api_tools/models/request/app_definition/base.py +1 -0
- {clappia_api_tools-2.0.0 → clappia_api_tools-2.0.2}/clappia_api_tools/models/request/app_definition/definition/request.py +2 -3
- {clappia_api_tools-2.0.0 → clappia_api_tools-2.0.2}/clappia_api_tools/models/request/app_definition/field/request.py +10 -30
- {clappia_api_tools-2.0.0 → clappia_api_tools-2.0.2}/clappia_api_tools/models/request/app_definition/section/request.py +2 -3
- {clappia_api_tools-2.0.0 → clappia_api_tools-2.0.2}/clappia_api_tools/models/request/workflow_definition/step/request.py +2 -3
- {clappia_api_tools-2.0.0 → clappia_api_tools-2.0.2}/clappia_api_tools/models/submission.py +12 -21
- {clappia_api_tools-2.0.0 → clappia_api_tools-2.0.2}/clappia_api_tools/utils/api_utils.py +5 -1
- {clappia_api_tools-2.0.0 → clappia_api_tools-2.0.2}/clappia_api_tools.egg-info/PKG-INFO +1 -1
- {clappia_api_tools-2.0.0 → clappia_api_tools-2.0.2}/clappia_api_tools.egg-info/SOURCES.txt +2 -0
- {clappia_api_tools-2.0.0 → clappia_api_tools-2.0.2}/pyproject.toml +1 -1
- clappia_api_tools-2.0.0/clappia_api_tools/enums/__init__.py +0 -49
- {clappia_api_tools-2.0.0 → clappia_api_tools-2.0.2}/LICENSE +0 -0
- {clappia_api_tools-2.0.0 → clappia_api_tools-2.0.2}/README.md +0 -0
- {clappia_api_tools-2.0.0 → clappia_api_tools-2.0.2}/clappia_api_tools/__init__.py +0 -0
- {clappia_api_tools-2.0.0 → clappia_api_tools-2.0.2}/clappia_api_tools/client/__init__.py +0 -0
- {clappia_api_tools-2.0.0 → clappia_api_tools-2.0.2}/clappia_api_tools/client/base_client.py +0 -0
- {clappia_api_tools-2.0.0 → clappia_api_tools-2.0.2}/clappia_api_tools/client/submission_client.py +0 -0
- {clappia_api_tools-2.0.0 → clappia_api_tools-2.0.2}/clappia_api_tools/client/workplace_client.py +0 -0
- {clappia_api_tools-2.0.0 → clappia_api_tools-2.0.2}/clappia_api_tools/models/json_serialized.py +0 -0
- {clappia_api_tools-2.0.0 → clappia_api_tools-2.0.2}/clappia_api_tools/models/permissions.py +0 -0
- {clappia_api_tools-2.0.0 → clappia_api_tools-2.0.2}/clappia_api_tools/models/request/analytics/__init__.py +0 -0
- {clappia_api_tools-2.0.0 → clappia_api_tools-2.0.2}/clappia_api_tools/models/request/analytics/base.py +0 -0
- {clappia_api_tools-2.0.0 → clappia_api_tools-2.0.2}/clappia_api_tools/models/request/analytics/chart/__init__.py +0 -0
- {clappia_api_tools-2.0.0 → clappia_api_tools-2.0.2}/clappia_api_tools/models/request/analytics/chart/request.py +0 -0
- {clappia_api_tools-2.0.0 → clappia_api_tools-2.0.2}/clappia_api_tools/models/request/app_definition/definition/__init__.py +0 -0
- {clappia_api_tools-2.0.0 → clappia_api_tools-2.0.2}/clappia_api_tools/models/request/app_definition/field/__init__.py +0 -0
- {clappia_api_tools-2.0.0 → clappia_api_tools-2.0.2}/clappia_api_tools/models/request/app_definition/model.py +0 -0
- {clappia_api_tools-2.0.0 → clappia_api_tools-2.0.2}/clappia_api_tools/models/request/app_definition/page/__init__.py +0 -0
- {clappia_api_tools-2.0.0 → clappia_api_tools-2.0.2}/clappia_api_tools/models/request/app_definition/page/request.py +0 -0
- {clappia_api_tools-2.0.0 → clappia_api_tools-2.0.2}/clappia_api_tools/models/request/app_definition/section/__init__.py +0 -0
- {clappia_api_tools-2.0.0 → clappia_api_tools-2.0.2}/clappia_api_tools/models/request/submission_requests.py +0 -0
- {clappia_api_tools-2.0.0 → clappia_api_tools-2.0.2}/clappia_api_tools/models/request/workflow_definition/__init__.py +0 -0
- {clappia_api_tools-2.0.0 → clappia_api_tools-2.0.2}/clappia_api_tools/models/request/workflow_definition/base.py +0 -0
- {clappia_api_tools-2.0.0 → clappia_api_tools-2.0.2}/clappia_api_tools/models/request/workflow_definition/step/__init__.py +0 -0
- {clappia_api_tools-2.0.0 → clappia_api_tools-2.0.2}/clappia_api_tools/models/request/workplace_requests.py +0 -0
- {clappia_api_tools-2.0.0 → clappia_api_tools-2.0.2}/clappia_api_tools/models/response/__init__.py +0 -0
- {clappia_api_tools-2.0.0 → clappia_api_tools-2.0.2}/clappia_api_tools/models/response/analytics_responses.py +0 -0
- {clappia_api_tools-2.0.0 → clappia_api_tools-2.0.2}/clappia_api_tools/models/response/app_definition_responses.py +0 -0
- {clappia_api_tools-2.0.0 → clappia_api_tools-2.0.2}/clappia_api_tools/models/response/base_response.py +0 -0
- {clappia_api_tools-2.0.0 → clappia_api_tools-2.0.2}/clappia_api_tools/models/response/submission_responses.py +0 -0
- {clappia_api_tools-2.0.0 → clappia_api_tools-2.0.2}/clappia_api_tools/models/response/workflow_responses.py +0 -0
- {clappia_api_tools-2.0.0 → clappia_api_tools-2.0.2}/clappia_api_tools/models/response/workplace_responses.py +0 -0
- {clappia_api_tools-2.0.0 → clappia_api_tools-2.0.2}/clappia_api_tools/models/workplace_user.py +0 -0
- {clappia_api_tools-2.0.0 → clappia_api_tools-2.0.2}/clappia_api_tools/tests/integration/__init__.py +0 -0
- {clappia_api_tools-2.0.0 → clappia_api_tools-2.0.2}/clappia_api_tools/tests/integration/definition/test_tools_definition.py +0 -0
- {clappia_api_tools-2.0.0 → clappia_api_tools-2.0.2}/clappia_api_tools/tests/integration/submission/test_tools_submission.py +0 -0
- {clappia_api_tools-2.0.0 → clappia_api_tools-2.0.2}/clappia_api_tools/tests/integration/workplace/test_tools_workplace.py +0 -0
- {clappia_api_tools-2.0.0 → clappia_api_tools-2.0.2}/clappia_api_tools/tests/unit/client/test_analytics_client.py +0 -0
- {clappia_api_tools-2.0.0 → clappia_api_tools-2.0.2}/clappia_api_tools/tests/unit/client/test_client.py +0 -0
- {clappia_api_tools-2.0.0 → clappia_api_tools-2.0.2}/clappia_api_tools/utils/__init__.py +0 -0
- {clappia_api_tools-2.0.0 → clappia_api_tools-2.0.2}/clappia_api_tools/utils/logging_utils.py +0 -0
- {clappia_api_tools-2.0.0 → clappia_api_tools-2.0.2}/clappia_api_tools/utils/utils.py +0 -0
- {clappia_api_tools-2.0.0 → clappia_api_tools-2.0.2}/clappia_api_tools.egg-info/dependency_links.txt +0 -0
- {clappia_api_tools-2.0.0 → clappia_api_tools-2.0.2}/clappia_api_tools.egg-info/requires.txt +0 -0
- {clappia_api_tools-2.0.0 → clappia_api_tools-2.0.2}/clappia_api_tools.egg-info/top_level.txt +0 -0
- {clappia_api_tools-2.0.0 → clappia_api_tools-2.0.2}/setup.cfg +0 -0
{clappia_api_tools-2.0.0 → clappia_api_tools-2.0.2}/clappia_api_tools/client/analytics_client.py
RENAMED
|
@@ -13,6 +13,23 @@ from clappia_api_tools.models.request import (
|
|
|
13
13
|
)
|
|
14
14
|
from clappia_api_tools.models.response import ChartResponse, BaseResponse
|
|
15
15
|
from clappia_api_tools.enums import ChartType
|
|
16
|
+
from typing import Union
|
|
17
|
+
|
|
18
|
+
ChartDefinitionRequestUnion = Union[
|
|
19
|
+
UpsertSummaryChartDefinitionRequest,
|
|
20
|
+
UpsertBarChartDefinitionRequest,
|
|
21
|
+
UpsertPieChartDefinitionRequest,
|
|
22
|
+
UpsertDoughnutChartDefinitionRequest,
|
|
23
|
+
UpsertLineChartDefinitionRequest,
|
|
24
|
+
UpsertDataTableChartDefinitionRequest,
|
|
25
|
+
UpsertMapChartDefinitionRequest,
|
|
26
|
+
UpsertGanttChartDefinitionRequest,
|
|
27
|
+
]
|
|
28
|
+
|
|
29
|
+
ChartDefinitionResponseUnion = Union[
|
|
30
|
+
ChartResponse,
|
|
31
|
+
BaseResponse,
|
|
32
|
+
]
|
|
16
33
|
|
|
17
34
|
logger = get_logger(__name__)
|
|
18
35
|
|
|
@@ -24,7 +41,79 @@ class AnalyticsClient(BaseClappiaClient):
|
|
|
24
41
|
adding charts, removing charts, updating charts, and reordering charts.
|
|
25
42
|
"""
|
|
26
43
|
|
|
27
|
-
def
|
|
44
|
+
def add(
|
|
45
|
+
self,
|
|
46
|
+
app_id: str,
|
|
47
|
+
chart_index: int,
|
|
48
|
+
chart_title: str,
|
|
49
|
+
request: ChartDefinitionRequestUnion,
|
|
50
|
+
) -> ChartResponse:
|
|
51
|
+
"""Add a chart to an app.
|
|
52
|
+
|
|
53
|
+
Args:
|
|
54
|
+
app_id: The ID of the app to add the chart to
|
|
55
|
+
chart_index: The index of the chart to add
|
|
56
|
+
chart_title: The title of the chart
|
|
57
|
+
request: The request object containing the chart configuration
|
|
58
|
+
|
|
59
|
+
Returns:
|
|
60
|
+
ChartResponse: Response containing the result of the operation
|
|
61
|
+
"""
|
|
62
|
+
if isinstance(request, UpsertSummaryChartDefinitionRequest):
|
|
63
|
+
return self._add_summary_chart(app_id, chart_index, chart_title, request)
|
|
64
|
+
elif isinstance(request, UpsertBarChartDefinitionRequest):
|
|
65
|
+
return self._add_bar_chart(app_id, chart_index, chart_title, request)
|
|
66
|
+
elif isinstance(request, UpsertPieChartDefinitionRequest):
|
|
67
|
+
return self._add_pie_chart(app_id, chart_index, chart_title, request)
|
|
68
|
+
elif isinstance(request, UpsertDoughnutChartDefinitionRequest):
|
|
69
|
+
return self._add_doughnut_chart(app_id, chart_index, chart_title, request)
|
|
70
|
+
elif isinstance(request, UpsertLineChartDefinitionRequest):
|
|
71
|
+
return self._add_line_chart(app_id, chart_index, chart_title, request)
|
|
72
|
+
elif isinstance(request, UpsertDataTableChartDefinitionRequest):
|
|
73
|
+
return self._add_data_table_chart(app_id, chart_index, chart_title, request)
|
|
74
|
+
elif isinstance(request, UpsertMapChartDefinitionRequest):
|
|
75
|
+
return self._add_map_chart(app_id, chart_index, chart_title, request)
|
|
76
|
+
elif isinstance(request, UpsertGanttChartDefinitionRequest):
|
|
77
|
+
return self._add_gantt_chart(app_id, chart_index, chart_title, request)
|
|
78
|
+
else:
|
|
79
|
+
raise ValueError(f"Unsupported chart definition request type: {type(request)}")
|
|
80
|
+
|
|
81
|
+
def update(
|
|
82
|
+
self,
|
|
83
|
+
app_id: str,
|
|
84
|
+
chart_index: int,
|
|
85
|
+
request: ChartDefinitionRequestUnion,
|
|
86
|
+
) -> ChartResponse:
|
|
87
|
+
"""Update a chart in an app.
|
|
88
|
+
|
|
89
|
+
Args:
|
|
90
|
+
app_id: The ID of the app containing the chart
|
|
91
|
+
chart_index: The index of the chart to update
|
|
92
|
+
request: The request object containing the updated chart configuration
|
|
93
|
+
|
|
94
|
+
Returns:
|
|
95
|
+
ChartResponse: Response containing the result of the operation
|
|
96
|
+
"""
|
|
97
|
+
if isinstance(request, UpsertSummaryChartDefinitionRequest):
|
|
98
|
+
return self._update_summary_chart(app_id, chart_index, request)
|
|
99
|
+
elif isinstance(request, UpsertBarChartDefinitionRequest):
|
|
100
|
+
return self._update_bar_chart(app_id, chart_index, request)
|
|
101
|
+
elif isinstance(request, UpsertPieChartDefinitionRequest):
|
|
102
|
+
return self._update_pie_chart(app_id, chart_index, request)
|
|
103
|
+
elif isinstance(request, UpsertDoughnutChartDefinitionRequest):
|
|
104
|
+
return self._update_doughnut_chart(app_id, chart_index, request)
|
|
105
|
+
elif isinstance(request, UpsertLineChartDefinitionRequest):
|
|
106
|
+
return self._update_line_chart(app_id, chart_index, request)
|
|
107
|
+
elif isinstance(request, UpsertDataTableChartDefinitionRequest):
|
|
108
|
+
return self._update_data_table_chart(app_id, chart_index, request)
|
|
109
|
+
elif isinstance(request, UpsertMapChartDefinitionRequest):
|
|
110
|
+
return self._update_map_chart(app_id, chart_index, request)
|
|
111
|
+
elif isinstance(request, UpsertGanttChartDefinitionRequest):
|
|
112
|
+
return self._update_gantt_chart(app_id, chart_index, request)
|
|
113
|
+
else:
|
|
114
|
+
raise ValueError(f"Unsupported chart definition request type: {type(request)}")
|
|
115
|
+
|
|
116
|
+
def _add_summary_chart(
|
|
28
117
|
self,
|
|
29
118
|
app_id: str,
|
|
30
119
|
chart_index: int,
|
|
@@ -40,8 +129,8 @@ class AnalyticsClient(BaseClappiaClient):
|
|
|
40
129
|
request: The request object containing the chart configuration
|
|
41
130
|
|
|
42
131
|
Returns:
|
|
132
|
+
ChartResponse: Response containing the result of the operation
|
|
43
133
|
"""
|
|
44
|
-
|
|
45
134
|
env_valid, env_error = self.api_utils.validate_environment()
|
|
46
135
|
if not env_valid:
|
|
47
136
|
return ChartResponse(
|
|
@@ -87,19 +176,29 @@ class AnalyticsClient(BaseClappiaClient):
|
|
|
87
176
|
data=response_data,
|
|
88
177
|
)
|
|
89
178
|
|
|
90
|
-
def
|
|
179
|
+
def _update_summary_chart(
|
|
91
180
|
self,
|
|
92
181
|
app_id: str,
|
|
93
182
|
chart_index: int,
|
|
94
183
|
request: UpsertSummaryChartDefinitionRequest,
|
|
95
184
|
) -> ChartResponse:
|
|
185
|
+
"""Update a summary chart in an app.
|
|
186
|
+
|
|
187
|
+
Args:
|
|
188
|
+
app_id: The ID of the app containing the chart
|
|
189
|
+
chart_index: The index of the chart to update
|
|
190
|
+
request: The request object containing the updated chart configuration
|
|
191
|
+
|
|
192
|
+
Returns:
|
|
193
|
+
ChartResponse: Response containing the result of the operation
|
|
194
|
+
"""
|
|
96
195
|
env_valid, env_error = self.api_utils.validate_environment()
|
|
97
196
|
if not env_valid:
|
|
98
197
|
return ChartResponse(
|
|
99
198
|
success=False,
|
|
100
199
|
message=env_error,
|
|
101
200
|
app_id=app_id,
|
|
102
|
-
operation="
|
|
201
|
+
operation="update_summary_chart",
|
|
103
202
|
chart_type=ChartType.SUMMARY_CARD.value,
|
|
104
203
|
)
|
|
105
204
|
|
|
@@ -124,6 +223,7 @@ class AnalyticsClient(BaseClappiaClient):
|
|
|
124
223
|
message=error_message,
|
|
125
224
|
app_id=app_id,
|
|
126
225
|
operation="update_summary_chart",
|
|
226
|
+
chart_type=ChartType.SUMMARY_CARD.value,
|
|
127
227
|
)
|
|
128
228
|
|
|
129
229
|
return ChartResponse(
|
|
@@ -131,10 +231,11 @@ class AnalyticsClient(BaseClappiaClient):
|
|
|
131
231
|
message="Successfully updated summary chart",
|
|
132
232
|
app_id=app_id,
|
|
133
233
|
operation="update_summary_chart",
|
|
234
|
+
chart_type=ChartType.SUMMARY_CARD.value,
|
|
134
235
|
data=response_data,
|
|
135
236
|
)
|
|
136
237
|
|
|
137
|
-
def
|
|
238
|
+
def _add_bar_chart(
|
|
138
239
|
self,
|
|
139
240
|
app_id: str,
|
|
140
241
|
chart_index: int,
|
|
@@ -198,7 +299,7 @@ class AnalyticsClient(BaseClappiaClient):
|
|
|
198
299
|
data=response_data,
|
|
199
300
|
)
|
|
200
301
|
|
|
201
|
-
def
|
|
302
|
+
def _update_bar_chart(
|
|
202
303
|
self,
|
|
203
304
|
app_id: str,
|
|
204
305
|
chart_index: int,
|
|
@@ -255,7 +356,7 @@ class AnalyticsClient(BaseClappiaClient):
|
|
|
255
356
|
data=response_data,
|
|
256
357
|
)
|
|
257
358
|
|
|
258
|
-
def
|
|
359
|
+
def _add_pie_chart(
|
|
259
360
|
self,
|
|
260
361
|
app_id: str,
|
|
261
362
|
chart_index: int,
|
|
@@ -319,7 +420,7 @@ class AnalyticsClient(BaseClappiaClient):
|
|
|
319
420
|
data=response_data,
|
|
320
421
|
)
|
|
321
422
|
|
|
322
|
-
def
|
|
423
|
+
def _update_pie_chart(
|
|
323
424
|
self,
|
|
324
425
|
app_id: str,
|
|
325
426
|
chart_index: int,
|
|
@@ -376,7 +477,7 @@ class AnalyticsClient(BaseClappiaClient):
|
|
|
376
477
|
data=response_data,
|
|
377
478
|
)
|
|
378
479
|
|
|
379
|
-
def
|
|
480
|
+
def _add_doughnut_chart(
|
|
380
481
|
self,
|
|
381
482
|
app_id: str,
|
|
382
483
|
chart_index: int,
|
|
@@ -440,7 +541,7 @@ class AnalyticsClient(BaseClappiaClient):
|
|
|
440
541
|
data=response_data,
|
|
441
542
|
)
|
|
442
543
|
|
|
443
|
-
def
|
|
544
|
+
def _update_doughnut_chart(
|
|
444
545
|
self,
|
|
445
546
|
app_id: str,
|
|
446
547
|
chart_index: int,
|
|
@@ -499,7 +600,7 @@ class AnalyticsClient(BaseClappiaClient):
|
|
|
499
600
|
data=response_data,
|
|
500
601
|
)
|
|
501
602
|
|
|
502
|
-
def
|
|
603
|
+
def _add_line_chart(
|
|
503
604
|
self,
|
|
504
605
|
app_id: str,
|
|
505
606
|
chart_index: int,
|
|
@@ -563,7 +664,7 @@ class AnalyticsClient(BaseClappiaClient):
|
|
|
563
664
|
data=response_data,
|
|
564
665
|
)
|
|
565
666
|
|
|
566
|
-
def
|
|
667
|
+
def _update_line_chart(
|
|
567
668
|
self,
|
|
568
669
|
app_id: str,
|
|
569
670
|
chart_index: int,
|
|
@@ -620,7 +721,7 @@ class AnalyticsClient(BaseClappiaClient):
|
|
|
620
721
|
data=response_data,
|
|
621
722
|
)
|
|
622
723
|
|
|
623
|
-
def
|
|
724
|
+
def _add_data_table_chart(
|
|
624
725
|
self,
|
|
625
726
|
app_id: str,
|
|
626
727
|
chart_index: int,
|
|
@@ -684,7 +785,7 @@ class AnalyticsClient(BaseClappiaClient):
|
|
|
684
785
|
data=response_data,
|
|
685
786
|
)
|
|
686
787
|
|
|
687
|
-
def
|
|
788
|
+
def _update_data_table_chart(
|
|
688
789
|
self,
|
|
689
790
|
app_id: str,
|
|
690
791
|
chart_index: int,
|
|
@@ -743,7 +844,7 @@ class AnalyticsClient(BaseClappiaClient):
|
|
|
743
844
|
data=response_data,
|
|
744
845
|
)
|
|
745
846
|
|
|
746
|
-
def
|
|
847
|
+
def _add_map_chart(
|
|
747
848
|
self,
|
|
748
849
|
app_id: str,
|
|
749
850
|
chart_index: int,
|
|
@@ -807,7 +908,7 @@ class AnalyticsClient(BaseClappiaClient):
|
|
|
807
908
|
data=response_data,
|
|
808
909
|
)
|
|
809
910
|
|
|
810
|
-
def
|
|
911
|
+
def _update_map_chart(
|
|
811
912
|
self,
|
|
812
913
|
app_id: str,
|
|
813
914
|
chart_index: int,
|
|
@@ -864,7 +965,7 @@ class AnalyticsClient(BaseClappiaClient):
|
|
|
864
965
|
data=response_data,
|
|
865
966
|
)
|
|
866
967
|
|
|
867
|
-
def
|
|
968
|
+
def _add_gantt_chart(
|
|
868
969
|
self,
|
|
869
970
|
app_id: str,
|
|
870
971
|
chart_index: int,
|
|
@@ -928,7 +1029,7 @@ class AnalyticsClient(BaseClappiaClient):
|
|
|
928
1029
|
data=response_data,
|
|
929
1030
|
)
|
|
930
1031
|
|
|
931
|
-
def
|
|
1032
|
+
def _update_gantt_chart(
|
|
932
1033
|
self,
|
|
933
1034
|
app_id: str,
|
|
934
1035
|
chart_index: int,
|