canvas 0.19.0__tar.gz → 0.19.1__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.19.0 → canvas-0.19.1}/PKG-INFO +1 -1
- canvas-0.19.1/canvas_sdk/__init__.py +9 -0
- {canvas-0.19.0 → canvas-0.19.1}/plugin_runner/plugin_installer.py +23 -32
- {canvas-0.19.0 → canvas-0.19.1}/pyproject.toml +6 -2
- {canvas-0.19.0 → canvas-0.19.1}/settings.py +22 -12
- canvas-0.19.0/canvas_sdk/__init__.py +0 -7
- canvas-0.19.0/canvas_sdk/utils/db.py +0 -17
- {canvas-0.19.0 → canvas-0.19.1}/.gitignore +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/README.md +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/__init__.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/__init__.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/auth/__init__.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/auth/tests.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/auth/utils.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/emit/__init__.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/emit/emit.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/emit/event_fixtures/ALLERGY_INTOLERANCE_CREATED.ndjson +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/emit/event_fixtures/ALLERGY_INTOLERANCE_UPDATED.ndjson +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/emit/event_fixtures/APPOINTMENT_CANCELED.ndjson +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/emit/event_fixtures/APPOINTMENT_CHECKED_IN.ndjson +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/emit/event_fixtures/APPOINTMENT_CREATED.ndjson +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/emit/event_fixtures/APPOINTMENT_NO_SHOWED.ndjson +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/emit/event_fixtures/APPOINTMENT_RESCHEDULED.ndjson +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/emit/event_fixtures/APPOINTMENT_RESTORED.ndjson +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/emit/event_fixtures/APPOINTMENT_UPDATED.ndjson +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/emit/event_fixtures/ASSESS_COMMAND__CONDITION_SELECTED.ndjson +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/emit/event_fixtures/ASSESS_COMMAND__POST_COMMIT.ndjson +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/emit/event_fixtures/ASSESS_COMMAND__POST_ORIGINATE.ndjson +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/emit/event_fixtures/ASSESS_COMMAND__POST_UPDATE.ndjson +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/emit/event_fixtures/ASSESS_COMMAND__PRE_COMMIT.ndjson +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/emit/event_fixtures/ASSESS_COMMAND__PRE_ORIGINATE.ndjson +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/emit/event_fixtures/ASSESS_COMMAND__PRE_UPDATE.ndjson +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/emit/event_fixtures/BILLING_LINE_ITEM_CREATED.ndjson +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/emit/event_fixtures/BILLING_LINE_ITEM_UPDATED.ndjson +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/emit/event_fixtures/CONDITION_ASSESSED.ndjson +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/emit/event_fixtures/CONDITION_CREATED.ndjson +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/emit/event_fixtures/CONDITION_UPDATED.ndjson +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/emit/event_fixtures/CRON.ndjson +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/emit/event_fixtures/ENCOUNTER_CREATED.ndjson +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/emit/event_fixtures/ENCOUNTER_UPDATED.ndjson +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/emit/event_fixtures/IMMUNIZATION_CREATED.ndjson +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/emit/event_fixtures/IMMUNIZATION_STATEMENT_CREATED.ndjson +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/emit/event_fixtures/IMMUNIZATION_STATEMENT_UPDATED.ndjson +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/emit/event_fixtures/IMMUNIZATION_UPDATED.ndjson +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/emit/event_fixtures/INTERVIEW_CREATED.ndjson +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/emit/event_fixtures/INTERVIEW_UPDATED.ndjson +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/emit/event_fixtures/LAB_ORDER_CREATED.ndjson +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/emit/event_fixtures/LAB_ORDER_UPDATED.ndjson +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/emit/event_fixtures/MEDICATION_LIST_ITEM_CREATED.ndjson +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/emit/event_fixtures/MEDICATION_LIST_ITEM_UPDATED.ndjson +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/emit/event_fixtures/MEDICATION_STATEMENT_COMMAND__POST_COMMIT.ndjson +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/emit/event_fixtures/MEDICATION_STATEMENT_COMMAND__POST_ORIGINATE.ndjson +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/emit/event_fixtures/MEDICATION_STATEMENT_COMMAND__POST_UPDATE.ndjson +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/emit/event_fixtures/MEDICATION_STATEMENT_COMMAND__PRE_COMMIT.ndjson +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/emit/event_fixtures/MEDICATION_STATEMENT_COMMAND__PRE_ORIGINATE.ndjson +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/emit/event_fixtures/MEDICATION_STATEMENT_COMMAND__PRE_UPDATE.ndjson +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/emit/event_fixtures/MEDICATION_STATEMENT__MEDICATION__POST_SEARCH.ndjson +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/emit/event_fixtures/PATIENT_CREATED.ndjson +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/emit/event_fixtures/PATIENT_UPDATED.ndjson +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/emit/event_fixtures/PLAN_COMMAND__POST_ORIGINATE.ndjson +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/emit/event_fixtures/PLAN_COMMAND__PRE_ORIGINATE.ndjson +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/emit/event_fixtures/QUESTIONNAIRE_COMMAND__POST_COMMIT.ndjson +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/emit/event_fixtures/QUESTIONNAIRE_COMMAND__POST_ORIGINATE.ndjson +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/emit/event_fixtures/QUESTIONNAIRE_COMMAND__POST_UPDATE.ndjson +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/emit/event_fixtures/QUESTIONNAIRE_COMMAND__PRE_COMMIT.ndjson +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/emit/event_fixtures/QUESTIONNAIRE_COMMAND__PRE_ORIGINATE.ndjson +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/emit/event_fixtures/QUESTIONNAIRE_COMMAND__PRE_UPDATE.ndjson +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/emit/event_fixtures/QUESTIONNAIRE__QUESTIONNAIRE__POST_SEARCH.ndjson +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/emit/event_fixtures/TASK_COMMENT_CREATED.ndjson +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/emit/event_fixtures/TASK_CREATED.ndjson +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/emit/event_fixtures/TASK_UPDATED.ndjson +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/emit/event_fixtures/VITAL_SIGN_CREATED.ndjson +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/emit/event_fixtures/VITAL_SIGN_UPDATED.ndjson +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/logs/__init__.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/logs/logs.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/plugin/__init__.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/plugin/plugin.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/plugin/tests.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/run_plugins/__init__.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/run_plugins/run_plugins.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/conftest.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/main.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/templates/plugins/application/cookiecutter.json +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/templates/plugins/application/{{ cookiecutter.__project_slug }}/CANVAS_MANIFEST.json +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/templates/plugins/application/{{ cookiecutter.__project_slug }}/README.md +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/templates/plugins/application/{{ cookiecutter.__project_slug }}/applications/__init__.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/templates/plugins/application/{{ cookiecutter.__project_slug }}/applications/my_application.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/templates/plugins/application/{{ cookiecutter.__project_slug }}/assets/python-logo.png +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/templates/plugins/default/cookiecutter.json +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/templates/plugins/default/{{ cookiecutter.__project_slug }}/CANVAS_MANIFEST.json +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/templates/plugins/default/{{ cookiecutter.__project_slug }}/README.md +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/templates/plugins/default/{{ cookiecutter.__project_slug }}/protocols/__init__.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/templates/plugins/default/{{ cookiecutter.__project_slug }}/protocols/my_protocol.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/tests.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/utils/__init__.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/utils/context/__init__.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/utils/context/context.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/utils/context/tests.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/utils/print/__init__.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/utils/print/print.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/utils/print/tests.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/utils/urls/__init__.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/utils/urls/tests.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/utils/urls/urls.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/utils/validators/__init__.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/utils/validators/manifest_schema.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/utils/validators/tests.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_cli/utils/validators/validators.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_generated/messages/effects_pb2.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_generated/messages/effects_pb2.pyi +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_generated/messages/effects_pb2_grpc.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_generated/messages/events_pb2.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_generated/messages/events_pb2.pyi +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_generated/messages/events_pb2_grpc.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_generated/messages/plugins_pb2.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_generated/messages/plugins_pb2.pyi +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_generated/messages/plugins_pb2_grpc.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_generated/services/plugin_runner_pb2.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_generated/services/plugin_runner_pb2.pyi +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_generated/services/plugin_runner_pb2_grpc.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/base.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/commands/__init__.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/commands/base.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/commands/commands/allergy.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/commands/commands/assess.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/commands/commands/close_goal.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/commands/commands/diagnose.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/commands/commands/exam.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/commands/commands/family_history.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/commands/commands/goal.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/commands/commands/history_present_illness.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/commands/commands/instruct.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/commands/commands/lab_order.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/commands/commands/medical_history.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/commands/commands/medication_statement.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/commands/commands/past_surgical_history.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/commands/commands/perform.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/commands/commands/plan.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/commands/commands/prescribe.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/commands/commands/questionnaire.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/commands/commands/reason_for_visit.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/commands/commands/refill.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/commands/commands/remove_allergy.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/commands/commands/review_of_systems.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/commands/commands/stop_medication.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/commands/commands/structured_assessment.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/commands/commands/task.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/commands/commands/update_diagnosis.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/commands/commands/update_goal.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/commands/commands/vitals.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/commands/constants.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/commands/tests/protocol/__init__.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/commands/tests/protocol/tests.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/commands/tests/schema/__init__.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/commands/tests/schema/tests.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/commands/tests/test_utils.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/commands/tests/unit/__init__.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/commands/tests/unit/tests.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/effects/__init__.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/effects/banner_alert/__init__.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/effects/banner_alert/add_banner_alert.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/effects/banner_alert/remove_banner_alert.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/effects/banner_alert/tests.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/effects/base.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/effects/launch_modal.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/effects/patient_chart_summary_configuration.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/effects/patient_portal/__init__.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/effects/patient_portal/intake_form_results.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/effects/patient_profile_configuration.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/effects/protocol_card/__init__.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/effects/protocol_card/protocol_card.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/effects/protocol_card/tests.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/effects/questionnaire_result.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/effects/show_button.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/effects/surescripts/__init__.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/effects/surescripts/surescripts_messages.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/effects/task/__init__.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/effects/task/task.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/events/__init__.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/events/base.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/handlers/__init__.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/handlers/action_button.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/handlers/application.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/handlers/base.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/handlers/cron_task.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/protocols/__init__.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/protocols/base.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/protocols/clinical_quality_measure.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/protocols/timeframe.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/questionnaires/__init__.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/questionnaires/tests/__init__.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/questionnaires/tests/test_utils.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/questionnaires/utils.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/templates/__init__.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/templates/tests/__init__.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/templates/tests/test_utils.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/templates/utils.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/tests/__init__.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/utils/__init__.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/utils/http.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/utils/plugins.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/utils/stats.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/utils/tests.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/v1/__init__.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/v1/apps.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/v1/data/__init__.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/v1/data/allergy_intolerance.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/v1/data/appointment.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/v1/data/assessment.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/v1/data/base.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/v1/data/billing.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/v1/data/care_team.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/v1/data/command.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/v1/data/common.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/v1/data/condition.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/v1/data/coverage.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/v1/data/detected_issue.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/v1/data/device.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/v1/data/imaging.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/v1/data/lab.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/v1/data/medication.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/v1/data/note.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/v1/data/observation.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/v1/data/organization.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/v1/data/patient.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/v1/data/practicelocation.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/v1/data/protocol_override.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/v1/data/questionnaire.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/v1/data/reason_for_visit.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/v1/data/staff.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/v1/data/task.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/v1/data/team.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/v1/data/user.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/v1/models.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/value_set/__init__.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/value_set/custom.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/value_set/hcc2018.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/value_set/tests/test_value_sets.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/value_set/v2022/__init__.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/value_set/v2022/adverse_event.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/value_set/v2022/allergy.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/value_set/v2022/assessment.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/value_set/v2022/communication.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/value_set/v2022/condition.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/value_set/v2022/device.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/value_set/v2022/diagnostic_study.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/value_set/v2022/encounter.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/value_set/v2022/immunization.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/value_set/v2022/individual_characteristic.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/value_set/v2022/intervention.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/value_set/v2022/laboratory_test.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/value_set/v2022/medication.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/value_set/v2022/physical_exam.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/value_set/v2022/procedure.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/value_set/v2022/symptom.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/value_set/value_set.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/canvas_sdk/views/__init__.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/logger/__init__.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/logger/logger.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/plugin_runner/__init__.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/plugin_runner/authentication.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/plugin_runner/aws_headers.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/plugin_runner/exceptions.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/plugin_runner/plugin_runner.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/plugin_runner/sandbox.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/plugin_runner/tests/__init__.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/plugin_runner/tests/data/plugins/.gitkeep +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/plugin_runner/tests/fixtures/plugins/example_plugin/CANVAS_MANIFEST.json +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/plugin_runner/tests/fixtures/plugins/example_plugin/README.md +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/plugin_runner/tests/fixtures/plugins/example_plugin/__init__.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/plugin_runner/tests/fixtures/plugins/example_plugin/protocols/__init__.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/plugin_runner/tests/fixtures/plugins/example_plugin/protocols/my_protocol.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/plugin_runner/tests/fixtures/plugins/test_implicit_imports_plugin/CANVAS_MANIFEST.json +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/plugin_runner/tests/fixtures/plugins/test_implicit_imports_plugin/README.md +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/plugin_runner/tests/fixtures/plugins/test_implicit_imports_plugin/protocols/__init__.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/plugin_runner/tests/fixtures/plugins/test_implicit_imports_plugin/protocols/my_protocol.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/plugin_runner/tests/fixtures/plugins/test_implicit_imports_plugin/templates/__init__.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/plugin_runner/tests/fixtures/plugins/test_implicit_imports_plugin/templates/base.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/plugin_runner/tests/fixtures/plugins/test_implicit_imports_plugin/utils/__init__.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/plugin_runner/tests/fixtures/plugins/test_implicit_imports_plugin/utils/base.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/plugin_runner/tests/fixtures/plugins/test_load_questionnaire/CANVAS_MANIFEST.json +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/plugin_runner/tests/fixtures/plugins/test_load_questionnaire/README.md +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/plugin_runner/tests/fixtures/plugins/test_load_questionnaire/protocols/__init__.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/plugin_runner/tests/fixtures/plugins/test_load_questionnaire/protocols/my_protocol.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/plugin_runner/tests/fixtures/plugins/test_load_questionnaire/questionnaires/example_questionnaire.yml +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/plugin_runner/tests/fixtures/plugins/test_module_forbidden_imports_plugin/CANVAS_MANIFEST.json +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/plugin_runner/tests/fixtures/plugins/test_module_forbidden_imports_plugin/README.md +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/plugin_runner/tests/fixtures/plugins/test_module_forbidden_imports_plugin/other_module/__init__.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/plugin_runner/tests/fixtures/plugins/test_module_forbidden_imports_plugin/other_module/base.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/plugin_runner/tests/fixtures/plugins/test_module_forbidden_imports_plugin/protocols/__init__.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/plugin_runner/tests/fixtures/plugins/test_module_forbidden_imports_plugin/protocols/my_protocol.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/plugin_runner/tests/fixtures/plugins/test_module_forbidden_imports_runtime_plugin/CANVAS_MANIFEST.json +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/plugin_runner/tests/fixtures/plugins/test_module_forbidden_imports_runtime_plugin/README.md +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/plugin_runner/tests/fixtures/plugins/test_module_forbidden_imports_runtime_plugin/other_module/__init__.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/plugin_runner/tests/fixtures/plugins/test_module_forbidden_imports_runtime_plugin/other_module/base.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/plugin_runner/tests/fixtures/plugins/test_module_forbidden_imports_runtime_plugin/protocols/__init__.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/plugin_runner/tests/fixtures/plugins/test_module_forbidden_imports_runtime_plugin/protocols/my_protocol.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/plugin_runner/tests/fixtures/plugins/test_module_imports_outside_plugin_v1/CANVAS_MANIFEST.json +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/plugin_runner/tests/fixtures/plugins/test_module_imports_outside_plugin_v1/README.md +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/plugin_runner/tests/fixtures/plugins/test_module_imports_outside_plugin_v1/other_module/__init__.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/plugin_runner/tests/fixtures/plugins/test_module_imports_outside_plugin_v1/other_module/base.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/plugin_runner/tests/fixtures/plugins/test_module_imports_outside_plugin_v1/protocols/__init__.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/plugin_runner/tests/fixtures/plugins/test_module_imports_outside_plugin_v1/protocols/my_protocol.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/plugin_runner/tests/fixtures/plugins/test_module_imports_outside_plugin_v2/CANVAS_MANIFEST.json +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/plugin_runner/tests/fixtures/plugins/test_module_imports_outside_plugin_v2/README.md +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/plugin_runner/tests/fixtures/plugins/test_module_imports_outside_plugin_v2/other_module/__init__.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/plugin_runner/tests/fixtures/plugins/test_module_imports_outside_plugin_v2/other_module/base.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/plugin_runner/tests/fixtures/plugins/test_module_imports_outside_plugin_v2/protocols/__init__.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/plugin_runner/tests/fixtures/plugins/test_module_imports_outside_plugin_v2/protocols/my_protocol.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/plugin_runner/tests/fixtures/plugins/test_module_imports_outside_plugin_v3/CANVAS_MANIFEST.json +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/plugin_runner/tests/fixtures/plugins/test_module_imports_outside_plugin_v3/README.md +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/plugin_runner/tests/fixtures/plugins/test_module_imports_outside_plugin_v3/other_module/__init__.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/plugin_runner/tests/fixtures/plugins/test_module_imports_outside_plugin_v3/other_module/base.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/plugin_runner/tests/fixtures/plugins/test_module_imports_outside_plugin_v3/protocols/__init__.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/plugin_runner/tests/fixtures/plugins/test_module_imports_outside_plugin_v3/protocols/my_protocol.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/plugin_runner/tests/fixtures/plugins/test_module_imports_plugin/CANVAS_MANIFEST.json +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/plugin_runner/tests/fixtures/plugins/test_module_imports_plugin/README.md +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/plugin_runner/tests/fixtures/plugins/test_module_imports_plugin/other_module/__init__.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/plugin_runner/tests/fixtures/plugins/test_module_imports_plugin/other_module/base.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/plugin_runner/tests/fixtures/plugins/test_module_imports_plugin/protocols/__init__.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/plugin_runner/tests/fixtures/plugins/test_module_imports_plugin/protocols/my_protocol.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/plugin_runner/tests/fixtures/plugins/test_render_template/CANVAS_MANIFEST.json +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/plugin_runner/tests/fixtures/plugins/test_render_template/README.md +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/plugin_runner/tests/fixtures/plugins/test_render_template/protocols/__init__.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/plugin_runner/tests/fixtures/plugins/test_render_template/protocols/my_protocol.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/plugin_runner/tests/fixtures/plugins/test_render_template/templates/template.html +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/plugin_runner/tests/test_application.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/plugin_runner/tests/test_plugin_installer.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/plugin_runner/tests/test_plugin_runner.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/plugin_runner/tests/test_sandbox.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/protobufs/canvas_generated/messages/effects.proto +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/protobufs/canvas_generated/messages/events.proto +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/protobufs/canvas_generated/messages/plugins.proto +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/protobufs/canvas_generated/services/plugin_runner.proto +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/pubsub/__init__.py +0 -0
- {canvas-0.19.0 → canvas-0.19.1}/pubsub/pubsub.py +0 -0
|
@@ -6,7 +6,7 @@ import tempfile
|
|
|
6
6
|
from collections.abc import Generator
|
|
7
7
|
from contextlib import contextmanager
|
|
8
8
|
from pathlib import Path
|
|
9
|
-
from typing import
|
|
9
|
+
from typing import TypedDict, cast
|
|
10
10
|
from urllib import parse
|
|
11
11
|
|
|
12
12
|
import psycopg
|
|
@@ -30,41 +30,32 @@ from settings import (
|
|
|
30
30
|
UPLOAD_TO_PREFIX = "plugins"
|
|
31
31
|
|
|
32
32
|
|
|
33
|
-
def
|
|
34
|
-
"""
|
|
35
|
-
parsed_url = parse.urlparse(os.getenv("DATABASE_URL"))
|
|
36
|
-
db_name = parsed_url.path[1:]
|
|
37
|
-
return {
|
|
38
|
-
"dbname": db_name,
|
|
39
|
-
"user": parsed_url.username,
|
|
40
|
-
"password": parsed_url.password,
|
|
41
|
-
"host": parsed_url.hostname,
|
|
42
|
-
"port": parsed_url.port,
|
|
43
|
-
}
|
|
33
|
+
def open_database_connection() -> Connection:
|
|
34
|
+
"""Opens a psycopg connection to the home-app database.
|
|
44
35
|
|
|
36
|
+
When running within Aptible, use the database URL, otherwise pull from
|
|
37
|
+
the environment variables.
|
|
38
|
+
"""
|
|
39
|
+
if os.getenv("DATABASE_URL"):
|
|
40
|
+
parsed_url = parse.urlparse(os.getenv("DATABASE_URL"))
|
|
41
|
+
|
|
42
|
+
return psycopg.connect(
|
|
43
|
+
dbname=cast(str, parsed_url.path[1:]),
|
|
44
|
+
user=cast(str, parsed_url.username),
|
|
45
|
+
password=cast(str, parsed_url.password),
|
|
46
|
+
host=cast(str, parsed_url.hostname),
|
|
47
|
+
port=parsed_url.port,
|
|
48
|
+
)
|
|
45
49
|
|
|
46
|
-
def get_database_dict_from_env() -> dict[str, Any]:
|
|
47
|
-
"""Creates a psycopg ready dictionary from the environment variables."""
|
|
48
50
|
APP_NAME = os.getenv("APP_NAME")
|
|
49
51
|
|
|
50
|
-
return
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
def open_database_connection() -> Connection:
|
|
60
|
-
"""Opens a psycopg connection to the home-app database."""
|
|
61
|
-
# When running within Aptible, use the database URL, otherwise pull from the environment variables.
|
|
62
|
-
if os.getenv("DATABASE_URL"):
|
|
63
|
-
database_dict = get_database_dict_from_url()
|
|
64
|
-
else:
|
|
65
|
-
database_dict = get_database_dict_from_env()
|
|
66
|
-
conn = psycopg.connect(**database_dict)
|
|
67
|
-
return conn
|
|
52
|
+
return psycopg.connect(
|
|
53
|
+
dbname=APP_NAME,
|
|
54
|
+
user=os.getenv("DB_USERNAME", "app"),
|
|
55
|
+
password=os.getenv("DB_PASSWORD", "app"),
|
|
56
|
+
host=os.getenv("DB_HOST", f"{APP_NAME}-db"),
|
|
57
|
+
port=os.getenv("DB_PORT", "5432"),
|
|
58
|
+
)
|
|
68
59
|
|
|
69
60
|
|
|
70
61
|
class PluginAttributes(TypedDict):
|
|
@@ -50,7 +50,7 @@ license = "MIT"
|
|
|
50
50
|
name = "canvas"
|
|
51
51
|
readme = "README.md"
|
|
52
52
|
requires-python = ">=3.11,<3.13"
|
|
53
|
-
version = "0.19.
|
|
53
|
+
version = "0.19.1"
|
|
54
54
|
|
|
55
55
|
[project.scripts]
|
|
56
56
|
canvas = "canvas_cli.main:app"
|
|
@@ -158,7 +158,11 @@ extend-immutable-calls = ["typer.Argument", "typer.Option"]
|
|
|
158
158
|
convention = "google"
|
|
159
159
|
|
|
160
160
|
[tool.semantic_release]
|
|
161
|
-
build_command = "
|
|
161
|
+
build_command = """
|
|
162
|
+
uv lock
|
|
163
|
+
git add uv.lock
|
|
164
|
+
uv build
|
|
165
|
+
"""
|
|
162
166
|
commit_message = "chore: v{version}\n\nSee the changelog for changes."
|
|
163
167
|
commit_version_number = true
|
|
164
168
|
match = "main"
|
|
@@ -1,11 +1,10 @@
|
|
|
1
1
|
import os
|
|
2
2
|
import sys
|
|
3
|
+
from urllib import parse
|
|
3
4
|
|
|
4
5
|
from dotenv import load_dotenv
|
|
5
6
|
from env_tools import env_to_bool
|
|
6
7
|
|
|
7
|
-
from canvas_sdk.utils.db import get_database_dict_from_url
|
|
8
|
-
|
|
9
8
|
load_dotenv()
|
|
10
9
|
|
|
11
10
|
ENV = os.getenv("ENV", "development")
|
|
@@ -40,19 +39,30 @@ CANVAS_SDK_DB_HOST = os.getenv("CANVAS_SDK_DB_HOST", "home-app-db")
|
|
|
40
39
|
CANVAS_SDK_DB_PORT = os.getenv("CANVAS_SDK_DB_PORT", "5432")
|
|
41
40
|
|
|
42
41
|
if os.getenv("DATABASE_URL"):
|
|
43
|
-
|
|
42
|
+
parsed_url = parse.urlparse(os.getenv("DATABASE_URL"))
|
|
43
|
+
|
|
44
|
+
DATABASES = {
|
|
45
|
+
"default": {
|
|
46
|
+
"ENGINE": "django.db.backends.postgresql",
|
|
47
|
+
"NAME": parsed_url.path[1:],
|
|
48
|
+
"USER": os.getenv("CANVAS_SDK_DATABASE_ROLE"),
|
|
49
|
+
"PASSWORD": os.getenv("CANVAS_SDK_DATABASE_ROLE_PASSWORD"),
|
|
50
|
+
"HOST": parsed_url.hostname,
|
|
51
|
+
"PORT": parsed_url.port,
|
|
52
|
+
}
|
|
53
|
+
}
|
|
44
54
|
else:
|
|
45
|
-
|
|
46
|
-
"
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
55
|
+
DATABASES = {
|
|
56
|
+
"default": {
|
|
57
|
+
"ENGINE": "django.db.backends.postgresql",
|
|
58
|
+
"NAME": CANVAS_SDK_DB_NAME,
|
|
59
|
+
"USER": CANVAS_SDK_DB_USERNAME,
|
|
60
|
+
"PASSWORD": CANVAS_SDK_DB_PASSWORD,
|
|
61
|
+
"HOST": CANVAS_SDK_DB_HOST,
|
|
62
|
+
"PORT": CANVAS_SDK_DB_PORT,
|
|
63
|
+
}
|
|
52
64
|
}
|
|
53
65
|
|
|
54
|
-
DATABASES = {"default": database_dict}
|
|
55
|
-
|
|
56
66
|
AWS_ACCESS_KEY_ID = os.getenv("AWS_ACCESS_KEY_ID", "")
|
|
57
67
|
AWS_SECRET_ACCESS_KEY = os.getenv("AWS_SECRET_ACCESS_KEY", "")
|
|
58
68
|
AWS_REGION = os.getenv("AWS_REGION", "us-west-2")
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import os
|
|
2
|
-
from typing import Any
|
|
3
|
-
from urllib import parse
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
def get_database_dict_from_url() -> dict[str, Any]:
|
|
7
|
-
"""Retrieves the database URL for the data module connection formatted for Django settings."""
|
|
8
|
-
parsed_url = parse.urlparse(os.getenv("DATABASE_URL"))
|
|
9
|
-
db_name = parsed_url.path[1:]
|
|
10
|
-
return {
|
|
11
|
-
"ENGINE": "django.db.backends.postgresql",
|
|
12
|
-
"NAME": db_name,
|
|
13
|
-
"USER": os.getenv("CANVAS_SDK_DATABASE_ROLE"),
|
|
14
|
-
"PASSWORD": os.getenv("CANVAS_SDK_DATABASE_ROLE_PASSWORD"),
|
|
15
|
-
"HOST": parsed_url.hostname,
|
|
16
|
-
"PORT": parsed_url.port,
|
|
17
|
-
}
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/emit/event_fixtures/APPOINTMENT_CANCELED.ndjson
RENAMED
|
File without changes
|
{canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/emit/event_fixtures/APPOINTMENT_CHECKED_IN.ndjson
RENAMED
|
File without changes
|
{canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/emit/event_fixtures/APPOINTMENT_CREATED.ndjson
RENAMED
|
File without changes
|
{canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/emit/event_fixtures/APPOINTMENT_NO_SHOWED.ndjson
RENAMED
|
File without changes
|
{canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/emit/event_fixtures/APPOINTMENT_RESCHEDULED.ndjson
RENAMED
|
File without changes
|
{canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/emit/event_fixtures/APPOINTMENT_RESTORED.ndjson
RENAMED
|
File without changes
|
{canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/emit/event_fixtures/APPOINTMENT_UPDATED.ndjson
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/emit/event_fixtures/BILLING_LINE_ITEM_CREATED.ndjson
RENAMED
|
File without changes
|
{canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/emit/event_fixtures/BILLING_LINE_ITEM_UPDATED.ndjson
RENAMED
|
File without changes
|
{canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/emit/event_fixtures/CONDITION_ASSESSED.ndjson
RENAMED
|
File without changes
|
{canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/emit/event_fixtures/CONDITION_CREATED.ndjson
RENAMED
|
File without changes
|
{canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/emit/event_fixtures/CONDITION_UPDATED.ndjson
RENAMED
|
File without changes
|
|
File without changes
|
{canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/emit/event_fixtures/ENCOUNTER_CREATED.ndjson
RENAMED
|
File without changes
|
{canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/emit/event_fixtures/ENCOUNTER_UPDATED.ndjson
RENAMED
|
File without changes
|
{canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/emit/event_fixtures/IMMUNIZATION_CREATED.ndjson
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/emit/event_fixtures/IMMUNIZATION_UPDATED.ndjson
RENAMED
|
File without changes
|
{canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/emit/event_fixtures/INTERVIEW_CREATED.ndjson
RENAMED
|
File without changes
|
{canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/emit/event_fixtures/INTERVIEW_UPDATED.ndjson
RENAMED
|
File without changes
|
{canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/emit/event_fixtures/LAB_ORDER_CREATED.ndjson
RENAMED
|
File without changes
|
{canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/emit/event_fixtures/LAB_ORDER_UPDATED.ndjson
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/emit/event_fixtures/TASK_COMMENT_CREATED.ndjson
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/emit/event_fixtures/VITAL_SIGN_CREATED.ndjson
RENAMED
|
File without changes
|
{canvas-0.19.0 → canvas-0.19.1}/canvas_cli/apps/emit/event_fixtures/VITAL_SIGN_UPDATED.ndjson
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|