phenoml 0.0.7__py3-none-any.whl → 0.0.8__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.
Files changed (28) hide show
  1. phenoml/client.py +3 -0
  2. phenoml/core/client_wrapper.py +2 -2
  3. phenoml/summary/__init__.py +39 -0
  4. phenoml/summary/client.py +656 -0
  5. phenoml/summary/errors/__init__.py +11 -0
  6. phenoml/summary/errors/bad_request_error.py +10 -0
  7. phenoml/summary/errors/forbidden_error.py +10 -0
  8. phenoml/summary/errors/internal_server_error.py +10 -0
  9. phenoml/summary/errors/not_found_error.py +10 -0
  10. phenoml/summary/errors/unauthorized_error.py +10 -0
  11. phenoml/summary/raw_client.py +1190 -0
  12. phenoml/summary/types/__init__.py +31 -0
  13. phenoml/summary/types/create_summary_request_fhir_resources.py +8 -0
  14. phenoml/summary/types/create_summary_request_mode.py +5 -0
  15. phenoml/summary/types/create_summary_response.py +29 -0
  16. phenoml/summary/types/create_summary_template_response.py +23 -0
  17. phenoml/summary/types/fhir_bundle.py +23 -0
  18. phenoml/summary/types/fhir_bundle_entry_item.py +20 -0
  19. phenoml/summary/types/fhir_resource.py +24 -0
  20. phenoml/summary/types/summary_delete_template_response.py +20 -0
  21. phenoml/summary/types/summary_get_template_response.py +21 -0
  22. phenoml/summary/types/summary_list_templates_response.py +21 -0
  23. phenoml/summary/types/summary_template.py +41 -0
  24. phenoml/summary/types/summary_update_template_response.py +22 -0
  25. {phenoml-0.0.7.dist-info → phenoml-0.0.8.dist-info}/METADATA +1 -1
  26. {phenoml-0.0.7.dist-info → phenoml-0.0.8.dist-info}/RECORD +28 -6
  27. {phenoml-0.0.7.dist-info → phenoml-0.0.8.dist-info}/LICENSE +0 -0
  28. {phenoml-0.0.7.dist-info → phenoml-0.0.8.dist-info}/WHEEL +0 -0
@@ -0,0 +1,31 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ # isort: skip_file
4
+
5
+ from .create_summary_request_fhir_resources import CreateSummaryRequestFhirResources
6
+ from .create_summary_request_mode import CreateSummaryRequestMode
7
+ from .create_summary_response import CreateSummaryResponse
8
+ from .create_summary_template_response import CreateSummaryTemplateResponse
9
+ from .fhir_bundle import FhirBundle
10
+ from .fhir_bundle_entry_item import FhirBundleEntryItem
11
+ from .fhir_resource import FhirResource
12
+ from .summary_delete_template_response import SummaryDeleteTemplateResponse
13
+ from .summary_get_template_response import SummaryGetTemplateResponse
14
+ from .summary_list_templates_response import SummaryListTemplatesResponse
15
+ from .summary_template import SummaryTemplate
16
+ from .summary_update_template_response import SummaryUpdateTemplateResponse
17
+
18
+ __all__ = [
19
+ "CreateSummaryRequestFhirResources",
20
+ "CreateSummaryRequestMode",
21
+ "CreateSummaryResponse",
22
+ "CreateSummaryTemplateResponse",
23
+ "FhirBundle",
24
+ "FhirBundleEntryItem",
25
+ "FhirResource",
26
+ "SummaryDeleteTemplateResponse",
27
+ "SummaryGetTemplateResponse",
28
+ "SummaryListTemplatesResponse",
29
+ "SummaryTemplate",
30
+ "SummaryUpdateTemplateResponse",
31
+ ]
@@ -0,0 +1,8 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ from .fhir_bundle import FhirBundle
6
+ from .fhir_resource import FhirResource
7
+
8
+ CreateSummaryRequestFhirResources = typing.Union[FhirResource, FhirBundle]
@@ -0,0 +1,5 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ CreateSummaryRequestMode = typing.Union[typing.Literal["narrative", "flatten"], typing.Any]
@@ -0,0 +1,29 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ import pydantic
6
+ from ...core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel
7
+
8
+
9
+ class CreateSummaryResponse(UniversalBaseModel):
10
+ success: typing.Optional[bool] = None
11
+ message: typing.Optional[str] = None
12
+ summary: typing.Optional[str] = pydantic.Field(default=None)
13
+ """
14
+ Generated summary text
15
+ """
16
+
17
+ warnings: typing.Optional[typing.List[str]] = pydantic.Field(default=None)
18
+ """
19
+ Unresolved placeholders or issues (narrative mode only)
20
+ """
21
+
22
+ if IS_PYDANTIC_V2:
23
+ model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
24
+ else:
25
+
26
+ class Config:
27
+ frozen = True
28
+ smart_union = True
29
+ extra = pydantic.Extra.allow
@@ -0,0 +1,23 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ import pydantic
6
+ from ...core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel
7
+ from .summary_template import SummaryTemplate
8
+
9
+
10
+ class CreateSummaryTemplateResponse(UniversalBaseModel):
11
+ success: typing.Optional[bool] = None
12
+ message: typing.Optional[str] = None
13
+ template_id: typing.Optional[str] = None
14
+ template: typing.Optional[SummaryTemplate] = None
15
+
16
+ if IS_PYDANTIC_V2:
17
+ model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
18
+ else:
19
+
20
+ class Config:
21
+ frozen = True
22
+ smart_union = True
23
+ extra = pydantic.Extra.allow
@@ -0,0 +1,23 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ import pydantic
6
+ import typing_extensions
7
+ from ...core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel
8
+ from ...core.serialization import FieldMetadata
9
+ from .fhir_bundle_entry_item import FhirBundleEntryItem
10
+
11
+
12
+ class FhirBundle(UniversalBaseModel):
13
+ resource_type: typing_extensions.Annotated[typing.Literal["Bundle"], FieldMetadata(alias="resourceType")] = "Bundle"
14
+ entry: typing.List[FhirBundleEntryItem]
15
+
16
+ if IS_PYDANTIC_V2:
17
+ model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
18
+ else:
19
+
20
+ class Config:
21
+ frozen = True
22
+ smart_union = True
23
+ extra = pydantic.Extra.allow
@@ -0,0 +1,20 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ import pydantic
6
+ from ...core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel
7
+ from .fhir_resource import FhirResource
8
+
9
+
10
+ class FhirBundleEntryItem(UniversalBaseModel):
11
+ resource: typing.Optional[FhirResource] = None
12
+
13
+ if IS_PYDANTIC_V2:
14
+ model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
15
+ else:
16
+
17
+ class Config:
18
+ frozen = True
19
+ smart_union = True
20
+ extra = pydantic.Extra.allow
@@ -0,0 +1,24 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ import pydantic
6
+ import typing_extensions
7
+ from ...core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel
8
+ from ...core.serialization import FieldMetadata
9
+
10
+
11
+ class FhirResource(UniversalBaseModel):
12
+ resource_type: typing_extensions.Annotated[str, FieldMetadata(alias="resourceType")] = pydantic.Field()
13
+ """
14
+ FHIR resource type
15
+ """
16
+
17
+ if IS_PYDANTIC_V2:
18
+ model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
19
+ else:
20
+
21
+ class Config:
22
+ frozen = True
23
+ smart_union = True
24
+ extra = pydantic.Extra.allow
@@ -0,0 +1,20 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ import pydantic
6
+ from ...core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel
7
+
8
+
9
+ class SummaryDeleteTemplateResponse(UniversalBaseModel):
10
+ success: typing.Optional[bool] = None
11
+ message: typing.Optional[str] = None
12
+
13
+ if IS_PYDANTIC_V2:
14
+ model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
15
+ else:
16
+
17
+ class Config:
18
+ frozen = True
19
+ smart_union = True
20
+ extra = pydantic.Extra.allow
@@ -0,0 +1,21 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ import pydantic
6
+ from ...core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel
7
+ from .summary_template import SummaryTemplate
8
+
9
+
10
+ class SummaryGetTemplateResponse(UniversalBaseModel):
11
+ success: typing.Optional[bool] = None
12
+ template: typing.Optional[SummaryTemplate] = None
13
+
14
+ if IS_PYDANTIC_V2:
15
+ model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
16
+ else:
17
+
18
+ class Config:
19
+ frozen = True
20
+ smart_union = True
21
+ extra = pydantic.Extra.allow
@@ -0,0 +1,21 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ import pydantic
6
+ from ...core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel
7
+ from .summary_template import SummaryTemplate
8
+
9
+
10
+ class SummaryListTemplatesResponse(UniversalBaseModel):
11
+ success: typing.Optional[bool] = None
12
+ templates: typing.Optional[typing.List[SummaryTemplate]] = None
13
+
14
+ if IS_PYDANTIC_V2:
15
+ model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
16
+ else:
17
+
18
+ class Config:
19
+ frozen = True
20
+ smart_union = True
21
+ extra = pydantic.Extra.allow
@@ -0,0 +1,41 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import datetime as dt
4
+ import typing
5
+
6
+ import pydantic
7
+ from ...core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel
8
+
9
+
10
+ class SummaryTemplate(UniversalBaseModel):
11
+ id: typing.Optional[str] = None
12
+ user_id: typing.Optional[str] = None
13
+ name: typing.Optional[str] = None
14
+ description: typing.Optional[str] = None
15
+ template: typing.Optional[str] = pydantic.Field(default=None)
16
+ """
17
+ Template with {{resource.field}} placeholders
18
+ """
19
+
20
+ target_resources: typing.Optional[typing.List[str]] = pydantic.Field(default=None)
21
+ """
22
+ List of FHIR resource types/profiles
23
+ """
24
+
25
+ mode: typing.Optional[str] = pydantic.Field(default=None)
26
+ """
27
+ Template mode (stored value)
28
+ """
29
+
30
+ metadata: typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]] = None
31
+ created_at: typing.Optional[dt.datetime] = None
32
+ updated_at: typing.Optional[dt.datetime] = None
33
+
34
+ if IS_PYDANTIC_V2:
35
+ model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
36
+ else:
37
+
38
+ class Config:
39
+ frozen = True
40
+ smart_union = True
41
+ extra = pydantic.Extra.allow
@@ -0,0 +1,22 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ import pydantic
6
+ from ...core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel
7
+ from .summary_template import SummaryTemplate
8
+
9
+
10
+ class SummaryUpdateTemplateResponse(UniversalBaseModel):
11
+ success: typing.Optional[bool] = None
12
+ message: typing.Optional[str] = None
13
+ template: typing.Optional[SummaryTemplate] = None
14
+
15
+ if IS_PYDANTIC_V2:
16
+ model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
17
+ else:
18
+
19
+ class Config:
20
+ frozen = True
21
+ smart_union = True
22
+ extra = pydantic.Extra.allow
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: phenoml
3
- Version: 0.0.7
3
+ Version: 0.0.8
4
4
  Summary:
5
5
  Requires-Python: >=3.8,<4.0
6
6
  Classifier: Intended Audience :: Developers
@@ -47,7 +47,7 @@ phenoml/authtoken/raw_client.py,sha256=85R3SJneFJ-fxGXzYOz_Se01pJ9bKXDTB_BP903PL
47
47
  phenoml/authtoken/types/__init__.py,sha256=ruKn1OfqKNJmeB1h39vh7-8srePTRpWsqGQzCH9_vok,260
48
48
  phenoml/authtoken/types/bad_request_error_body.py,sha256=9D69GH2JTNatHxwC7fDlFhTmRKIJ3jRojQP3MwmJ1KI,672
49
49
  phenoml/authtoken/types/unauthorized_error_body.py,sha256=fqqAo2_kWj0nNwLjm1fd-2lQPu5QhPuJP0yB7yE8sRw,674
50
- phenoml/client.py,sha256=yy49_tjGWvQPD7QbdVUa82NDSAS22HjmdU0urgpzS84,7702
50
+ phenoml/client.py,sha256=ZFB3im-V4KaSdLAPF94s6nbfs-lOYyU7a4a6xelc6Go,7917
51
51
  phenoml/cohort/__init__.py,sha256=T7swsjx17aidvorMPqyak0JeX13MT4itAEQvNHNOxuE,320
52
52
  phenoml/cohort/client.py,sha256=4bA8cffE6EvLZVMveJ2_aGu90vtXUHYTfO0E9EQuN9U,3312
53
53
  phenoml/cohort/errors/__init__.py,sha256=su56D86txLO0suHwq_Yixg4EaMbSyaB00cma1beOFGE,312
@@ -85,7 +85,7 @@ phenoml/construe/types/unauthorized_error_body.py,sha256=j7msnWr6ENYKxLVrfi2ZTg4
85
85
  phenoml/construe/types/upload_request_format.py,sha256=5mJhMM7R7hn6gGQNDJT9lxPDsRpUkRzqNxtRU0Nnlls,158
86
86
  phenoml/core/__init__.py,sha256=lTcqUPXcx4112yLDd70RAPeqq6tu3eFMe1pKOqkW9JQ,1562
87
87
  phenoml/core/api_error.py,sha256=44vPoTyWN59gonCIZMdzw7M1uspygiLnr3GNFOoVL2Q,614
88
- phenoml/core/client_wrapper.py,sha256=NV5qStQ5OxhK6wEWWaxsk1MllbDh9bGHb2HB74UeRPg,2809
88
+ phenoml/core/client_wrapper.py,sha256=6ZudxaQ9t8ZjaT09V0Ta4cVIVwiOwUgYuZYy70wOxvc,2811
89
89
  phenoml/core/datetime_utils.py,sha256=nBys2IsYrhPdszxGKCNRPSOCwa-5DWOHG95FB8G9PKo,1047
90
90
  phenoml/core/file.py,sha256=d4NNbX8XvXP32z8KpK2Xovv33nFfruIrpz0QWxlgpZk,2663
91
91
  phenoml/core/force_multipart.py,sha256=awxh5MtcRYe74ehY8U76jzv6fYM_w_D3Rur7KQQzSDk,429
@@ -159,6 +159,28 @@ phenoml/lang2fhir/types/fhir_resource.py,sha256=EprHErQgwP_MkaCrul94OhkOWQcbvUjM
159
159
  phenoml/lang2fhir/types/lang2fhir_upload_profile_response.py,sha256=X41WiVztePQtZOcNRzNsder-h3rQTj94Y622HQ1izP8,721
160
160
  phenoml/lang2fhir/types/search_response.py,sha256=xM3jNTIl7XuxzCfvaYCzXiBryGXT4siH9UVCpbo0UgI,1019
161
161
  phenoml/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
162
+ phenoml/summary/__init__.py,sha256=0CioBmGauOx0MxDnrqvq3xVwi1XqmCKtwe2XEDmGYfs,1066
163
+ phenoml/summary/client.py,sha256=2Q8SkqSHUgNl659voCUPT6UasbX27IxkaHq8vU0fiRA,18744
164
+ phenoml/summary/errors/__init__.py,sha256=Wnvf4XPELmAIZ-jVxx2t-dBNZ-X9PcDxPSL5EHqJr1Q,434
165
+ phenoml/summary/errors/bad_request_error.py,sha256=nv0bK4gtOnTon6a2NdVxJxHBje_O_7wIoRtXLZHovUQ,339
166
+ phenoml/summary/errors/forbidden_error.py,sha256=ek8-sffTy9gY3F0zyaSkcskDVvq9puXP_YvvB2BJYbA,338
167
+ phenoml/summary/errors/internal_server_error.py,sha256=biBHJfSP1_zWF5CJgxY4B8wrL1uC18RSccQ-BCKmYNs,343
168
+ phenoml/summary/errors/not_found_error.py,sha256=hQ1KdyGQJCBQqo6iLu2-szlKJdzaoV5odq_7kdXAEbc,337
169
+ phenoml/summary/errors/unauthorized_error.py,sha256=h8T6QhXuTo0GLL9MKfIM5p--wDqlB1-ZkMp3lY-aM3E,341
170
+ phenoml/summary/raw_client.py,sha256=ar7TGzWoGM0XE0d5pZQFdu67NJ-PwQp0Bx0rOEvrbLg,47420
171
+ phenoml/summary/types/__init__.py,sha256=Cef3yEm0KM3HM0lnBut2uTLNgAhX1yocxrwA1ubNCdI,1231
172
+ phenoml/summary/types/create_summary_request_fhir_resources.py,sha256=afdDyX3UPCFrEjynP8XL_w9ulDbgojw8nAFVgZAolvE,232
173
+ phenoml/summary/types/create_summary_request_mode.py,sha256=YvRzzEGxaewryCyqGvJvpoOInjuB5GU1_1Mv3f2UODg,172
174
+ phenoml/summary/types/create_summary_response.py,sha256=8I4AVApJSZCzjIKvZUCIIQ5jBhO2IQBZqVV1VXKzavU,862
175
+ phenoml/summary/types/create_summary_template_response.py,sha256=mOujukt5jMKpTYTovvUagDjdvRIO3LJB2P0lCBzr5yc,751
176
+ phenoml/summary/types/fhir_bundle.py,sha256=ZP4LkXXUs18FQJyCvL1cSdQTas0mKWIYao815eM7qoU,798
177
+ phenoml/summary/types/fhir_bundle_entry_item.py,sha256=nhXcR4Rb68PFL0-l4oMH6kCKaAgTC3k4BXD984ly4gU,604
178
+ phenoml/summary/types/fhir_resource.py,sha256=GUtFqdTEyGJCGA2AOlZPLrwK3JA1dix20TtqBAvqjuU,726
179
+ phenoml/summary/types/summary_delete_template_response.py,sha256=xmgY1Eh6HgVj8y2n2lob7-cmhvbesy4syOd3Dy38rAs,606
180
+ phenoml/summary/types/summary_get_template_response.py,sha256=u71jGARazI2XECeqmRGk4hjF5X7sD3zm5z8eFUsWl7g,662
181
+ phenoml/summary/types/summary_list_templates_response.py,sha256=go45lFGp3KktaZq4lCGN5KV6SYbaik5bNvn5NkTV6xI,678
182
+ phenoml/summary/types/summary_template.py,sha256=eCM6BVMZC4jxp7d2PoIfcluflAMXa07oZcXf0nzytXM,1269
183
+ phenoml/summary/types/summary_update_template_response.py,sha256=1i_2LELTdulyXLNaEaN10Phy9KZfmGUBQCcj_9eZZy4,706
162
184
  phenoml/tools/__init__.py,sha256=tWbUCa1RVpte1Ov53WgLExOXvGT72Mol2JM1Ul3nj3M,989
163
185
  phenoml/tools/client.py,sha256=bEyLqb871q0juD2KmTstnIb4x4LpmCv-72-rqpEC_kg,11571
164
186
  phenoml/tools/errors/__init__.py,sha256=nIzg981R3USgSar0WuuVrpDVg-H5vIp2AceEzbhphGw,458
@@ -220,7 +242,7 @@ phenoml/workflows/types/workflows_delete_response.py,sha256=izcubUOnSNOgThD9Ozo6
220
242
  phenoml/workflows/types/workflows_get_response.py,sha256=gfNyUs14JSynprRwT-fuq4IDsGrPZmUSsK3WmgqIEi8,891
221
243
  phenoml/workflows/types/workflows_update_response.py,sha256=FEvQpC9ZRk8dV1oaIAwV5bSDD2tkXZ5fG4mozRjibuQ,1046
222
244
  phenoml/wrapper_client.py,sha256=JYTdhXgju4tOsata06wQY_ZbMsuMj3qaxkgvDzpY068,5022
223
- phenoml-0.0.7.dist-info/LICENSE,sha256=Am1fNNveR2gcmOloSWQTsnUw2SQEF8HtowFqIvlagfk,1064
224
- phenoml-0.0.7.dist-info/METADATA,sha256=Iu2IZeO82Ggtc5m7-v79JQHlGfGuNcT6YoshIa9JEFQ,5330
225
- phenoml-0.0.7.dist-info/WHEEL,sha256=Zb28QaM1gQi8f4VCBhsUklF61CTlNYfs9YAZn-TOGFk,88
226
- phenoml-0.0.7.dist-info/RECORD,,
245
+ phenoml-0.0.8.dist-info/LICENSE,sha256=Am1fNNveR2gcmOloSWQTsnUw2SQEF8HtowFqIvlagfk,1064
246
+ phenoml-0.0.8.dist-info/METADATA,sha256=_rm_FtMu-OFxS6oYzd06yahqlv0JBOpIViiY_yjYnfc,5330
247
+ phenoml-0.0.8.dist-info/WHEEL,sha256=Zb28QaM1gQi8f4VCBhsUklF61CTlNYfs9YAZn-TOGFk,88
248
+ phenoml-0.0.8.dist-info/RECORD,,