dart-tools 0.8.5__py3-none-any.whl → 0.8.7__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 dart-tools might be problematic. Click here for more details.
- dart/dart.py +4 -1
- dart/generated/api/__init__.py +1 -1
- dart/generated/api/task/add_task_time_tracking.py +190 -0
- dart/generated/api/task/move_task.py +190 -0
- dart/generated/models/__init__.py +22 -0
- dart/generated/models/paginated_comment_list.py +42 -0
- dart/generated/models/paginated_comment_list_meta_type_0.py +109 -0
- dart/generated/models/paginated_comment_list_meta_type_0_applied_default_filters.py +44 -0
- dart/generated/models/paginated_concise_doc_list.py +42 -0
- dart/generated/models/paginated_concise_doc_list_meta_type_0.py +109 -0
- dart/generated/models/paginated_concise_doc_list_meta_type_0_applied_default_filters.py +44 -0
- dart/generated/models/paginated_concise_task_list.py +42 -0
- dart/generated/models/paginated_concise_task_list_meta_type_0.py +109 -0
- dart/generated/models/paginated_concise_task_list_meta_type_0_applied_default_filters.py +44 -0
- dart/generated/models/task_move.py +94 -0
- dart/generated/models/task_time_tracking_create.py +84 -0
- {dart_tools-0.8.5.dist-info → dart_tools-0.8.7.dist-info}/METADATA +2 -46
- {dart_tools-0.8.5.dist-info → dart_tools-0.8.7.dist-info}/RECORD +22 -12
- {dart_tools-0.8.5.dist-info → dart_tools-0.8.7.dist-info}/WHEEL +0 -0
- {dart_tools-0.8.5.dist-info → dart_tools-0.8.7.dist-info}/entry_points.txt +0 -0
- {dart_tools-0.8.5.dist-info → dart_tools-0.8.7.dist-info}/licenses/LICENSE +0 -0
- {dart_tools-0.8.5.dist-info → dart_tools-0.8.7.dist-info}/top_level.txt +0 -0
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
from collections.abc import Mapping
|
|
2
|
+
from typing import Any, TypeVar, Union, cast
|
|
3
|
+
|
|
4
|
+
from attrs import define as _attrs_define
|
|
5
|
+
from attrs import field as _attrs_field
|
|
6
|
+
|
|
7
|
+
T = TypeVar("T", bound="TaskTimeTrackingCreate")
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
@_attrs_define
|
|
11
|
+
class TaskTimeTrackingCreate:
|
|
12
|
+
"""
|
|
13
|
+
Attributes:
|
|
14
|
+
user (Union[None, str]): The name or email of the user to attribute the tracked time to or null to use the
|
|
15
|
+
current user.
|
|
16
|
+
started_at (str): The start timestamp for the tracked time entry in ISO 8601 format.
|
|
17
|
+
finished_at (str): The end timestamp for the tracked time entry in ISO 8601 format. Must be after the start
|
|
18
|
+
time.
|
|
19
|
+
"""
|
|
20
|
+
|
|
21
|
+
user: Union[None, str]
|
|
22
|
+
started_at: str
|
|
23
|
+
finished_at: str
|
|
24
|
+
additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
25
|
+
|
|
26
|
+
def to_dict(self) -> dict[str, Any]:
|
|
27
|
+
user: Union[None, str]
|
|
28
|
+
user = self.user
|
|
29
|
+
|
|
30
|
+
started_at = self.started_at
|
|
31
|
+
|
|
32
|
+
finished_at = self.finished_at
|
|
33
|
+
|
|
34
|
+
field_dict: dict[str, Any] = {}
|
|
35
|
+
field_dict.update(self.additional_properties)
|
|
36
|
+
field_dict.update(
|
|
37
|
+
{
|
|
38
|
+
"user": user,
|
|
39
|
+
"startedAt": started_at,
|
|
40
|
+
"finishedAt": finished_at,
|
|
41
|
+
}
|
|
42
|
+
)
|
|
43
|
+
|
|
44
|
+
return field_dict
|
|
45
|
+
|
|
46
|
+
@classmethod
|
|
47
|
+
def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
|
|
48
|
+
d = dict(src_dict)
|
|
49
|
+
|
|
50
|
+
def _parse_user(data: object) -> Union[None, str]:
|
|
51
|
+
if data is None:
|
|
52
|
+
return data
|
|
53
|
+
return cast(Union[None, str], data)
|
|
54
|
+
|
|
55
|
+
user = _parse_user(d.pop("user"))
|
|
56
|
+
|
|
57
|
+
started_at = d.pop("startedAt")
|
|
58
|
+
|
|
59
|
+
finished_at = d.pop("finishedAt")
|
|
60
|
+
|
|
61
|
+
task_time_tracking_create = cls(
|
|
62
|
+
user=user,
|
|
63
|
+
started_at=started_at,
|
|
64
|
+
finished_at=finished_at,
|
|
65
|
+
)
|
|
66
|
+
|
|
67
|
+
task_time_tracking_create.additional_properties = d
|
|
68
|
+
return task_time_tracking_create
|
|
69
|
+
|
|
70
|
+
@property
|
|
71
|
+
def additional_keys(self) -> list[str]:
|
|
72
|
+
return list(self.additional_properties.keys())
|
|
73
|
+
|
|
74
|
+
def __getitem__(self, key: str) -> Any:
|
|
75
|
+
return self.additional_properties[key]
|
|
76
|
+
|
|
77
|
+
def __setitem__(self, key: str, value: Any) -> None:
|
|
78
|
+
self.additional_properties[key] = value
|
|
79
|
+
|
|
80
|
+
def __delitem__(self, key: str) -> None:
|
|
81
|
+
del self.additional_properties[key]
|
|
82
|
+
|
|
83
|
+
def __contains__(self, key: str) -> bool:
|
|
84
|
+
return key in self.additional_properties
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: dart-tools
|
|
3
|
-
Version: 0.8.
|
|
3
|
+
Version: 0.8.7
|
|
4
4
|
Summary: The Dart CLI and Python Library
|
|
5
5
|
Author-email: Dart <software@dartai.com>
|
|
6
6
|
License: MIT License
|
|
@@ -72,17 +72,12 @@ Dynamic: license-file
|
|
|
72
72
|
|
|
73
73
|
[Dart](https://dartai.com?nr=1) is Project Management powered by AI.
|
|
74
74
|
|
|
75
|
-
`dart-tools` is the Dart CLI and Python Library. It enables direct integration with Dart through a terminal CLI or through Python.
|
|
75
|
+
`dart-tools` is the Dart CLI and Python Library. It enables direct integration with Dart through a terminal CLI or through Python. It implements client functions to the [Dart Public API](https://app.dartai.com/api/v0/public/docs/).
|
|
76
76
|
|
|
77
77
|
- [Installation](#installation)
|
|
78
78
|
- [Naming conflicts](#naming-conflicts)
|
|
79
79
|
- [Using the CLI](#using-the-cli)
|
|
80
80
|
- [Using the Python Library](#using-the-python-library)
|
|
81
|
-
- [Using the Python Library in AWS Lambda Functions](#using-the-python-library-in-aws-lambda-functions)
|
|
82
|
-
- [Navigate to the directory containing your `lambda_function.py` source file. In this example, the directory is named `my_function`.](#navigate-to-the-directory-containing-your-lambda_functionpy-source-file-in-this-example-the-directory-is-named-my_function)
|
|
83
|
-
- [Create a Deployment Package](#create-a-deployment-package)
|
|
84
|
-
- [Zip the contents of the `package` directory along with your `lambda_function.py`](#zip-the-contents-of-the-package-directory-along-with-your-lambda_functionpy)
|
|
85
|
-
- [Deploy the Lambda function](#deploy-the-lambda-function)
|
|
86
81
|
- [Help and Resources](#help-and-resources)
|
|
87
82
|
- [Contributing](#contributing)
|
|
88
83
|
- [License](#license)
|
|
@@ -147,43 +142,6 @@ new_task = create_task(
|
|
|
147
142
|
update_task(new_task.id, status_title="Done")
|
|
148
143
|
```
|
|
149
144
|
|
|
150
|
-
## Using the Python Library in AWS Lambda Functions
|
|
151
|
-
|
|
152
|
-
To use the `dart-tools` Python library in an AWS Lambda function, you need to package the library with your Lambda deployment package (see more details at [Working with .zip file archives for Python Lambda functions](https://docs.aws.amazon.com/lambda/latest/dg/python-package.html)). Follow these steps:
|
|
153
|
-
|
|
154
|
-
### Navigate to the directory containing your `lambda_function.py` source file. In this example, the directory is named `my_function`.
|
|
155
|
-
|
|
156
|
-
```sh
|
|
157
|
-
cd my_function
|
|
158
|
-
```
|
|
159
|
-
|
|
160
|
-
### Create a Deployment Package
|
|
161
|
-
|
|
162
|
-
Use Docker to create a deployment package that includes the `dart-tools` library. Run the following commands in your terminal, ensuring that the `RUNTIME_PYTHON_VERSION` and `RUNTIME_ARCHITECTURE` environment variables match the runtime settings of your Lambda function:
|
|
163
|
-
|
|
164
|
-
```sh
|
|
165
|
-
export RUNTIME_PYTHON_VERSION=3.12
|
|
166
|
-
export RUNTIME_ARCHITECTURE=x86_64
|
|
167
|
-
docker run --rm --volume ${PWD}:/app --entrypoint /bin/bash public.ecr.aws/lambda/python:${RUNTIME_PYTHON_VERSION}-${RUNTIME_ARCHITECTURE} -c "pip install --target /app/package dart-tools"
|
|
168
|
-
```
|
|
169
|
-
|
|
170
|
-
This command installs the `dart-tools` library into a directory named `package` in your current working directory.
|
|
171
|
-
|
|
172
|
-
### Zip the contents of the `package` directory along with your `lambda_function.py`
|
|
173
|
-
|
|
174
|
-
```sh
|
|
175
|
-
cd package
|
|
176
|
-
zip -r ../my_deployment_package.zip .
|
|
177
|
-
cd ..
|
|
178
|
-
zip -r my_deployment_package.zip lambda_function.py
|
|
179
|
-
```
|
|
180
|
-
|
|
181
|
-
### Deploy the Lambda function
|
|
182
|
-
|
|
183
|
-
Upload the `my_deployment_package.zip` file to AWS Lambda using the AWS Management Console or the AWS CLI.
|
|
184
|
-
|
|
185
|
-
By following these steps, you can use the `dart-tools` Python library within your AWS Lambda functions.
|
|
186
|
-
|
|
187
145
|
## Help and Resources
|
|
188
146
|
|
|
189
147
|
- [Homepage](https://dartai.com/?nr=1)
|
|
@@ -194,12 +152,10 @@ By following these steps, you can use the `dart-tools` Python library within you
|
|
|
194
152
|
- [Chat on Discord](https://discord.gg/RExv8jEkSh)
|
|
195
153
|
- Email us at [support@dartai.com](mailto:support@dartai.com)
|
|
196
154
|
|
|
197
|
-
|
|
198
155
|
## Contributing
|
|
199
156
|
|
|
200
157
|
Contributions are welcome! Please open an issue or submit a pull request.
|
|
201
158
|
|
|
202
|
-
|
|
203
159
|
## License
|
|
204
160
|
|
|
205
161
|
This project is licensed under [the MIT License](LICENSE).
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
dart/__init__.py,sha256=M4oDY_DtfE7s50jXziRxVuL95hE1EKEaWOEmWxy8_Ig,523
|
|
2
|
-
dart/dart.py,sha256=
|
|
2
|
+
dart/dart.py,sha256=0rFrEsqpTtPEoJbs3CXdXtJ6osXk_ZTUKhWYoxFHQ8E,27408
|
|
3
3
|
dart/exception.py,sha256=evN1SFV7Bal5dQIIOnhYA0cRu6jSa0cOCiG7AkHZD5A,85
|
|
4
4
|
dart/old.py,sha256=Dx7su_6Qwtw25xgRhm3vnV-mPajqNdXfnLrlRPz7pjE,7609
|
|
5
5
|
dart/order_manager.py,sha256=WI8YEjdOuEFDNcRCm30INAA5lY8016ttt0yXElGIeUU,1882
|
|
@@ -8,7 +8,7 @@ dart/generated/__init__.py,sha256=8fO-FKZzuZzOUUaqtlgw7k08MUwNLf8Ll-cAt7BgmAU,15
|
|
|
8
8
|
dart/generated/client.py,sha256=o_mdLqyBCQstu5tS1WZFwqIEbGwkvWQ7eQjuCJw_5VY,12419
|
|
9
9
|
dart/generated/errors.py,sha256=gO8GBmKqmSNgAg-E5oT-oOyxztvp7V_6XG7OUTT15q0,546
|
|
10
10
|
dart/generated/types.py,sha256=E1hhDh_zXfsSQ0NCt9-uw90_Mr5iIlsdfnfvxv5HarU,1005
|
|
11
|
-
dart/generated/api/__init__.py,sha256=
|
|
11
|
+
dart/generated/api/__init__.py,sha256=OPDj-sHmXE5kFS5-BZ6sFHpSf0Ka3Qexcoeka6K1dGw,565
|
|
12
12
|
dart/generated/api/attachment/__init__.py,sha256=5vd9uJWAjRqa9xzxzYkLD1yoZ12Ld_bAaNB5WX4fbE8,56
|
|
13
13
|
dart/generated/api/attachment/add_task_attachment_from_url.py,sha256=WdaSorFXIhYH9uzCYuVbvz4G3gDZyMxOvKXO5oHjUFY,5171
|
|
14
14
|
dart/generated/api/comment/__init__.py,sha256=5vd9uJWAjRqa9xzxzYkLD1yoZ12Ld_bAaNB5WX4fbE8,56
|
|
@@ -31,14 +31,16 @@ dart/generated/api/help_center_article/list_help_center_articles.py,sha256=NClNQ
|
|
|
31
31
|
dart/generated/api/skill/__init__.py,sha256=5vd9uJWAjRqa9xzxzYkLD1yoZ12Ld_bAaNB5WX4fbE8,56
|
|
32
32
|
dart/generated/api/skill/retrieve_skill_by_title.py,sha256=NZFdBSpfNIKcZAl4lvfkNK2yXKEGBun3pLLiDOkBZko,4777
|
|
33
33
|
dart/generated/api/task/__init__.py,sha256=5vd9uJWAjRqa9xzxzYkLD1yoZ12Ld_bAaNB5WX4fbE8,56
|
|
34
|
+
dart/generated/api/task/add_task_time_tracking.py,sha256=9DzTNNCO19euKwkqlbwokpunbvXo256LzzOUO1OcNOg,4959
|
|
34
35
|
dart/generated/api/task/create_task.py,sha256=KpqYYhRR2UDaC-Wh3tvJXYI1pqP_-Qh8Fx77GtQQNgM,4845
|
|
35
36
|
dart/generated/api/task/delete_task.py,sha256=3cpKEcUTKTPkvEW1s7fEXGDVUcNIbAx8AV21R2H2Dxw,4381
|
|
36
37
|
dart/generated/api/task/get_task.py,sha256=Cmf0FPrbGxzIEO22BrcsixDs_HCEqw07L_MZn8bPXUc,4442
|
|
37
38
|
dart/generated/api/task/list_tasks.py,sha256=dDksX4cLxA-gxY3FE3UCdTR9WZTQpcG2GVPx9J1R9_Q,29265
|
|
39
|
+
dart/generated/api/task/move_task.py,sha256=N6b5T3jqT5YwLeNQ5niVkcF48Wk6UCU000tAsDtBm3w,5042
|
|
38
40
|
dart/generated/api/task/update_task.py,sha256=5f8wbMwQqRHya7D-iMFOcSL2VF1-flBUIIOYRJ1PjOA,5183
|
|
39
41
|
dart/generated/api/view/__init__.py,sha256=5vd9uJWAjRqa9xzxzYkLD1yoZ12Ld_bAaNB5WX4fbE8,56
|
|
40
42
|
dart/generated/api/view/get_view.py,sha256=11OjxQnER-ct9gYC0ckA_JOPwKe5BYoYWHvcyGMkr8E,4370
|
|
41
|
-
dart/generated/models/__init__.py,sha256=
|
|
43
|
+
dart/generated/models/__init__.py,sha256=vh826XSfqCDR4hmWE7VlSWrlVpeSpupQsAOBHlGS4hk,5786
|
|
42
44
|
dart/generated/models/attachment.py,sha256=snnuBPthcyqUEZ1dyR2Hgs082OhqW0q8AkwNneswu80,1625
|
|
43
45
|
dart/generated/models/attachment_create_from_url.py,sha256=b2HizDIwLCuWOVLXzfvo2ztWdgQ6VLFcvdhavn87--k,1699
|
|
44
46
|
dart/generated/models/comment.py,sha256=kLh7iDCW9uTq4kHxi_MSys4uTBpaZj2k5lIKUTkpSUY,2735
|
|
@@ -54,14 +56,22 @@ dart/generated/models/folder.py,sha256=9UkpSZ31HYMNnJ_kyDepEDQI1YWjLkZBbdCGhcndy
|
|
|
54
56
|
dart/generated/models/list_comments_o_item.py,sha256=N4zhK9euG0-r0nvT961QEQ0RLzFYqJ3J6HzTjNKntr8,230
|
|
55
57
|
dart/generated/models/list_docs_o_item.py,sha256=x_DvPR1CHnST6MggjTUXk75Z-rxVLC9ctLazWnfLAMs,386
|
|
56
58
|
dart/generated/models/list_tasks_o_item.py,sha256=CWVGQ20u71IEiuXnSp-5xvTLY7SE6C4qcCwaz_GF7N8,396
|
|
57
|
-
dart/generated/models/paginated_comment_list.py,sha256=
|
|
58
|
-
dart/generated/models/
|
|
59
|
-
dart/generated/models/
|
|
59
|
+
dart/generated/models/paginated_comment_list.py,sha256=RUp6LS3NGZTiwxceskceWGLW3VP89nIe-v-K_usiUrY,5109
|
|
60
|
+
dart/generated/models/paginated_comment_list_meta_type_0.py,sha256=_h8mzsFnYyKgjxzwX6_HC4x_RwGuwXcUMEB6woC2jhU,4323
|
|
61
|
+
dart/generated/models/paginated_comment_list_meta_type_0_applied_default_filters.py,sha256=Whwg1FcN6Rew_NEYJitKIasPsYDcx8yFkusP5ILONd4,1475
|
|
62
|
+
dart/generated/models/paginated_concise_doc_list.py,sha256=AtW5YHWZ7gePjy2qXiyqSO0mwiuO8uuE6LPpu7B-w80,5189
|
|
63
|
+
dart/generated/models/paginated_concise_doc_list_meta_type_0.py,sha256=WxIlp-7dyCb1s3Qb6fW90qPwb64IBuioHC8sNWz6Y_w,4367
|
|
64
|
+
dart/generated/models/paginated_concise_doc_list_meta_type_0_applied_default_filters.py,sha256=wEhyHxYpWGToJq9Nd9yOHyerF_XX2ZikEw3_hxalH1U,1493
|
|
65
|
+
dart/generated/models/paginated_concise_task_list.py,sha256=j4jGA-F-NDs7ChrccJOmTi06NxlcAH6GtosHNG5wSo0,5213
|
|
66
|
+
dart/generated/models/paginated_concise_task_list_meta_type_0.py,sha256=-j8xkt22u0hHu-Fnun3N4iE8y7AX_vtcUh-BBl4yMJg,4380
|
|
67
|
+
dart/generated/models/paginated_concise_task_list_meta_type_0_applied_default_filters.py,sha256=Dz50iSPJ-WfrV7CVU58clHFX-Fw-zQ5BsJvsHl3oK1k,1498
|
|
60
68
|
dart/generated/models/priority.py,sha256=eupjzXQndyaia8svwVmylisIGwl6OQ_0g8pgcsm8118,195
|
|
61
69
|
dart/generated/models/skill.py,sha256=sUbxzNB9ny4i1ZUBKuiC7CEWM3y7cpbovF9mfF3UCQM,1949
|
|
62
70
|
dart/generated/models/task.py,sha256=YAJtaLB97gGp8IfuwlhRJsS8OVDuzPu7TdmWphEJoEA,16802
|
|
63
71
|
dart/generated/models/task_create.py,sha256=l4dMsMAmZEwO_nxpRXrlg-YuvXqg7xxcBvNc2V9XxyE,13510
|
|
72
|
+
dart/generated/models/task_move.py,sha256=CbNWeGy2ddQl1D6VFK5uWnbVq72PEaRpJj_mGKZ2L9Y,3221
|
|
64
73
|
dart/generated/models/task_relationships_type_0.py,sha256=nya2axJQyf5Dm9Lfr58uWH81YMbpATdkFuhCQJW2GMQ,4201
|
|
74
|
+
dart/generated/models/task_time_tracking_create.py,sha256=WEf9hD2d6segNv69ywvApG2SHUhD1WqymUJ2JxZ1HAU,2441
|
|
65
75
|
dart/generated/models/task_update.py,sha256=S-tYjMQdcafQRnGShyNPMmrrA3NOOp_nQBOf_iowYI4,13753
|
|
66
76
|
dart/generated/models/time_tracking_entry.py,sha256=vvxoHmgKpHDnryE-9_fCHaWZjQT9FyaZ9_YT-zlzm1Y,1470
|
|
67
77
|
dart/generated/models/user.py,sha256=6lsWhxINsGFTa7yL5i8W6wlkhnlFB6lnJee6y8Dq7ik,1675
|
|
@@ -90,9 +100,9 @@ dart/generated/models/wrapped_task.py,sha256=TRlVMxIGhDwSaJlXdMH6q7Vx2hpz7EdiGns
|
|
|
90
100
|
dart/generated/models/wrapped_task_create.py,sha256=Oxdot2EwfEuC3l4uo0fAvmyjRNVkXALmWCvfgHI7BcI,1654
|
|
91
101
|
dart/generated/models/wrapped_task_update.py,sha256=_erGSSR_k6ahF_RFjgLKdyitx5TDQiFw_Ml77zHQdJM,1654
|
|
92
102
|
dart/generated/models/wrapped_view.py,sha256=zflJxA4UnITM8w-0EObw4AF54yS-c_e5UL6vaikXyG8,1577
|
|
93
|
-
dart_tools-0.8.
|
|
94
|
-
dart_tools-0.8.
|
|
95
|
-
dart_tools-0.8.
|
|
96
|
-
dart_tools-0.8.
|
|
97
|
-
dart_tools-0.8.
|
|
98
|
-
dart_tools-0.8.
|
|
103
|
+
dart_tools-0.8.7.dist-info/licenses/LICENSE,sha256=aD_0TnuylEaAHWNURgifNek_ODn5Pg36o9gFdspgHtg,1061
|
|
104
|
+
dart_tools-0.8.7.dist-info/METADATA,sha256=kzq6CsVRLmTRuGl8R1NRRUNgaGnVb4e2aCIt4awAKoQ,6743
|
|
105
|
+
dart_tools-0.8.7.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
106
|
+
dart_tools-0.8.7.dist-info/entry_points.txt,sha256=KOVAnDWJbSKn9HoXWQ7x6NfACYzSMGHBBaBxonHEv6w,34
|
|
107
|
+
dart_tools-0.8.7.dist-info/top_level.txt,sha256=ZwUQ6QjCyi1i32BJOAkbOA7UfgitLmIwToJGJwZXPrg,5
|
|
108
|
+
dart_tools-0.8.7.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|