canvas 0.13.2__tar.gz → 0.14.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.
Potentially problematic release.
This version of canvas might be problematic. Click here for more details.
- {canvas-0.13.2 → canvas-0.14.0}/PKG-INFO +1 -3
- {canvas-0.13.2 → canvas-0.14.0}/canvas_generated/messages/effects_pb2.py +2 -2
- {canvas-0.13.2 → canvas-0.14.0}/canvas_generated/messages/effects_pb2.pyi +2 -0
- canvas-0.14.0/canvas_sdk/effects/questionnaire_result.py +29 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/models/__init__.py +1 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/v1/data/allergy_intolerance.py +4 -2
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/v1/data/billing.py +4 -2
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/v1/data/command.py +17 -4
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/v1/data/condition.py +8 -4
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/v1/data/detected_issue.py +8 -5
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/v1/data/device.py +6 -4
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/v1/data/imaging.py +15 -13
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/v1/data/lab.py +19 -13
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/v1/data/medication.py +8 -4
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/v1/data/note.py +8 -6
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/v1/data/observation.py +11 -9
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/v1/data/practicelocation.py +2 -2
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/v1/data/protocol_override.py +3 -5
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/v1/data/questionnaire.py +15 -13
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/v1/data/staff.py +4 -4
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/v1/data/task.py +12 -8
- canvas-0.14.0/plugin_runner/aws_headers.py +77 -0
- {canvas-0.13.2 → canvas-0.14.0}/plugin_runner/plugin_installer.py +25 -7
- {canvas-0.13.2 → canvas-0.14.0}/plugin_runner/plugin_runner.py +0 -1
- {canvas-0.13.2 → canvas-0.14.0}/plugin_runner/plugin_synchronizer.py +3 -1
- {canvas-0.13.2 → canvas-0.14.0}/plugin_runner/tests/test_plugin_installer.py +10 -12
- {canvas-0.13.2 → canvas-0.14.0}/plugin_runner/tests/test_plugin_runner.py +0 -14
- {canvas-0.13.2 → canvas-0.14.0}/plugin_runner/tests/test_sandbox.py +13 -1
- {canvas-0.13.2 → canvas-0.14.0}/pyproject.toml +1 -3
- {canvas-0.13.2 → canvas-0.14.0}/settings.py +4 -0
- {canvas-0.13.2 → canvas-0.14.0}/README.md +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/__init__.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/apps/__init__.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/apps/auth/__init__.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/apps/auth/tests.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/apps/auth/utils.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/apps/emit/__init__.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/apps/emit/emit.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/apps/emit/event_fixtures/ALLERGY_INTOLERANCE_CREATED.ndjson +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/apps/emit/event_fixtures/ALLERGY_INTOLERANCE_UPDATED.ndjson +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/apps/emit/event_fixtures/APPOINTMENT_CANCELED.ndjson +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/apps/emit/event_fixtures/APPOINTMENT_CHECKED_IN.ndjson +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/apps/emit/event_fixtures/APPOINTMENT_CREATED.ndjson +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/apps/emit/event_fixtures/APPOINTMENT_NO_SHOWED.ndjson +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/apps/emit/event_fixtures/APPOINTMENT_RESCHEDULED.ndjson +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/apps/emit/event_fixtures/APPOINTMENT_RESTORED.ndjson +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/apps/emit/event_fixtures/APPOINTMENT_UPDATED.ndjson +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/apps/emit/event_fixtures/ASSESS_COMMAND__CONDITION_SELECTED.ndjson +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/apps/emit/event_fixtures/ASSESS_COMMAND__POST_COMMIT.ndjson +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/apps/emit/event_fixtures/ASSESS_COMMAND__POST_ORIGINATE.ndjson +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/apps/emit/event_fixtures/ASSESS_COMMAND__POST_UPDATE.ndjson +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/apps/emit/event_fixtures/ASSESS_COMMAND__PRE_COMMIT.ndjson +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/apps/emit/event_fixtures/ASSESS_COMMAND__PRE_ORIGINATE.ndjson +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/apps/emit/event_fixtures/ASSESS_COMMAND__PRE_UPDATE.ndjson +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/apps/emit/event_fixtures/BILLING_LINE_ITEM_CREATED.ndjson +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/apps/emit/event_fixtures/BILLING_LINE_ITEM_UPDATED.ndjson +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/apps/emit/event_fixtures/CONDITION_ASSESSED.ndjson +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/apps/emit/event_fixtures/CONDITION_CREATED.ndjson +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/apps/emit/event_fixtures/CONDITION_UPDATED.ndjson +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/apps/emit/event_fixtures/CRON.ndjson +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/apps/emit/event_fixtures/ENCOUNTER_CREATED.ndjson +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/apps/emit/event_fixtures/ENCOUNTER_UPDATED.ndjson +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/apps/emit/event_fixtures/IMMUNIZATION_CREATED.ndjson +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/apps/emit/event_fixtures/IMMUNIZATION_STATEMENT_CREATED.ndjson +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/apps/emit/event_fixtures/IMMUNIZATION_STATEMENT_UPDATED.ndjson +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/apps/emit/event_fixtures/IMMUNIZATION_UPDATED.ndjson +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/apps/emit/event_fixtures/INTERVIEW_CREATED.ndjson +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/apps/emit/event_fixtures/INTERVIEW_UPDATED.ndjson +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/apps/emit/event_fixtures/LAB_ORDER_CREATED.ndjson +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/apps/emit/event_fixtures/LAB_ORDER_UPDATED.ndjson +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/apps/emit/event_fixtures/MEDICATION_LIST_ITEM_CREATED.ndjson +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/apps/emit/event_fixtures/MEDICATION_LIST_ITEM_UPDATED.ndjson +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/apps/emit/event_fixtures/MEDICATION_STATEMENT_COMMAND__POST_COMMIT.ndjson +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/apps/emit/event_fixtures/MEDICATION_STATEMENT_COMMAND__POST_ORIGINATE.ndjson +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/apps/emit/event_fixtures/MEDICATION_STATEMENT_COMMAND__POST_UPDATE.ndjson +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/apps/emit/event_fixtures/MEDICATION_STATEMENT_COMMAND__PRE_COMMIT.ndjson +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/apps/emit/event_fixtures/MEDICATION_STATEMENT_COMMAND__PRE_ORIGINATE.ndjson +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/apps/emit/event_fixtures/MEDICATION_STATEMENT_COMMAND__PRE_UPDATE.ndjson +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/apps/emit/event_fixtures/MEDICATION_STATEMENT__MEDICATION__POST_SEARCH.ndjson +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/apps/emit/event_fixtures/PATIENT_CREATED.ndjson +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/apps/emit/event_fixtures/PATIENT_UPDATED.ndjson +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/apps/emit/event_fixtures/PLAN_COMMAND__POST_ORIGINATE.ndjson +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/apps/emit/event_fixtures/PLAN_COMMAND__PRE_ORIGINATE.ndjson +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/apps/emit/event_fixtures/QUESTIONNAIRE_COMMAND__POST_COMMIT.ndjson +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/apps/emit/event_fixtures/QUESTIONNAIRE_COMMAND__POST_ORIGINATE.ndjson +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/apps/emit/event_fixtures/QUESTIONNAIRE_COMMAND__POST_UPDATE.ndjson +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/apps/emit/event_fixtures/QUESTIONNAIRE_COMMAND__PRE_COMMIT.ndjson +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/apps/emit/event_fixtures/QUESTIONNAIRE_COMMAND__PRE_ORIGINATE.ndjson +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/apps/emit/event_fixtures/QUESTIONNAIRE_COMMAND__PRE_UPDATE.ndjson +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/apps/emit/event_fixtures/QUESTIONNAIRE__QUESTIONNAIRE__POST_SEARCH.ndjson +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/apps/emit/event_fixtures/TASK_COMMENT_CREATED.ndjson +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/apps/emit/event_fixtures/TASK_CREATED.ndjson +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/apps/emit/event_fixtures/TASK_UPDATED.ndjson +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/apps/emit/event_fixtures/VITAL_SIGN_CREATED.ndjson +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/apps/emit/event_fixtures/VITAL_SIGN_UPDATED.ndjson +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/apps/logs/__init__.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/apps/logs/logs.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/apps/plugin/__init__.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/apps/plugin/plugin.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/apps/plugin/tests.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/apps/run_plugins/__init__.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/apps/run_plugins/run_plugins.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/conftest.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/main.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/templates/plugins/application/cookiecutter.json +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/templates/plugins/application/{{ cookiecutter.__project_slug }}/CANVAS_MANIFEST.json +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/templates/plugins/application/{{ cookiecutter.__project_slug }}/README.md +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/templates/plugins/application/{{ cookiecutter.__project_slug }}/applications/__init__.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/templates/plugins/application/{{ cookiecutter.__project_slug }}/applications/my_application.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/templates/plugins/application/{{ cookiecutter.__project_slug }}/assets/python-logo.png +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/templates/plugins/default/cookiecutter.json +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/templates/plugins/default/{{ cookiecutter.__project_slug }}/CANVAS_MANIFEST.json +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/templates/plugins/default/{{ cookiecutter.__project_slug }}/README.md +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/templates/plugins/default/{{ cookiecutter.__project_slug }}/protocols/__init__.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/templates/plugins/default/{{ cookiecutter.__project_slug }}/protocols/my_protocol.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/tests.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/utils/__init__.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/utils/context/__init__.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/utils/context/context.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/utils/context/tests.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/utils/print/__init__.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/utils/print/print.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/utils/print/tests.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/utils/urls/__init__.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/utils/urls/tests.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/utils/urls/urls.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/utils/validators/__init__.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/utils/validators/manifest_schema.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/utils/validators/tests.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_cli/utils/validators/validators.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_generated/messages/effects_pb2_grpc.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_generated/messages/events_pb2.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_generated/messages/events_pb2.pyi +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_generated/messages/events_pb2_grpc.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_generated/messages/plugins_pb2.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_generated/messages/plugins_pb2.pyi +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_generated/messages/plugins_pb2_grpc.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_generated/services/plugin_runner_pb2.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_generated/services/plugin_runner_pb2.pyi +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_generated/services/plugin_runner_pb2_grpc.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/__init__.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/base.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/commands/__init__.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/commands/base.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/commands/commands/allergy.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/commands/commands/assess.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/commands/commands/close_goal.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/commands/commands/diagnose.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/commands/commands/exam.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/commands/commands/family_history.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/commands/commands/goal.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/commands/commands/history_present_illness.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/commands/commands/instruct.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/commands/commands/lab_order.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/commands/commands/medical_history.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/commands/commands/medication_statement.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/commands/commands/past_surgical_history.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/commands/commands/perform.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/commands/commands/plan.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/commands/commands/prescribe.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/commands/commands/questionnaire.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/commands/commands/reason_for_visit.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/commands/commands/refill.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/commands/commands/remove_allergy.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/commands/commands/review_of_systems.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/commands/commands/stop_medication.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/commands/commands/structured_assessment.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/commands/commands/task.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/commands/commands/update_diagnosis.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/commands/commands/update_goal.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/commands/commands/vitals.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/commands/constants.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/commands/tests/protocol/__init__.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/commands/tests/protocol/tests.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/commands/tests/schema/__init__.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/commands/tests/schema/tests.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/commands/tests/test_utils.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/commands/tests/unit/__init__.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/commands/tests/unit/tests.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/effects/__init__.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/effects/banner_alert/__init__.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/effects/banner_alert/add_banner_alert.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/effects/banner_alert/remove_banner_alert.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/effects/banner_alert/tests.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/effects/base.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/effects/launch_modal.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/effects/patient_chart_summary_configuration.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/effects/patient_portal/__init__.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/effects/patient_portal/intake_form_results.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/effects/patient_profile_configuration.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/effects/protocol_card/__init__.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/effects/protocol_card/protocol_card.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/effects/protocol_card/tests.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/effects/show_button.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/effects/surescripts/surescripts_messages.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/effects/task/task.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/events/__init__.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/events/base.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/handlers/__init__.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/handlers/action_button.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/handlers/application.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/handlers/base.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/handlers/cron_task.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/protocols/__init__.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/protocols/base.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/protocols/clinical_quality_measure.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/protocols/timeframe.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/tests/__init__.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/utils/__init__.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/utils/db.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/utils/http.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/utils/stats.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/utils/tests.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/v1/__init__.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/v1/data/__init__.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/v1/data/base.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/v1/data/common.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/v1/data/organization.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/v1/data/patient.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/v1/data/user.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/value_set/__init__.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/value_set/custom.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/value_set/tests/test_value_sets.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/value_set/v2022/__init__.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/value_set/v2022/adverse_event.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/value_set/v2022/allergy.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/value_set/v2022/assessment.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/value_set/v2022/communication.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/value_set/v2022/condition.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/value_set/v2022/device.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/value_set/v2022/diagnostic_study.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/value_set/v2022/encounter.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/value_set/v2022/immunization.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/value_set/v2022/individual_characteristic.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/value_set/v2022/intervention.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/value_set/v2022/laboratory_test.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/value_set/v2022/medication.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/value_set/v2022/physical_exam.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/value_set/v2022/procedure.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/value_set/v2022/symptom.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/value_set/value_set.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/canvas_sdk/views/__init__.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/logger/__init__.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/logger/logger.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/plugin_runner/__init__.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/plugin_runner/authentication.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/plugin_runner/exceptions.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/plugin_runner/sandbox.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/plugin_runner/tests/__init__.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/plugin_runner/tests/data/plugins/.gitkeep +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/plugin_runner/tests/fixtures/plugins/example_plugin/CANVAS_MANIFEST.json +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/plugin_runner/tests/fixtures/plugins/example_plugin/README.md +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/plugin_runner/tests/fixtures/plugins/example_plugin/__init__.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/plugin_runner/tests/fixtures/plugins/example_plugin/protocols/__init__.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/plugin_runner/tests/fixtures/plugins/example_plugin/protocols/my_protocol.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/plugin_runner/tests/fixtures/plugins/test_module_imports_outside_plugin_v1/CANVAS_MANIFEST.json +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/plugin_runner/tests/fixtures/plugins/test_module_imports_outside_plugin_v1/README.md +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/plugin_runner/tests/fixtures/plugins/test_module_imports_outside_plugin_v1/other_module/__init__.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/plugin_runner/tests/fixtures/plugins/test_module_imports_outside_plugin_v1/other_module/base.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/plugin_runner/tests/fixtures/plugins/test_module_imports_outside_plugin_v1/protocols/__init__.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/plugin_runner/tests/fixtures/plugins/test_module_imports_outside_plugin_v1/protocols/my_protocol.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/plugin_runner/tests/fixtures/plugins/test_module_imports_outside_plugin_v2/CANVAS_MANIFEST.json +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/plugin_runner/tests/fixtures/plugins/test_module_imports_outside_plugin_v2/README.md +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/plugin_runner/tests/fixtures/plugins/test_module_imports_outside_plugin_v2/other_module/__init__.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/plugin_runner/tests/fixtures/plugins/test_module_imports_outside_plugin_v2/other_module/base.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/plugin_runner/tests/fixtures/plugins/test_module_imports_outside_plugin_v2/protocols/__init__.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/plugin_runner/tests/fixtures/plugins/test_module_imports_outside_plugin_v2/protocols/my_protocol.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/plugin_runner/tests/fixtures/plugins/test_module_imports_outside_plugin_v3/CANVAS_MANIFEST.json +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/plugin_runner/tests/fixtures/plugins/test_module_imports_outside_plugin_v3/README.md +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/plugin_runner/tests/fixtures/plugins/test_module_imports_outside_plugin_v3/other_module/__init__.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/plugin_runner/tests/fixtures/plugins/test_module_imports_outside_plugin_v3/other_module/base.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/plugin_runner/tests/fixtures/plugins/test_module_imports_outside_plugin_v3/protocols/__init__.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/plugin_runner/tests/fixtures/plugins/test_module_imports_outside_plugin_v3/protocols/my_protocol.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/plugin_runner/tests/fixtures/plugins/test_module_imports_plugin/CANVAS_MANIFEST.json +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/plugin_runner/tests/fixtures/plugins/test_module_imports_plugin/README.md +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/plugin_runner/tests/fixtures/plugins/test_module_imports_plugin/other_module/__init__.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/plugin_runner/tests/fixtures/plugins/test_module_imports_plugin/other_module/base.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/plugin_runner/tests/fixtures/plugins/test_module_imports_plugin/protocols/__init__.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/plugin_runner/tests/fixtures/plugins/test_module_imports_plugin/protocols/my_protocol.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/plugin_runner/tests/test_application.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/pubsub/__init__.py +0 -0
- {canvas-0.13.2 → canvas-0.14.0}/pubsub/pubsub.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: canvas
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.14.0
|
|
4
4
|
Summary: SDK to customize event-driven actions in your Canvas instance
|
|
5
5
|
License: MIT
|
|
6
6
|
Author: Canvas Team
|
|
@@ -10,8 +10,6 @@ Classifier: License :: OSI Approved :: MIT License
|
|
|
10
10
|
Classifier: Programming Language :: Python :: 3
|
|
11
11
|
Classifier: Programming Language :: Python :: 3.11
|
|
12
12
|
Classifier: Programming Language :: Python :: 3.12
|
|
13
|
-
Requires-Dist: boto3 (>=1.35.88,<2.0.0)
|
|
14
|
-
Requires-Dist: boto3-stubs[s3] (>=1.35.88,<2.0.0)
|
|
15
13
|
Requires-Dist: cookiecutter
|
|
16
14
|
Requires-Dist: cron-converter (>=1.2.1,<2.0.0)
|
|
17
15
|
Requires-Dist: deprecation (>=2.1.0,<3.0.0)
|
|
@@ -14,7 +14,7 @@ _sym_db = _symbol_database.Default()
|
|
|
14
14
|
|
|
15
15
|
|
|
16
16
|
|
|
17
|
-
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\'canvas_generated/messages/effects.proto\x12\x06\x63\x61nvas\"c\n\x06\x45\x66\x66\x65\x63t\x12 \n\x04type\x18\x01 \x01(\x0e\x32\x12.canvas.EffectType\x12\x0f\n\x07payload\x18\x02 \x01(\t\x12\x13\n\x0bplugin_name\x18\x03 \x01(\t\x12\x11\n\tclassname\x18\x04 \x01(\t*\
|
|
17
|
+
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\'canvas_generated/messages/effects.proto\x12\x06\x63\x61nvas\"c\n\x06\x45\x66\x66\x65\x63t\x12 \n\x04type\x18\x01 \x01(\x0e\x32\x12.canvas.EffectType\x12\x0f\n\x07payload\x18\x02 \x01(\t\x12\x13\n\x0bplugin_name\x18\x03 \x01(\t\x12\x11\n\tclassname\x18\x04 \x01(\t*\xa5(\n\nEffectType\x12\x12\n\x0eUNKNOWN_EFFECT\x10\x00\x12\x07\n\x03LOG\x10\x01\x12\x14\n\x10\x41\x44\x44_PLAN_COMMAND\x10\x02\x12\x1f\n\x1b\x41UTOCOMPLETE_SEARCH_RESULTS\x10\x03\x12\x14\n\x10\x41\x44\x44_BANNER_ALERT\x10\x04\x12\x17\n\x13REMOVE_BANNER_ALERT\x10\x05\x12\x1c\n\x18ORIGINATE_ASSESS_COMMAND\x10\x06\x12\x17\n\x13\x45\x44IT_ASSESS_COMMAND\x10\x07\x12\x19\n\x15\x44\x45LETE_ASSESS_COMMAND\x10\x08\x12\x19\n\x15\x43OMMIT_ASSESS_COMMAND\x10\t\x12!\n\x1d\x45NTER_IN_ERROR_ASSESS_COMMAND\x10\n\x12\x1e\n\x1aORIGINATE_DIAGNOSE_COMMAND\x10\x0b\x12\x19\n\x15\x45\x44IT_DIAGNOSE_COMMAND\x10\x0c\x12\x1b\n\x17\x44\x45LETE_DIAGNOSE_COMMAND\x10\r\x12\x1b\n\x17\x43OMMIT_DIAGNOSE_COMMAND\x10\x0e\x12#\n\x1f\x45NTER_IN_ERROR_DIAGNOSE_COMMAND\x10\x0f\x12\x1a\n\x16ORIGINATE_GOAL_COMMAND\x10\x10\x12\x15\n\x11\x45\x44IT_GOAL_COMMAND\x10\x11\x12\x17\n\x13\x44\x45LETE_GOAL_COMMAND\x10\x12\x12\x17\n\x13\x43OMMIT_GOAL_COMMAND\x10\x13\x12\x1f\n\x1b\x45NTER_IN_ERROR_GOAL_COMMAND\x10\x14\x12\x19\n\x15ORIGINATE_HPI_COMMAND\x10\x15\x12\x14\n\x10\x45\x44IT_HPI_COMMAND\x10\x16\x12\x16\n\x12\x44\x45LETE_HPI_COMMAND\x10\x17\x12\x16\n\x12\x43OMMIT_HPI_COMMAND\x10\x18\x12\x1e\n\x1a\x45NTER_IN_ERROR_HPI_COMMAND\x10\x19\x12*\n&ORIGINATE_MEDICATION_STATEMENT_COMMAND\x10\x1a\x12%\n!EDIT_MEDICATION_STATEMENT_COMMAND\x10\x1b\x12\'\n#DELETE_MEDICATION_STATEMENT_COMMAND\x10\x1c\x12\'\n#COMMIT_MEDICATION_STATEMENT_COMMAND\x10\x1d\x12/\n+ENTER_IN_ERROR_MEDICATION_STATEMENT_COMMAND\x10\x1e\x12\x1a\n\x16ORIGINATE_PLAN_COMMAND\x10\x1f\x12\x15\n\x11\x45\x44IT_PLAN_COMMAND\x10 \x12\x17\n\x13\x44\x45LETE_PLAN_COMMAND\x10!\x12\x17\n\x13\x43OMMIT_PLAN_COMMAND\x10\"\x12\x1f\n\x1b\x45NTER_IN_ERROR_PLAN_COMMAND\x10#\x12\x1f\n\x1bORIGINATE_PRESCRIBE_COMMAND\x10$\x12\x1a\n\x16\x45\x44IT_PRESCRIBE_COMMAND\x10%\x12\x1c\n\x18\x44\x45LETE_PRESCRIBE_COMMAND\x10&\x12\x1c\n\x18\x43OMMIT_PRESCRIBE_COMMAND\x10\'\x12$\n ENTER_IN_ERROR_PRESCRIBE_COMMAND\x10(\x12#\n\x1fORIGINATE_QUESTIONNAIRE_COMMAND\x10)\x12\x1e\n\x1a\x45\x44IT_QUESTIONNAIRE_COMMAND\x10*\x12 \n\x1c\x44\x45LETE_QUESTIONNAIRE_COMMAND\x10+\x12 \n\x1c\x43OMMIT_QUESTIONNAIRE_COMMAND\x10,\x12(\n$ENTER_IN_ERROR_QUESTIONNAIRE_COMMAND\x10-\x12&\n\"ORIGINATE_REASON_FOR_VISIT_COMMAND\x10.\x12!\n\x1d\x45\x44IT_REASON_FOR_VISIT_COMMAND\x10/\x12#\n\x1f\x44\x45LETE_REASON_FOR_VISIT_COMMAND\x10\x30\x12#\n\x1f\x43OMMIT_REASON_FOR_VISIT_COMMAND\x10\x31\x12+\n\'ENTER_IN_ERROR_REASON_FOR_VISIT_COMMAND\x10\x32\x12%\n!ORIGINATE_STOP_MEDICATION_COMMAND\x10\x33\x12 \n\x1c\x45\x44IT_STOP_MEDICATION_COMMAND\x10\x34\x12\"\n\x1e\x44\x45LETE_STOP_MEDICATION_COMMAND\x10\x35\x12\"\n\x1e\x43OMMIT_STOP_MEDICATION_COMMAND\x10\x36\x12*\n&ENTER_IN_ERROR_STOP_MEDICATION_COMMAND\x10\x37\x12!\n\x1dORIGINATE_UPDATE_GOAL_COMMAND\x10\x38\x12\x1c\n\x18\x45\x44IT_UPDATE_GOAL_COMMAND\x10\x39\x12\x1e\n\x1a\x44\x45LETE_UPDATE_GOAL_COMMAND\x10:\x12\x1e\n\x1a\x43OMMIT_UPDATE_GOAL_COMMAND\x10;\x12&\n\"ENTER_IN_ERROR_UPDATE_GOAL_COMMAND\x10<\x12\x1d\n\x19ORIGINATE_PERFORM_COMMAND\x10=\x12\x18\n\x14\x45\x44IT_PERFORM_COMMAND\x10>\x12\x1a\n\x16\x44\x45LETE_PERFORM_COMMAND\x10?\x12\x1a\n\x16\x43OMMIT_PERFORM_COMMAND\x10@\x12\"\n\x1e\x45NTER_IN_ERROR_PERFORM_COMMAND\x10\x41\x12\x1e\n\x1aORIGINATE_INSTRUCT_COMMAND\x10\x42\x12\x19\n\x15\x45\x44IT_INSTRUCT_COMMAND\x10\x43\x12\x1b\n\x17\x44\x45LETE_INSTRUCT_COMMAND\x10\x44\x12\x1b\n\x17\x43OMMIT_INSTRUCT_COMMAND\x10\x45\x12#\n\x1f\x45NTER_IN_ERROR_INSTRUCT_COMMAND\x10\x46\x12\x1f\n\x1bORIGINATE_LAB_ORDER_COMMAND\x10G\x12\x1a\n\x16\x45\x44IT_LAB_ORDER_COMMAND\x10H\x12\x1c\n\x18\x44\x45LETE_LAB_ORDER_COMMAND\x10I\x12\x1c\n\x18\x43OMMIT_LAB_ORDER_COMMAND\x10J\x12$\n ENTER_IN_ERROR_LAB_ORDER_COMMAND\x10K\x12$\n ORIGINATE_FAMILY_HISTORY_COMMAND\x10L\x12\x1f\n\x1b\x45\x44IT_FAMILY_HISTORY_COMMAND\x10M\x12!\n\x1d\x44\x45LETE_FAMILY_HISTORY_COMMAND\x10N\x12!\n\x1d\x43OMMIT_FAMILY_HISTORY_COMMAND\x10O\x12)\n%ENTER_IN_ERROR_FAMILY_HISTORY_COMMAND\x10P\x12\x1d\n\x19ORIGINATE_ALLERGY_COMMAND\x10Q\x12\x18\n\x14\x45\x44IT_ALLERGY_COMMAND\x10R\x12\x1a\n\x16\x44\x45LETE_ALLERGY_COMMAND\x10S\x12\x1a\n\x16\x43OMMIT_ALLERGY_COMMAND\x10T\x12\"\n\x1e\x45NTER_IN_ERROR_ALLERGY_COMMAND\x10U\x12$\n ORIGINATE_REMOVE_ALLERGY_COMMAND\x10V\x12\x1f\n\x1b\x45\x44IT_REMOVE_ALLERGY_COMMAND\x10W\x12!\n\x1d\x44\x45LETE_REMOVE_ALLERGY_COMMAND\x10X\x12!\n\x1d\x43OMMIT_REMOVE_ALLERGY_COMMAND\x10Y\x12)\n%ENTER_IN_ERROR_REMOVE_ALLERGY_COMMAND\x10Z\x12&\n\"ORIGINATE_SURGICAL_HISTORY_COMMAND\x10[\x12!\n\x1d\x45\x44IT_SURGICAL_HISTORY_COMMAND\x10\\\x12#\n\x1f\x44\x45LETE_SURGICAL_HISTORY_COMMAND\x10]\x12#\n\x1f\x43OMMIT_SURGICAL_HISTORY_COMMAND\x10^\x12+\n\'ENTER_IN_ERROR_SURGICAL_HISTORY_COMMAND\x10_\x12\x0f\n\x0b\x43REATE_TASK\x10\x64\x12\x0f\n\x0bUPDATE_TASK\x10\x65\x12\x17\n\x13\x43REATE_TASK_COMMENT\x10\x66\x12%\n!ORIGINATE_MEDICAL_HISTORY_COMMAND\x10g\x12 \n\x1c\x45\x44IT_MEDICAL_HISTORY_COMMAND\x10h\x12\"\n\x1e\x44\x45LETE_MEDICAL_HISTORY_COMMAND\x10i\x12\"\n\x1e\x43OMMIT_MEDICAL_HISTORY_COMMAND\x10j\x12*\n&ENTER_IN_ERROR_MEDICAL_HISTORY_COMMAND\x10k\x12\x1f\n\x1b\x41\x44\x44_OR_UPDATE_PROTOCOL_CARD\x10n\x12\x1b\n\x16ORIGINATE_TASK_COMMAND\x10\x85\x01\x12\x16\n\x11\x45\x44IT_TASK_COMMAND\x10\x86\x01\x12\x18\n\x13\x44\x45LETE_TASK_COMMAND\x10\x87\x01\x12\x18\n\x13\x43OMMIT_TASK_COMMAND\x10\x88\x01\x12 \n\x1b\x45NTER_IN_ERROR_TASK_COMMAND\x10\x89\x01\x12\x1c\n\x18ORIGINATE_REFILL_COMMAND\x10q\x12\x17\n\x13\x45\x44IT_REFILL_COMMAND\x10r\x12\x19\n\x15\x44\x45LETE_REFILL_COMMAND\x10s\x12\x19\n\x15\x43OMMIT_REFILL_COMMAND\x10t\x12!\n\x1d\x45NTER_IN_ERROR_REFILL_COMMAND\x10u\x12\x1c\n\x18ORIGINATE_VITALS_COMMAND\x10v\x12\x17\n\x13\x45\x44IT_VITALS_COMMAND\x10w\x12\x19\n\x15\x44\x45LETE_VITALS_COMMAND\x10x\x12\x19\n\x15\x43OMMIT_VITALS_COMMAND\x10y\x12!\n\x1d\x45NTER_IN_ERROR_VITALS_COMMAND\x10z\x12&\n\"ORIGINATE_UPDATE_DIAGNOSIS_COMMAND\x10{\x12!\n\x1d\x45\x44IT_UPDATE_DIAGNOSIS_COMMAND\x10|\x12#\n\x1f\x44\x45LETE_UPDATE_DIAGNOSIS_COMMAND\x10}\x12#\n\x1f\x43OMMIT_UPDATE_DIAGNOSIS_COMMAND\x10~\x12+\n\'ENTER_IN_ERROR_UPDATE_DIAGNOSIS_COMMAND\x10\x7f\x12!\n\x1cORIGINATE_CLOSE_GOAL_COMMAND\x10\x80\x01\x12\x1c\n\x17\x45\x44IT_CLOSE_GOAL_COMMAND\x10\x81\x01\x12\x1e\n\x19\x44\x45LETE_CLOSE_GOAL_COMMAND\x10\x82\x01\x12\x1e\n\x19\x43OMMIT_CLOSE_GOAL_COMMAND\x10\x83\x01\x12&\n!ENTER_IN_ERROR_CLOSE_GOAL_COMMAND\x10\x84\x01\x12 \n\x1b\x43REATE_QUESTIONNAIRE_RESULT\x10\x8a\x01\x12-\n(ANNOTATE_PATIENT_CHART_CONDITION_RESULTS\x10\xc8\x01\x12%\n ANNOTATE_CLAIM_CONDITION_RESULTS\x10\xac\x02\x12(\n#SHOW_PATIENT_CHART_SUMMARY_SECTIONS\x10\x90\x03\x12\"\n\x1dSHOW_PATIENT_PROFILE_SECTIONS\x10\xf4\x03\x12\x37\n2PATIENT_PROFILE__ADD_PHARMACY__POST_SEARCH_RESULTS\x10\xf5\x03\x12)\n$SEND_SURESCRIPTS_ELIGIBILITY_REQUEST\x10\xd8\x04\x12\x30\n+SEND_SURESCRIPTS_MEDICATION_HISTORY_REQUEST\x10\xd9\x04\x12&\n!SEND_SURESCRIPTS_BENEFITS_REQUEST\x10\xda\x04\x12\x1b\n\x16ORIGINATE_EXAM_COMMAND\x10\xbc\x05\x12\x16\n\x11\x45\x44IT_EXAM_COMMAND\x10\xbd\x05\x12\x18\n\x13\x44\x45LETE_EXAM_COMMAND\x10\xbe\x05\x12\x18\n\x13\x43OMMIT_EXAM_COMMAND\x10\xbf\x05\x12 \n\x1b\x45NTER_IN_ERROR_EXAM_COMMAND\x10\xc0\x05\x12\x1a\n\x15ORIGINATE_ROS_COMMAND\x10\xa0\x06\x12\x15\n\x10\x45\x44IT_ROS_COMMAND\x10\xa1\x06\x12\x17\n\x12\x44\x45LETE_ROS_COMMAND\x10\xa2\x06\x12\x17\n\x12\x43OMMIT_ROS_COMMAND\x10\xa3\x06\x12\x1f\n\x1a\x45NTER_IN_ERROR_ROS_COMMAND\x10\xa4\x06\x12,\n\'ORIGINATE_STRUCTURED_ASSESSMENT_COMMAND\x10\x84\x07\x12\'\n\"EDIT_STRUCTURED_ASSESSMENT_COMMAND\x10\x85\x07\x12)\n$DELETE_STRUCTURED_ASSESSMENT_COMMAND\x10\x86\x07\x12)\n$COMMIT_STRUCTURED_ASSESSMENT_COMMAND\x10\x87\x07\x12\x31\n,ENTER_IN_ERROR_STRUCTURED_ASSESSMENT_COMMAND\x10\x88\x07\x12\x17\n\x12SHOW_ACTION_BUTTON\x10\xe8\x07\x12(\n#PATIENT_PORTAL__INTAKE_FORM_RESULTS\x10\xd0\x0f\x12\x11\n\x0cLAUNCH_MODAL\x10\xb8\x17\x62\x06proto3')
|
|
18
18
|
|
|
19
19
|
_globals = globals()
|
|
20
20
|
_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
|
|
@@ -22,7 +22,7 @@ _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'canvas_generated.messages.e
|
|
|
22
22
|
if _descriptor._USE_C_DESCRIPTORS == False:
|
|
23
23
|
DESCRIPTOR._options = None
|
|
24
24
|
_globals['_EFFECTTYPE']._serialized_start=153
|
|
25
|
-
_globals['_EFFECTTYPE']._serialized_end=
|
|
25
|
+
_globals['_EFFECTTYPE']._serialized_end=5310
|
|
26
26
|
_globals['_EFFECT']._serialized_start=51
|
|
27
27
|
_globals['_EFFECT']._serialized_end=150
|
|
28
28
|
# @@protoc_insertion_point(module_scope)
|
|
@@ -137,6 +137,7 @@ class EffectType(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
|
|
|
137
137
|
DELETE_CLOSE_GOAL_COMMAND: _ClassVar[EffectType]
|
|
138
138
|
COMMIT_CLOSE_GOAL_COMMAND: _ClassVar[EffectType]
|
|
139
139
|
ENTER_IN_ERROR_CLOSE_GOAL_COMMAND: _ClassVar[EffectType]
|
|
140
|
+
CREATE_QUESTIONNAIRE_RESULT: _ClassVar[EffectType]
|
|
140
141
|
ANNOTATE_PATIENT_CHART_CONDITION_RESULTS: _ClassVar[EffectType]
|
|
141
142
|
ANNOTATE_CLAIM_CONDITION_RESULTS: _ClassVar[EffectType]
|
|
142
143
|
SHOW_PATIENT_CHART_SUMMARY_SECTIONS: _ClassVar[EffectType]
|
|
@@ -293,6 +294,7 @@ EDIT_CLOSE_GOAL_COMMAND: EffectType
|
|
|
293
294
|
DELETE_CLOSE_GOAL_COMMAND: EffectType
|
|
294
295
|
COMMIT_CLOSE_GOAL_COMMAND: EffectType
|
|
295
296
|
ENTER_IN_ERROR_CLOSE_GOAL_COMMAND: EffectType
|
|
297
|
+
CREATE_QUESTIONNAIRE_RESULT: EffectType
|
|
296
298
|
ANNOTATE_PATIENT_CHART_CONDITION_RESULTS: EffectType
|
|
297
299
|
ANNOTATE_CLAIM_CONDITION_RESULTS: EffectType
|
|
298
300
|
SHOW_PATIENT_CHART_SUMMARY_SECTIONS: EffectType
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
from typing import Any
|
|
2
|
+
|
|
3
|
+
from canvas_sdk.effects.base import EffectType, _BaseEffect
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
class CreateQuestionnaireResult(_BaseEffect):
|
|
7
|
+
"""CreateQuestionnaireResult effect."""
|
|
8
|
+
|
|
9
|
+
class Meta:
|
|
10
|
+
effect_type = EffectType.CREATE_QUESTIONNAIRE_RESULT
|
|
11
|
+
|
|
12
|
+
interview_id: str | None = None
|
|
13
|
+
score: float | None = None
|
|
14
|
+
abnormal: bool | None = None
|
|
15
|
+
narrative: str | None = None
|
|
16
|
+
code_system: str | None = None
|
|
17
|
+
code: str | None = None
|
|
18
|
+
|
|
19
|
+
@property
|
|
20
|
+
def values(self) -> dict[str, Any]:
|
|
21
|
+
"""Make the payload."""
|
|
22
|
+
return {
|
|
23
|
+
"interview_id": self.interview_id,
|
|
24
|
+
"score": self.score,
|
|
25
|
+
"abnormal": self.abnormal or False,
|
|
26
|
+
"narrative": self.narrative or "",
|
|
27
|
+
"code_system": self.code_system,
|
|
28
|
+
"code": self.code,
|
|
29
|
+
}
|
|
@@ -20,12 +20,13 @@ class AllergyIntolerance(models.Model):
|
|
|
20
20
|
created = models.DateTimeField()
|
|
21
21
|
modified = models.DateTimeField()
|
|
22
22
|
deleted = models.BooleanField()
|
|
23
|
-
committer = models.ForeignKey(CanvasUser, on_delete=models.DO_NOTHING)
|
|
24
|
-
entered_in_error = models.ForeignKey(CanvasUser, on_delete=models.DO_NOTHING)
|
|
23
|
+
committer = models.ForeignKey(CanvasUser, on_delete=models.DO_NOTHING, null=True)
|
|
24
|
+
entered_in_error = models.ForeignKey(CanvasUser, on_delete=models.DO_NOTHING, null=True)
|
|
25
25
|
patient = models.ForeignKey(
|
|
26
26
|
Patient,
|
|
27
27
|
on_delete=models.DO_NOTHING,
|
|
28
28
|
related_name="allergy_intolerances",
|
|
29
|
+
null=True,
|
|
29
30
|
)
|
|
30
31
|
note_id = models.BigIntegerField()
|
|
31
32
|
allergy_intolerance_type = models.CharField()
|
|
@@ -58,4 +59,5 @@ class AllergyIntoleranceCoding(models.Model):
|
|
|
58
59
|
AllergyIntolerance,
|
|
59
60
|
on_delete=models.DO_NOTHING,
|
|
60
61
|
related_name="codings",
|
|
62
|
+
null=True,
|
|
61
63
|
)
|
|
@@ -46,9 +46,11 @@ class BillingLineItem(models.Model):
|
|
|
46
46
|
dbid = models.BigIntegerField(primary_key=True)
|
|
47
47
|
created = models.DateTimeField()
|
|
48
48
|
modified = models.DateTimeField()
|
|
49
|
-
note = models.ForeignKey(
|
|
49
|
+
note = models.ForeignKey(
|
|
50
|
+
Note, on_delete=models.DO_NOTHING, related_name="billing_line_items", null=True
|
|
51
|
+
)
|
|
50
52
|
patient = models.ForeignKey(
|
|
51
|
-
Patient, on_delete=models.DO_NOTHING, related_name="billing_line_items"
|
|
53
|
+
Patient, on_delete=models.DO_NOTHING, related_name="billing_line_items", null=True
|
|
52
54
|
)
|
|
53
55
|
cpt = models.CharField()
|
|
54
56
|
charge = models.DecimalField()
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
from django.apps import apps
|
|
1
2
|
from django.db import models
|
|
2
3
|
|
|
3
4
|
from canvas_sdk.v1.data.patient import Patient
|
|
@@ -16,12 +17,24 @@ class Command(models.Model):
|
|
|
16
17
|
dbid = models.BigIntegerField(primary_key=True)
|
|
17
18
|
created = models.DateTimeField()
|
|
18
19
|
modified = models.DateTimeField()
|
|
19
|
-
originator = models.ForeignKey(CanvasUser, on_delete=models.DO_NOTHING)
|
|
20
|
-
committer = models.ForeignKey(CanvasUser, on_delete=models.DO_NOTHING)
|
|
21
|
-
entered_in_error = models.ForeignKey(CanvasUser, on_delete=models.DO_NOTHING)
|
|
20
|
+
originator = models.ForeignKey(CanvasUser, on_delete=models.DO_NOTHING, null=True)
|
|
21
|
+
committer = models.ForeignKey(CanvasUser, on_delete=models.DO_NOTHING, null=True)
|
|
22
|
+
entered_in_error = models.ForeignKey(CanvasUser, on_delete=models.DO_NOTHING, null=True)
|
|
22
23
|
state = models.CharField()
|
|
23
|
-
patient = models.ForeignKey(Patient, on_delete=models.DO_NOTHING)
|
|
24
|
+
patient = models.ForeignKey(Patient, on_delete=models.DO_NOTHING, null=True)
|
|
24
25
|
note_id = models.BigIntegerField()
|
|
25
26
|
schema_key = models.TextField()
|
|
26
27
|
data = models.JSONField()
|
|
27
28
|
origination_source = models.CharField()
|
|
29
|
+
anchor_object_type = models.CharField()
|
|
30
|
+
anchor_object_dbid = models.BigIntegerField()
|
|
31
|
+
|
|
32
|
+
@property
|
|
33
|
+
def anchor_object(self) -> models.Model | None:
|
|
34
|
+
"""
|
|
35
|
+
Use the anchor_object_type and anchor_object_dbid to get the anchor object for the command.
|
|
36
|
+
"""
|
|
37
|
+
# TODO: Is the anchor object type enough here, or do we need a mapping? The home-app model
|
|
38
|
+
# names might not exactly match the plugins model names.
|
|
39
|
+
anchor_model = apps.get_model(app_label="canvas_sdk", model_name=self.anchor_object_type)
|
|
40
|
+
return anchor_model.objects.get(dbid=self.anchor_object_dbid)
|
|
@@ -35,9 +35,11 @@ class Condition(models.Model):
|
|
|
35
35
|
id = models.UUIDField()
|
|
36
36
|
dbid = models.BigIntegerField(primary_key=True)
|
|
37
37
|
deleted = models.BooleanField()
|
|
38
|
-
entered_in_error = models.ForeignKey(CanvasUser, on_delete=models.DO_NOTHING)
|
|
39
|
-
committer = models.ForeignKey(CanvasUser, on_delete=models.DO_NOTHING)
|
|
40
|
-
patient = models.ForeignKey(
|
|
38
|
+
entered_in_error = models.ForeignKey(CanvasUser, on_delete=models.DO_NOTHING, null=True)
|
|
39
|
+
committer = models.ForeignKey(CanvasUser, on_delete=models.DO_NOTHING, null=True)
|
|
40
|
+
patient = models.ForeignKey(
|
|
41
|
+
Patient, on_delete=models.DO_NOTHING, related_name="conditions", null=True
|
|
42
|
+
)
|
|
41
43
|
onset_date = models.DateField()
|
|
42
44
|
resolution_date = models.DateField()
|
|
43
45
|
clinical_status = models.CharField(choices=ClinicalStatus.choices)
|
|
@@ -57,4 +59,6 @@ class ConditionCoding(models.Model):
|
|
|
57
59
|
code = models.CharField()
|
|
58
60
|
display = models.CharField()
|
|
59
61
|
user_selected = models.BooleanField()
|
|
60
|
-
condition = models.ForeignKey(
|
|
62
|
+
condition = models.ForeignKey(
|
|
63
|
+
Condition, on_delete=models.DO_NOTHING, related_name="codings", null=True
|
|
64
|
+
)
|
|
@@ -18,11 +18,11 @@ class DetectedIssue(models.Model):
|
|
|
18
18
|
modified = models.DateTimeField()
|
|
19
19
|
identified = models.DateTimeField()
|
|
20
20
|
deleted = models.BooleanField()
|
|
21
|
-
originator = models.ForeignKey(CanvasUser, on_delete=models.DO_NOTHING)
|
|
22
|
-
committer = models.ForeignKey(CanvasUser, on_delete=models.DO_NOTHING)
|
|
23
|
-
entered_in_error = models.ForeignKey(CanvasUser, on_delete=models.DO_NOTHING)
|
|
21
|
+
originator = models.ForeignKey(CanvasUser, on_delete=models.DO_NOTHING, null=True)
|
|
22
|
+
committer = models.ForeignKey(CanvasUser, on_delete=models.DO_NOTHING, null=True)
|
|
23
|
+
entered_in_error = models.ForeignKey(CanvasUser, on_delete=models.DO_NOTHING, null=True)
|
|
24
24
|
patient = models.ForeignKey(
|
|
25
|
-
Patient, on_delete=models.DO_NOTHING, related_name="detected_issues"
|
|
25
|
+
Patient, on_delete=models.DO_NOTHING, related_name="detected_issues", null=True
|
|
26
26
|
)
|
|
27
27
|
code = models.CharField()
|
|
28
28
|
status = models.CharField()
|
|
@@ -48,5 +48,8 @@ class DetectedIssueEvidence(models.Model):
|
|
|
48
48
|
display = models.CharField()
|
|
49
49
|
user_selected = models.BooleanField()
|
|
50
50
|
detected_issue = models.ForeignKey(
|
|
51
|
-
DetectedIssue,
|
|
51
|
+
DetectedIssue,
|
|
52
|
+
on_delete=models.DO_NOTHING,
|
|
53
|
+
related_name="evidence",
|
|
54
|
+
null=True,
|
|
52
55
|
)
|
|
@@ -16,10 +16,12 @@ class Device(models.Model):
|
|
|
16
16
|
dbid = models.BigIntegerField(primary_key=True)
|
|
17
17
|
created = models.DateTimeField()
|
|
18
18
|
modified = models.DateTimeField()
|
|
19
|
-
originator = models.ForeignKey(CanvasUser, on_delete=models.DO_NOTHING)
|
|
20
|
-
committer = models.ForeignKey(CanvasUser, on_delete=models.DO_NOTHING)
|
|
21
|
-
entered_in_error = models.ForeignKey(CanvasUser, on_delete=models.DO_NOTHING)
|
|
22
|
-
patient = models.ForeignKey(
|
|
19
|
+
originator = models.ForeignKey(CanvasUser, on_delete=models.DO_NOTHING, null=True)
|
|
20
|
+
committer = models.ForeignKey(CanvasUser, on_delete=models.DO_NOTHING, null=True)
|
|
21
|
+
entered_in_error = models.ForeignKey(CanvasUser, on_delete=models.DO_NOTHING, null=True)
|
|
22
|
+
patient = models.ForeignKey(
|
|
23
|
+
Patient, on_delete=models.DO_NOTHING, related_name="devices", null=True
|
|
24
|
+
)
|
|
23
25
|
note_id = models.BigIntegerField()
|
|
24
26
|
deleted = models.BooleanField()
|
|
25
27
|
labeled_contains_NRL = models.BooleanField()
|
|
@@ -22,23 +22,25 @@ class ImagingOrder(models.Model):
|
|
|
22
22
|
dbid = models.BigIntegerField(primary_key=True)
|
|
23
23
|
created = models.DateTimeField()
|
|
24
24
|
modified = models.DateTimeField()
|
|
25
|
-
originator = models.ForeignKey(CanvasUser, on_delete=models.DO_NOTHING)
|
|
25
|
+
originator = models.ForeignKey(CanvasUser, on_delete=models.DO_NOTHING, null=True)
|
|
26
26
|
deleted = models.BooleanField()
|
|
27
|
-
committer = models.ForeignKey(CanvasUser, on_delete=models.DO_NOTHING)
|
|
27
|
+
committer = models.ForeignKey(CanvasUser, on_delete=models.DO_NOTHING, null=True)
|
|
28
28
|
entered_in_error = models.ForeignKey(CanvasUser, on_delete=models.DO_NOTHING)
|
|
29
|
-
patient = models.ForeignKey(
|
|
29
|
+
patient = models.ForeignKey(
|
|
30
|
+
Patient, on_delete=models.DO_NOTHING, related_name="imaging_orders", null=True
|
|
31
|
+
)
|
|
30
32
|
# TODO - uncomment when Note model is complete
|
|
31
|
-
# note = models.ForeigneKey(Note, on_delete=models.DO_NOTHING, related_name="imaging_orders")
|
|
33
|
+
# note = models.ForeigneKey(Note, on_delete=models.DO_NOTHING, related_name="imaging_orders", null=True)
|
|
32
34
|
imaging = models.CharField()
|
|
33
35
|
# TODO - uncomment when ServiceProvider model is complete
|
|
34
|
-
# imaging_center = models.ForeignKey(ServiceProvider, related_name="imaging_orders", null=True
|
|
36
|
+
# imaging_center = models.ForeignKey(ServiceProvider, on_delete=models.DO_NOTHING, related_name="imaging_orders", null=True)
|
|
35
37
|
note_to_radiologist = models.CharField()
|
|
36
38
|
internal_comment = models.CharField()
|
|
37
39
|
status = models.CharField(choices=OrderStatus)
|
|
38
40
|
date_time_ordered = models.DateTimeField()
|
|
39
41
|
priority = models.CharField()
|
|
40
42
|
# TODO - uncomment when Staff model is complete
|
|
41
|
-
# ordering_provider = models.ForeignKey(Staff, on_delete=models.
|
|
43
|
+
# ordering_provider = models.ForeignKey(Staff, on_delete=models.DO_NOTHING, related_name="imaging_orders", null=True)
|
|
42
44
|
delegated = models.BooleanField(default=False)
|
|
43
45
|
|
|
44
46
|
|
|
@@ -54,19 +56,19 @@ class ImagingReview(models.Model):
|
|
|
54
56
|
dbid = models.BigIntegerField(primary_key=True)
|
|
55
57
|
created = models.DateTimeField()
|
|
56
58
|
modified = models.DateTimeField()
|
|
57
|
-
originator = models.ForeignKey(CanvasUser, on_delete=models.DO_NOTHING)
|
|
59
|
+
originator = models.ForeignKey(CanvasUser, on_delete=models.DO_NOTHING, null=True)
|
|
58
60
|
deleted = models.BooleanField()
|
|
59
|
-
committer = models.ForeignKey(CanvasUser, on_delete=models.DO_NOTHING)
|
|
60
|
-
entered_in_error = models.ForeignKey(CanvasUser, on_delete=models.DO_NOTHING)
|
|
61
|
+
committer = models.ForeignKey(CanvasUser, on_delete=models.DO_NOTHING, null=True)
|
|
62
|
+
entered_in_error = models.ForeignKey(CanvasUser, on_delete=models.DO_NOTHING, null=True)
|
|
61
63
|
patient_communication_method = models.CharField(choices=ReviewPatientCommunicationMethod)
|
|
62
64
|
# TODO - uncomment when Note model is complete
|
|
63
|
-
# note = models.ForeignKey(Note, on_delete=models.DO_NOTHING, related_name="imaging_reviews")
|
|
65
|
+
# note = models.ForeignKey(Note, on_delete=models.DO_NOTHING, related_name="imaging_reviews", null=True)
|
|
64
66
|
internal_comment = models.CharField()
|
|
65
67
|
message_to_patient = models.CharField()
|
|
66
68
|
is_released_to_patient = models.BooleanField()
|
|
67
69
|
status = models.CharField(choices=ReviewStatus)
|
|
68
70
|
patient = models.ForeignKey(
|
|
69
|
-
Patient, on_delete=models.DO_NOTHING, related_name="imaging_reviews"
|
|
71
|
+
Patient, on_delete=models.DO_NOTHING, related_name="imaging_reviews", null=True
|
|
70
72
|
)
|
|
71
73
|
|
|
72
74
|
|
|
@@ -92,11 +94,11 @@ class ImagingReport(models.Model):
|
|
|
92
94
|
requires_signature = models.BooleanField()
|
|
93
95
|
assigned_date = models.DateTimeField()
|
|
94
96
|
patient = models.ForeignKey(
|
|
95
|
-
Patient, on_delete=models.DO_NOTHING, related_name="imaging_results"
|
|
97
|
+
Patient, on_delete=models.DO_NOTHING, related_name="imaging_results", null=True
|
|
96
98
|
)
|
|
97
99
|
order = models.ForeignKey(ImagingOrder, on_delete=models.DO_NOTHING, null=True)
|
|
98
100
|
source = models.CharField(choices=ImagingReportSource)
|
|
99
101
|
name = models.CharField()
|
|
100
102
|
result_date = models.DateField()
|
|
101
103
|
original_date = models.DateField()
|
|
102
|
-
review = models.ForeignKey(ImagingReview,
|
|
104
|
+
review = models.ForeignKey(ImagingReview, on_delete=models.DO_NOTHING, null=True)
|
|
@@ -47,12 +47,12 @@ class LabReport(models.Model):
|
|
|
47
47
|
version = models.IntegerField()
|
|
48
48
|
requisition_number = models.CharField()
|
|
49
49
|
review = models.ForeignKey(
|
|
50
|
-
"LabReview", related_name="reports",
|
|
50
|
+
"LabReview", on_delete=models.DO_NOTHING, related_name="reports", null=True
|
|
51
51
|
)
|
|
52
52
|
original_date = models.DateTimeField()
|
|
53
53
|
date_performed = models.DateTimeField()
|
|
54
54
|
custom_document_name = models.CharField()
|
|
55
|
-
originator = models.ForeignKey(CanvasUser, on_delete=models.DO_NOTHING)
|
|
55
|
+
originator = models.ForeignKey(CanvasUser, on_delete=models.DO_NOTHING, null=True)
|
|
56
56
|
committer = models.ForeignKey(CanvasUser, on_delete=models.DO_NOTHING, null=True)
|
|
57
57
|
entered_in_error = models.ForeignKey(CanvasUser, on_delete=models.DO_NOTHING, null=True)
|
|
58
58
|
deleted = models.BooleanField()
|
|
@@ -72,14 +72,16 @@ class LabReview(models.Model):
|
|
|
72
72
|
dbid = models.BigIntegerField(primary_key=True)
|
|
73
73
|
created = models.DateTimeField()
|
|
74
74
|
modified = models.DateTimeField()
|
|
75
|
-
originator = models.ForeignKey(CanvasUser, on_delete=models.DO_NOTHING)
|
|
75
|
+
originator = models.ForeignKey(CanvasUser, on_delete=models.DO_NOTHING, null=True)
|
|
76
76
|
deleted = models.BooleanField()
|
|
77
77
|
committer = models.ForeignKey(CanvasUser, on_delete=models.DO_NOTHING, null=True)
|
|
78
78
|
entered_in_error = models.ForeignKey(CanvasUser, on_delete=models.DO_NOTHING, null=True)
|
|
79
79
|
internal_comment = models.TextField()
|
|
80
80
|
message_to_patient = models.CharField()
|
|
81
81
|
status = models.CharField()
|
|
82
|
-
patient = models.ForeignKey(
|
|
82
|
+
patient = models.ForeignKey(
|
|
83
|
+
Patient, on_delete=models.DO_NOTHING, related_name="lab_reviews", null=True
|
|
84
|
+
)
|
|
83
85
|
patient_communication_method = models.CharField()
|
|
84
86
|
|
|
85
87
|
|
|
@@ -113,7 +115,7 @@ class LabValue(models.Model):
|
|
|
113
115
|
created = models.DateTimeField()
|
|
114
116
|
modified = models.DateTimeField()
|
|
115
117
|
report = models.ForeignKey(
|
|
116
|
-
"LabReport", related_name="values",
|
|
118
|
+
"LabReport", on_delete=models.DO_NOTHING, related_name="values", null=True
|
|
117
119
|
)
|
|
118
120
|
value = models.TextField()
|
|
119
121
|
units = models.CharField()
|
|
@@ -178,14 +180,16 @@ class LabOrder(models.Model):
|
|
|
178
180
|
dbid = models.BigIntegerField(primary_key=True)
|
|
179
181
|
created = models.DateTimeField()
|
|
180
182
|
modified = models.DateTimeField()
|
|
181
|
-
originator = models.ForeignKey(CanvasUser, on_delete=models.DO_NOTHING)
|
|
183
|
+
originator = models.ForeignKey(CanvasUser, on_delete=models.DO_NOTHING, null=True)
|
|
182
184
|
deleted = models.BooleanField()
|
|
183
185
|
committer = models.ForeignKey(CanvasUser, on_delete=models.DO_NOTHING, null=True)
|
|
184
186
|
entered_in_error = models.ForeignKey(CanvasUser, on_delete=models.DO_NOTHING, null=True)
|
|
185
|
-
patient = models.ForeignKey(
|
|
187
|
+
patient = models.ForeignKey(
|
|
188
|
+
Patient, on_delete=models.DO_NOTHING, related_name="lab_orders", null=True
|
|
189
|
+
)
|
|
186
190
|
ontology_lab_partner = models.CharField()
|
|
187
191
|
# TODO - uncomment when the Note model is finished
|
|
188
|
-
# note = models.ForeignKey("Note", on_delete=models.DO_NOTHING)
|
|
192
|
+
# note = models.ForeignKey("Note", on_delete=models.DO_NOTHING, null=True)
|
|
189
193
|
comment = models.CharField()
|
|
190
194
|
requisition_number = models.CharField()
|
|
191
195
|
is_patient_bill = models.BooleanField(null=True)
|
|
@@ -224,11 +228,13 @@ class LabOrderReason(models.Model):
|
|
|
224
228
|
dbid = models.BigIntegerField(primary_key=True)
|
|
225
229
|
created = models.DateTimeField()
|
|
226
230
|
modified = models.DateTimeField()
|
|
227
|
-
originator = models.ForeignKey(CanvasUser, on_delete=models.DO_NOTHING)
|
|
231
|
+
originator = models.ForeignKey(CanvasUser, on_delete=models.DO_NOTHING, null=True)
|
|
228
232
|
deleted = models.BooleanField()
|
|
229
|
-
committer = models.ForeignKey(CanvasUser, on_delete=models.DO_NOTHING)
|
|
230
|
-
entered_in_error = models.ForeignKey(CanvasUser, on_delete=models.DO_NOTHING)
|
|
231
|
-
order = models.ForeignKey(
|
|
233
|
+
committer = models.ForeignKey(CanvasUser, on_delete=models.DO_NOTHING, null=True)
|
|
234
|
+
entered_in_error = models.ForeignKey(CanvasUser, on_delete=models.DO_NOTHING, null=True)
|
|
235
|
+
order = models.ForeignKey(
|
|
236
|
+
LabOrder, on_delete=models.DO_NOTHING, related_name="reasons", null=True
|
|
237
|
+
)
|
|
232
238
|
mode = models.CharField(max_length=30, choices=LabReasonMode)
|
|
233
239
|
|
|
234
240
|
|
|
@@ -281,7 +287,7 @@ class LabTest(models.Model):
|
|
|
281
287
|
ontology_test_code = models.CharField(max_length=512, blank=True, default="")
|
|
282
288
|
status = models.CharField(max_length=30, choices=LabTestOrderStatus)
|
|
283
289
|
report = models.ForeignKey(
|
|
284
|
-
LabReport, on_delete=models.DO_NOTHING,
|
|
290
|
+
LabReport, on_delete=models.DO_NOTHING, related_name="tests", null=True
|
|
285
291
|
)
|
|
286
292
|
aoe_code = models.CharField(max_length=10, default="")
|
|
287
293
|
procedure_class = models.CharField(max_length=10, default="")
|
|
@@ -31,10 +31,12 @@ class Medication(models.Model):
|
|
|
31
31
|
|
|
32
32
|
id = models.UUIDField()
|
|
33
33
|
dbid = models.BigIntegerField(primary_key=True)
|
|
34
|
-
patient = models.ForeignKey(
|
|
34
|
+
patient = models.ForeignKey(
|
|
35
|
+
Patient, on_delete=models.DO_NOTHING, related_name="medications", null=True
|
|
36
|
+
)
|
|
35
37
|
deleted = models.BooleanField()
|
|
36
|
-
entered_in_error = models.ForeignKey(CanvasUser, on_delete=models.DO_NOTHING)
|
|
37
|
-
committer = models.ForeignKey(CanvasUser, on_delete=models.DO_NOTHING)
|
|
38
|
+
entered_in_error = models.ForeignKey(CanvasUser, on_delete=models.DO_NOTHING, null=True)
|
|
39
|
+
committer = models.ForeignKey(CanvasUser, on_delete=models.DO_NOTHING, null=True)
|
|
38
40
|
status = models.CharField(choices=Status.choices)
|
|
39
41
|
start_date = models.DateTimeField()
|
|
40
42
|
end_date = models.DateTimeField()
|
|
@@ -59,4 +61,6 @@ class MedicationCoding(models.Model):
|
|
|
59
61
|
code = models.CharField()
|
|
60
62
|
display = models.CharField()
|
|
61
63
|
user_selected = models.BooleanField()
|
|
62
|
-
medication = models.ForeignKey(
|
|
64
|
+
medication = models.ForeignKey(
|
|
65
|
+
Medication, on_delete=models.DO_NOTHING, related_name="codings", null=True
|
|
66
|
+
)
|
|
@@ -140,21 +140,23 @@ class Note(models.Model):
|
|
|
140
140
|
dbid = models.BigIntegerField(db_column="dbid", primary_key=True)
|
|
141
141
|
created = models.DateTimeField()
|
|
142
142
|
modified = models.DateTimeField()
|
|
143
|
-
patient = models.ForeignKey(Patient, on_delete=models.DO_NOTHING)
|
|
144
|
-
provider = models.ForeignKey(
|
|
143
|
+
patient = models.ForeignKey(Patient, on_delete=models.DO_NOTHING, null=True)
|
|
144
|
+
provider = models.ForeignKey(
|
|
145
|
+
"Staff", on_delete=models.DO_NOTHING, related_name="notes", null=True
|
|
146
|
+
)
|
|
145
147
|
note_type = models.CharField(choices=NoteTypes.choices, null=True)
|
|
146
148
|
note_type_version = models.ForeignKey(
|
|
147
|
-
"NoteType", on_delete=models.DO_NOTHING, related_name="notes"
|
|
149
|
+
"NoteType", on_delete=models.DO_NOTHING, related_name="notes", null=True
|
|
148
150
|
)
|
|
149
151
|
title = models.TextField()
|
|
150
152
|
body = models.JSONField()
|
|
151
|
-
originator = models.ForeignKey(CanvasUser, on_delete=models.DO_NOTHING)
|
|
153
|
+
originator = models.ForeignKey(CanvasUser, on_delete=models.DO_NOTHING, null=True)
|
|
152
154
|
last_modified_by_staff = models.ForeignKey("Staff", on_delete=models.DO_NOTHING, null=True)
|
|
153
155
|
checksum = models.CharField()
|
|
154
156
|
billing_note = models.TextField()
|
|
155
157
|
# TODO -implement InpatientStay model
|
|
156
|
-
# inpatient_stay = models.ForeignKey("InpatientStay", on_delete=models.DO_NOTHING)
|
|
158
|
+
# inpatient_stay = models.ForeignKey("InpatientStay", on_delete=models.DO_NOTHING, null=True)
|
|
157
159
|
related_data = models.JSONField()
|
|
158
|
-
location = models.ForeignKey("PracticeLocation", on_delete=models.DO_NOTHING)
|
|
160
|
+
location = models.ForeignKey("PracticeLocation", on_delete=models.DO_NOTHING, null=True)
|
|
159
161
|
datetime_of_service = models.DateTimeField()
|
|
160
162
|
place_of_service = models.CharField()
|
|
@@ -25,13 +25,15 @@ class Observation(models.Model):
|
|
|
25
25
|
dbid = models.BigIntegerField(primary_key=True)
|
|
26
26
|
created = models.DateTimeField()
|
|
27
27
|
modified = models.DateTimeField()
|
|
28
|
-
originator = models.ForeignKey(CanvasUser, on_delete=models.DO_NOTHING)
|
|
29
|
-
committer = models.ForeignKey(CanvasUser, on_delete=models.DO_NOTHING)
|
|
30
|
-
entered_in_error = models.ForeignKey(CanvasUser, on_delete=models.DO_NOTHING)
|
|
28
|
+
originator = models.ForeignKey(CanvasUser, on_delete=models.DO_NOTHING, null=True)
|
|
29
|
+
committer = models.ForeignKey(CanvasUser, on_delete=models.DO_NOTHING, null=True)
|
|
30
|
+
entered_in_error = models.ForeignKey(CanvasUser, on_delete=models.DO_NOTHING, null=True)
|
|
31
31
|
deleted = models.BooleanField()
|
|
32
|
-
patient = models.ForeignKey(
|
|
32
|
+
patient = models.ForeignKey(
|
|
33
|
+
Patient, on_delete=models.DO_NOTHING, related_name="observations", null=True
|
|
34
|
+
)
|
|
33
35
|
is_member_of = models.ForeignKey(
|
|
34
|
-
"self", on_delete=models.DO_NOTHING,
|
|
36
|
+
"self", on_delete=models.DO_NOTHING, related_name="members", null=True
|
|
35
37
|
)
|
|
36
38
|
category = models.CharField()
|
|
37
39
|
units = models.TextField()
|
|
@@ -56,7 +58,7 @@ class ObservationCoding(models.Model):
|
|
|
56
58
|
display = models.CharField()
|
|
57
59
|
user_selected = models.BooleanField()
|
|
58
60
|
observation = models.ForeignKey(
|
|
59
|
-
Observation, on_delete=models.DO_NOTHING, related_name="codings"
|
|
61
|
+
Observation, on_delete=models.DO_NOTHING, related_name="codings", null=True
|
|
60
62
|
)
|
|
61
63
|
|
|
62
64
|
|
|
@@ -72,7 +74,7 @@ class ObservationComponent(models.Model):
|
|
|
72
74
|
created = models.DateTimeField()
|
|
73
75
|
modified = models.DateTimeField()
|
|
74
76
|
observation = models.ForeignKey(
|
|
75
|
-
Observation, on_delete=models.DO_NOTHING, related_name="components"
|
|
77
|
+
Observation, on_delete=models.DO_NOTHING, related_name="components", null=True
|
|
76
78
|
)
|
|
77
79
|
value_quantity = models.TextField()
|
|
78
80
|
value_quantity_unit = models.TextField()
|
|
@@ -94,7 +96,7 @@ class ObservationComponentCoding(models.Model):
|
|
|
94
96
|
display = models.CharField()
|
|
95
97
|
user_selected = models.BooleanField()
|
|
96
98
|
observation_component = models.ForeignKey(
|
|
97
|
-
ObservationComponent, on_delete=models.DO_NOTHING, related_name="codings"
|
|
99
|
+
ObservationComponent, on_delete=models.DO_NOTHING, related_name="codings", null=True
|
|
98
100
|
)
|
|
99
101
|
|
|
100
102
|
|
|
@@ -113,5 +115,5 @@ class ObservationValueCoding(models.Model):
|
|
|
113
115
|
display = models.CharField()
|
|
114
116
|
user_selected = models.BooleanField()
|
|
115
117
|
observation = models.ForeignKey(
|
|
116
|
-
Observation, on_delete=models.DO_NOTHING, related_name="value_codings"
|
|
118
|
+
Observation, on_delete=models.DO_NOTHING, related_name="value_codings", null=True
|
|
117
119
|
)
|
|
@@ -65,7 +65,7 @@ class PracticeLocation(models.Model):
|
|
|
65
65
|
created = models.DateTimeField()
|
|
66
66
|
modified = models.DateTimeField()
|
|
67
67
|
organization = models.ForeignKey(
|
|
68
|
-
"Organization", on_delete=models.DO_NOTHING, related_name="practice_locations"
|
|
68
|
+
"Organization", on_delete=models.DO_NOTHING, related_name="practice_locations", null=True
|
|
69
69
|
)
|
|
70
70
|
place_of_service_code = models.CharField(choices=PracticeLocationPOS.choices)
|
|
71
71
|
full_name = models.CharField()
|
|
@@ -96,7 +96,7 @@ class PracticeLocationSetting(models.Model):
|
|
|
96
96
|
|
|
97
97
|
dbid = models.BigIntegerField(primary_key=True)
|
|
98
98
|
practice_location = models.ForeignKey(
|
|
99
|
-
PracticeLocation, on_delete=models.DO_NOTHING, related_name="settings"
|
|
99
|
+
PracticeLocation, on_delete=models.DO_NOTHING, related_name="settings", null=True
|
|
100
100
|
)
|
|
101
101
|
name = models.CharField()
|
|
102
102
|
value = models.JSONField()
|
|
@@ -35,12 +35,10 @@ class ProtocolOverride(models.Model):
|
|
|
35
35
|
created = models.DateTimeField()
|
|
36
36
|
modified = models.DateTimeField()
|
|
37
37
|
deleted = models.BooleanField()
|
|
38
|
-
committer = models.ForeignKey(CanvasUser, on_delete=models.DO_NOTHING)
|
|
39
|
-
entered_in_error = models.ForeignKey(CanvasUser, on_delete=models.DO_NOTHING)
|
|
38
|
+
committer = models.ForeignKey(CanvasUser, on_delete=models.DO_NOTHING, null=True)
|
|
39
|
+
entered_in_error = models.ForeignKey(CanvasUser, on_delete=models.DO_NOTHING, null=True)
|
|
40
40
|
patient = models.ForeignKey(
|
|
41
|
-
Patient,
|
|
42
|
-
on_delete=models.DO_NOTHING,
|
|
43
|
-
related_name="protocol_overrides",
|
|
41
|
+
Patient, on_delete=models.DO_NOTHING, related_name="protocol_overrides", null=True
|
|
44
42
|
)
|
|
45
43
|
protocol_key = models.CharField()
|
|
46
44
|
is_adjustment = models.BooleanField()
|