nci-cidc-api-modules 1.2.42__py3-none-any.whl → 1.2.44__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 (73) hide show
  1. cidc_api/__init__.py +1 -1
  2. cidc_api/models/data.py +1 -1
  3. cidc_api/models/db/stage1/additional_treatment_orm.py +0 -1
  4. cidc_api/models/db/stage1/adverse_event_orm.py +0 -1
  5. cidc_api/models/db/stage1/baseline_clinical_assessment_orm.py +0 -1
  6. cidc_api/models/db/stage1/comorbidity_orm.py +0 -1
  7. cidc_api/models/db/stage1/consent_group_orm.py +0 -1
  8. cidc_api/models/db/stage1/demographic_orm.py +0 -1
  9. cidc_api/models/db/stage1/disease_orm.py +0 -1
  10. cidc_api/models/db/stage1/exposure_orm.py +0 -1
  11. cidc_api/models/db/stage1/gvhd_diagnosis_acute_orm.py +0 -1
  12. cidc_api/models/db/stage1/gvhd_diagnosis_chronic_orm.py +0 -1
  13. cidc_api/models/db/stage1/gvhd_organ_acute_orm.py +0 -1
  14. cidc_api/models/db/stage1/gvhd_organ_chronic_orm.py +0 -1
  15. cidc_api/models/db/stage1/medical_history_orm.py +0 -1
  16. cidc_api/models/db/stage1/other_malignancy_orm.py +0 -1
  17. cidc_api/models/db/stage1/participant_orm.py +1 -2
  18. cidc_api/models/db/stage1/prior_treatment_orm.py +0 -1
  19. cidc_api/models/db/stage1/radiotherapy_dose_orm.py +0 -1
  20. cidc_api/models/db/stage1/response_by_system_orm.py +0 -1
  21. cidc_api/models/db/stage1/response_orm.py +0 -1
  22. cidc_api/models/db/stage1/specimen_orm.py +0 -1
  23. cidc_api/models/db/stage1/stem_cell_transplant_orm.py +0 -1
  24. cidc_api/models/db/stage1/surgery_orm.py +0 -1
  25. cidc_api/models/db/stage1/therapy_agent_dose_orm.py +0 -1
  26. cidc_api/models/db/stage1/treatment_orm.py +0 -1
  27. cidc_api/models/db/stage1/trial_orm.py +0 -1
  28. cidc_api/models/db/stage2/additional_treatment_orm.py +0 -1
  29. cidc_api/models/db/stage2/administrative_person_orm.py +0 -1
  30. cidc_api/models/db/stage2/administrative_role_assignment_orm.py +0 -1
  31. cidc_api/models/db/stage2/adverse_event_orm.py +0 -1
  32. cidc_api/models/db/stage2/arm_orm.py +0 -1
  33. cidc_api/models/db/stage2/baseline_clinical_assessment_orm.py +0 -1
  34. cidc_api/models/db/stage2/cohort_orm.py +0 -1
  35. cidc_api/models/db/stage2/comorbidity_orm.py +0 -1
  36. cidc_api/models/db/stage2/consent_group_orm.py +0 -1
  37. cidc_api/models/db/stage2/contact_orm.py +0 -1
  38. cidc_api/models/db/stage2/demographic_orm.py +0 -1
  39. cidc_api/models/db/stage2/disease_orm.py +0 -1
  40. cidc_api/models/db/stage2/exposure_orm.py +0 -1
  41. cidc_api/models/db/stage2/file_orm.py +0 -1
  42. cidc_api/models/db/stage2/gvhd_diagnosis_acute_orm.py +0 -1
  43. cidc_api/models/db/stage2/gvhd_diagnosis_chronic_orm.py +0 -1
  44. cidc_api/models/db/stage2/gvhd_organ_acute_orm.py +0 -1
  45. cidc_api/models/db/stage2/gvhd_organ_chronic_orm.py +0 -1
  46. cidc_api/models/db/stage2/institution_orm.py +0 -1
  47. cidc_api/models/db/stage2/medical_history_orm.py +0 -1
  48. cidc_api/models/db/stage2/other_clinical_endpoint_orm.py +0 -1
  49. cidc_api/models/db/stage2/other_malignancy_orm.py +0 -1
  50. cidc_api/models/db/stage2/participant_orm.py +0 -1
  51. cidc_api/models/db/stage2/prior_treatment_orm.py +0 -1
  52. cidc_api/models/db/stage2/publication_orm.py +0 -1
  53. cidc_api/models/db/stage2/radiotherapy_dose_orm.py +0 -1
  54. cidc_api/models/db/stage2/response_by_system_orm.py +0 -1
  55. cidc_api/models/db/stage2/response_orm.py +0 -1
  56. cidc_api/models/db/stage2/shipment_orm.py +0 -1
  57. cidc_api/models/db/stage2/shipment_specimen_orm.py +0 -1
  58. cidc_api/models/db/stage2/specimen_orm.py +0 -1
  59. cidc_api/models/db/stage2/stem_cell_transplant_orm.py +0 -1
  60. cidc_api/models/db/stage2/surgery_orm.py +0 -1
  61. cidc_api/models/db/stage2/therapy_agent_dose_orm.py +0 -1
  62. cidc_api/models/db/stage2/treatment_orm.py +0 -1
  63. cidc_api/models/db/stage2/trial_orm.py +0 -1
  64. cidc_api/models/files/facets.py +4 -0
  65. cidc_api/models/models.py +12 -0
  66. cidc_api/models/types.py +1 -0
  67. cidc_api/shared/file_handling.py +13 -4
  68. cidc_api/shared/gcloud_client.py +44 -11
  69. {nci_cidc_api_modules-1.2.42.dist-info → nci_cidc_api_modules-1.2.44.dist-info}/METADATA +3 -2
  70. {nci_cidc_api_modules-1.2.42.dist-info → nci_cidc_api_modules-1.2.44.dist-info}/RECORD +73 -73
  71. {nci_cidc_api_modules-1.2.42.dist-info → nci_cidc_api_modules-1.2.44.dist-info}/WHEEL +0 -0
  72. {nci_cidc_api_modules-1.2.42.dist-info → nci_cidc_api_modules-1.2.44.dist-info}/licenses/LICENSE +0 -0
  73. {nci_cidc_api_modules-1.2.42.dist-info → nci_cidc_api_modules-1.2.44.dist-info}/top_level.txt +0 -0
cidc_api/__init__.py CHANGED
@@ -1 +1 @@
1
- __version__ = "1.2.42"
1
+ __version__ = "1.2.44"
cidc_api/models/data.py CHANGED
@@ -11,9 +11,9 @@ standard_data_categories = [
11
11
  # A class to hold the representation of a trial's dataset all at once
12
12
  class Dataset(dict):
13
13
  def __init__(self, *args, **kwargs):
14
- super().__init__(*args, **kwargs)
15
14
  for data_category in standard_data_categories:
16
15
  self[data_category] = []
16
+ super().__init__(*args, **kwargs)
17
17
 
18
18
 
19
19
  # Maps data categories like "treatment" to their associated pydantic model
@@ -10,7 +10,6 @@ from cidc_api.models.db.stage1.base_orm import BaseORM
10
10
  class AdditionalTreatmentORM(BaseORM):
11
11
  __tablename__ = "additional_treatment"
12
12
  __repr_attrs__ = ["additional_treatment_id", "participant_id"]
13
- __table_args__ = {"schema": "stage1"}
14
13
  __data_category__ = "additional_treatment"
15
14
 
16
15
  additional_treatment_id: Mapped[int] = mapped_column(primary_key=True)
@@ -20,7 +20,6 @@ from cidc_api.models.types import (
20
20
  class AdverseEventORM(BaseORM):
21
21
  __tablename__ = "adverse_event"
22
22
  __repr_attrs__ = ["adverse_event_id", "participant_id", "event_term"]
23
- __table_args__ = {"schema": "stage1"}
24
23
  __data_category__ = "adverse_event"
25
24
 
26
25
  adverse_event_id: Mapped[int] = mapped_column(primary_key=True)
@@ -9,7 +9,6 @@ from cidc_api.models.types import ECOGScore, KarnofskyScore
9
9
  class BaselineClinicalAssessmentORM(BaseORM):
10
10
  __tablename__ = "baseline_clinical_assessment"
11
11
  __repr_attrs__ = ["baseline_clinical_assessment_id", "participant_id"]
12
- __table_args__ = {"schema": "stage1"}
13
12
  __data_category__ = "baseline_clinical_assessment"
14
13
 
15
14
  baseline_clinical_assessment_id: Mapped[int] = mapped_column(primary_key=True)
@@ -9,7 +9,6 @@ from cidc_api.models.types import ICD10CMCode, ICD10CMTerm
9
9
  class ComorbidityORM(BaseORM):
10
10
  __tablename__ = "comorbidity"
11
11
  __repr_attrs__ = ["comorbidity_id", "comorbidity_term"]
12
- __table_args__ = {"schema": "stage1"}
13
12
  __data_category__ = "comorbidity"
14
13
 
15
14
  comorbidity_id: Mapped[int] = mapped_column(primary_key=True)
@@ -15,7 +15,6 @@ class ConsentGroupORM(BaseORM):
15
15
  ForeignKeyConstraint(
16
16
  ["trial_id", "version"], ["stage1.trial.trial_id", "stage1.trial.version"], ondelete="CASCADE"
17
17
  ),
18
- {"schema": "stage1"},
19
18
  )
20
19
  __data_category__ = "consent_group"
21
20
 
@@ -23,7 +23,6 @@ from cidc_api.models.types import (
23
23
  class DemographicORM(BaseORM):
24
24
  __tablename__ = "demographic"
25
25
  __repr_attrs__ = ["demographic_id", "participant_id", "age_at_enrollment", "sex"]
26
- __table_args__ = {"schema": "stage1"}
27
26
  __data_category__ = "demographic"
28
27
 
29
28
  demographic_id: Mapped[int] = mapped_column(primary_key=True)
@@ -29,7 +29,6 @@ class DiseaseORM(BaseORM):
29
29
  "disease_id",
30
30
  "participant_id",
31
31
  ]
32
- __table_args__ = {"schema": "stage1"}
33
32
  __data_category__ = "disease"
34
33
 
35
34
  disease_id: Mapped[int] = mapped_column(primary_key=True)
@@ -11,7 +11,6 @@ from cidc_api.models.types import YNU, ExposureType
11
11
  class ExposureORM(BaseORM):
12
12
  __tablename__ = "exposure"
13
13
  __repr_attrs__ = ["exposure_id", "exposure_type", "carcinogen_exposure"]
14
- __table_args__ = {"schema": "stage1"}
15
14
  __data_category__ = "exposure"
16
15
 
17
16
  exposure_id: Mapped[int] = mapped_column(primary_key=True)
@@ -17,7 +17,6 @@ class GVHDDiagnosisAcuteORM(BaseORM):
17
17
  __tablename__ = "gvhd_diagnosis_acute"
18
18
  __table_args__ = (
19
19
  UniqueConstraint("participant_id", "pre_or_post_enrollment", name="unique_ix_gvhd_diagnosis_acute_pre_or_post"),
20
- {"schema": "stage1"},
21
20
  )
22
21
  __repr_attrs__ = ["gvhd_diagnosis_acute_id", "pre_or_post_enrollment"]
23
22
  __data_category__ = "gvhd_diagnosis_acute"
@@ -19,7 +19,6 @@ class GVHDDiagnosisChronicORM(BaseORM):
19
19
  UniqueConstraint(
20
20
  "participant_id", "pre_or_post_enrollment", name="unique_ix_gvhd_diagnosis_chronic_pre_or_post"
21
21
  ),
22
- {"schema": "stage1"},
23
22
  )
24
23
  __repr_attrs__ = ["gvhd_diagnosis_chronic_id", "pre_or_post_enrollment"]
25
24
  __data_category__ = "gvhd_diagnosis_chronic"
@@ -9,7 +9,6 @@ from cidc_api.models.types import GVHDOrgan, GVHDOrganAcuteStage
9
9
  class GVHDOrganAcuteORM(BaseORM):
10
10
  __tablename__ = "gvhd_organ_acute"
11
11
  __repr_attrs__ = ["gvhd_organ_acute_id", "organ"]
12
- __table_args__ = {"schema": "stage1"}
13
12
  __data_category__ = "gvhd_organ_acute"
14
13
 
15
14
  gvhd_organ_acute_id: Mapped[int] = mapped_column(primary_key=True)
@@ -9,7 +9,6 @@ from cidc_api.models.types import GVHDOrgan, GVHDOrganChronicScore
9
9
  class GVHDOrganChronicORM(BaseORM):
10
10
  __tablename__ = "gvhd_organ_chronic"
11
11
  __repr_attrs__ = ["gvhd_organ_chronic_id", "organ"]
12
- __table_args__ = {"schema": "stage1"}
13
12
  __data_category__ = "gvhd_organ_chronic"
14
13
 
15
14
  gvhd_organ_chronic_id: Mapped[int] = mapped_column(primary_key=True)
@@ -12,7 +12,6 @@ from cidc_api.models.types import TobaccoSmokingStatus
12
12
  class MedicalHistoryORM(BaseORM):
13
13
  __tablename__ = "medical_history"
14
14
  __repr_attrs__ = ["medical_history_id"]
15
- __table_args__ = {"schema": "stage1"}
16
15
  __data_category__ = "medical_history"
17
16
 
18
17
  medical_history_id: Mapped[int] = mapped_column(primary_key=True)
@@ -10,7 +10,6 @@ from cidc_api.models.types import UberonAnatomicalTerm, ICDO3MorphologicalCode,
10
10
  class OtherMalignancyORM(BaseORM):
11
11
  __tablename__ = "other_malignancy"
12
12
  __repr_attrs__ = ["other_malignancy_id", "primary_disease_site"]
13
- __table_args__ = {"schema": "stage1"}
14
13
  __data_category__ = "other_malignancy"
15
14
 
16
15
  other_malignancy_id: Mapped[int] = mapped_column(primary_key=True)
@@ -10,12 +10,11 @@ from cidc_api.models.types import OffStudyReason, YNU
10
10
 
11
11
  class ParticipantORM(BaseORM):
12
12
  __tablename__ = "participant"
13
- __repr_attrs__ = ["native_participant_id", "cimac_participant_id"]
13
+ __repr_attrs__ = ["participant_id", "native_participant_id", "cimac_participant_id"]
14
14
  __table_args__ = (
15
15
  ForeignKeyConstraint(
16
16
  ["trial_id", "version"], ["stage1.trial.trial_id", "stage1.trial.version"], ondelete="CASCADE"
17
17
  ),
18
- {"schema": "stage1"},
19
18
  )
20
19
  __data_category__ = "participant"
21
20
 
@@ -13,7 +13,6 @@ from cidc_api.models.types import ConditioningRegimenType, StemCellDonorType
13
13
  class PriorTreatmentORM(BaseORM):
14
14
  __tablename__ = "prior_treatment"
15
15
  __repr_attrs__ = ["prior_treatment_id", "type"]
16
- __table_args__ = {"schema": "stage1"}
17
16
  __data_category__ = "prior_treatment"
18
17
 
19
18
  prior_treatment_id: Mapped[int] = mapped_column(primary_key=True)
@@ -17,7 +17,6 @@ from cidc_api.models.types import (
17
17
  class RadiotherapyDoseORM(BaseORM):
18
18
  __tablename__ = "radiotherapy_dose"
19
19
  __repr_attrs__ = ["radiotherapy_dose_id", "procedure"]
20
- __table_args__ = {"schema": "stage1"}
21
20
  __data_category__ = "radiotherapy_dose"
22
21
 
23
22
  radiotherapy_dose_id: Mapped[int] = mapped_column(primary_key=True)
@@ -10,7 +10,6 @@ from cidc_api.models.types import ResponseSystem, ResponseSystemVersion, BestOve
10
10
  class ResponseBySystemORM(BaseORM):
11
11
  __tablename__ = "response_by_system"
12
12
  __repr_attrs__ = ["response_by_system_id", "participant_id"]
13
- __table_args__ = {"schema": "stage1"}
14
13
  __data_category__ = "response_by_system"
15
14
 
16
15
  response_by_system_id: Mapped[int] = mapped_column(primary_key=True)
@@ -11,7 +11,6 @@ from cidc_api.models.types import SurvivalStatus, YNUNA, CauseOfDeath
11
11
  class ResponseORM(BaseORM):
12
12
  __tablename__ = "response"
13
13
  __repr_attrs__ = ["response_id", "participant_id"]
14
- __table_args__ = {"schema": "stage1"}
15
14
  __data_category__ = "response"
16
15
 
17
16
  response_id: Mapped[int] = mapped_column(primary_key=True)
@@ -33,7 +33,6 @@ from cidc_api.models.types import (
33
33
  class SpecimenORM(BaseORM):
34
34
  __tablename__ = "specimen"
35
35
  __repr_attrs__ = ["specimen_id", "participant_id", "cimac_id"]
36
- __table_args__ = {"schema": "stage1"}
37
36
  __data_category__ = "specimen"
38
37
 
39
38
  specimen_id: Mapped[int] = mapped_column(primary_key=True)
@@ -11,7 +11,6 @@ from cidc_api.models.types import StemCellDonorType, AllogeneicDonorType, StemCe
11
11
  class StemCellTransplantORM(BaseORM):
12
12
  __tablename__ = "stem_cell_transplant"
13
13
  __repr_attrs__ = ["stem_cell_transplant_id"]
14
- __table_args__ = {"schema": "stage1"}
15
14
  __data_category__ = "stem_cell_transplant"
16
15
 
17
16
  stem_cell_transplant_id: Mapped[int] = mapped_column(primary_key=True)
@@ -11,7 +11,6 @@ from cidc_api.models.types import SurgicalProcedure, UberonAnatomicalTerm, YNU
11
11
  class SurgeryORM(BaseORM):
12
12
  __tablename__ = "surgery"
13
13
  __repr_attrs__ = ["surgery_id", "procedure"]
14
- __table_args__ = {"schema": "stage1"}
15
14
  __data_category__ = "surgery"
16
15
 
17
16
  surgery_id: Mapped[int] = mapped_column(primary_key=True)
@@ -11,7 +11,6 @@ from cidc_api.models.types import TherapyAgentDoseUnits, YNU
11
11
  class TherapyAgentDoseORM(BaseORM):
12
12
  __tablename__ = "therapy_agent_dose"
13
13
  __repr_attrs__ = ["therapy_agent_dose_id", "therapy_agent_name"]
14
- __table_args__ = {"schema": "stage1"}
15
14
  __data_category__ = "therapy_agent_dose"
16
15
 
17
16
  therapy_agent_dose_id: Mapped[int] = mapped_column(primary_key=True)
@@ -11,7 +11,6 @@ from cidc_api.models.types import YNU, OffTreatmentReason
11
11
  class TreatmentORM(BaseORM):
12
12
  __tablename__ = "treatment"
13
13
  __repr_attrs__ = ["treatment_id", "participant_id", "treatment_description"]
14
- __table_args__ = {"schema": "stage1"}
15
14
  __data_category__ = "treatment"
16
15
 
17
16
  treatment_id: Mapped[int] = mapped_column(primary_key=True)
@@ -13,7 +13,6 @@ from cidc_api.models.types import PrimaryPurposeType, AgeGroup
13
13
  class TrialORM(BaseORM):
14
14
  __tablename__ = "trial"
15
15
  __repr_attrs__ = ["trial_id", "version"]
16
- __table_args__ = {"schema": "stage1"}
17
16
  __data_category__ = "study"
18
17
 
19
18
  trial_id: Mapped[str] = mapped_column(primary_key=True)
@@ -10,7 +10,6 @@ from cidc_api.models.db.stage2.base_orm import BaseORM
10
10
  class AdditionalTreatmentORM(BaseORM):
11
11
  __tablename__ = "additional_treatment"
12
12
  __repr_attrs__ = ["additional_treatment_id", "participant_id"]
13
- __table_args__ = {"schema": "stage2"}
14
13
  __data_category__ = "additional_treatment"
15
14
 
16
15
  additional_treatment_id: Mapped[int] = mapped_column(primary_key=True)
@@ -10,7 +10,6 @@ from cidc_api.models.db.stage2.base_orm import BaseORM
10
10
  class AdministrativePersonORM(BaseORM):
11
11
  __tablename__ = "administrative_person"
12
12
  __repr_attrs__ = ["first_name", "last_name"]
13
- __table_args__ = {"schema": "stage2"}
14
13
 
15
14
  administrative_person_id: Mapped[int] = mapped_column(primary_key=True)
16
15
  institution_id: Mapped[int] = mapped_column(ForeignKey("stage2.institution.institution_id", ondelete="CASCADE"))
@@ -13,7 +13,6 @@ class AdministrativeRoleAssignmentORM(BaseORM):
13
13
  ForeignKeyConstraint(
14
14
  ["trial_id", "version"], ["stage2.trial.trial_id", "stage2.trial.version"], ondelete="CASCADE"
15
15
  ),
16
- {"schema": "stage2"},
17
16
  )
18
17
 
19
18
  trial_id: Mapped[str] = mapped_column(primary_key=True)
@@ -20,7 +20,6 @@ from cidc_api.models.types import (
20
20
  class AdverseEventORM(BaseORM):
21
21
  __tablename__ = "adverse_event"
22
22
  __repr_attrs__ = ["adverse_event_id", "participant_id", "event_term"]
23
- __table_args__ = {"schema": "stage2"}
24
23
  __data_category__ = "adverse_event"
25
24
 
26
25
  adverse_event_id: Mapped[int] = mapped_column(primary_key=True)
@@ -12,7 +12,6 @@ class ArmORM(BaseORM):
12
12
  ForeignKeyConstraint(
13
13
  ["trial_id", "version"], ["stage2.trial.trial_id", "stage2.trial.version"], ondelete="CASCADE"
14
14
  ),
15
- {"schema": "stage2"},
16
15
  )
17
16
 
18
17
  arm_id: Mapped[int] = mapped_column(primary_key=True)
@@ -9,7 +9,6 @@ from cidc_api.models.types import ECOGScore, KarnofskyScore
9
9
  class BaselineClinicalAssessmentORM(BaseORM):
10
10
  __tablename__ = "baseline_clinical_assessment"
11
11
  __repr_attrs__ = ["baseline_clinical_assessment_id", "participant_id"]
12
- __table_args__ = {"schema": "stage2"}
13
12
  __data_category__ = "baseline_clinical_assessment"
14
13
 
15
14
  baseline_clinical_assessment_id: Mapped[int] = mapped_column(primary_key=True)
@@ -12,7 +12,6 @@ class CohortORM(BaseORM):
12
12
  ForeignKeyConstraint(
13
13
  ["trial_id", "version"], ["stage2.trial.trial_id", "stage2.trial.version"], ondelete="CASCADE"
14
14
  ),
15
- {"schema": "stage2"},
16
15
  )
17
16
 
18
17
  cohort_id: Mapped[int] = mapped_column(primary_key=True)
@@ -9,7 +9,6 @@ from cidc_api.models.types import ICD10CMCode, ICD10CMTerm
9
9
  class ComorbidityORM(BaseORM):
10
10
  __tablename__ = "comorbidity"
11
11
  __repr_attrs__ = ["comorbidity_id", "comorbidity_term"]
12
- __table_args__ = {"schema": "stage2"}
13
12
  __data_category__ = "comorbidity"
14
13
 
15
14
  comorbidity_id: Mapped[int] = mapped_column(primary_key=True)
@@ -15,7 +15,6 @@ class ConsentGroupORM(BaseORM):
15
15
  ForeignKeyConstraint(
16
16
  ["trial_id", "version"], ["stage2.trial.trial_id", "stage2.trial.version"], ondelete="CASCADE"
17
17
  ),
18
- {"schema": "stage2"},
19
18
  )
20
19
  __data_category__ = "consent_group"
21
20
 
@@ -7,7 +7,6 @@ from cidc_api.models.db.stage2.base_orm import BaseORM
7
7
 
8
8
  class ContactORM(BaseORM):
9
9
  __tablename__ = "contact"
10
- __table_args__ = {"schema": "stage2"}
11
10
 
12
11
  contact_id: Mapped[int] = mapped_column(primary_key=True)
13
12
  institution_id: Mapped[int] = mapped_column(ForeignKey("stage2.institution.institution_id", ondelete="CASCADE"))
@@ -23,7 +23,6 @@ from cidc_api.models.types import (
23
23
  class DemographicORM(BaseORM):
24
24
  __tablename__ = "demographic"
25
25
  __repr_attrs__ = ["demographic_id", "participant_id", "age_at_enrollment", "sex"]
26
- __table_args__ = {"schema": "stage2"}
27
26
  __data_category__ = "demographic"
28
27
 
29
28
  demographic_id: Mapped[int] = mapped_column(primary_key=True)
@@ -29,7 +29,6 @@ class DiseaseORM(BaseORM):
29
29
  "disease_id",
30
30
  "participant_id",
31
31
  ]
32
- __table_args__ = {"schema": "stage2"}
33
32
  __data_category__ = "disease"
34
33
 
35
34
  disease_id: Mapped[int] = mapped_column(primary_key=True)
@@ -11,7 +11,6 @@ from cidc_api.models.types import YNU, ExposureType
11
11
  class ExposureORM(BaseORM):
12
12
  __tablename__ = "exposure"
13
13
  __repr_attrs__ = ["exposure_id", "exposure_type", "carcinogen_exposure"]
14
- __table_args__ = {"schema": "stage2"}
15
14
  __data_category__ = "exposure"
16
15
 
17
16
  exposure_id: Mapped[int] = mapped_column(primary_key=True)
@@ -14,7 +14,6 @@ class FileORM(BaseORM):
14
14
  ForeignKeyConstraint(
15
15
  ["trial_id", "version"], ["stage2.trial.trial_id", "stage2.trial.version"], ondelete="CASCADE"
16
16
  ),
17
- {"schema": "stage2"},
18
17
  )
19
18
 
20
19
  file_id: Mapped[int] = mapped_column(primary_key=True)
@@ -17,7 +17,6 @@ class GVHDDiagnosisAcuteORM(BaseORM):
17
17
  __tablename__ = "gvhd_diagnosis_acute"
18
18
  __table_args__ = (
19
19
  UniqueConstraint("participant_id", "pre_or_post_enrollment", name="unique_ix_gvhd_diagnosis_acute_pre_or_post"),
20
- {"schema": "stage2"},
21
20
  )
22
21
  __repr_attrs__ = ["gvhd_diagnosis_acute_id", "pre_or_post_enrollment"]
23
22
  __data_category__ = "gvhd_diagnosis_acute"
@@ -19,7 +19,6 @@ class GVHDDiagnosisChronicORM(BaseORM):
19
19
  UniqueConstraint(
20
20
  "participant_id", "pre_or_post_enrollment", name="unique_ix_gvhd_diagnosis_chronic_pre_or_post"
21
21
  ),
22
- {"schema": "stage2"},
23
22
  )
24
23
  __repr_attrs__ = ["gvhd_diagnosis_chronic_id", "pre_or_post_enrollment"]
25
24
  __data_category__ = "gvhd_diagnosis_chronic"
@@ -9,7 +9,6 @@ from cidc_api.models.types import GVHDOrgan, GVHDOrganAcuteStage
9
9
  class GVHDOrganAcuteORM(BaseORM):
10
10
  __tablename__ = "gvhd_organ_acute"
11
11
  __repr_attrs__ = ["gvhd_organ_acute_id", "organ"]
12
- __table_args__ = {"schema": "stage2"}
13
12
  __data_category__ = "gvhd_organ_acute"
14
13
 
15
14
  gvhd_organ_acute_id: Mapped[int] = mapped_column(primary_key=True)
@@ -9,7 +9,6 @@ from cidc_api.models.types import GVHDOrgan, GVHDOrganChronicScore
9
9
  class GVHDOrganChronicORM(BaseORM):
10
10
  __tablename__ = "gvhd_organ_chronic"
11
11
  __repr_attrs__ = ["gvhd_organ_chronic_id", "organ"]
12
- __table_args__ = {"schema": "stage2"}
13
12
  __data_category__ = "gvhd_organ_chronic"
14
13
 
15
14
  gvhd_organ_chronic_id: Mapped[int] = mapped_column(primary_key=True)
@@ -14,7 +14,6 @@ class InstitutionORM(BaseORM):
14
14
  ForeignKeyConstraint(
15
15
  ["trial_id", "version"], ["stage2.trial.trial_id", "stage2.trial.version"], ondelete="CASCADE"
16
16
  ),
17
- {"schema": "stage2"},
18
17
  )
19
18
 
20
19
  institution_id: Mapped[int] = mapped_column(primary_key=True)
@@ -12,7 +12,6 @@ from cidc_api.models.types import TobaccoSmokingStatus
12
12
  class MedicalHistoryORM(BaseORM):
13
13
  __tablename__ = "medical_history"
14
14
  __repr_attrs__ = ["medical_history_id"]
15
- __table_args__ = {"schema": "stage2"}
16
15
  __data_category__ = "medical_history"
17
16
 
18
17
  medical_history_id: Mapped[int] = mapped_column(primary_key=True)
@@ -9,7 +9,6 @@ from cidc_api.models.types import YNU, ResponseSystem, ResponseSystemVersion
9
9
  class OtherClinicalEndpointORM(BaseORM):
10
10
  __tablename__ = "other_clinical_endpoint"
11
11
  __repr_attrs__ = ["other_clinical_endpoint_id", "name", "event"]
12
- __table_args__ = {"schema": "stage2"}
13
12
 
14
13
  other_clinical_endpoint_id: Mapped[int] = mapped_column(primary_key=True)
15
14
  participant_id: Mapped[int] = mapped_column(ForeignKey("stage2.participant.participant_id", ondelete="CASCADE"))
@@ -10,7 +10,6 @@ from cidc_api.models.types import UberonAnatomicalTerm, ICDO3MorphologicalCode,
10
10
  class OtherMalignancyORM(BaseORM):
11
11
  __tablename__ = "other_malignancy"
12
12
  __repr_attrs__ = ["other_malignancy_id", "primary_disease_site"]
13
- __table_args__ = {"schema": "stage2"}
14
13
  __data_category__ = "other_malignancy"
15
14
 
16
15
  other_malignancy_id: Mapped[int] = mapped_column(primary_key=True)
@@ -14,7 +14,6 @@ class ParticipantORM(BaseORM):
14
14
  ForeignKeyConstraint(
15
15
  ["trial_id", "version"], ["stage2.trial.trial_id", "stage2.trial.version"], ondelete="CASCADE"
16
16
  ),
17
- {"schema": "stage2"},
18
17
  )
19
18
  __data_category__ = "participant"
20
19
 
@@ -13,7 +13,6 @@ from cidc_api.models.types import ConditioningRegimenType, StemCellDonorType
13
13
  class PriorTreatmentORM(BaseORM):
14
14
  __tablename__ = "prior_treatment"
15
15
  __repr_attrs__ = ["prior_treatment_id", "type"]
16
- __table_args__ = {"schema": "stage2"}
17
16
  __data_category__ = "prior_treatment"
18
17
 
19
18
  prior_treatment_id: Mapped[int] = mapped_column(primary_key=True)
@@ -13,7 +13,6 @@ class PublicationORM(BaseORM):
13
13
  ForeignKeyConstraint(
14
14
  ["trial_id", "version"], ["stage2.trial.trial_id", "stage2.trial.version"], ondelete="CASCADE"
15
15
  ),
16
- {"schema": "stage2"},
17
16
  )
18
17
 
19
18
  publication_id: Mapped[int] = mapped_column(primary_key=True)
@@ -17,7 +17,6 @@ from cidc_api.models.types import (
17
17
  class RadiotherapyDoseORM(BaseORM):
18
18
  __tablename__ = "radiotherapy_dose"
19
19
  __repr_attrs__ = ["radiotherapy_dose_id", "procedure"]
20
- __table_args__ = {"schema": "stage2"}
21
20
  __data_category__ = "radiotherapy_dose"
22
21
 
23
22
  radiotherapy_dose_id: Mapped[int] = mapped_column(primary_key=True)
@@ -10,7 +10,6 @@ from cidc_api.models.types import ResponseSystem, ResponseSystemVersion, BestOve
10
10
  class ResponseBySystemORM(BaseORM):
11
11
  __tablename__ = "response_by_system"
12
12
  __repr_attrs__ = ["response_by_system_id", "participant_id"]
13
- __table_args__ = {"schema": "stage2"}
14
13
  __data_category__ = "response_by_system"
15
14
 
16
15
  response_by_system_id: Mapped[int] = mapped_column(primary_key=True)
@@ -11,7 +11,6 @@ from cidc_api.models.types import SurvivalStatus, YNUNA, CauseOfDeath
11
11
  class ResponseORM(BaseORM):
12
12
  __tablename__ = "response"
13
13
  __repr_attrs__ = ["response_id", "participant_id"]
14
- __table_args__ = {"schema": "stage2"}
15
14
  __data_category__ = "response"
16
15
 
17
16
  response_id: Mapped[int] = mapped_column(primary_key=True)
@@ -16,7 +16,6 @@ class ShipmentORM(BaseORM):
16
16
  ForeignKeyConstraint(
17
17
  ["trial_id", "version"], ["stage2.trial.trial_id", "stage2.trial.version"], ondelete="CASCADE"
18
18
  ),
19
- {"schema": "stage2"},
20
19
  )
21
20
 
22
21
  shipment_id: Mapped[int] = mapped_column(primary_key=True)
@@ -10,7 +10,6 @@ from cidc_api.models.db.stage2.base_orm import BaseORM
10
10
  class ShipmentSpecimenORM(BaseORM):
11
11
  __tablename__ = "shipment_specimen"
12
12
  __repr_attrs__ = ["specimen_id", "shipment_id"]
13
- __table_args__ = {"schema": "stage2"}
14
13
 
15
14
  specimen_id: Mapped[int] = mapped_column(
16
15
  ForeignKey("stage2.specimen.specimen_id", ondelete="CASCADE"), primary_key=True
@@ -33,7 +33,6 @@ from cidc_api.models.types import (
33
33
  class SpecimenORM(BaseORM):
34
34
  __tablename__ = "specimen"
35
35
  __repr_attrs__ = ["specimen_id", "participant_id", "cimac_id"]
36
- __table_args__ = {"schema": "stage2"}
37
36
 
38
37
  specimen_id: Mapped[int] = mapped_column(primary_key=True)
39
38
  participant_id: Mapped[int] = mapped_column(ForeignKey("stage2.participant.participant_id", ondelete="CASCADE"))
@@ -11,7 +11,6 @@ from cidc_api.models.types import StemCellDonorType, AllogeneicDonorType, StemCe
11
11
  class StemCellTransplantORM(BaseORM):
12
12
  __tablename__ = "stem_cell_transplant"
13
13
  __repr_attrs__ = ["stem_cell_transplant_id"]
14
- __table_args__ = {"schema": "stage2"}
15
14
  __data_category__ = "stem_cell_transplant"
16
15
 
17
16
  stem_cell_transplant_id: Mapped[int] = mapped_column(primary_key=True)
@@ -11,7 +11,6 @@ from cidc_api.models.types import SurgicalProcedure, UberonAnatomicalTerm, YNU
11
11
  class SurgeryORM(BaseORM):
12
12
  __tablename__ = "surgery"
13
13
  __repr_attrs__ = ["surgery_id", "procedure"]
14
- __table_args__ = {"schema": "stage2"}
15
14
  __data_category__ = "surgery"
16
15
 
17
16
  surgery_id: Mapped[int] = mapped_column(primary_key=True)
@@ -11,7 +11,6 @@ from cidc_api.models.types import TherapyAgentDoseUnits, YNU
11
11
  class TherapyAgentDoseORM(BaseORM):
12
12
  __tablename__ = "therapy_agent_dose"
13
13
  __repr_attrs__ = ["therapy_agent_dose_id", "therapy_agent_name"]
14
- __table_args__ = {"schema": "stage2"}
15
14
  __data_category__ = "therapy_agent_dose"
16
15
 
17
16
  therapy_agent_dose_id: Mapped[int] = mapped_column(primary_key=True)
@@ -11,7 +11,6 @@ from cidc_api.models.types import YNU, OffTreatmentReason
11
11
  class TreatmentORM(BaseORM):
12
12
  __tablename__ = "treatment"
13
13
  __repr_attrs__ = ["treatment_id", "participant_id", "treatment_description"]
14
- __table_args__ = {"schema": "stage2"}
15
14
  __data_category__ = "treatment"
16
15
 
17
16
  treatment_id: Mapped[int] = mapped_column(primary_key=True)
@@ -13,7 +13,6 @@ from cidc_api.models.types import AssayType, TrialOrganization, TrialFundingAgen
13
13
  class TrialORM(BaseORM):
14
14
  __tablename__ = "trial"
15
15
  __repr_attrs__ = ["trial_id", "version"]
16
- __table_args__ = {"schema": "stage2"}
17
16
  __data_category__ = "study"
18
17
 
19
18
  trial_id: Mapped[str] = mapped_column(primary_key=True)
@@ -376,6 +376,10 @@ assay_facets: Facets = {
376
376
  "Channels": FacetConfig(["/maldi_glycan/channels.csv", "Channels csv file for MALDI Glycan run"]),
377
377
  "Tiff Zip": FacetConfig(["/maldi_glycan/tiff.zip", "Tiff zip for MALDI Glycan run"]),
378
378
  },
379
+ "TCRseq RNA": {
380
+ "Alpha Results": FacetConfig(["/tcrseq_rna/alpha.csv"]),
381
+ "Beta Results": FacetConfig(["/tcrseq_rna/beta.csv"]),
382
+ },
379
383
  "mIHC": {
380
384
  "Samples Report": FacetConfig(["/mihc/sample_report.csv"], "Samples report for mIHC run"),
381
385
  "Multitiffs": FacetConfig(["/mihc/multitiffs.tar.gz"], "Multi Tiffs file from mIHC run"),
cidc_api/models/models.py CHANGED
@@ -28,6 +28,7 @@ __all__ = [
28
28
  "JobFileCategories",
29
29
  "CategoryDataElements",
30
30
  "ValidationConfigs",
31
+ "MASTER_APPENDIX_A",
31
32
  "TRIAL_APPENDIX_A",
32
33
  "TRIAL_APPENDIX_A_CELL_THAT_ENDS_THE_HEADER",
33
34
  "REQUEST_LETTER",
@@ -3262,6 +3263,7 @@ def upload_manifest_json(
3262
3263
  return manifest_upload.id
3263
3264
 
3264
3265
 
3266
+ MASTER_APPENDIX_A = "master_appendix_a"
3265
3267
  TRIAL_APPENDIX_A = "trial_appendix_a"
3266
3268
  REQUEST_LETTER = "request_letter"
3267
3269
  DETAILED_VALIDATION = "detailed_validation"
@@ -3361,6 +3363,16 @@ class PreprocessedFiles(CommonColumns):
3361
3363
  query = cls.add_job_filter(query, job_id)
3362
3364
  return query.all()
3363
3365
 
3366
+ @classmethod
3367
+ @with_default_session
3368
+ def get_latest_current_file(
3369
+ cls, file_category: str, job_id: int = None, session: Session = None
3370
+ ) -> Optional["PreprocessedFiles"]:
3371
+ """Return the latest 'current' file for the given category and job_id. Returns None if no file exists."""
3372
+ query = session.query(cls).filter_by(file_category=file_category, status="current")
3373
+ query = cls.add_job_filter(query, job_id)
3374
+ return query.order_by(cls.version.desc()).first()
3375
+
3364
3376
  @classmethod
3365
3377
  @with_default_session
3366
3378
  def get_file_by_category_and_version(
cidc_api/models/types.py CHANGED
@@ -113,6 +113,7 @@ AssayType = Literal[
113
113
  "snRNA-Seq",
114
114
  "Visium",
115
115
  "Olink HT",
116
+ "TCRseq RNA",
116
117
  ]
117
118
 
118
119
 
@@ -17,14 +17,22 @@ logger = get_logger(__name__)
17
17
 
18
18
  @trace_()
19
19
  def set_current_file(
20
- file: FileStorage, file_category: str, gcs_folder: str, session: Session, uploader_email: str, job_id: int = None
20
+ file: FileStorage,
21
+ file_category: str,
22
+ gcs_folder: str,
23
+ session: Session,
24
+ uploader_email: str,
25
+ job_id: int = None,
26
+ append_timestamp: bool = None,
21
27
  ) -> PreprocessedFiles:
22
28
  """
23
29
  Archives any existing 'current' files for the given category and job,
24
30
  then uploads the new file as the latest 'current' version.
25
31
  """
26
32
  latest_version = PreprocessedFiles.archive_current_files(file_category, job_id=job_id, session=session)
27
- latest_file = create_file(file, gcs_folder, file_category, session, uploader_email, job_id, latest_version + 1)
33
+ latest_file = create_file(
34
+ file, gcs_folder, file_category, session, uploader_email, job_id, latest_version + 1, append_timestamp
35
+ )
28
36
  return latest_file
29
37
 
30
38
 
@@ -37,11 +45,12 @@ def create_file(
37
45
  uploader_email: str,
38
46
  job_id: int = None,
39
47
  version: int = None,
48
+ append_timestamp: bool = None,
40
49
  ) -> PreprocessedFiles:
41
50
  """Upload file to GCS and create corresponding metadata record in the database."""
42
51
  status = "pending" if gcs_folder.endswith("pending/") else "current"
43
- # only need timestamp for current/versioned files
44
- append_timestamp = status == "current"
52
+ # only need timestamp for current/versioned files, if not specified otherwise
53
+ append_timestamp = append_timestamp if append_timestamp is not None else (status == "current")
45
54
  # create file in GCS
46
55
  gcs_file_path = upload_file_to_gcs(file, GOOGLE_CLINICAL_DATA_BUCKET, gcs_folder, append_timestamp=append_timestamp)
47
56
  # create corresponding record in db
@@ -2,6 +2,7 @@
2
2
 
3
3
  # pylint: disable=logging-fstring-interpolation,too-many-lines, broad-exception-raised
4
4
 
5
+ import asyncio
5
6
  import base64
6
7
  import datetime
7
8
  import hashlib
@@ -26,6 +27,8 @@ from typing import (
26
27
  )
27
28
 
28
29
  import googleapiclient.discovery
30
+ from gcloud.aio.storage import Storage
31
+ from pandas.core.frame import DataFrame
29
32
  import pandas as pd
30
33
  import requests
31
34
  from cidc_schemas.prism.constants import ASSAY_TO_FILEPATH
@@ -443,25 +446,50 @@ def upload_xlsx_to_intake_bucket(user_email: str, trial_id: str, upload_type: st
443
446
  return f"https://console.cloud.google.com/storage/browser/_details/{bucket_name}/{blob_name}"
444
447
 
445
448
 
446
- def gcs_xlsx_or_csv_file_to_pandas_dataframe(bucket_name: str, blob_name: str):
447
- """Reads an XLSX or CSV file from Google Cloud Storage into a Pandas DataFrame."""
448
- temp_file = get_file_bytes_from_gcs(bucket_name, blob_name)
449
-
450
- # TODO: specify sheet in xlsx file and/or accept tsv and xls files
451
- if blob_name[-3:] == "csv":
452
- return strip_whitespaces(pd.read_csv(temp_file, dtype=str, keep_default_na=False))
453
- elif blob_name[-4:] == "xlsx":
454
- return strip_whitespaces(pd.read_excel(temp_file, dtype=str, keep_default_na=False))
449
+ def prepare_dataframe(extension, bytes) -> DataFrame:
450
+ if extension == "csv":
451
+ return strip_whitespaces(pd.read_csv(bytes, dtype=str, keep_default_na=False))
452
+ elif extension == "xlsx":
453
+ return strip_whitespaces(pd.read_excel(bytes, dtype=str, keep_default_na=False))
455
454
  else:
456
455
  raise Exception("Can only read csv or xlsx files")
457
456
 
458
457
 
458
+ def gcs_xlsx_or_csv_file_to_pandas_dataframe(bucket_name: str, blob_name: str) -> DataFrame:
459
+ """Reads an XLSX or CSV file from Google Cloud Storage into a Pandas DataFrame."""
460
+ contents = get_file_bytes_from_gcs(bucket_name, blob_name)
461
+ extension = blob_name.split(".")[-1]
462
+ return prepare_dataframe(extension, contents)
463
+
464
+
459
465
  def get_file_bytes_from_gcs(bucket_name: str, blob_name: str) -> io.BytesIO:
460
466
  """Reads a file from Google Cloud Storage and returns it as BytesIO."""
461
467
  sheet_data = storage.Client().bucket(bucket_name).blob(blob_name).download_as_bytes()
462
468
  return io.BytesIO(sheet_data)
463
469
 
464
470
 
471
+ async def async_gcs_files_to_pandas_dataframes(bucket_name: str, blob_names: List[str]) -> List[DataFrame]:
472
+ """Async reads a XLSX or CSV files from Google Cloud Storage into a list of Pandas DataFrames."""
473
+
474
+ all_contents = await asyncio.gather(
475
+ *[async_get_file_bytes_from_gcs(bucket_name, blob_name) for blob_name in blob_names]
476
+ )
477
+ dataframes = []
478
+
479
+ for blob_name, contents in zip(blob_names, all_contents):
480
+ extension = blob_name.split(".")[-1]
481
+ dataframes.append(prepare_dataframe(extension, contents))
482
+ return dataframes
483
+
484
+
485
+ async def async_get_file_bytes_from_gcs(bucket_name: str, blob_name: str) -> io.BytesIO:
486
+ """Async reads a file from Google Cloud Storage and returns it as BytesIO."""
487
+
488
+ async with Storage() as client:
489
+ sheet_data = await client.download(bucket_name, blob_name)
490
+ return io.BytesIO(sheet_data)
491
+
492
+
465
493
  def _execute_multiblob_acl_change(
466
494
  user_email_list: List[str],
467
495
  blob_list: List[storage.Blob],
@@ -907,6 +935,7 @@ def get_signed_url(
907
935
  bucket_name: str = GOOGLE_ACL_DATA_BUCKET,
908
936
  method: str = "GET",
909
937
  expiry_mins: int = 30,
938
+ use_short_filename: bool = False,
910
939
  ) -> str:
911
940
  """
912
941
  Generate a signed URL for `object_name` to give a client temporary access.
@@ -921,7 +950,11 @@ def get_signed_url(
921
950
 
922
951
  # Generate the signed URL, allowing a client to use `method` for `expiry_mins` minutes
923
952
  expiration = datetime.timedelta(minutes=expiry_mins)
924
- full_filename = object_name.replace("/", "_").replace('"', "_").replace(" ", "_")
953
+ if use_short_filename:
954
+ filename = os.path.basename(object_name)
955
+ else:
956
+ # full filename with path included
957
+ filename = object_name.replace("/", "_").replace('"', "_").replace(" ", "_")
925
958
  other_kwargs = {}
926
959
  if os.environ.get("DEV_GOOGLE_STORAGE", None):
927
960
  other_kwargs["api_access_endpoint"] = (os.environ.get("DEV_GOOGLE_STORAGE") or "") + (
@@ -931,7 +964,7 @@ def get_signed_url(
931
964
  version="v2",
932
965
  expiration=expiration,
933
966
  method=method,
934
- response_disposition=f'attachment; filename="{full_filename}"',
967
+ response_disposition=f'attachment; filename="{filename}"',
935
968
  **other_kwargs,
936
969
  )
937
970
  logger.info(f"generated signed URL for {object_name}: {url}")
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: nci_cidc_api_modules
3
- Version: 1.2.42
3
+ Version: 1.2.44
4
4
  Summary: SQLAlchemy data models and configuration tools used in the NCI CIDC API
5
5
  Home-page: https://github.com/NCI-CIDC/cidc-api-gae
6
6
  License: MIT license
@@ -13,6 +13,7 @@ Requires-Dist: flask>=3.1.2
13
13
  Requires-Dist: flask-migrate>=4.1.0
14
14
  Requires-Dist: flask-sqlalchemy>=3.1.1
15
15
  Requires-Dist: flask-talisman>=0.7.0
16
+ Requires-Dist: gcloud-aio-storage~=9.6.1
16
17
  Requires-Dist: google-auth==2.45.0
17
18
  Requires-Dist: google-api-python-client>=2.187.0
18
19
  Requires-Dist: google-cloud-bigquery>=3.39.0
@@ -41,7 +42,7 @@ Requires-Dist: opentelemetry-instrumentation-requests>=0.59b0
41
42
  Requires-Dist: opentelemetry-instrumentation-sqlalchemy>=0.59b0
42
43
  Requires-Dist: opentelemetry-exporter-gcp-trace>=1.11.0
43
44
  Requires-Dist: opentelemetry-propagator-gcp>=1.11.0
44
- Requires-Dist: nci-cidc-schemas==0.28.10
45
+ Requires-Dist: nci-cidc-schemas==0.28.11
45
46
  Dynamic: description
46
47
  Dynamic: description-content-type
47
48
  Dynamic: home-page
@@ -1,4 +1,4 @@
1
- cidc_api/__init__.py,sha256=Ng7mLXI95GEYWOWi3HpHuVabVYSs3igDIcqorkuDZds,23
1
+ cidc_api/__init__.py,sha256=tZ6_k-1uqq2cr3SCnYO9N-chw-LhbafQ_arSm_DOlLs,23
2
2
  cidc_api/telemetry.py,sha256=LuZWkG8CKCn23O41RTNxEOQwMmfpp-fQ6zSInZhVJg8,3333
3
3
  cidc_api/config/__init__.py,sha256=5mX8GAPxUKV84iS-aGOoE-4m68LsOCGCDptXNdlgvj0,148
4
4
  cidc_api/config/db.py,sha256=mEz8ugjvRNGylCqDYHaaMqaZfDh7sbd76BowmfBvq5c,2428
@@ -6,79 +6,79 @@ cidc_api/config/logging.py,sha256=abhVYtn8lfhIt0tyV2WHFgSmp_s2eeJh7kodB6LH4J0,11
6
6
  cidc_api/config/secrets.py,sha256=jRFj7W43pWuPf9DZQLCKF7WPXf5cUv-BAaS3ASqhV_Q,1481
7
7
  cidc_api/config/settings.py,sha256=ttOGvk_6zVMn4dtxIZ2-0w3wF2fpAUVfGpVZbKJ2b6s,4653
8
8
  cidc_api/models/__init__.py,sha256=bl445G8Zic9YbhZ8ZBni07wtBMhLJRMBA-JqjLxx2bw,66
9
- cidc_api/models/data.py,sha256=mySTpsG4qEBSh5c7dpQZJ2xTxHiYdFYuXO_a_B2gPXE,1313
9
+ cidc_api/models/data.py,sha256=TyVXk5jJO1NN05CLqejLf5BPp6yLSNNxPmFOgXUnA1M,1313
10
10
  cidc_api/models/migrations.py,sha256=UlS5How3J4ryaRuZT6F5VQtAKikkl0LTv9MgMO_ltiQ,11161
11
- cidc_api/models/models.py,sha256=h8AvXuxXYuekCwPhiEpYbVGG7jHQog3wnWiEXLIaXdY,153111
11
+ cidc_api/models/models.py,sha256=DTt0eFkFVVxVn23Aqr6TA8CQ7qb2hdqQ0xVJ3RakBBw,153684
12
12
  cidc_api/models/schemas.py,sha256=6IE2dJoEMcMbi0Vr1V3cYKnPKU0hv9vRKBixOZHe88s,2766
13
- cidc_api/models/types.py,sha256=Zv9eUs7XUysJa_lzimbl7jSOEhvNozAkgPGGbvMIafo,30040
13
+ cidc_api/models/types.py,sha256=WVOTEH61FH5aGVwRbEcfNOce8NLjiEnl1ixtPWav2OA,30058
14
14
  cidc_api/models/db/stage1/__init__.py,sha256=zsxOSoogzL_xZ8B5OwcwLXvAmm6g2GYx1Zf6LLw8dq8,1917
15
- cidc_api/models/db/stage1/additional_treatment_orm.py,sha256=aiimE27oj96sE4F9LwZAlkHNLMwH8dNS5GTYA4DnSIU,968
16
- cidc_api/models/db/stage1/adverse_event_orm.py,sha256=dgFdFQliPMzoYa5yf8TlX0XM1tcyu4zfu9Xq8Hbmzwc,1956
15
+ cidc_api/models/db/stage1/additional_treatment_orm.py,sha256=GCMzsYZl_B-7-TWYDBUXbt_Gri6YDv8XkYRheDLh3pc,926
16
+ cidc_api/models/db/stage1/adverse_event_orm.py,sha256=32Kjpg6fvByp4gEVy6K28MlgMWQryG6GPh3un1F8x64,1914
17
17
  cidc_api/models/db/stage1/base_orm.py,sha256=izKizTf2W1fCK2CRUeyuErJbOaxNp6d299n4gqKWHDQ,246
18
- cidc_api/models/db/stage1/baseline_clinical_assessment_orm.py,sha256=TKI-GquW_jXUxh_cIZntd5G2Soq3n_xwRrsmtd1Jw-c,953
19
- cidc_api/models/db/stage1/comorbidity_orm.py,sha256=v3a29HA_j7ZTJWQSu17HPutSqACf4m5whgJCVNgoGJs,923
20
- cidc_api/models/db/stage1/consent_group_orm.py,sha256=4dKIFyFdTog1lUvnhPOfOhe61CvPZYRvRiuVpe9bPlg,1141
21
- cidc_api/models/db/stage1/demographic_orm.py,sha256=t7fcHya_MGNhdq-0wS0s9MiHEG3W4Xan0fd01uvGGHU,1735
22
- cidc_api/models/db/stage1/disease_orm.py,sha256=ATghsDBfbOFdA5uvaRKp_-td11ze2QBd8IM7AtI6Gkk,2007
23
- cidc_api/models/db/stage1/exposure_orm.py,sha256=EAFDF9q3EPEiEscqpfZl2PE5oueMarcde3U3d5d5a5M,853
24
- cidc_api/models/db/stage1/gvhd_diagnosis_acute_orm.py,sha256=_wV4yy8hZk71Lm9t3Zl1u2OFswzEo1W88Pk0qU9q5Y0,1500
25
- cidc_api/models/db/stage1/gvhd_diagnosis_chronic_orm.py,sha256=MJAznv516eh0l5pXreIC3ykqS0CPI9B1gvSxActbIHc,1582
26
- cidc_api/models/db/stage1/gvhd_organ_acute_orm.py,sha256=-6XMobavlAllAUqHc1e-WqjF6APcln1xb31ZChIM17w,880
27
- cidc_api/models/db/stage1/gvhd_organ_chronic_orm.py,sha256=94eT0sbZT8KF7XVaynKZKlYYZuGrF0TxWiF_yDwtgIk,904
28
- cidc_api/models/db/stage1/medical_history_orm.py,sha256=RYPEnInuMQIUtod6NWWvlHuJe7cgyTNT3R3Ols4yiAE,1324
29
- cidc_api/models/db/stage1/other_malignancy_orm.py,sha256=2zQ4r5uXO20vWLbHJtDObpct3tYcL6DD0qT3Bixai58,1345
30
- cidc_api/models/db/stage1/participant_orm.py,sha256=8-tO3avpih2ntUzyZwewBEYD-wJ3EQkcMwx73ME9dnc,3553
31
- cidc_api/models/db/stage1/prior_treatment_orm.py,sha256=fcX4KiKVtcn3UzAtwhyvUF-nUD_A58CE1tBlCYDh3RU,1367
32
- cidc_api/models/db/stage1/radiotherapy_dose_orm.py,sha256=UVEhn5S6JG41oUBpPHfHNpQ8Chk7LfbqTDaYpnkPa-I,1542
33
- cidc_api/models/db/stage1/response_by_system_orm.py,sha256=Uq99hXlA5Y_KKW19BlGeLpdGXIOOVoPlUV-bbJtsXak,1566
34
- cidc_api/models/db/stage1/response_orm.py,sha256=2JsI3YwpmVlMrPOwt5ukeWU3fag4fE5CYomJEYIqzNA,1205
35
- cidc_api/models/db/stage1/specimen_orm.py,sha256=LPKfl0Loa9TdkEJFhV4u6w8KoaiH1bjEXrYJv9yp2BI,1396
36
- cidc_api/models/db/stage1/stem_cell_transplant_orm.py,sha256=ngKiV5cPbi1hMVp_MTf92XpcvXKk0gyCxsP3BG5wSGY,1139
37
- cidc_api/models/db/stage1/surgery_orm.py,sha256=ba23DOF9KRpsabq-SaI0Q3WCAeCWJ8czUoy6Xr2PSpg,1060
38
- cidc_api/models/db/stage1/therapy_agent_dose_orm.py,sha256=rDierfZ3d1JCEL0yMfyImuIgbbfWS3BI_saVVuYqwNs,1348
39
- cidc_api/models/db/stage1/treatment_orm.py,sha256=77E01T5UI7aR-T_BKY2pDIFqusuz11oeR8SWi0CWO5c,1667
40
- cidc_api/models/db/stage1/trial_orm.py,sha256=LiYdJUAx7nS_9Whc_KBm4gTBxKokGeWdVPihXlgYUX4,1308
18
+ cidc_api/models/db/stage1/baseline_clinical_assessment_orm.py,sha256=pGanJlwnAm38LPVTu6XF4qP_mw-SqYP8AC3O8w8XPnw,911
19
+ cidc_api/models/db/stage1/comorbidity_orm.py,sha256=C4P3kcpNpnt1ICgU2Xm5S-ou6Xhx6yr690g6F_hBoZ0,881
20
+ cidc_api/models/db/stage1/consent_group_orm.py,sha256=O7oZr7-Rvmzn8o4kS_40e270sF2e-KX85VkXemsa2MM,1111
21
+ cidc_api/models/db/stage1/demographic_orm.py,sha256=JR6CXCVLEvFTgElQazuNEgopIuf5Ik1w0m1kSkxp4Q0,1693
22
+ cidc_api/models/db/stage1/disease_orm.py,sha256=Ni1kxQxgVi0MKUlovcsnmpR9v1TwKWcO6tpEr1oZcsE,1965
23
+ cidc_api/models/db/stage1/exposure_orm.py,sha256=u6YKhAAX_0uYHMOYf8sQQFy3l9KluRykaIiggn9v_EY,811
24
+ cidc_api/models/db/stage1/gvhd_diagnosis_acute_orm.py,sha256=0ItEmNE2H2Xmh4W3t0DNg3W764Uk00d5gni6maMQ3N0,1470
25
+ cidc_api/models/db/stage1/gvhd_diagnosis_chronic_orm.py,sha256=seH3WO9IzQmau47N7zjJOa6OCSYi9_25WE5jOvxl6q8,1552
26
+ cidc_api/models/db/stage1/gvhd_organ_acute_orm.py,sha256=knzkKz2qkRU0R6HjdtfClOuRpGEYEsLxbhqYUmOAjSg,838
27
+ cidc_api/models/db/stage1/gvhd_organ_chronic_orm.py,sha256=mkhS1jFgCt_2NRXZfoqHWZh1ShkzLoPLR9W8ac_wzGs,862
28
+ cidc_api/models/db/stage1/medical_history_orm.py,sha256=nyNOG_odEvPWqgu2DmiHT3K-FBB1ltI536iiNwCF0wA,1282
29
+ cidc_api/models/db/stage1/other_malignancy_orm.py,sha256=wfoSCPUIzfw4anDi6FeqyhTzYrwTNlpDRCvL608zmXM,1303
30
+ cidc_api/models/db/stage1/participant_orm.py,sha256=3-s6F0yTFzBYFZrDKv2xJMv5p3VBt5EL1Quu9cK4sd8,3541
31
+ cidc_api/models/db/stage1/prior_treatment_orm.py,sha256=SNa_JOIF5gS61N0HFEfM7BHv3JYsflt6LQz03WLb8Lo,1325
32
+ cidc_api/models/db/stage1/radiotherapy_dose_orm.py,sha256=dLp_ENJAq-_f6MAspaGK-6R6ngHceFKpsrjoBM8yviI,1500
33
+ cidc_api/models/db/stage1/response_by_system_orm.py,sha256=pOQSE5g-EFUApgEDOXwxyQCmvoC6M9atSfBDsF9f3KI,1524
34
+ cidc_api/models/db/stage1/response_orm.py,sha256=P9a0ZVq_hJ3dipRgJTFcdjuWi9ueyGd0oQYHRiACNpc,1163
35
+ cidc_api/models/db/stage1/specimen_orm.py,sha256=m1cq5SfkUETk6dk4s3uYLyXohpZgE8iU1Rzh0xVRTmw,1354
36
+ cidc_api/models/db/stage1/stem_cell_transplant_orm.py,sha256=CqOAo-Pnj11XqR9a0CeaIGyLn5Ar42Hl_10tqEllnO0,1097
37
+ cidc_api/models/db/stage1/surgery_orm.py,sha256=DCggc6xbjGhm-G93bueY5u43t896aBPTvRFTk3Gq8ys,1018
38
+ cidc_api/models/db/stage1/therapy_agent_dose_orm.py,sha256=y8vaJazcoJ5mb0dmGXiAN8dQPP6yyDGpAOs_wDlH3SY,1306
39
+ cidc_api/models/db/stage1/treatment_orm.py,sha256=gRhCswnYYr7DLHbUzz-Lyg3pDVJy6j0UjBZ8SQX3C9k,1625
40
+ cidc_api/models/db/stage1/trial_orm.py,sha256=bS2zIngkv8ruXdXskinSwz8H1EeAgs9aHnteUWqaplE,1266
41
41
  cidc_api/models/db/stage2/__init__.py,sha256=R33BM1VDKJya5uuyYnPoGFVfhSViclIOklSoHH-EtBQ,2691
42
- cidc_api/models/db/stage2/additional_treatment_orm.py,sha256=RpP1ug07ZSI1eB5Z5D9XLtO-APuRSKcvHDPv_eUJqpE,966
43
- cidc_api/models/db/stage2/administrative_person_orm.py,sha256=jYxwe-BfbjkKhC_iWjWPhnY8dvC1qPVYhCIzki-_r_E,1058
44
- cidc_api/models/db/stage2/administrative_role_assignment_orm.py,sha256=W5cViaBQa3TyGP5F12B1o9DrDeQHCuXx_NtQx3ICweE,1321
45
- cidc_api/models/db/stage2/adverse_event_orm.py,sha256=1AH4Uiksyqer8mNNRkYj6lmWfgT_X4-2bGEsGPPR-DI,1956
46
- cidc_api/models/db/stage2/arm_orm.py,sha256=J7Q7oYWGS4q2w38xqGn0zH3kQo0HsE_FoTjIyeLNBX0,737
42
+ cidc_api/models/db/stage2/additional_treatment_orm.py,sha256=G8_3EgGWH0vf3Rt5hTmM9xFids4NPcEBkQSS7hsrIdI,924
43
+ cidc_api/models/db/stage2/administrative_person_orm.py,sha256=yjBktBwIjzHwqIbs1BAqJhh3y8f6swmEJRGs-XDQ_OI,1016
44
+ cidc_api/models/db/stage2/administrative_role_assignment_orm.py,sha256=9X3Fkecj8_pxui99LpvA7WIMuWcagYW-QiRcvI7gAHg,1291
45
+ cidc_api/models/db/stage2/adverse_event_orm.py,sha256=lsou-Ej7F_LW7D4pZbgAoR3BLPkW-KJkNjPPv2RtlY0,1914
46
+ cidc_api/models/db/stage2/arm_orm.py,sha256=5jSoHENJXpqW36UrECmBphz_MRQUcYIXGF0fvhMDMWY,707
47
47
  cidc_api/models/db/stage2/base_orm.py,sha256=nk9q0wlHxbuC7vzMtPCsnqeIRQufh3MCniMxu-h7__w,246
48
- cidc_api/models/db/stage2/baseline_clinical_assessment_orm.py,sha256=FmSXM7yCl0XVHdAdYPFmSwZoZxeOHD3I8f78h9uM0dk,953
49
- cidc_api/models/db/stage2/cohort_orm.py,sha256=E0vWv_0rjwI_cAlDzVGp-loSSPlpuHHO3qbgXwc3WCg,740
50
- cidc_api/models/db/stage2/comorbidity_orm.py,sha256=Lky_lD8WN0n78gjQ1q6az3E8h2aAHeYob3XUtB9DAK4,923
51
- cidc_api/models/db/stage2/consent_group_orm.py,sha256=k1nMfd3NuDoYHwU9HR0R9B4FTuw3Evc3cDxQJcw59iE,1141
52
- cidc_api/models/db/stage2/contact_orm.py,sha256=7nmWtTl3UkO-GFOdiAYTT6_094S1Ozvlcn8fdEsbxeE,1309
53
- cidc_api/models/db/stage2/demographic_orm.py,sha256=MiTa-Sk9kGcN1Y4O7aDpMtEDEcvY67VXfwEuALXQn_g,1735
54
- cidc_api/models/db/stage2/disease_orm.py,sha256=ws20FYQkiucyyzuXF2xVurke3_Uf0rFFMfOr9TaYG24,2007
55
- cidc_api/models/db/stage2/exposure_orm.py,sha256=q1x6GQWvMyJub_QGkXqYggzrvX8_w3QLkUhaj-AzxD8,853
56
- cidc_api/models/db/stage2/file_orm.py,sha256=Nso0j6BB4WrHUzXcWyxwwTD-jypnxH6pA7GUOsYyXsg,1283
57
- cidc_api/models/db/stage2/gvhd_diagnosis_acute_orm.py,sha256=MIjVCSSSeX5N_kNWgCXd_AtQDshwZ8SjtICrBRdhBnA,1500
58
- cidc_api/models/db/stage2/gvhd_diagnosis_chronic_orm.py,sha256=BhlEkGgdZ84G3LOOkcav6M3DKrsDbrbbHMflyn5ikyM,1582
59
- cidc_api/models/db/stage2/gvhd_organ_acute_orm.py,sha256=B3RTyBtJhSGhKH-1yFZlU5ytko8kPMu3IEJKL080dok,880
60
- cidc_api/models/db/stage2/gvhd_organ_chronic_orm.py,sha256=FJoQxMv5sQbYyk4_YU77O7h_7NRzlwUOJqCimxYyN6s,904
61
- cidc_api/models/db/stage2/institution_orm.py,sha256=V58qEfnrhHjPHhYj-udGUqDsvSYb4QHE2eLQdoCdjU4,1278
62
- cidc_api/models/db/stage2/medical_history_orm.py,sha256=wUVno1vQqMM64YwFng8a-qJgdDGfRNkmMDgo_0cX7dY,1324
63
- cidc_api/models/db/stage2/other_clinical_endpoint_orm.py,sha256=imK4n7_tHYCNIBVVoQKQNhVVL2x7eE69_9VqBW23Y2I,1133
64
- cidc_api/models/db/stage2/other_malignancy_orm.py,sha256=opTfuRBl54R-HMvbHjewOLpB79DInfG1x8d3IMmQdaA,1345
65
- cidc_api/models/db/stage2/participant_orm.py,sha256=CKk4aHjxnDr0ERHG_0jt8fGAqXIEVkqa9k3oqYqnMzE,3725
66
- cidc_api/models/db/stage2/prior_treatment_orm.py,sha256=xHVnfsxpVSd2JPOojTa7ASB0W0BYISAUjgY4BwwVCoU,1347
67
- cidc_api/models/db/stage2/publication_orm.py,sha256=u8lkD3Ssbju5t20pOSTt7dZ7Pih25c90ACEhWOULkEU,1070
68
- cidc_api/models/db/stage2/radiotherapy_dose_orm.py,sha256=bYnh3vBLVA6jNuwDObF3XHkWfEKqRXKH2cfV7BEzNlQ,1542
69
- cidc_api/models/db/stage2/response_by_system_orm.py,sha256=EBS_P85k0uJNR2-CXygtwm2x2e1umDyyvO_CpkxgraU,1566
70
- cidc_api/models/db/stage2/response_orm.py,sha256=G5XdroBUKdYva752hbaPsloyRwf7zjrIT6vEhGWlKEY,1205
71
- cidc_api/models/db/stage2/shipment_orm.py,sha256=dyOhtghwaJCiXk5kis6bkBhfiZyOzKQibNtj_HE5SVQ,2037
72
- cidc_api/models/db/stage2/shipment_specimen_orm.py,sha256=ozG6CTQ1mPXgOx3_yHrIDQ-CQjtDg1Z2TPMMwX1PrRk,951
73
- cidc_api/models/db/stage2/specimen_orm.py,sha256=caeHreuRpQek13J_RDXtOet2xzqwfTFbwqN-xNeUcPM,4207
74
- cidc_api/models/db/stage2/stem_cell_transplant_orm.py,sha256=txurhLFMCyI_ZZ9zhQk1xvGPffiCiiT3srBsEwlKDlE,1139
75
- cidc_api/models/db/stage2/surgery_orm.py,sha256=K6FYSQTjXt3OvHUSSoxhAnobAk1oUHpaIgN4dffqr14,1060
76
- cidc_api/models/db/stage2/therapy_agent_dose_orm.py,sha256=sqxiEhZsuQ-Zn_Wdwf2oJmwjU5A0sq60lgPh7irIj-s,1348
77
- cidc_api/models/db/stage2/treatment_orm.py,sha256=xGgLSzIgoWpNylnCZAWQ2NElHCGKFmYMnrgqrnSANoQ,1961
78
- cidc_api/models/db/stage2/trial_orm.py,sha256=OPUwv9lm8zLHvQYJ-XPtNqsppwn8IYXAyuyGoYhlpB4,2897
48
+ cidc_api/models/db/stage2/baseline_clinical_assessment_orm.py,sha256=4V8RuiWGNf2c8Plzeikusslk8pZGhedDm_oXMMDcRbc,911
49
+ cidc_api/models/db/stage2/cohort_orm.py,sha256=ag3Epvnr8__3yfmyUjR7n9fBfMnBlpU1wPyvFZFIWpo,710
50
+ cidc_api/models/db/stage2/comorbidity_orm.py,sha256=EbjqUj9vsFEL0KJFqsc04I-KFGjILje2H71WD2uP3ZQ,881
51
+ cidc_api/models/db/stage2/consent_group_orm.py,sha256=d6r00XxWf7wHwYDAhBsEjSq3Ma2jixAa5l5mNDePNFk,1111
52
+ cidc_api/models/db/stage2/contact_orm.py,sha256=__YFzOrYnMs_TNC1IAI1EL-Xx2stRJTUkcru5GDYleY,1267
53
+ cidc_api/models/db/stage2/demographic_orm.py,sha256=qTO8w0AVTP7NpryfeinaR2X22ll6qA_jxCVGXmAjN60,1693
54
+ cidc_api/models/db/stage2/disease_orm.py,sha256=-PVtbDHFI9PmlYTOsry8LFbuR2YVMq_NrVNkDSZMbLo,1965
55
+ cidc_api/models/db/stage2/exposure_orm.py,sha256=LLuGsaW-dA8B5e__LP9LGAaU7QH5fo5-4Btx28mpE3A,811
56
+ cidc_api/models/db/stage2/file_orm.py,sha256=Zn6HzTz_UcsZRAJUi3OvcASMMtYNh4AFLQTcq_NuG3A,1253
57
+ cidc_api/models/db/stage2/gvhd_diagnosis_acute_orm.py,sha256=n1FtHoUzpKEhDkC5z9VQ_pMKj-M-RpPb3tOerDYwIe4,1470
58
+ cidc_api/models/db/stage2/gvhd_diagnosis_chronic_orm.py,sha256=tA-upQ9q755klfu01HQyRVxBZq7RX_WclZWHuGHGBiw,1552
59
+ cidc_api/models/db/stage2/gvhd_organ_acute_orm.py,sha256=3ShOfSGKgrRBmu83KkpHY3-tCbLL60UWtpcbLqqnq9Y,838
60
+ cidc_api/models/db/stage2/gvhd_organ_chronic_orm.py,sha256=1oVQal-jDylHhfbop43UKZ86YQzrSMu9qCiF8_ELXnY,862
61
+ cidc_api/models/db/stage2/institution_orm.py,sha256=gE0tceyc8mOqZRoOtOAJIAPJUSwJcDaU8L6J4HuUSYM,1248
62
+ cidc_api/models/db/stage2/medical_history_orm.py,sha256=4g-0nk8TIRpzrqwYTAlj9w6o_bPwzic0ygX6sK4x9SU,1282
63
+ cidc_api/models/db/stage2/other_clinical_endpoint_orm.py,sha256=k2Vglc8jASKzSBYBc6C5HCfKUD-cC-HKgvNmuxMFOQc,1091
64
+ cidc_api/models/db/stage2/other_malignancy_orm.py,sha256=qcPL29e8RwAGquMWEp2-ZGSecJGhlgpKdfYFNIHXHvI,1303
65
+ cidc_api/models/db/stage2/participant_orm.py,sha256=U2OICb5OUPpMuh7SPeQJ9GsX4uq5MDc2UYMt52BJYb4,3695
66
+ cidc_api/models/db/stage2/prior_treatment_orm.py,sha256=pvtB3DD6UPtS7GQpAinvJi64mlZjEwWVcp0bFaHpASo,1305
67
+ cidc_api/models/db/stage2/publication_orm.py,sha256=EMAq83WtgFYy5yBESgaajruB6fzYfMTLNyZDZiIJBLM,1040
68
+ cidc_api/models/db/stage2/radiotherapy_dose_orm.py,sha256=QBNmehh5VsKzkc59u_CHsFIgWYKsEp4lFyxp5HPMysM,1500
69
+ cidc_api/models/db/stage2/response_by_system_orm.py,sha256=FzbxFkcIt-IGzwejVITHVFZ5qYA5Oece3yEBqhzjPHw,1524
70
+ cidc_api/models/db/stage2/response_orm.py,sha256=p4xtydLvuZovVwcMvq3-WdLsKeKtIl6KTklGlWGVBSA,1163
71
+ cidc_api/models/db/stage2/shipment_orm.py,sha256=dDmj_PK2yAq23oh60sAcT2dkw5PjWmBoqO55YtFtExc,2007
72
+ cidc_api/models/db/stage2/shipment_specimen_orm.py,sha256=0ufXOQPDjgucu5qXQWDAKnRXajvuldsZezj5ez6hsgg,909
73
+ cidc_api/models/db/stage2/specimen_orm.py,sha256=-UDfQ0IlbmCs6GxCwVIF2eiFPgsjdgq_OAV-X58lH_U,4165
74
+ cidc_api/models/db/stage2/stem_cell_transplant_orm.py,sha256=YxiDGUXIiEtHyBU0zieniG1Ey8cTozuuRym6fv_8DsA,1097
75
+ cidc_api/models/db/stage2/surgery_orm.py,sha256=68g7__ZncQ6Yui5nGhSOHZjWIXWrb5PRAZRS6FCWD18,1018
76
+ cidc_api/models/db/stage2/therapy_agent_dose_orm.py,sha256=dRgXJqlv_EAGaPZ99xFR3xSXBiCPcC-G5e5eJSxqiVY,1306
77
+ cidc_api/models/db/stage2/treatment_orm.py,sha256=ualcYhXrl2obJ-wXDRx5riQsgOWEbdOmmKY8YNiPdZY,1919
78
+ cidc_api/models/db/stage2/trial_orm.py,sha256=7_5kA1Yv80GFQykK8AIlFC0vtrsb2H8xLstlgt8J370,2855
79
79
  cidc_api/models/files/__init__.py,sha256=8BMTnUSHzUbz0lBeEQY6NvApxDD3GMWMduoVMos2g4Y,213
80
80
  cidc_api/models/files/details.py,sha256=sZkGM7iEV4-J6IDQCdiMV6KBDLbPxCOqUMaU3aY9rX8,65153
81
- cidc_api/models/files/facets.py,sha256=rG99wUpHvWHkcRDxTcXz40502Er47l_5hKzP-ORvXGE,33621
81
+ cidc_api/models/files/facets.py,sha256=vieZ3z_tYB29NqtvNzvKqajVwxM5ZLLZKeyQTq5lheU,33776
82
82
  cidc_api/models/pydantic/base.py,sha256=6Lsf4fekIS1E-DwZmgCXlfm3Qq9_23dA_v3iz1w2JoA,1427
83
83
  cidc_api/models/pydantic/stage1/__init__.py,sha256=H-NDjCd8isHTgZ7sqz-MIbzC-PpW1kEtR-x-Dyc8r6Q,1667
84
84
  cidc_api/models/pydantic/stage1/additional_treatment.py,sha256=TFVzjd1NPLSfH9UnL2W3aZhpZSzDsg97j9IK8t882YA,1050
@@ -153,13 +153,13 @@ cidc_api/shared/assay_handling.py,sha256=zzWSqQ-ddLVzX5IuHvsaSib2H1lnjXpo9Lbxaoq
153
153
  cidc_api/shared/auth.py,sha256=EIP9AKokLNrI79Fkpv3P7WdzaddJIsuGGICc1W494X0,9110
154
154
  cidc_api/shared/email_layout.html,sha256=pBoTNw3ACHH-ncZFaNvcy5bXMqPwizR78usb0uCYtIc,7670
155
155
  cidc_api/shared/emails.py,sha256=8kNFEaSnKpY-GX_iE59QUhSp3c4_uzy3SpHYt2QjuqI,6121
156
- cidc_api/shared/file_handling.py,sha256=ahzVZnhg23DloaopKVvCzgw_vHc6c8vxxZdAKR38sjI,5636
157
- cidc_api/shared/gcloud_client.py,sha256=l40qQ0lo2QQkWfarXlApmI7iPeYzYoEEXBvemyizYnc,38421
156
+ cidc_api/shared/file_handling.py,sha256=ObsLvBrkwHo6Nv48GvFXDKElNNl4inGpxv--001H_xc,5843
157
+ cidc_api/shared/gcloud_client.py,sha256=lZuSmFjJizJ3R_rbKvNs3ddv9igy8MEYKcXv6toTIF0,39625
158
158
  cidc_api/shared/jose.py,sha256=-qzGzEDAlokEp9E7WtBtQkXyyfPWTYXlwYpCqVJWmqM,1830
159
159
  cidc_api/shared/rest_utils.py,sha256=RwR30WOUAYCxL7V-i2totEyeriG30GbBDvBcpLXhM9w,6594
160
160
  cidc_api/shared/utils.py,sha256=-gLnzxCR9E6h0plt2xrNisUG5_Y6GhhVwz3DgDIzpvs,367
161
- nci_cidc_api_modules-1.2.42.dist-info/licenses/LICENSE,sha256=pNYWVTHaYonnmJyplmeAp7tQAjosmDpAWjb34jjv7Xs,1102
162
- nci_cidc_api_modules-1.2.42.dist-info/METADATA,sha256=SroeJFGQ9eCHO-1d02bhZXpVul_6QIYn1t7s_Df4ySI,40229
163
- nci_cidc_api_modules-1.2.42.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
164
- nci_cidc_api_modules-1.2.42.dist-info/top_level.txt,sha256=rNiRzL0lJGi5Q9tY9uSoMdTbJ-7u5c_D2E86KA94yRA,9
165
- nci_cidc_api_modules-1.2.42.dist-info/RECORD,,
161
+ nci_cidc_api_modules-1.2.44.dist-info/licenses/LICENSE,sha256=pNYWVTHaYonnmJyplmeAp7tQAjosmDpAWjb34jjv7Xs,1102
162
+ nci_cidc_api_modules-1.2.44.dist-info/METADATA,sha256=JU98ds9ZfGUDOaKnvb9FSYoWKbgWJNZWvj9TmDYT5eY,40270
163
+ nci_cidc_api_modules-1.2.44.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
164
+ nci_cidc_api_modules-1.2.44.dist-info/top_level.txt,sha256=rNiRzL0lJGi5Q9tY9uSoMdTbJ-7u5c_D2E86KA94yRA,9
165
+ nci_cidc_api_modules-1.2.44.dist-info/RECORD,,