documente_shared 0.1.57__tar.gz → 0.1.59__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 documente_shared might be problematic. Click here for more details.

Files changed (22) hide show
  1. {documente_shared-0.1.57 → documente_shared-0.1.59}/PKG-INFO +1 -1
  2. {documente_shared-0.1.57 → documente_shared-0.1.59}/documente_shared/domain/entities/document.py +14 -0
  3. {documente_shared-0.1.57 → documente_shared-0.1.59}/documente_shared/domain/enums.py +1 -0
  4. {documente_shared-0.1.57 → documente_shared-0.1.59}/pyproject.toml +1 -1
  5. {documente_shared-0.1.57 → documente_shared-0.1.59}/README.md +0 -0
  6. {documente_shared-0.1.57 → documente_shared-0.1.59}/documente_shared/__init__.py +0 -0
  7. {documente_shared-0.1.57 → documente_shared-0.1.59}/documente_shared/application/__init__.py +0 -0
  8. {documente_shared-0.1.57 → documente_shared-0.1.59}/documente_shared/application/digest.py +0 -0
  9. {documente_shared-0.1.57 → documente_shared-0.1.59}/documente_shared/application/exceptions.py +0 -0
  10. {documente_shared-0.1.57 → documente_shared-0.1.59}/documente_shared/application/time_utils.py +0 -0
  11. {documente_shared-0.1.57 → documente_shared-0.1.59}/documente_shared/application/timezone.py +0 -0
  12. {documente_shared-0.1.57 → documente_shared-0.1.59}/documente_shared/domain/__init__.py +0 -0
  13. {documente_shared-0.1.57 → documente_shared-0.1.59}/documente_shared/domain/base_enum.py +0 -0
  14. {documente_shared-0.1.57 → documente_shared-0.1.59}/documente_shared/domain/constants.py +0 -0
  15. {documente_shared-0.1.57 → documente_shared-0.1.59}/documente_shared/domain/entities/__init__.py +0 -0
  16. {documente_shared-0.1.57 → documente_shared-0.1.59}/documente_shared/domain/entities/document_metadata.py +0 -0
  17. {documente_shared-0.1.57 → documente_shared-0.1.59}/documente_shared/domain/repositories.py +0 -0
  18. {documente_shared-0.1.57 → documente_shared-0.1.59}/documente_shared/infrastructure/__init__.py +0 -0
  19. {documente_shared-0.1.57 → documente_shared-0.1.59}/documente_shared/infrastructure/dynamo_repositories.py +0 -0
  20. {documente_shared-0.1.57 → documente_shared-0.1.59}/documente_shared/infrastructure/dynamo_table.py +0 -0
  21. {documente_shared-0.1.57 → documente_shared-0.1.59}/documente_shared/infrastructure/s3_bucket.py +0 -0
  22. {documente_shared-0.1.57 → documente_shared-0.1.59}/documente_shared/infrastructure/sqs_queue.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: documente_shared
3
- Version: 0.1.57
3
+ Version: 0.1.59
4
4
  Summary: Shared utilities for Documente AI projects
5
5
  License: MIT
6
6
  Author: Tech
@@ -43,6 +43,7 @@ class DocumentProcessing(object):
43
43
  started_at: Optional[datetime] = None
44
44
  failed_at: Optional[datetime] = None
45
45
  failed_reason: Optional[str] = None
46
+ feedback: Optional[list | dict] = None
46
47
  completed_at: Optional[datetime] = None
47
48
  metadata_items: Optional[List[DocumentProcessingMetadata]] = None
48
49
 
@@ -65,6 +66,10 @@ class DocumentProcessing(object):
65
66
  def is_completed(self) -> bool:
66
67
  return self.status == DocumentProcessingStatus.COMPLETED
67
68
 
69
+ @property
70
+ def is_incomplete(self) -> bool:
71
+ return self.status == DocumentProcessingStatus.INCOMPLETE
72
+
68
73
  @property
69
74
  def is_failed(self) -> bool:
70
75
  return self.status == DocumentProcessingStatus.FAILED
@@ -90,6 +95,7 @@ class DocumentProcessing(object):
90
95
 
91
96
  def pending(self, timezone: tzinfo = la_paz_tz):
92
97
  self.status = DocumentProcessingStatus.PENDING
98
+ self.started_at = None
93
99
  self.uploaded_at = datetime.now(tz=timezone)
94
100
 
95
101
  def enqueue(self, timezone: tzinfo = la_paz_tz):
@@ -112,6 +118,11 @@ class DocumentProcessing(object):
112
118
  def completed(self, timezone: tzinfo = la_paz_tz):
113
119
  self.status = DocumentProcessingStatus.COMPLETED
114
120
  self.completed_at = datetime.now(tz=timezone)
121
+ self.failed_reason = None
122
+
123
+ def incomplete(self, timezone: tzinfo = la_paz_tz):
124
+ self.status = DocumentProcessingStatus.INCOMPLETE
125
+ self.completed_at = datetime.now(tz=timezone)
115
126
 
116
127
  def deleted(self):
117
128
  self.status = DocumentProcessingStatus.DELETED
@@ -200,6 +211,7 @@ class DocumentProcessing(object):
200
211
  'started_at': self.started_at.isoformat() if self.started_at else None,
201
212
  'failed_at': self.failed_at.isoformat() if self.failed_at else None,
202
213
  'failed_reason': self.failed_reason,
214
+ 'feedback': self.feedback,
203
215
  'completed_at': self.completed_at.isoformat() if self.completed_at else None,
204
216
  'metadata_items': [metadata.to_dict for metadata in self.metadata_items],
205
217
  }
@@ -239,6 +251,7 @@ class DocumentProcessing(object):
239
251
  'started_at',
240
252
  'failed_at',
241
253
  'failed_reason',
254
+ 'feedback',
242
255
  'completed_at',
243
256
  ]
244
257
  for _property in instance_properties:
@@ -284,6 +297,7 @@ class DocumentProcessing(object):
284
297
  started_at=get_datetime_from_data(input_datetime=data.get('started_at')),
285
298
  failed_at=get_datetime_from_data(input_datetime=data.get('failed_at')),
286
299
  failed_reason=data.get('failed_reason'),
300
+ feedback=data.get('feedback'),
287
301
  completed_at=get_datetime_from_data(input_datetime=data.get('completed_at')),
288
302
  metadata_items=[
289
303
  DocumentProcessingMetadata.from_dict(metadata)
@@ -6,6 +6,7 @@ class DocumentProcessingStatus(BaseEnum):
6
6
  ENQUEUED = 'ENQUEUED'
7
7
  PROCESSING = 'PROCESSING'
8
8
  COMPLETED = 'COMPLETED'
9
+ INCOMPLETE = 'INCOMPLETE'
9
10
  FAILED = 'FAILED'
10
11
  DELETED = 'DELETED'
11
12
  CANCELLED = 'CANCELLED'
@@ -1,6 +1,6 @@
1
1
  [tool.poetry]
2
2
  name = "documente_shared"
3
- version = "0.1.57"
3
+ version = "0.1.59"
4
4
  description = "Shared utilities for Documente AI projects"
5
5
  authors = ["Tech <tech@llamitai.com>"]
6
6
  license = "MIT"