mindbridge-api-python-client 1.4.11__tar.gz → 1.5.0__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.
Files changed (54) hide show
  1. {mindbridge_api_python_client-1.4.11 → mindbridge_api_python_client-1.5.0}/PKG-INFO +1 -1
  2. {mindbridge_api_python_client-1.4.11 → mindbridge_api_python_client-1.5.0}/pyproject.toml +1 -1
  3. {mindbridge_api_python_client-1.4.11 → mindbridge_api_python_client-1.5.0}/src/mindbridgeapi/__init__.py +7 -9
  4. {mindbridge_api_python_client-1.4.11 → mindbridge_api_python_client-1.5.0}/src/mindbridgeapi/account_grouping_item.py +6 -0
  5. {mindbridge_api_python_client-1.4.11 → mindbridge_api_python_client-1.5.0}/src/mindbridgeapi/account_groupings.py +5 -7
  6. {mindbridge_api_python_client-1.4.11 → mindbridge_api_python_client-1.5.0}/src/mindbridgeapi/analyses.py +26 -5
  7. {mindbridge_api_python_client-1.4.11 → mindbridge_api_python_client-1.5.0}/src/mindbridgeapi/analysis_item.py +13 -0
  8. mindbridge_api_python_client-1.5.0/src/mindbridgeapi/analysis_result_item.py +25 -0
  9. mindbridge_api_python_client-1.5.0/src/mindbridgeapi/analysis_results.py +36 -0
  10. {mindbridge_api_python_client-1.4.11 → mindbridge_api_python_client-1.5.0}/src/mindbridgeapi/analysis_source_item.py +1 -2
  11. {mindbridge_api_python_client-1.4.11 → mindbridge_api_python_client-1.5.0}/src/mindbridgeapi/analysis_sources.py +1 -2
  12. {mindbridge_api_python_client-1.4.11 → mindbridge_api_python_client-1.5.0}/src/mindbridgeapi/async_result_item.py +5 -2
  13. {mindbridge_api_python_client-1.4.11 → mindbridge_api_python_client-1.5.0}/src/mindbridgeapi/async_results.py +1 -2
  14. {mindbridge_api_python_client-1.4.11 → mindbridge_api_python_client-1.5.0}/src/mindbridgeapi/data_tables.py +1 -2
  15. {mindbridge_api_python_client-1.4.11 → mindbridge_api_python_client-1.5.0}/src/mindbridgeapi/engagement_account_groupings.py +1 -2
  16. {mindbridge_api_python_client-1.4.11 → mindbridge_api_python_client-1.5.0}/src/mindbridgeapi/file_manager.py +1 -2
  17. {mindbridge_api_python_client-1.4.11 → mindbridge_api_python_client-1.5.0}/src/mindbridgeapi/file_manager_item.py +3 -1
  18. {mindbridge_api_python_client-1.4.11 → mindbridge_api_python_client-1.5.0}/src/mindbridgeapi/generated_pydantic_model/model.py +673 -115
  19. {mindbridge_api_python_client-1.4.11 → mindbridge_api_python_client-1.5.0}/src/mindbridgeapi/server.py +3 -0
  20. {mindbridge_api_python_client-1.4.11 → mindbridge_api_python_client-1.5.0}/src/mindbridgeapi/task_item.py +5 -0
  21. {mindbridge_api_python_client-1.4.11 → mindbridge_api_python_client-1.5.0}/src/mindbridgeapi/transaction_id_selection.py +3 -1
  22. {mindbridge_api_python_client-1.4.11 → mindbridge_api_python_client-1.5.0}/src/mindbridgeapi/virtual_column.py +3 -1
  23. {mindbridge_api_python_client-1.4.11 → mindbridge_api_python_client-1.5.0}/LICENSE.txt +0 -0
  24. {mindbridge_api_python_client-1.4.11 → mindbridge_api_python_client-1.5.0}/README.md +0 -0
  25. {mindbridge_api_python_client-1.4.11 → mindbridge_api_python_client-1.5.0}/src/mindbridgeapi/account_group_item.py +0 -0
  26. {mindbridge_api_python_client-1.4.11 → mindbridge_api_python_client-1.5.0}/src/mindbridgeapi/account_groups.py +0 -0
  27. {mindbridge_api_python_client-1.4.11 → mindbridge_api_python_client-1.5.0}/src/mindbridgeapi/accounting_period.py +0 -0
  28. {mindbridge_api_python_client-1.4.11 → mindbridge_api_python_client-1.5.0}/src/mindbridgeapi/analysis_period.py +0 -0
  29. {mindbridge_api_python_client-1.4.11 → mindbridge_api_python_client-1.5.0}/src/mindbridgeapi/analysis_source_type_item.py +0 -0
  30. {mindbridge_api_python_client-1.4.11 → mindbridge_api_python_client-1.5.0}/src/mindbridgeapi/analysis_source_types.py +0 -0
  31. {mindbridge_api_python_client-1.4.11 → mindbridge_api_python_client-1.5.0}/src/mindbridgeapi/analysis_type_item.py +0 -0
  32. {mindbridge_api_python_client-1.4.11 → mindbridge_api_python_client-1.5.0}/src/mindbridgeapi/analysis_types.py +0 -0
  33. {mindbridge_api_python_client-1.4.11 → mindbridge_api_python_client-1.5.0}/src/mindbridgeapi/base_set.py +0 -0
  34. {mindbridge_api_python_client-1.4.11 → mindbridge_api_python_client-1.5.0}/src/mindbridgeapi/chunked_file_item.py +0 -0
  35. {mindbridge_api_python_client-1.4.11 → mindbridge_api_python_client-1.5.0}/src/mindbridgeapi/chunked_file_part_item.py +0 -0
  36. {mindbridge_api_python_client-1.4.11 → mindbridge_api_python_client-1.5.0}/src/mindbridgeapi/chunked_files.py +0 -0
  37. {mindbridge_api_python_client-1.4.11 → mindbridge_api_python_client-1.5.0}/src/mindbridgeapi/column_mapping.py +0 -0
  38. {mindbridge_api_python_client-1.4.11 → mindbridge_api_python_client-1.5.0}/src/mindbridgeapi/common_validators.py +0 -0
  39. {mindbridge_api_python_client-1.4.11 → mindbridge_api_python_client-1.5.0}/src/mindbridgeapi/engagement_account_grouping_item.py +0 -0
  40. {mindbridge_api_python_client-1.4.11 → mindbridge_api_python_client-1.5.0}/src/mindbridgeapi/engagement_item.py +0 -0
  41. {mindbridge_api_python_client-1.4.11 → mindbridge_api_python_client-1.5.0}/src/mindbridgeapi/engagements.py +0 -0
  42. {mindbridge_api_python_client-1.4.11 → mindbridge_api_python_client-1.5.0}/src/mindbridgeapi/enumerations/analysis_source_type.py +0 -0
  43. {mindbridge_api_python_client-1.4.11 → mindbridge_api_python_client-1.5.0}/src/mindbridgeapi/enumerations/analysis_type.py +0 -0
  44. {mindbridge_api_python_client-1.4.11 → mindbridge_api_python_client-1.5.0}/src/mindbridgeapi/enumerations/deprecated_enum.py +0 -0
  45. {mindbridge_api_python_client-1.4.11 → mindbridge_api_python_client-1.5.0}/src/mindbridgeapi/enumerations/system_library.py +0 -0
  46. {mindbridge_api_python_client-1.4.11 → mindbridge_api_python_client-1.5.0}/src/mindbridgeapi/exceptions.py +0 -0
  47. {mindbridge_api_python_client-1.4.11 → mindbridge_api_python_client-1.5.0}/src/mindbridgeapi/file_result_item.py +0 -0
  48. {mindbridge_api_python_client-1.4.11 → mindbridge_api_python_client-1.5.0}/src/mindbridgeapi/file_results.py +0 -0
  49. {mindbridge_api_python_client-1.4.11 → mindbridge_api_python_client-1.5.0}/src/mindbridgeapi/libraries.py +0 -0
  50. {mindbridge_api_python_client-1.4.11 → mindbridge_api_python_client-1.5.0}/src/mindbridgeapi/library_item.py +0 -0
  51. {mindbridge_api_python_client-1.4.11 → mindbridge_api_python_client-1.5.0}/src/mindbridgeapi/organization_item.py +0 -0
  52. {mindbridge_api_python_client-1.4.11 → mindbridge_api_python_client-1.5.0}/src/mindbridgeapi/organizations.py +0 -0
  53. {mindbridge_api_python_client-1.4.11 → mindbridge_api_python_client-1.5.0}/src/mindbridgeapi/tasks.py +0 -0
  54. {mindbridge_api_python_client-1.4.11 → mindbridge_api_python_client-1.5.0}/src/mindbridgeapi/users.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: mindbridge-api-python-client
3
- Version: 1.4.11
3
+ Version: 1.5.0
4
4
  Summary: Interact with the MindBridge API
5
5
  Home-page: https://www.mindbridge.ai
6
6
  License: Proprietary
@@ -4,7 +4,7 @@ build-backend = "poetry.core.masonry.api"
4
4
 
5
5
  [tool.poetry]
6
6
  name = "mindbridge-api-python-client"
7
- version = "1.4.11"
7
+ version = "1.5.0"
8
8
  description = "Interact with the MindBridge API"
9
9
  license = "Proprietary"
10
10
  authors = [
@@ -19,23 +19,21 @@ from mindbridgeapi.engagement_item import EngagementItem
19
19
  from mindbridgeapi.enumerations.analysis_source_type import AnalysisSourceType
20
20
  from mindbridgeapi.enumerations.analysis_type import AnalysisType
21
21
  from mindbridgeapi.enumerations.system_library import SystemLibrary
22
- from mindbridgeapi.file_manager_item import FileManagerItem
22
+ from mindbridgeapi.file_manager_item import FileManagerItem, FileManagerType
23
23
  from mindbridgeapi.generated_pydantic_model.model import (
24
24
  PeriodType as AnalysisEffectiveDateMetricsPeriod,
25
25
  )
26
26
  from mindbridgeapi.generated_pydantic_model.model import Frequency
27
- from mindbridgeapi.generated_pydantic_model.model import Status4 as TaskStatus
28
27
  from mindbridgeapi.generated_pydantic_model.model import TargetWorkflowState
29
- from mindbridgeapi.generated_pydantic_model.model import Type5 as FileManagerType
30
- from mindbridgeapi.generated_pydantic_model.model import Type11 as TaskType
31
- from mindbridgeapi.generated_pydantic_model.model import Type13 as TransactionIdType
32
- from mindbridgeapi.generated_pydantic_model.model import Type17 as VirtualColumnType
33
28
  from mindbridgeapi.library_item import LibraryItem
34
29
  from mindbridgeapi.organization_item import OrganizationItem
35
30
  from mindbridgeapi.server import Server
36
- from mindbridgeapi.task_item import TaskItem
37
- from mindbridgeapi.transaction_id_selection import TransactionIdSelection
38
- from mindbridgeapi.virtual_column import VirtualColumn
31
+ from mindbridgeapi.task_item import TaskItem, TaskStatus, TaskType
32
+ from mindbridgeapi.transaction_id_selection import (
33
+ TransactionIdSelection,
34
+ TransactionIdType,
35
+ )
36
+ from mindbridgeapi.virtual_column import VirtualColumn, VirtualColumnType
39
37
 
40
38
  __all__ = [
41
39
  "AccountingPeriod",
@@ -17,6 +17,12 @@ from mindbridgeapi.generated_pydantic_model.model import (
17
17
  ApiAccountGroupingRead,
18
18
  ApiAccountGroupingUpdate,
19
19
  )
20
+ from mindbridgeapi.generated_pydantic_model.model import (
21
+ Type7 as _AccountGroupingFileType,
22
+ )
23
+
24
+ # Match the type of ApiImportAccountGroupingParamsCreateOnly.type:
25
+ AccountGroupingFileType = _AccountGroupingFileType
20
26
 
21
27
 
22
28
  def _empty_account_groups() -> Generator[AccountGroupItem, None, None]:
@@ -10,8 +10,11 @@ from dataclasses import dataclass
10
10
  from functools import cached_property
11
11
  import logging
12
12
  from typing import TYPE_CHECKING, Any, Dict, Generator, Optional, Union
13
- from mindbridgeapi.account_grouping_item import AccountGroupingItem
14
- from mindbridgeapi.async_result_item import AsyncResultItem
13
+ from mindbridgeapi.account_grouping_item import (
14
+ AccountGroupingFileType,
15
+ AccountGroupingItem,
16
+ )
17
+ from mindbridgeapi.async_result_item import AsyncResultItem, AsyncResultType
15
18
  from mindbridgeapi.async_results import AsyncResults
16
19
  from mindbridgeapi.base_set import BaseSet
17
20
  from mindbridgeapi.exceptions import ItemError, ItemNotFoundError
@@ -19,16 +22,11 @@ from mindbridgeapi.generated_pydantic_model.model import (
19
22
  ApiImportAccountGroupingParamsCreateOnly,
20
23
  ApiImportAccountGroupingParamsUpdate,
21
24
  )
22
- from mindbridgeapi.generated_pydantic_model.model import (
23
- Type7 as AccountGroupingFileType,
24
- )
25
- from mindbridgeapi.generated_pydantic_model.model import Type1 as AsyncResultType
26
25
 
27
26
  if TYPE_CHECKING:
28
27
  from os import PathLike
29
28
  from pathlib import Path
30
29
 
31
-
32
30
  logger = logging.getLogger(__name__)
33
31
 
34
32
 
@@ -13,8 +13,9 @@ import logging
13
13
  from typing import TYPE_CHECKING, Any, Dict, Generator, Optional
14
14
  import warnings
15
15
  from mindbridgeapi.analysis_item import AnalysisItem
16
+ from mindbridgeapi.analysis_results import AnalysisResults
16
17
  from mindbridgeapi.analysis_sources import AnalysisSources
17
- from mindbridgeapi.async_result_item import AsyncResultItem
18
+ from mindbridgeapi.async_result_item import AsyncResultItem, AsyncResultType
18
19
  from mindbridgeapi.base_set import BaseSet
19
20
  from mindbridgeapi.data_tables import DataTables
20
21
  from mindbridgeapi.exceptions import (
@@ -30,7 +31,6 @@ from mindbridgeapi.generated_pydantic_model.model import (
30
31
  ApiEngagementRollForwardRequest,
31
32
  EntityType,
32
33
  )
33
- from mindbridgeapi.generated_pydantic_model.model import Type1 as AsyncResultType
34
34
  from mindbridgeapi.tasks import Tasks
35
35
 
36
36
  if TYPE_CHECKING:
@@ -257,19 +257,31 @@ class Analyses(BaseSet):
257
257
  if analysis.id is None:
258
258
  raise ItemNotFoundError
259
259
 
260
+ self.restart_analysis_results(analysis)
261
+ analysis_results_list = list(analysis.analysis_results)
262
+ if not analysis_results_list:
263
+ raise ValidationError(
264
+ f"Unable to find any analysis_results for: {analysis.id}. Possibly the "
265
+ "analysis has not been started yet?"
266
+ )
267
+
268
+ analysis_result = max(
269
+ analysis_results_list, key=lambda x: getattr(x, "creation_date", date.min)
270
+ )
271
+
260
272
  async_results = self.server.async_results.get(
261
273
  json={
262
274
  "$and": [
263
- {"entityId": {"$eq": analysis.id}},
275
+ {"entityId": {"$eq": analysis_result.id}},
264
276
  {"type": {"$eq": AsyncResultType.ANALYSIS_RUN}},
265
- {"entityType": {"$eq": EntityType.ANALYSIS}},
277
+ {"entityType": {"$eq": EntityType.ANALYSIS_RESULT}},
266
278
  ]
267
279
  }
268
280
  )
269
281
  async_results_list = list(async_results)
270
282
  if not async_results_list:
271
283
  raise ValidationError(
272
- f"Unable to find {EntityType.ANALYSIS} run status for: {analysis.id}."
284
+ f"Unable to find {AsyncResultType.ANALYSIS_RUN} for: {analysis.id}."
273
285
  " Possibly the analysis has not been started yet?"
274
286
  )
275
287
 
@@ -330,12 +342,21 @@ class Analyses(BaseSet):
330
342
  return self._restart_all_children(analysis)
331
343
 
332
344
  def _restart_all_children(self, analysis: AnalysisItem) -> AnalysisItem:
345
+ self.restart_analysis_results(analysis)
333
346
  self.restart_analysis_sources(analysis)
334
347
  self.restart_data_tables(analysis)
335
348
  self.restart_tasks(analysis)
336
349
 
337
350
  return analysis
338
351
 
352
+ def restart_analysis_results(self, analysis: AnalysisItem) -> None:
353
+ if analysis.id is None:
354
+ raise ItemNotFoundError
355
+
356
+ analysis.analysis_results = AnalysisResults(server=self.server).get(
357
+ json={"analysisId": {"$eq": analysis.id}}
358
+ )
359
+
339
360
  def restart_analysis_sources(self, analysis_item: AnalysisItem) -> None:
340
361
  if getattr(analysis_item, "id", None) is None:
341
362
  raise ItemNotFoundError
@@ -11,6 +11,7 @@ from typing import Any, Dict, Generator, List, Type, Union
11
11
  from pydantic import ConfigDict, Field, field_validator, model_validator
12
12
  from pydantic_core import PydanticUndefined
13
13
  from mindbridgeapi.analysis_period import AnalysisPeriod
14
+ from mindbridgeapi.analysis_result_item import AnalysisResultItem
14
15
  from mindbridgeapi.analysis_source_item import AnalysisSourceItem
15
16
  from mindbridgeapi.analysis_type_item import AnalysisTypeItem
16
17
  from mindbridgeapi.common_validators import (
@@ -28,6 +29,15 @@ from mindbridgeapi.generated_pydantic_model.model import (
28
29
  from mindbridgeapi.task_item import TaskItem
29
30
 
30
31
 
32
+ def _empty_analysis_results() -> Generator[AnalysisResultItem, None, None]:
33
+ """Empty generator function
34
+
35
+ This returns an empty generator function, it's use is to ensure analysis_results is
36
+ not None for the AnalysisItem class
37
+ """
38
+ yield from ()
39
+
40
+
31
41
  def _empty_analysis_sources() -> Generator[AnalysisSourceItem, None, None]:
32
42
  """Empty generator function
33
43
 
@@ -77,6 +87,9 @@ class AnalysisItem(ApiAnalysisRead):
77
87
  periodic: bool = Field().merge_field_infos(
78
88
  ApiAnalysisRead.model_fields["periodic"], default=False
79
89
  )
90
+ analysis_results: Generator[AnalysisResultItem, None, None] = Field(
91
+ default_factory=_empty_analysis_results, exclude=True
92
+ )
80
93
  analysis_sources: Generator[AnalysisSourceItem, None, None] = Field(
81
94
  default_factory=_empty_analysis_sources, exclude=True
82
95
  )
@@ -0,0 +1,25 @@
1
+ #
2
+ # Copyright MindBridge Analytics Inc. all rights reserved.
3
+ #
4
+ # This material is confidential and may not be copied, distributed,
5
+ # reversed engineered, decompiled or otherwise disseminated without
6
+ # the prior written consent of MindBridge Analytics Inc.
7
+ #
8
+
9
+ from pydantic import ConfigDict, field_validator, model_validator
10
+ from mindbridgeapi.common_validators import (
11
+ _convert_userinfo_to_useritem,
12
+ _warning_if_extra_fields,
13
+ )
14
+ from mindbridgeapi.generated_pydantic_model.model import ApiAnalysisResultRead
15
+
16
+
17
+ class AnalysisResultItem(ApiAnalysisResultRead):
18
+ model_config = ConfigDict(
19
+ extra="allow",
20
+ validate_assignment=True,
21
+ validate_default=True,
22
+ validate_return=True,
23
+ )
24
+ _a = model_validator(mode="after")(_warning_if_extra_fields)
25
+ _b = field_validator("*")(_convert_userinfo_to_useritem)
@@ -0,0 +1,36 @@
1
+ #
2
+ # Copyright MindBridge Analytics Inc. all rights reserved.
3
+ #
4
+ # This material is confidential and may not be copied, distributed,
5
+ # reversed engineered, decompiled or otherwise disseminated without
6
+ # the prior written consent of MindBridge Analytics Inc.
7
+ #
8
+
9
+ from dataclasses import dataclass
10
+ from functools import cached_property
11
+ from typing import Any, Dict, Generator, Optional
12
+ from mindbridgeapi.analysis_result_item import AnalysisResultItem
13
+ from mindbridgeapi.base_set import BaseSet
14
+
15
+
16
+ @dataclass
17
+ class AnalysisResults(BaseSet):
18
+ @cached_property
19
+ def base_url(self) -> str:
20
+ return f"{self.server.base_url}/analysis-results"
21
+
22
+ def get_by_id(self, id: str) -> AnalysisResultItem:
23
+ url = f"{self.base_url}/{id}"
24
+ resp_dict = super()._get_by_id(url=url)
25
+
26
+ return AnalysisResultItem.model_validate(resp_dict)
27
+
28
+ def get(
29
+ self, json: Optional[Dict[str, Any]] = None
30
+ ) -> Generator[AnalysisResultItem, None, None]:
31
+ if json is None:
32
+ json = {}
33
+
34
+ url = f"{self.base_url}/query"
35
+ for resp_dict in super()._get(url=url, json=json):
36
+ yield AnalysisResultItem.model_validate(resp_dict)
@@ -24,8 +24,7 @@ from mindbridgeapi.generated_pydantic_model.model import (
24
24
  ApiSplitByDelimiterVirtualColumnUpdate,
25
25
  ApiSplitByPositionVirtualColumnUpdate,
26
26
  )
27
- from mindbridgeapi.generated_pydantic_model.model import Type17 as VirtualColumnType
28
- from mindbridgeapi.virtual_column import VirtualColumn
27
+ from mindbridgeapi.virtual_column import VirtualColumn, VirtualColumnType
29
28
 
30
29
  if sys.version_info >= (3, 9):
31
30
  from typing import Annotated
@@ -11,7 +11,7 @@ from functools import cached_property
11
11
  import logging
12
12
  from typing import Any, Dict, Generator, Optional
13
13
  from mindbridgeapi.analysis_source_item import AnalysisSourceItem
14
- from mindbridgeapi.async_result_item import AsyncResultItem
14
+ from mindbridgeapi.async_result_item import AsyncResultItem, AsyncResultType
15
15
  from mindbridgeapi.base_set import BaseSet
16
16
  from mindbridgeapi.exceptions import (
17
17
  ItemAlreadyExistsError,
@@ -25,7 +25,6 @@ from mindbridgeapi.generated_pydantic_model.model import (
25
25
  from mindbridgeapi.generated_pydantic_model.model import (
26
26
  PeriodType as AnalysisEffectiveDateMetricsPeriod,
27
27
  )
28
- from mindbridgeapi.generated_pydantic_model.model import Type1 as AsyncResultType
29
28
 
30
29
  logger = logging.getLogger(__name__)
31
30
 
@@ -14,11 +14,14 @@ from mindbridgeapi.common_validators import (
14
14
  )
15
15
  from mindbridgeapi.exceptions import ItemError, ItemNotFoundError, ValidationError
16
16
  from mindbridgeapi.generated_pydantic_model.model import ApiAsyncResult
17
- from mindbridgeapi.generated_pydantic_model.model import Status2 as AsyncResultStatus
18
- from mindbridgeapi.generated_pydantic_model.model import Type1 as AsyncResultType
17
+ from mindbridgeapi.generated_pydantic_model.model import Status3 as _AsyncResultStatus
18
+ from mindbridgeapi.generated_pydantic_model.model import Type1 as _AsyncResultType
19
19
 
20
20
  logger = logging.getLogger(__name__)
21
21
 
22
+ AsyncResultStatus = _AsyncResultStatus # Match the type of AsyncResultItem.status
23
+ AsyncResultType = _AsyncResultType # Match the type of AsyncResultItem.type
24
+
22
25
 
23
26
  class AsyncResultItem(ApiAsyncResult):
24
27
  model_config = ConfigDict(
@@ -11,14 +11,13 @@ from functools import cached_property
11
11
  import logging
12
12
  import time
13
13
  from typing import Any, Dict, Generator, List, Optional
14
- from mindbridgeapi.async_result_item import AsyncResultItem
14
+ from mindbridgeapi.async_result_item import AsyncResultItem, AsyncResultStatus
15
15
  from mindbridgeapi.base_set import BaseSet
16
16
  from mindbridgeapi.exceptions import (
17
17
  ItemNotFoundError,
18
18
  UnexpectedServerError,
19
19
  ValidationError,
20
20
  )
21
- from mindbridgeapi.generated_pydantic_model.model import Status2 as AsyncResultStatus
22
21
 
23
22
  logger = logging.getLogger(__name__)
24
23
 
@@ -11,7 +11,7 @@ from functools import cached_property
11
11
  import logging
12
12
  from typing import TYPE_CHECKING, Any, Dict, Generator, List, Optional
13
13
  import warnings
14
- from mindbridgeapi.async_result_item import AsyncResultItem
14
+ from mindbridgeapi.async_result_item import AsyncResultItem, AsyncResultType
15
15
  from mindbridgeapi.async_results import AsyncResults
16
16
  from mindbridgeapi.base_set import BaseSet
17
17
  from mindbridgeapi.exceptions import ItemError, ItemNotFoundError, ParameterError
@@ -22,7 +22,6 @@ from mindbridgeapi.generated_pydantic_model.model import (
22
22
  Direction,
23
23
  MindBridgeQueryTerm,
24
24
  )
25
- from mindbridgeapi.generated_pydantic_model.model import Type1 as AsyncResultType
26
25
  from mindbridgeapi.generated_pydantic_model.model import Type4 as DataTableColumnType
27
26
 
28
27
  if TYPE_CHECKING:
@@ -9,11 +9,10 @@
9
9
  from dataclasses import dataclass
10
10
  from functools import cached_property
11
11
  from typing import TYPE_CHECKING, Any, Dict, Generator, Optional
12
- from mindbridgeapi.async_result_item import AsyncResultItem
12
+ from mindbridgeapi.async_result_item import AsyncResultItem, AsyncResultType
13
13
  from mindbridgeapi.base_set import BaseSet
14
14
  from mindbridgeapi.engagement_account_grouping_item import EngagementAccountGroupingItem
15
15
  from mindbridgeapi.exceptions import ItemError, ItemNotFoundError
16
- from mindbridgeapi.generated_pydantic_model.model import Type1 as AsyncResultType
17
16
 
18
17
  if TYPE_CHECKING:
19
18
  from pathlib import Path
@@ -17,8 +17,7 @@ from mindbridgeapi.exceptions import (
17
17
  ItemError,
18
18
  ItemNotFoundError,
19
19
  )
20
- from mindbridgeapi.file_manager_item import FileManagerItem
21
- from mindbridgeapi.generated_pydantic_model.model import Type5 as FileManagerType
20
+ from mindbridgeapi.file_manager_item import FileManagerItem, FileManagerType
22
21
 
23
22
  if TYPE_CHECKING:
24
23
  from os import PathLike
@@ -22,10 +22,12 @@ from mindbridgeapi.generated_pydantic_model.model import (
22
22
  ApiFileManagerFileRead,
23
23
  ApiFileManagerFileUpdate,
24
24
  )
25
- from mindbridgeapi.generated_pydantic_model.model import Type5 as FileManagerType
25
+ from mindbridgeapi.generated_pydantic_model.model import Type5 as _FileManagerType
26
26
 
27
27
  logger = logging.getLogger(__name__)
28
28
 
29
+ FileManagerType = _FileManagerType # Match the type of FileManagerItem.status
30
+
29
31
 
30
32
  class FileManagerItem(ApiFileManagerFileRead):
31
33
  """A File or Directory on the File manager"""