@centricare/contract 0.1.2 → 0.2.1
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.
- package/README.md +29 -67
- package/dist/index.cjs +1964 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.mts +3305 -0
- package/dist/index.d.ts +3303 -5
- package/dist/index.mjs +1820 -0
- package/dist/index.mjs.map +1 -0
- package/dist/registry/index.cjs +931 -0
- package/dist/registry/index.cjs.map +1 -0
- package/dist/registry/index.d.mts +60 -0
- package/dist/registry/index.d.ts +60 -0
- package/dist/registry/index.mjs +924 -0
- package/dist/registry/index.mjs.map +1 -0
- package/package.json +18 -9
- package/dist/commons/address.d.ts +0 -35
- package/dist/commons/address.d.ts.map +0 -1
- package/dist/commons/address.js +0 -11
- package/dist/commons/address.js.map +0 -1
- package/dist/commons/api-response.d.ts +0 -70
- package/dist/commons/api-response.d.ts.map +0 -1
- package/dist/commons/api-response.js +0 -49
- package/dist/commons/api-response.js.map +0 -1
- package/dist/commons/coded-concept.d.ts +0 -16
- package/dist/commons/coded-concept.d.ts.map +0 -1
- package/dist/commons/coded-concept.js +0 -20
- package/dist/commons/coded-concept.js.map +0 -1
- package/dist/commons/demographic.d.ts +0 -29
- package/dist/commons/demographic.d.ts.map +0 -1
- package/dist/commons/demographic.js +0 -11
- package/dist/commons/demographic.js.map +0 -1
- package/dist/commons/index.d.ts +0 -12
- package/dist/commons/index.d.ts.map +0 -1
- package/dist/commons/index.js +0 -12
- package/dist/commons/index.js.map +0 -1
- package/dist/commons/object-id.d.ts +0 -8
- package/dist/commons/object-id.d.ts.map +0 -1
- package/dist/commons/object-id.js +0 -11
- package/dist/commons/object-id.js.map +0 -1
- package/dist/commons/setting-option.d.ts +0 -45
- package/dist/commons/setting-option.d.ts.map +0 -1
- package/dist/commons/setting-option.js +0 -27
- package/dist/commons/setting-option.js.map +0 -1
- package/dist/commons/timestamp.d.ts +0 -7
- package/dist/commons/timestamp.d.ts.map +0 -1
- package/dist/commons/timestamp.js +0 -9
- package/dist/commons/timestamp.js.map +0 -1
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js +0 -7
- package/dist/index.js.map +0 -1
- package/dist/models/assignment/assignment-minimal.schema.d.ts +0 -18
- package/dist/models/assignment/assignment-minimal.schema.d.ts.map +0 -1
- package/dist/models/assignment/assignment-minimal.schema.js +0 -13
- package/dist/models/assignment/assignment-minimal.schema.js.map +0 -1
- package/dist/models/assignment/assignment-partial.schema.d.ts +0 -18
- package/dist/models/assignment/assignment-partial.schema.d.ts.map +0 -1
- package/dist/models/assignment/assignment-partial.schema.js +0 -6
- package/dist/models/assignment/assignment-partial.schema.js.map +0 -1
- package/dist/models/assignment/assignment.schema.d.ts +0 -84
- package/dist/models/assignment/assignment.schema.d.ts.map +0 -1
- package/dist/models/assignment/assignment.schema.js +0 -27
- package/dist/models/assignment/assignment.schema.js.map +0 -1
- package/dist/models/assignment/index.d.ts +0 -4
- package/dist/models/assignment/index.d.ts.map +0 -1
- package/dist/models/assignment/index.js +0 -4
- package/dist/models/assignment/index.js.map +0 -1
- package/dist/models/department/department-minimal.schema.d.ts +0 -17
- package/dist/models/department/department-minimal.schema.d.ts.map +0 -1
- package/dist/models/department/department-minimal.schema.js +0 -13
- package/dist/models/department/department-minimal.schema.js.map +0 -1
- package/dist/models/department/department-partial.schema.d.ts +0 -17
- package/dist/models/department/department-partial.schema.d.ts.map +0 -1
- package/dist/models/department/department-partial.schema.js +0 -6
- package/dist/models/department/department-partial.schema.js.map +0 -1
- package/dist/models/department/department.schema.d.ts +0 -83
- package/dist/models/department/department.schema.d.ts.map +0 -1
- package/dist/models/department/department.schema.js +0 -20
- package/dist/models/department/department.schema.js.map +0 -1
- package/dist/models/department/index.d.ts +0 -4
- package/dist/models/department/index.d.ts.map +0 -1
- package/dist/models/department/index.js +0 -4
- package/dist/models/department/index.js.map +0 -1
- package/dist/models/facility/facility-minimal.schema.d.ts +0 -19
- package/dist/models/facility/facility-minimal.schema.d.ts.map +0 -1
- package/dist/models/facility/facility-minimal.schema.js +0 -10
- package/dist/models/facility/facility-minimal.schema.js.map +0 -1
- package/dist/models/facility/facility-partial.schema.d.ts +0 -19
- package/dist/models/facility/facility-partial.schema.d.ts.map +0 -1
- package/dist/models/facility/facility-partial.schema.js +0 -6
- package/dist/models/facility/facility-partial.schema.js.map +0 -1
- package/dist/models/facility/facility-settings.schema.d.ts +0 -16
- package/dist/models/facility/facility-settings.schema.d.ts.map +0 -1
- package/dist/models/facility/facility-settings.schema.js +0 -12
- package/dist/models/facility/facility-settings.schema.js.map +0 -1
- package/dist/models/facility/facility.schema.d.ts +0 -82
- package/dist/models/facility/facility.schema.d.ts.map +0 -1
- package/dist/models/facility/facility.schema.js +0 -23
- package/dist/models/facility/facility.schema.js.map +0 -1
- package/dist/models/facility/index.d.ts +0 -5
- package/dist/models/facility/index.d.ts.map +0 -1
- package/dist/models/facility/index.js +0 -5
- package/dist/models/facility/index.js.map +0 -1
- package/dist/models/index.d.ts +0 -23
- package/dist/models/index.d.ts.map +0 -1
- package/dist/models/index.js +0 -23
- package/dist/models/index.js.map +0 -1
- package/dist/models/ksm/index.d.ts +0 -4
- package/dist/models/ksm/index.d.ts.map +0 -1
- package/dist/models/ksm/index.js +0 -4
- package/dist/models/ksm/index.js.map +0 -1
- package/dist/models/ksm/ksm-minimal.schema.d.ts +0 -12
- package/dist/models/ksm/ksm-minimal.schema.d.ts.map +0 -1
- package/dist/models/ksm/ksm-minimal.schema.js +0 -13
- package/dist/models/ksm/ksm-minimal.schema.js.map +0 -1
- package/dist/models/ksm/ksm-partial.schema.d.ts +0 -12
- package/dist/models/ksm/ksm-partial.schema.d.ts.map +0 -1
- package/dist/models/ksm/ksm-partial.schema.js +0 -6
- package/dist/models/ksm/ksm-partial.schema.js.map +0 -1
- package/dist/models/ksm/ksm.schema.d.ts +0 -78
- package/dist/models/ksm/ksm.schema.d.ts.map +0 -1
- package/dist/models/ksm/ksm.schema.js +0 -23
- package/dist/models/ksm/ksm.schema.js.map +0 -1
- package/dist/models/location/index.d.ts +0 -5
- package/dist/models/location/index.d.ts.map +0 -1
- package/dist/models/location/index.js +0 -5
- package/dist/models/location/index.js.map +0 -1
- package/dist/models/location/location-minimal.schema.d.ts +0 -33
- package/dist/models/location/location-minimal.schema.d.ts.map +0 -1
- package/dist/models/location/location-minimal.schema.js +0 -12
- package/dist/models/location/location-minimal.schema.js.map +0 -1
- package/dist/models/location/location-partial.schema.d.ts +0 -33
- package/dist/models/location/location-partial.schema.d.ts.map +0 -1
- package/dist/models/location/location-partial.schema.js +0 -6
- package/dist/models/location/location-partial.schema.js.map +0 -1
- package/dist/models/location/location-settings.schema.d.ts +0 -8
- package/dist/models/location/location-settings.schema.d.ts.map +0 -1
- package/dist/models/location/location-settings.schema.js +0 -7
- package/dist/models/location/location-settings.schema.js.map +0 -1
- package/dist/models/location/location.schema.d.ts +0 -98
- package/dist/models/location/location.schema.d.ts.map +0 -1
- package/dist/models/location/location.schema.js +0 -30
- package/dist/models/location/location.schema.js.map +0 -1
- package/dist/models/member/index.d.ts +0 -4
- package/dist/models/member/index.d.ts.map +0 -1
- package/dist/models/member/index.js +0 -4
- package/dist/models/member/index.js.map +0 -1
- package/dist/models/member/member-minimal.schema.d.ts +0 -11
- package/dist/models/member/member-minimal.schema.d.ts.map +0 -1
- package/dist/models/member/member-minimal.schema.js +0 -9
- package/dist/models/member/member-minimal.schema.js.map +0 -1
- package/dist/models/member/member-partial.schema.d.ts +0 -11
- package/dist/models/member/member-partial.schema.d.ts.map +0 -1
- package/dist/models/member/member-partial.schema.js +0 -6
- package/dist/models/member/member-partial.schema.js.map +0 -1
- package/dist/models/member/member.schema.d.ts +0 -73
- package/dist/models/member/member.schema.d.ts.map +0 -1
- package/dist/models/member/member.schema.js +0 -16
- package/dist/models/member/member.schema.js.map +0 -1
- package/dist/models/organization/index.d.ts +0 -5
- package/dist/models/organization/index.d.ts.map +0 -1
- package/dist/models/organization/index.js +0 -5
- package/dist/models/organization/index.js.map +0 -1
- package/dist/models/organization/organization-minimal.schema.d.ts +0 -22
- package/dist/models/organization/organization-minimal.schema.d.ts.map +0 -1
- package/dist/models/organization/organization-minimal.schema.js +0 -9
- package/dist/models/organization/organization-minimal.schema.js.map +0 -1
- package/dist/models/organization/organization-partial.schema.d.ts +0 -22
- package/dist/models/organization/organization-partial.schema.d.ts.map +0 -1
- package/dist/models/organization/organization-partial.schema.js +0 -6
- package/dist/models/organization/organization-partial.schema.js.map +0 -1
- package/dist/models/organization/organization-settings.schema.d.ts +0 -8
- package/dist/models/organization/organization-settings.schema.d.ts.map +0 -1
- package/dist/models/organization/organization-settings.schema.js +0 -7
- package/dist/models/organization/organization-settings.schema.js.map +0 -1
- package/dist/models/organization/organization.schema.d.ts +0 -84
- package/dist/models/organization/organization.schema.d.ts.map +0 -1
- package/dist/models/organization/organization.schema.js +0 -24
- package/dist/models/organization/organization.schema.js.map +0 -1
- package/dist/models/patient/index.d.ts +0 -4
- package/dist/models/patient/index.d.ts.map +0 -1
- package/dist/models/patient/index.js +0 -4
- package/dist/models/patient/index.js.map +0 -1
- package/dist/models/patient/patient-minimal.schema.d.ts +0 -95
- package/dist/models/patient/patient-minimal.schema.d.ts.map +0 -1
- package/dist/models/patient/patient-minimal.schema.js +0 -13
- package/dist/models/patient/patient-minimal.schema.js.map +0 -1
- package/dist/models/patient/patient-partial.schema.d.ts +0 -95
- package/dist/models/patient/patient-partial.schema.d.ts.map +0 -1
- package/dist/models/patient/patient-partial.schema.js +0 -6
- package/dist/models/patient/patient-partial.schema.js.map +0 -1
- package/dist/models/patient/patient.schema.d.ts +0 -161
- package/dist/models/patient/patient.schema.d.ts.map +0 -1
- package/dist/models/patient/patient.schema.js +0 -35
- package/dist/models/patient/patient.schema.js.map +0 -1
- package/dist/models/patient-additional/index.d.ts +0 -4
- package/dist/models/patient-additional/index.d.ts.map +0 -1
- package/dist/models/patient-additional/index.js +0 -4
- package/dist/models/patient-additional/index.js.map +0 -1
- package/dist/models/patient-additional/patient-additional-minimal.schema.d.ts +0 -17
- package/dist/models/patient-additional/patient-additional-minimal.schema.d.ts.map +0 -1
- package/dist/models/patient-additional/patient-additional-minimal.schema.js +0 -13
- package/dist/models/patient-additional/patient-additional-minimal.schema.js.map +0 -1
- package/dist/models/patient-additional/patient-additional-partial.schema.d.ts +0 -17
- package/dist/models/patient-additional/patient-additional-partial.schema.d.ts.map +0 -1
- package/dist/models/patient-additional/patient-additional-partial.schema.js +0 -6
- package/dist/models/patient-additional/patient-additional-partial.schema.js.map +0 -1
- package/dist/models/patient-additional/patient-additional.schema.d.ts +0 -83
- package/dist/models/patient-additional/patient-additional.schema.d.ts.map +0 -1
- package/dist/models/patient-additional/patient-additional.schema.js +0 -21
- package/dist/models/patient-additional/patient-additional.schema.js.map +0 -1
- package/dist/models/payer/index.d.ts +0 -5
- package/dist/models/payer/index.d.ts.map +0 -1
- package/dist/models/payer/index.js +0 -5
- package/dist/models/payer/index.js.map +0 -1
- package/dist/models/payer/payer-minimal.schema.d.ts +0 -67
- package/dist/models/payer/payer-minimal.schema.d.ts.map +0 -1
- package/dist/models/payer/payer-minimal.schema.js +0 -13
- package/dist/models/payer/payer-minimal.schema.js.map +0 -1
- package/dist/models/payer/payer-partial.schema.d.ts +0 -67
- package/dist/models/payer/payer-partial.schema.d.ts.map +0 -1
- package/dist/models/payer/payer-partial.schema.js +0 -6
- package/dist/models/payer/payer-partial.schema.js.map +0 -1
- package/dist/models/payer/payer-settings.schema.d.ts +0 -27
- package/dist/models/payer/payer-settings.schema.d.ts.map +0 -1
- package/dist/models/payer/payer-settings.schema.js +0 -20
- package/dist/models/payer/payer-settings.schema.js.map +0 -1
- package/dist/models/payer/payer.schema.d.ts +0 -133
- package/dist/models/payer/payer.schema.d.ts.map +0 -1
- package/dist/models/payer/payer.schema.js +0 -47
- package/dist/models/payer/payer.schema.js.map +0 -1
- package/dist/models/practitioner-schedule/index.d.ts +0 -4
- package/dist/models/practitioner-schedule/index.d.ts.map +0 -1
- package/dist/models/practitioner-schedule/index.js +0 -4
- package/dist/models/practitioner-schedule/index.js.map +0 -1
- package/dist/models/practitioner-schedule/practitioner-schedule-minimal.schema.d.ts +0 -20
- package/dist/models/practitioner-schedule/practitioner-schedule-minimal.schema.d.ts.map +0 -1
- package/dist/models/practitioner-schedule/practitioner-schedule-minimal.schema.js +0 -13
- package/dist/models/practitioner-schedule/practitioner-schedule-minimal.schema.js.map +0 -1
- package/dist/models/practitioner-schedule/practitioner-schedule-partial.schema.d.ts +0 -20
- package/dist/models/practitioner-schedule/practitioner-schedule-partial.schema.d.ts.map +0 -1
- package/dist/models/practitioner-schedule/practitioner-schedule-partial.schema.js +0 -6
- package/dist/models/practitioner-schedule/practitioner-schedule-partial.schema.js.map +0 -1
- package/dist/models/practitioner-schedule/practitioner-schedule.schema.d.ts +0 -86
- package/dist/models/practitioner-schedule/practitioner-schedule.schema.d.ts.map +0 -1
- package/dist/models/practitioner-schedule/practitioner-schedule.schema.js +0 -26
- package/dist/models/practitioner-schedule/practitioner-schedule.schema.js.map +0 -1
- package/dist/models/practitioner-session/index.d.ts +0 -4
- package/dist/models/practitioner-session/index.d.ts.map +0 -1
- package/dist/models/practitioner-session/index.js +0 -4
- package/dist/models/practitioner-session/index.js.map +0 -1
- package/dist/models/practitioner-session/practitioner-session-minimal.schema.d.ts +0 -14
- package/dist/models/practitioner-session/practitioner-session-minimal.schema.d.ts.map +0 -1
- package/dist/models/practitioner-session/practitioner-session-minimal.schema.js +0 -13
- package/dist/models/practitioner-session/practitioner-session-minimal.schema.js.map +0 -1
- package/dist/models/practitioner-session/practitioner-session-partial.schema.d.ts +0 -14
- package/dist/models/practitioner-session/practitioner-session-partial.schema.d.ts.map +0 -1
- package/dist/models/practitioner-session/practitioner-session-partial.schema.js +0 -6
- package/dist/models/practitioner-session/practitioner-session-partial.schema.js.map +0 -1
- package/dist/models/practitioner-session/practitioner-session.schema.d.ts +0 -80
- package/dist/models/practitioner-session/practitioner-session.schema.d.ts.map +0 -1
- package/dist/models/practitioner-session/practitioner-session.schema.js +0 -26
- package/dist/models/practitioner-session/practitioner-session.schema.js.map +0 -1
- package/dist/models/queue/index.d.ts +0 -5
- package/dist/models/queue/index.d.ts.map +0 -1
- package/dist/models/queue/index.js +0 -5
- package/dist/models/queue/index.js.map +0 -1
- package/dist/models/queue/queue-minimal.schema.d.ts +0 -31
- package/dist/models/queue/queue-minimal.schema.d.ts.map +0 -1
- package/dist/models/queue/queue-minimal.schema.js +0 -13
- package/dist/models/queue/queue-minimal.schema.js.map +0 -1
- package/dist/models/queue/queue-partial.schema.d.ts +0 -31
- package/dist/models/queue/queue-partial.schema.d.ts.map +0 -1
- package/dist/models/queue/queue-partial.schema.js +0 -6
- package/dist/models/queue/queue-partial.schema.js.map +0 -1
- package/dist/models/queue/queue-settings.schema.d.ts +0 -27
- package/dist/models/queue/queue-settings.schema.d.ts.map +0 -1
- package/dist/models/queue/queue-settings.schema.js +0 -22
- package/dist/models/queue/queue-settings.schema.js.map +0 -1
- package/dist/models/queue/queue.schema.d.ts +0 -97
- package/dist/models/queue/queue.schema.d.ts.map +0 -1
- package/dist/models/queue/queue.schema.js +0 -32
- package/dist/models/queue/queue.schema.js.map +0 -1
- package/dist/models/queue-event-log/index.d.ts +0 -4
- package/dist/models/queue-event-log/index.d.ts.map +0 -1
- package/dist/models/queue-event-log/index.js +0 -4
- package/dist/models/queue-event-log/index.js.map +0 -1
- package/dist/models/queue-event-log/queue-event-log-minimal.schema.d.ts +0 -18
- package/dist/models/queue-event-log/queue-event-log-minimal.schema.d.ts.map +0 -1
- package/dist/models/queue-event-log/queue-event-log-minimal.schema.js +0 -13
- package/dist/models/queue-event-log/queue-event-log-minimal.schema.js.map +0 -1
- package/dist/models/queue-event-log/queue-event-log-partial.schema.d.ts +0 -18
- package/dist/models/queue-event-log/queue-event-log-partial.schema.d.ts.map +0 -1
- package/dist/models/queue-event-log/queue-event-log-partial.schema.js +0 -6
- package/dist/models/queue-event-log/queue-event-log-partial.schema.js.map +0 -1
- package/dist/models/queue-event-log/queue-event-log.schema.d.ts +0 -84
- package/dist/models/queue-event-log/queue-event-log.schema.d.ts.map +0 -1
- package/dist/models/queue-event-log/queue-event-log.schema.js +0 -25
- package/dist/models/queue-event-log/queue-event-log.schema.js.map +0 -1
- package/dist/models/queue-number/index.d.ts +0 -5
- package/dist/models/queue-number/index.d.ts.map +0 -1
- package/dist/models/queue-number/index.js +0 -5
- package/dist/models/queue-number/index.js.map +0 -1
- package/dist/models/queue-number/queue-number-minimal.schema.d.ts +0 -21
- package/dist/models/queue-number/queue-number-minimal.schema.d.ts.map +0 -1
- package/dist/models/queue-number/queue-number-minimal.schema.js +0 -14
- package/dist/models/queue-number/queue-number-minimal.schema.js.map +0 -1
- package/dist/models/queue-number/queue-number-partial.schema.d.ts +0 -21
- package/dist/models/queue-number/queue-number-partial.schema.d.ts.map +0 -1
- package/dist/models/queue-number/queue-number-partial.schema.js +0 -6
- package/dist/models/queue-number/queue-number-partial.schema.js.map +0 -1
- package/dist/models/queue-number/queue-number-settings.schema.d.ts +0 -27
- package/dist/models/queue-number/queue-number-settings.schema.d.ts.map +0 -1
- package/dist/models/queue-number/queue-number-settings.schema.js +0 -22
- package/dist/models/queue-number/queue-number-settings.schema.js.map +0 -1
- package/dist/models/queue-number/queue-number.schema.d.ts +0 -88
- package/dist/models/queue-number/queue-number.schema.d.ts.map +0 -1
- package/dist/models/queue-number/queue-number.schema.js +0 -42
- package/dist/models/queue-number/queue-number.schema.js.map +0 -1
- package/dist/models/settings/index.d.ts +0 -4
- package/dist/models/settings/index.d.ts.map +0 -1
- package/dist/models/settings/index.js +0 -4
- package/dist/models/settings/index.js.map +0 -1
- package/dist/models/settings/settings-minimal.schema.d.ts +0 -26
- package/dist/models/settings/settings-minimal.schema.d.ts.map +0 -1
- package/dist/models/settings/settings-minimal.schema.js +0 -11
- package/dist/models/settings/settings-minimal.schema.js.map +0 -1
- package/dist/models/settings/settings-partial.schema.d.ts +0 -26
- package/dist/models/settings/settings-partial.schema.d.ts.map +0 -1
- package/dist/models/settings/settings-partial.schema.js +0 -6
- package/dist/models/settings/settings-partial.schema.js.map +0 -1
- package/dist/models/settings/settings.schema.d.ts +0 -96
- package/dist/models/settings/settings.schema.d.ts.map +0 -1
- package/dist/models/settings/settings.schema.js +0 -25
- package/dist/models/settings/settings.schema.js.map +0 -1
- package/dist/models/staff/index.d.ts +0 -4
- package/dist/models/staff/index.d.ts.map +0 -1
- package/dist/models/staff/index.js +0 -4
- package/dist/models/staff/index.js.map +0 -1
- package/dist/models/staff/staff-minimal.schema.d.ts +0 -27
- package/dist/models/staff/staff-minimal.schema.d.ts.map +0 -1
- package/dist/models/staff/staff-minimal.schema.js +0 -13
- package/dist/models/staff/staff-minimal.schema.js.map +0 -1
- package/dist/models/staff/staff-partial.schema.d.ts +0 -27
- package/dist/models/staff/staff-partial.schema.d.ts.map +0 -1
- package/dist/models/staff/staff-partial.schema.js +0 -6
- package/dist/models/staff/staff-partial.schema.js.map +0 -1
- package/dist/models/staff/staff.schema.d.ts +0 -93
- package/dist/models/staff/staff.schema.d.ts.map +0 -1
- package/dist/models/staff/staff.schema.js +0 -25
- package/dist/models/staff/staff.schema.js.map +0 -1
- package/dist/models/unit/index.d.ts +0 -4
- package/dist/models/unit/index.d.ts.map +0 -1
- package/dist/models/unit/index.js +0 -4
- package/dist/models/unit/index.js.map +0 -1
- package/dist/models/unit/unit-minimal.schema.d.ts +0 -27
- package/dist/models/unit/unit-minimal.schema.d.ts.map +0 -1
- package/dist/models/unit/unit-minimal.schema.js +0 -13
- package/dist/models/unit/unit-minimal.schema.js.map +0 -1
- package/dist/models/unit/unit-partial.schema.d.ts +0 -27
- package/dist/models/unit/unit-partial.schema.d.ts.map +0 -1
- package/dist/models/unit/unit-partial.schema.js +0 -6
- package/dist/models/unit/unit-partial.schema.js.map +0 -1
- package/dist/models/unit/unit.schema.d.ts +0 -93
- package/dist/models/unit/unit.schema.d.ts.map +0 -1
- package/dist/models/unit/unit.schema.js +0 -27
- package/dist/models/unit/unit.schema.js.map +0 -1
- package/dist/models/user/index.d.ts +0 -5
- package/dist/models/user/index.d.ts.map +0 -1
- package/dist/models/user/index.js +0 -5
- package/dist/models/user/index.js.map +0 -1
- package/dist/models/user/user-minimal.schema.d.ts +0 -65
- package/dist/models/user/user-minimal.schema.d.ts.map +0 -1
- package/dist/models/user/user-minimal.schema.js +0 -10
- package/dist/models/user/user-minimal.schema.js.map +0 -1
- package/dist/models/user/user-partial.schema.d.ts +0 -65
- package/dist/models/user/user-partial.schema.d.ts.map +0 -1
- package/dist/models/user/user-partial.schema.js +0 -6
- package/dist/models/user/user-partial.schema.js.map +0 -1
- package/dist/models/user/user-settings.schema.d.ts +0 -8
- package/dist/models/user/user-settings.schema.d.ts.map +0 -1
- package/dist/models/user/user-settings.schema.js +0 -7
- package/dist/models/user/user-settings.schema.js.map +0 -1
- package/dist/models/user/user.schema.d.ts +0 -134
- package/dist/models/user/user.schema.d.ts.map +0 -1
- package/dist/models/user/user.schema.js +0 -39
- package/dist/models/user/user.schema.js.map +0 -1
package/dist/index.mjs
ADDED
|
@@ -0,0 +1,1820 @@
|
|
|
1
|
+
import z5, { z } from 'zod';
|
|
2
|
+
import { toMongooseSchema } from '@nullix/zod-mongoose';
|
|
3
|
+
import { model } from 'mongoose';
|
|
4
|
+
|
|
5
|
+
// src/commons/timestamp.ts
|
|
6
|
+
var isoDatetimeRegex = /^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(\.\d+)?(Z|[+-]\d{2}:?\d{2})$/;
|
|
7
|
+
var timestampSchema = z.string().refine(
|
|
8
|
+
(val) => isoDatetimeRegex.test(val),
|
|
9
|
+
{ message: "Invalid timestamp: must be an ISO 8601 datetime" }
|
|
10
|
+
);
|
|
11
|
+
var metadataSchema = z.object({
|
|
12
|
+
total: z.number().int().nonnegative(),
|
|
13
|
+
offset: z.number().int().nonnegative(),
|
|
14
|
+
limit: z.number().int().nonnegative(),
|
|
15
|
+
next: z.string().nullable(),
|
|
16
|
+
previous: z.string().nullable()
|
|
17
|
+
});
|
|
18
|
+
var apiResponseSchema = (dataSchema) => z.object({
|
|
19
|
+
success: z.boolean(),
|
|
20
|
+
message: z.string(),
|
|
21
|
+
status_code: z.string(),
|
|
22
|
+
data: z.array(dataSchema),
|
|
23
|
+
metadata: metadataSchema
|
|
24
|
+
});
|
|
25
|
+
var singleResourceResponseSchema = (dataSchema) => apiResponseSchema(dataSchema).refine(
|
|
26
|
+
(data) => data.metadata.total === 1 && data.metadata.offset === 0 && data.metadata.limit === 0 && data.metadata.next === null && data.metadata.previous === null,
|
|
27
|
+
{
|
|
28
|
+
message: "Single resource response metadata must have total=1, offset=0, limit=0, next=null, previous=null"
|
|
29
|
+
}
|
|
30
|
+
);
|
|
31
|
+
var settingOptionTypeSchema = z.union([
|
|
32
|
+
z.enum(["string", "number", "boolean", "date"]),
|
|
33
|
+
z.array(z.enum(["string", "number", "boolean", "date"])),
|
|
34
|
+
z.string()
|
|
35
|
+
]);
|
|
36
|
+
var settingOptionSchema = z.object({
|
|
37
|
+
field: z.string().min(1, { message: "field is required" }),
|
|
38
|
+
label: z.string().optional(),
|
|
39
|
+
type: settingOptionTypeSchema,
|
|
40
|
+
default: z.string().nullable(),
|
|
41
|
+
value: z.union([z.string(), z.boolean(), z.number()]).nullable()
|
|
42
|
+
});
|
|
43
|
+
|
|
44
|
+
// src/registry/registry.json
|
|
45
|
+
var registry_default = {
|
|
46
|
+
systems: [
|
|
47
|
+
{
|
|
48
|
+
system: "crn:status:system",
|
|
49
|
+
domain: "status",
|
|
50
|
+
variant: "system",
|
|
51
|
+
display: "System Status",
|
|
52
|
+
description: "Status of a record",
|
|
53
|
+
type: "parameter",
|
|
54
|
+
values: [
|
|
55
|
+
{
|
|
56
|
+
value: "active",
|
|
57
|
+
display: "Active",
|
|
58
|
+
description: "Record is still active and valid",
|
|
59
|
+
status: "Active"
|
|
60
|
+
},
|
|
61
|
+
{
|
|
62
|
+
value: "inactive",
|
|
63
|
+
display: "Inactive",
|
|
64
|
+
description: "Record is no longer active and valid",
|
|
65
|
+
status: "Active"
|
|
66
|
+
},
|
|
67
|
+
{
|
|
68
|
+
value: "suspended",
|
|
69
|
+
display: "Suspended",
|
|
70
|
+
description: "Record is suspended and may not be used or valid until the suspension is over",
|
|
71
|
+
status: "Active"
|
|
72
|
+
}
|
|
73
|
+
]
|
|
74
|
+
},
|
|
75
|
+
{
|
|
76
|
+
system: "crn:status:patient",
|
|
77
|
+
domain: "status",
|
|
78
|
+
variant: "patient",
|
|
79
|
+
display: "Patient Status",
|
|
80
|
+
description: "Patient-specific status codes",
|
|
81
|
+
type: "parameter",
|
|
82
|
+
values: [
|
|
83
|
+
{
|
|
84
|
+
value: "blacklisted",
|
|
85
|
+
display: "Blacklisted",
|
|
86
|
+
description: "Patient is blacklisted from the facility",
|
|
87
|
+
status: "Active"
|
|
88
|
+
},
|
|
89
|
+
{
|
|
90
|
+
value: "deceased",
|
|
91
|
+
display: "Deceased",
|
|
92
|
+
description: "Patient is already deceased",
|
|
93
|
+
status: "Active"
|
|
94
|
+
}
|
|
95
|
+
]
|
|
96
|
+
},
|
|
97
|
+
{
|
|
98
|
+
system: "crn:status:marital",
|
|
99
|
+
domain: "status",
|
|
100
|
+
variant: "marital",
|
|
101
|
+
display: "Marital Status",
|
|
102
|
+
description: "Marital status codes",
|
|
103
|
+
type: "parameter",
|
|
104
|
+
values: [
|
|
105
|
+
{
|
|
106
|
+
value: "married",
|
|
107
|
+
display: "Married",
|
|
108
|
+
description: "Person is married",
|
|
109
|
+
status: "Active"
|
|
110
|
+
},
|
|
111
|
+
{
|
|
112
|
+
value: "unmarried",
|
|
113
|
+
display: "Unmarried",
|
|
114
|
+
description: "Person is not married",
|
|
115
|
+
status: "Active"
|
|
116
|
+
},
|
|
117
|
+
{
|
|
118
|
+
value: "widowed",
|
|
119
|
+
display: "Widowed",
|
|
120
|
+
description: "Person is widowed due to the death of their spouse",
|
|
121
|
+
status: "Active"
|
|
122
|
+
},
|
|
123
|
+
{
|
|
124
|
+
value: "divorced",
|
|
125
|
+
display: "Divorced",
|
|
126
|
+
description: "Person is legally divorced",
|
|
127
|
+
status: "Active"
|
|
128
|
+
}
|
|
129
|
+
]
|
|
130
|
+
},
|
|
131
|
+
{
|
|
132
|
+
system: "crn:status:operational",
|
|
133
|
+
domain: "status",
|
|
134
|
+
variant: "operational",
|
|
135
|
+
display: "Operational Status",
|
|
136
|
+
description: "Resource operational status",
|
|
137
|
+
type: "parameter",
|
|
138
|
+
values: [
|
|
139
|
+
{
|
|
140
|
+
value: "open",
|
|
141
|
+
display: "Open",
|
|
142
|
+
description: "Resource is open and operating",
|
|
143
|
+
status: "Active"
|
|
144
|
+
},
|
|
145
|
+
{
|
|
146
|
+
value: "closed",
|
|
147
|
+
display: "Closed",
|
|
148
|
+
description: "Resource is closed and not operating",
|
|
149
|
+
status: "Active"
|
|
150
|
+
},
|
|
151
|
+
{
|
|
152
|
+
value: "maintenance",
|
|
153
|
+
display: "Maintenance",
|
|
154
|
+
description: "Resource is in maintenance and not operating",
|
|
155
|
+
status: "Active"
|
|
156
|
+
}
|
|
157
|
+
]
|
|
158
|
+
},
|
|
159
|
+
{
|
|
160
|
+
system: "crn:status:queue",
|
|
161
|
+
domain: "status",
|
|
162
|
+
variant: "queue",
|
|
163
|
+
display: "Queue Status",
|
|
164
|
+
description: "Queue number status",
|
|
165
|
+
type: "parameter",
|
|
166
|
+
values: [
|
|
167
|
+
{
|
|
168
|
+
value: "idle",
|
|
169
|
+
display: "Idle",
|
|
170
|
+
description: "Queue number are not in progress",
|
|
171
|
+
status: "Active"
|
|
172
|
+
},
|
|
173
|
+
{
|
|
174
|
+
value: "in-progress",
|
|
175
|
+
display: "In Progress",
|
|
176
|
+
description: "Queue number are in progress",
|
|
177
|
+
status: "Active"
|
|
178
|
+
},
|
|
179
|
+
{
|
|
180
|
+
value: "done",
|
|
181
|
+
display: "Done",
|
|
182
|
+
description: "Queue number are done with service",
|
|
183
|
+
status: "Active"
|
|
184
|
+
},
|
|
185
|
+
{
|
|
186
|
+
value: "skip",
|
|
187
|
+
display: "Skip",
|
|
188
|
+
description: "Indicate the queue number are skipped and at the bottom of call priority",
|
|
189
|
+
status: "Active"
|
|
190
|
+
}
|
|
191
|
+
]
|
|
192
|
+
},
|
|
193
|
+
{
|
|
194
|
+
system: "crn:salutation",
|
|
195
|
+
domain: "salutation",
|
|
196
|
+
variant: null,
|
|
197
|
+
display: "Salutation",
|
|
198
|
+
description: "Person salutations/honorifics",
|
|
199
|
+
type: "parameter",
|
|
200
|
+
values: [
|
|
201
|
+
{
|
|
202
|
+
value: "tuan",
|
|
203
|
+
display: "Tn.",
|
|
204
|
+
description: "Adult male honorific or title (Mr.)",
|
|
205
|
+
status: "Active"
|
|
206
|
+
},
|
|
207
|
+
{
|
|
208
|
+
value: "nyonya",
|
|
209
|
+
display: "Ny.",
|
|
210
|
+
description: "Married or adult female honorific or title (Mrs.)",
|
|
211
|
+
status: "Active"
|
|
212
|
+
},
|
|
213
|
+
{
|
|
214
|
+
value: "anak",
|
|
215
|
+
display: "An.",
|
|
216
|
+
description: "Child or pediatric patient honorific",
|
|
217
|
+
status: "Active"
|
|
218
|
+
}
|
|
219
|
+
]
|
|
220
|
+
},
|
|
221
|
+
{
|
|
222
|
+
system: "crn:sex",
|
|
223
|
+
domain: "sex",
|
|
224
|
+
variant: null,
|
|
225
|
+
display: "Biological Sex",
|
|
226
|
+
description: "Biological and physiological characteristics",
|
|
227
|
+
type: "parameter",
|
|
228
|
+
values: [
|
|
229
|
+
{
|
|
230
|
+
value: "m",
|
|
231
|
+
display: "Male",
|
|
232
|
+
description: "Male characteristics",
|
|
233
|
+
status: "Active"
|
|
234
|
+
},
|
|
235
|
+
{
|
|
236
|
+
value: "f",
|
|
237
|
+
display: "Female",
|
|
238
|
+
description: "Female characteristics",
|
|
239
|
+
status: "Active"
|
|
240
|
+
},
|
|
241
|
+
{
|
|
242
|
+
value: "i",
|
|
243
|
+
display: "Intersex",
|
|
244
|
+
description: "Biological sex characteristics that do not fit typical medical definitions",
|
|
245
|
+
status: "Proposed"
|
|
246
|
+
}
|
|
247
|
+
]
|
|
248
|
+
},
|
|
249
|
+
{
|
|
250
|
+
system: "crn:believes",
|
|
251
|
+
domain: "believes",
|
|
252
|
+
variant: null,
|
|
253
|
+
display: "Religion/Belief",
|
|
254
|
+
description: "Religion or belief system",
|
|
255
|
+
type: "parameter",
|
|
256
|
+
values: [
|
|
257
|
+
{
|
|
258
|
+
value: "islam",
|
|
259
|
+
display: "Islam",
|
|
260
|
+
description: "The islamic belief system",
|
|
261
|
+
status: "Active"
|
|
262
|
+
},
|
|
263
|
+
{
|
|
264
|
+
value: "protestantism",
|
|
265
|
+
display: "Protestant",
|
|
266
|
+
description: "The protestantism belief system",
|
|
267
|
+
status: "Active"
|
|
268
|
+
},
|
|
269
|
+
{
|
|
270
|
+
value: "catholicism",
|
|
271
|
+
display: "Catholic",
|
|
272
|
+
description: "The catholicism belief system",
|
|
273
|
+
status: "Active"
|
|
274
|
+
},
|
|
275
|
+
{
|
|
276
|
+
value: "hinduism",
|
|
277
|
+
display: "Hindu",
|
|
278
|
+
description: "The hinduism belief system",
|
|
279
|
+
status: "Active"
|
|
280
|
+
},
|
|
281
|
+
{
|
|
282
|
+
value: "buddhism",
|
|
283
|
+
display: "Buddha",
|
|
284
|
+
description: "The buddhism belief system",
|
|
285
|
+
status: "Active"
|
|
286
|
+
},
|
|
287
|
+
{
|
|
288
|
+
value: "confucianism",
|
|
289
|
+
display: "Confucian",
|
|
290
|
+
description: "The confucianism belief system",
|
|
291
|
+
status: "Active"
|
|
292
|
+
}
|
|
293
|
+
]
|
|
294
|
+
},
|
|
295
|
+
{
|
|
296
|
+
system: "crn:blood:type",
|
|
297
|
+
domain: "blood",
|
|
298
|
+
variant: "type",
|
|
299
|
+
display: "Blood Type",
|
|
300
|
+
description: "Blood group types",
|
|
301
|
+
type: "parameter",
|
|
302
|
+
values: [
|
|
303
|
+
{
|
|
304
|
+
value: "a",
|
|
305
|
+
display: "A",
|
|
306
|
+
description: "Blood group A",
|
|
307
|
+
status: "Active"
|
|
308
|
+
},
|
|
309
|
+
{
|
|
310
|
+
value: "b",
|
|
311
|
+
display: "B",
|
|
312
|
+
description: "Blood group B",
|
|
313
|
+
status: "Active"
|
|
314
|
+
},
|
|
315
|
+
{
|
|
316
|
+
value: "ab",
|
|
317
|
+
display: "AB",
|
|
318
|
+
description: "Blood group AB",
|
|
319
|
+
status: "Active"
|
|
320
|
+
},
|
|
321
|
+
{
|
|
322
|
+
value: "o",
|
|
323
|
+
display: "O",
|
|
324
|
+
description: "Blood group O",
|
|
325
|
+
status: "Active"
|
|
326
|
+
}
|
|
327
|
+
]
|
|
328
|
+
},
|
|
329
|
+
{
|
|
330
|
+
system: "crn:blood:rhesus",
|
|
331
|
+
domain: "blood",
|
|
332
|
+
variant: "rhesus",
|
|
333
|
+
display: "Rhesus Factor",
|
|
334
|
+
description: "RhD antigen presence",
|
|
335
|
+
type: "parameter",
|
|
336
|
+
values: [
|
|
337
|
+
{
|
|
338
|
+
value: "positive",
|
|
339
|
+
display: "Rh-Positive (+)",
|
|
340
|
+
description: "Presence of Rhesus (RhD) antigen",
|
|
341
|
+
status: "Active"
|
|
342
|
+
},
|
|
343
|
+
{
|
|
344
|
+
value: "negative",
|
|
345
|
+
display: "Rh-Negative (-)",
|
|
346
|
+
description: "Absence of Rhesus (RhD) antigen",
|
|
347
|
+
status: "Active"
|
|
348
|
+
}
|
|
349
|
+
]
|
|
350
|
+
},
|
|
351
|
+
{
|
|
352
|
+
system: "crn:flag:tier",
|
|
353
|
+
domain: "flag",
|
|
354
|
+
variant: "tier",
|
|
355
|
+
display: "Priority Tier",
|
|
356
|
+
description: "Priority/precedence levels",
|
|
357
|
+
type: "parameter",
|
|
358
|
+
values: [
|
|
359
|
+
{
|
|
360
|
+
value: "primary",
|
|
361
|
+
display: "Primary",
|
|
362
|
+
description: "Highest level of priority",
|
|
363
|
+
status: "Active"
|
|
364
|
+
},
|
|
365
|
+
{
|
|
366
|
+
value: "secondary",
|
|
367
|
+
display: "Secondary",
|
|
368
|
+
description: "Secondary level of priority",
|
|
369
|
+
status: "Active"
|
|
370
|
+
},
|
|
371
|
+
{
|
|
372
|
+
value: "tertiary",
|
|
373
|
+
display: "Tertiary",
|
|
374
|
+
description: "Third-tier or lowest level of priority",
|
|
375
|
+
status: "Active"
|
|
376
|
+
}
|
|
377
|
+
]
|
|
378
|
+
},
|
|
379
|
+
{
|
|
380
|
+
system: "crn:flag:intensity",
|
|
381
|
+
domain: "flag",
|
|
382
|
+
variant: "intensity",
|
|
383
|
+
display: "Intensity Level",
|
|
384
|
+
description: "Intensity/severity levels",
|
|
385
|
+
type: "parameter",
|
|
386
|
+
values: [
|
|
387
|
+
{
|
|
388
|
+
value: "very-low",
|
|
389
|
+
display: "Very Low",
|
|
390
|
+
description: "Minimal or lowest level of intensity",
|
|
391
|
+
status: "Active"
|
|
392
|
+
},
|
|
393
|
+
{
|
|
394
|
+
value: "low",
|
|
395
|
+
display: "Low",
|
|
396
|
+
description: "Minor or low level of intensity",
|
|
397
|
+
status: "Active"
|
|
398
|
+
},
|
|
399
|
+
{
|
|
400
|
+
value: "medium",
|
|
401
|
+
display: "Medium",
|
|
402
|
+
description: "Moderate or average level of intensity",
|
|
403
|
+
status: "Active"
|
|
404
|
+
},
|
|
405
|
+
{
|
|
406
|
+
value: "high",
|
|
407
|
+
display: "High",
|
|
408
|
+
description: "High or elevated level of intensity",
|
|
409
|
+
status: "Active"
|
|
410
|
+
},
|
|
411
|
+
{
|
|
412
|
+
value: "very-high",
|
|
413
|
+
display: "Very High",
|
|
414
|
+
description: "Extreme or critical level of intensity",
|
|
415
|
+
status: "Active"
|
|
416
|
+
}
|
|
417
|
+
]
|
|
418
|
+
},
|
|
419
|
+
{
|
|
420
|
+
system: "crn:mrn:separator",
|
|
421
|
+
domain: "mrn",
|
|
422
|
+
variant: "separator",
|
|
423
|
+
display: "MRN Separator",
|
|
424
|
+
description: "Medical Record Number separators",
|
|
425
|
+
type: "parameter",
|
|
426
|
+
values: [
|
|
427
|
+
{
|
|
428
|
+
value: "dash",
|
|
429
|
+
display: "Dash (-)",
|
|
430
|
+
description: "Use dash as separator",
|
|
431
|
+
status: "Active"
|
|
432
|
+
},
|
|
433
|
+
{
|
|
434
|
+
value: "dot",
|
|
435
|
+
display: "Dot (.)",
|
|
436
|
+
description: "Use dot as separator",
|
|
437
|
+
status: "Active"
|
|
438
|
+
},
|
|
439
|
+
{
|
|
440
|
+
value: "none",
|
|
441
|
+
display: "None",
|
|
442
|
+
description: "No separator",
|
|
443
|
+
status: "Active"
|
|
444
|
+
}
|
|
445
|
+
]
|
|
446
|
+
},
|
|
447
|
+
{
|
|
448
|
+
system: "crn:patient:additional",
|
|
449
|
+
domain: "patient",
|
|
450
|
+
variant: "additional",
|
|
451
|
+
display: "Patient Additional Info Types",
|
|
452
|
+
description: "Types of patient additional information",
|
|
453
|
+
type: "parameter",
|
|
454
|
+
values: [
|
|
455
|
+
{
|
|
456
|
+
value: "emergency-contact",
|
|
457
|
+
display: "Emergency Contact",
|
|
458
|
+
description: "Patient emergency contact info",
|
|
459
|
+
status: "Active"
|
|
460
|
+
},
|
|
461
|
+
{
|
|
462
|
+
value: "emergency-address",
|
|
463
|
+
display: "Emergency Address",
|
|
464
|
+
description: "Patient emergency address info",
|
|
465
|
+
status: "Active"
|
|
466
|
+
},
|
|
467
|
+
{
|
|
468
|
+
value: "relationship",
|
|
469
|
+
display: "Relationship",
|
|
470
|
+
description: "Patient relationship information",
|
|
471
|
+
status: "Active"
|
|
472
|
+
},
|
|
473
|
+
{
|
|
474
|
+
value: "blood-info",
|
|
475
|
+
display: "Blood Information",
|
|
476
|
+
description: "Patient blood information",
|
|
477
|
+
status: "Active"
|
|
478
|
+
},
|
|
479
|
+
{
|
|
480
|
+
value: "payer",
|
|
481
|
+
display: "Payer Information",
|
|
482
|
+
description: "Patient payer information",
|
|
483
|
+
status: "Active"
|
|
484
|
+
}
|
|
485
|
+
]
|
|
486
|
+
},
|
|
487
|
+
{
|
|
488
|
+
system: "crn:payer:category",
|
|
489
|
+
domain: "payer",
|
|
490
|
+
variant: "category",
|
|
491
|
+
display: "Payer Category",
|
|
492
|
+
description: "Healthcare payer categories",
|
|
493
|
+
type: "parameter",
|
|
494
|
+
values: [
|
|
495
|
+
{
|
|
496
|
+
value: "insurance",
|
|
497
|
+
display: "Insurance",
|
|
498
|
+
description: "Third-party health insurance payer",
|
|
499
|
+
status: "Active"
|
|
500
|
+
},
|
|
501
|
+
{
|
|
502
|
+
value: "government",
|
|
503
|
+
display: "Government",
|
|
504
|
+
description: "Government-sponsored health program",
|
|
505
|
+
status: "Active"
|
|
506
|
+
},
|
|
507
|
+
{
|
|
508
|
+
value: "corporate",
|
|
509
|
+
display: "Corporate",
|
|
510
|
+
description: "Company-sponsored health benefit",
|
|
511
|
+
status: "Active"
|
|
512
|
+
},
|
|
513
|
+
{
|
|
514
|
+
value: "self",
|
|
515
|
+
display: "Self",
|
|
516
|
+
description: "Patient pay out of pocket",
|
|
517
|
+
status: "Active"
|
|
518
|
+
}
|
|
519
|
+
]
|
|
520
|
+
},
|
|
521
|
+
{
|
|
522
|
+
system: "crn:queue:stage",
|
|
523
|
+
domain: "queue",
|
|
524
|
+
variant: "stage",
|
|
525
|
+
display: "Queue Stage",
|
|
526
|
+
description: "Queue processing stages",
|
|
527
|
+
type: "parameter",
|
|
528
|
+
values: [
|
|
529
|
+
{
|
|
530
|
+
value: "waiting",
|
|
531
|
+
display: "Waiting",
|
|
532
|
+
description: "Waiting stage",
|
|
533
|
+
status: "Active"
|
|
534
|
+
},
|
|
535
|
+
{
|
|
536
|
+
value: "processing",
|
|
537
|
+
display: "Processing",
|
|
538
|
+
description: "Processing stage",
|
|
539
|
+
status: "Active"
|
|
540
|
+
}
|
|
541
|
+
]
|
|
542
|
+
},
|
|
543
|
+
{
|
|
544
|
+
system: "crn:queue:priority",
|
|
545
|
+
domain: "queue",
|
|
546
|
+
variant: "priority",
|
|
547
|
+
display: "Queue Priority",
|
|
548
|
+
description: "Queue sort and call priority",
|
|
549
|
+
type: "parameter",
|
|
550
|
+
values: [
|
|
551
|
+
{
|
|
552
|
+
value: "sequence",
|
|
553
|
+
display: "Sequence",
|
|
554
|
+
description: "Based on queue sequence number",
|
|
555
|
+
status: "Active"
|
|
556
|
+
},
|
|
557
|
+
{
|
|
558
|
+
value: "arrival",
|
|
559
|
+
display: "Arrival",
|
|
560
|
+
description: "Based on queue arrival",
|
|
561
|
+
status: "Active"
|
|
562
|
+
}
|
|
563
|
+
]
|
|
564
|
+
},
|
|
565
|
+
{
|
|
566
|
+
system: "crn:relationship:family",
|
|
567
|
+
domain: "relationship",
|
|
568
|
+
variant: "family",
|
|
569
|
+
display: "Family Relationship",
|
|
570
|
+
description: "Family relationship types",
|
|
571
|
+
type: "parameter",
|
|
572
|
+
values: [
|
|
573
|
+
{
|
|
574
|
+
value: "spouse",
|
|
575
|
+
display: "Spouse",
|
|
576
|
+
description: "Partner in a marriage or legal union",
|
|
577
|
+
status: "Active"
|
|
578
|
+
},
|
|
579
|
+
{
|
|
580
|
+
value: "father",
|
|
581
|
+
display: "Father",
|
|
582
|
+
description: "Male parent",
|
|
583
|
+
status: "Active"
|
|
584
|
+
},
|
|
585
|
+
{
|
|
586
|
+
value: "mother",
|
|
587
|
+
display: "Mother",
|
|
588
|
+
description: "Female parent",
|
|
589
|
+
status: "Active"
|
|
590
|
+
},
|
|
591
|
+
{
|
|
592
|
+
value: "grandfather",
|
|
593
|
+
display: "Grandfather",
|
|
594
|
+
description: "Father of a person's father or mother",
|
|
595
|
+
status: "Active"
|
|
596
|
+
},
|
|
597
|
+
{
|
|
598
|
+
value: "grandmother",
|
|
599
|
+
display: "Grandmother",
|
|
600
|
+
description: "Mother of a person's father or mother",
|
|
601
|
+
status: "Active"
|
|
602
|
+
},
|
|
603
|
+
{
|
|
604
|
+
value: "grandchildren",
|
|
605
|
+
display: "Grandchildren",
|
|
606
|
+
description: "Child or children of a person's son or daughter",
|
|
607
|
+
status: "Active"
|
|
608
|
+
},
|
|
609
|
+
{
|
|
610
|
+
value: "children",
|
|
611
|
+
display: "Children",
|
|
612
|
+
description: "Person's offspring or child",
|
|
613
|
+
status: "Active"
|
|
614
|
+
}
|
|
615
|
+
]
|
|
616
|
+
},
|
|
617
|
+
{
|
|
618
|
+
system: "crn:schedule",
|
|
619
|
+
domain: "schedule",
|
|
620
|
+
variant: null,
|
|
621
|
+
display: "Schedule Type",
|
|
622
|
+
description: "Practitioner schedule types",
|
|
623
|
+
type: "parameter",
|
|
624
|
+
values: [
|
|
625
|
+
{
|
|
626
|
+
value: "recurring",
|
|
627
|
+
display: "Recurring",
|
|
628
|
+
description: "A recurring schedule",
|
|
629
|
+
status: "Active"
|
|
630
|
+
},
|
|
631
|
+
{
|
|
632
|
+
value: "one-time",
|
|
633
|
+
display: "One-Time",
|
|
634
|
+
description: "A one-time schedule",
|
|
635
|
+
status: "Active"
|
|
636
|
+
}
|
|
637
|
+
]
|
|
638
|
+
},
|
|
639
|
+
{
|
|
640
|
+
system: "crn:taxonomy:department",
|
|
641
|
+
domain: "taxonomy",
|
|
642
|
+
variant: "department",
|
|
643
|
+
display: "Department",
|
|
644
|
+
description: "Department classifications",
|
|
645
|
+
type: "parameter",
|
|
646
|
+
values: [
|
|
647
|
+
{
|
|
648
|
+
value: "medical",
|
|
649
|
+
display: "Medical",
|
|
650
|
+
description: "Department for medical affair",
|
|
651
|
+
status: "Active"
|
|
652
|
+
},
|
|
653
|
+
{
|
|
654
|
+
value: "administrative",
|
|
655
|
+
display: "Administrative",
|
|
656
|
+
description: "Department for administrative affair",
|
|
657
|
+
status: "Active"
|
|
658
|
+
},
|
|
659
|
+
{
|
|
660
|
+
value: "operational",
|
|
661
|
+
display: "Operational",
|
|
662
|
+
description: "Department for operational affair",
|
|
663
|
+
status: "Active"
|
|
664
|
+
}
|
|
665
|
+
]
|
|
666
|
+
},
|
|
667
|
+
{
|
|
668
|
+
system: "crn:taxonomy:unit",
|
|
669
|
+
domain: "taxonomy",
|
|
670
|
+
variant: "unit",
|
|
671
|
+
display: "Unit Types",
|
|
672
|
+
description: "Unit classifications",
|
|
673
|
+
type: "parameter",
|
|
674
|
+
values: [
|
|
675
|
+
{
|
|
676
|
+
value: "medical-service",
|
|
677
|
+
display: "Medical Service",
|
|
678
|
+
description: "Unit that provide medical service",
|
|
679
|
+
status: "Active"
|
|
680
|
+
},
|
|
681
|
+
{
|
|
682
|
+
value: "pharmacy",
|
|
683
|
+
display: "Pharmacy",
|
|
684
|
+
description: "Unit for pharmacy",
|
|
685
|
+
status: "Active"
|
|
686
|
+
},
|
|
687
|
+
{
|
|
688
|
+
value: "ancillary",
|
|
689
|
+
display: "Ancillary",
|
|
690
|
+
description: "Unit for ancillary services",
|
|
691
|
+
status: "Active"
|
|
692
|
+
},
|
|
693
|
+
{
|
|
694
|
+
value: "service-counter",
|
|
695
|
+
display: "Service Counter",
|
|
696
|
+
description: "Unit that act as counter for various purposes",
|
|
697
|
+
status: "Active"
|
|
698
|
+
},
|
|
699
|
+
{
|
|
700
|
+
value: "cashier",
|
|
701
|
+
display: "Cashier",
|
|
702
|
+
description: "Unit that act as counter for cashier",
|
|
703
|
+
status: "Active"
|
|
704
|
+
}
|
|
705
|
+
]
|
|
706
|
+
},
|
|
707
|
+
{
|
|
708
|
+
system: "crn:taxonomy:location",
|
|
709
|
+
domain: "taxonomy",
|
|
710
|
+
variant: "location",
|
|
711
|
+
display: "Location Types",
|
|
712
|
+
description: "Location classifications",
|
|
713
|
+
type: "parameter",
|
|
714
|
+
values: [
|
|
715
|
+
{
|
|
716
|
+
value: "building",
|
|
717
|
+
display: "Building",
|
|
718
|
+
description: "A building",
|
|
719
|
+
status: "Active"
|
|
720
|
+
},
|
|
721
|
+
{
|
|
722
|
+
value: "level",
|
|
723
|
+
display: "Level",
|
|
724
|
+
description: "A floor level",
|
|
725
|
+
status: "Active"
|
|
726
|
+
},
|
|
727
|
+
{
|
|
728
|
+
value: "bed",
|
|
729
|
+
display: "Bed",
|
|
730
|
+
description: "A bed",
|
|
731
|
+
status: "Active"
|
|
732
|
+
},
|
|
733
|
+
{
|
|
734
|
+
value: "cabinet",
|
|
735
|
+
display: "Cabinet",
|
|
736
|
+
description: "A cabinet",
|
|
737
|
+
status: "Active"
|
|
738
|
+
}
|
|
739
|
+
]
|
|
740
|
+
},
|
|
741
|
+
{
|
|
742
|
+
system: "crn:taxonomy:staff",
|
|
743
|
+
domain: "taxonomy",
|
|
744
|
+
variant: "staff",
|
|
745
|
+
display: "Staff Types",
|
|
746
|
+
description: "Staff classifications",
|
|
747
|
+
type: "parameter",
|
|
748
|
+
values: [
|
|
749
|
+
{
|
|
750
|
+
value: "practitioner",
|
|
751
|
+
display: "Practitioner",
|
|
752
|
+
description: "Healthcare practitioner (i.e. Doctor)",
|
|
753
|
+
status: "Active"
|
|
754
|
+
},
|
|
755
|
+
{
|
|
756
|
+
value: "medical",
|
|
757
|
+
display: "Medical",
|
|
758
|
+
description: "Medical staff (i.e. Nurse, Therapist)",
|
|
759
|
+
status: "Active"
|
|
760
|
+
},
|
|
761
|
+
{
|
|
762
|
+
value: "non-medical",
|
|
763
|
+
display: "Non Medical",
|
|
764
|
+
description: "Non medical staff (i.e. Administrator staff)",
|
|
765
|
+
status: "Active"
|
|
766
|
+
}
|
|
767
|
+
]
|
|
768
|
+
},
|
|
769
|
+
{
|
|
770
|
+
system: "crn:assignment:type",
|
|
771
|
+
domain: "assignment",
|
|
772
|
+
variant: "type",
|
|
773
|
+
display: "Assignment Type",
|
|
774
|
+
description: "Resource assignment types",
|
|
775
|
+
type: "parameter",
|
|
776
|
+
values: [
|
|
777
|
+
{
|
|
778
|
+
value: "staff-to-unit",
|
|
779
|
+
display: "Staff to Unit",
|
|
780
|
+
description: "Assignment of staff to a unit",
|
|
781
|
+
status: "Active"
|
|
782
|
+
},
|
|
783
|
+
{
|
|
784
|
+
value: "location-to-unit",
|
|
785
|
+
display: "Location to Unit",
|
|
786
|
+
description: "Assignment of location to a unit",
|
|
787
|
+
status: "Active"
|
|
788
|
+
}
|
|
789
|
+
]
|
|
790
|
+
},
|
|
791
|
+
{
|
|
792
|
+
system: "crn:identifier",
|
|
793
|
+
domain: "identifier",
|
|
794
|
+
variant: null,
|
|
795
|
+
display: "Identifier Types",
|
|
796
|
+
description: "Person identifier types",
|
|
797
|
+
type: "parameter",
|
|
798
|
+
values: [
|
|
799
|
+
{
|
|
800
|
+
value: "nik",
|
|
801
|
+
display: "NIK",
|
|
802
|
+
description: "Nomor Induk Kependudukan",
|
|
803
|
+
status: "Active"
|
|
804
|
+
},
|
|
805
|
+
{
|
|
806
|
+
value: "mrn",
|
|
807
|
+
display: "MRN",
|
|
808
|
+
description: "Medical Record Number",
|
|
809
|
+
status: "Active"
|
|
810
|
+
},
|
|
811
|
+
{
|
|
812
|
+
value: "passport",
|
|
813
|
+
display: "Passport Number",
|
|
814
|
+
description: "Passport Number",
|
|
815
|
+
status: "Active"
|
|
816
|
+
},
|
|
817
|
+
{
|
|
818
|
+
value: "str",
|
|
819
|
+
display: "STR",
|
|
820
|
+
description: "Surat Tanda Registrasi by Konsil Kedokteran Indonesia",
|
|
821
|
+
status: "Active"
|
|
822
|
+
},
|
|
823
|
+
{
|
|
824
|
+
value: "sip",
|
|
825
|
+
display: "SIP",
|
|
826
|
+
description: "Surat Izin Praktik by Dinas Kesehatan",
|
|
827
|
+
status: "Active"
|
|
828
|
+
},
|
|
829
|
+
{
|
|
830
|
+
value: "npa",
|
|
831
|
+
display: "NPA",
|
|
832
|
+
description: "Nomor Pokok Anggota by Ikatan Dokter Indonesia",
|
|
833
|
+
status: "Active"
|
|
834
|
+
}
|
|
835
|
+
]
|
|
836
|
+
},
|
|
837
|
+
{
|
|
838
|
+
system: "crn:contact",
|
|
839
|
+
domain: "contact",
|
|
840
|
+
variant: null,
|
|
841
|
+
display: "Contact Method",
|
|
842
|
+
description: "Method of contacting a person",
|
|
843
|
+
type: "label",
|
|
844
|
+
values: [
|
|
845
|
+
{
|
|
846
|
+
value: "mobile",
|
|
847
|
+
display: "Mobile",
|
|
848
|
+
description: "Cellular or mobile phone contact number",
|
|
849
|
+
status: "Active"
|
|
850
|
+
},
|
|
851
|
+
{
|
|
852
|
+
value: "phone",
|
|
853
|
+
display: "Phone",
|
|
854
|
+
description: "Landline or primary telephone contact number",
|
|
855
|
+
status: "Active"
|
|
856
|
+
},
|
|
857
|
+
{
|
|
858
|
+
value: "email",
|
|
859
|
+
display: "Email",
|
|
860
|
+
description: "Electronic mail address for digital communication",
|
|
861
|
+
status: "Active"
|
|
862
|
+
},
|
|
863
|
+
{
|
|
864
|
+
value: "fax",
|
|
865
|
+
display: "Fax",
|
|
866
|
+
description: "Facsimile machine contact number",
|
|
867
|
+
status: "Active"
|
|
868
|
+
}
|
|
869
|
+
]
|
|
870
|
+
},
|
|
871
|
+
{
|
|
872
|
+
system: "crn:event:system",
|
|
873
|
+
domain: "event",
|
|
874
|
+
variant: "system",
|
|
875
|
+
display: "System Event",
|
|
876
|
+
description: "System event types",
|
|
877
|
+
type: "parameter",
|
|
878
|
+
values: [
|
|
879
|
+
{
|
|
880
|
+
value: "create",
|
|
881
|
+
display: "Create",
|
|
882
|
+
description: "Event triggered when creating a resource",
|
|
883
|
+
status: "Active"
|
|
884
|
+
},
|
|
885
|
+
{
|
|
886
|
+
value: "update",
|
|
887
|
+
display: "Update",
|
|
888
|
+
description: "Event triggered when updating a resource",
|
|
889
|
+
status: "Active"
|
|
890
|
+
},
|
|
891
|
+
{
|
|
892
|
+
value: "delete",
|
|
893
|
+
display: "Delete",
|
|
894
|
+
description: "Event triggered when deleting a resource",
|
|
895
|
+
status: "Active"
|
|
896
|
+
}
|
|
897
|
+
]
|
|
898
|
+
},
|
|
899
|
+
{
|
|
900
|
+
system: "crn:event:queue",
|
|
901
|
+
domain: "event",
|
|
902
|
+
variant: "queue",
|
|
903
|
+
display: "Queue Event",
|
|
904
|
+
description: "Queue event types",
|
|
905
|
+
type: "parameter",
|
|
906
|
+
values: [
|
|
907
|
+
{
|
|
908
|
+
value: "called",
|
|
909
|
+
display: "Called",
|
|
910
|
+
description: "Event triggered when calling a queue number",
|
|
911
|
+
status: "Active"
|
|
912
|
+
},
|
|
913
|
+
{
|
|
914
|
+
value: "skipped",
|
|
915
|
+
display: "Skipped",
|
|
916
|
+
description: "Event triggered when skipping a queue number",
|
|
917
|
+
status: "Active"
|
|
918
|
+
},
|
|
919
|
+
{
|
|
920
|
+
value: "noshow",
|
|
921
|
+
display: "No Show",
|
|
922
|
+
description: "Event triggered when patient fails to show up",
|
|
923
|
+
status: "Active"
|
|
924
|
+
},
|
|
925
|
+
{
|
|
926
|
+
value: "arrived",
|
|
927
|
+
display: "Arrived",
|
|
928
|
+
description: "Event triggered when patient arrives at the location",
|
|
929
|
+
status: "Active"
|
|
930
|
+
}
|
|
931
|
+
]
|
|
932
|
+
}
|
|
933
|
+
]
|
|
934
|
+
};
|
|
935
|
+
|
|
936
|
+
// src/registry/registry.ts
|
|
937
|
+
var registry = registry_default;
|
|
938
|
+
function validateCode(system, value) {
|
|
939
|
+
const sys = registry.systems.find((s) => s.system === system);
|
|
940
|
+
if (!sys) return false;
|
|
941
|
+
if (sys.type === "parameter") {
|
|
942
|
+
return sys.values.some((v) => v.value === value);
|
|
943
|
+
}
|
|
944
|
+
return value.length > 0;
|
|
945
|
+
}
|
|
946
|
+
|
|
947
|
+
// src/commons/coded-concept.ts
|
|
948
|
+
var isoDatetimeRegex2 = /^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(\.\d+)?(Z|[+-]\d{2}:?\d{2})$/;
|
|
949
|
+
var codedConceptSchema = z.object({
|
|
950
|
+
system: z.string().min(1, { message: "system is required" }),
|
|
951
|
+
value: z.string().min(1, { message: "value is required" }),
|
|
952
|
+
display: z.string().optional(),
|
|
953
|
+
valid: z.string().optional().refine(
|
|
954
|
+
(val) => !val || isoDatetimeRegex2.test(val),
|
|
955
|
+
{ message: "valid must be a valid ISO 8601 datetime if provided" }
|
|
956
|
+
),
|
|
957
|
+
tags: z.array(z.string()).optional()
|
|
958
|
+
}).refine((data) => validateCode(data.system, data.value), {
|
|
959
|
+
message: "Invalid CodedConcept: system/value combination not found in registry"
|
|
960
|
+
});
|
|
961
|
+
var demographicSchema = z5.object({
|
|
962
|
+
sex: codedConceptSchema,
|
|
963
|
+
religion: codedConceptSchema,
|
|
964
|
+
ethnicity: z5.string().optional(),
|
|
965
|
+
marital_status: codedConceptSchema,
|
|
966
|
+
date_of_birth: z5.string(),
|
|
967
|
+
place_of_birth: z5.string().optional()
|
|
968
|
+
});
|
|
969
|
+
var addressSchema = z.object({
|
|
970
|
+
street: z.string().min(1, { message: "street is required" }),
|
|
971
|
+
subdistrict: codedConceptSchema,
|
|
972
|
+
district: codedConceptSchema,
|
|
973
|
+
city: codedConceptSchema,
|
|
974
|
+
province: codedConceptSchema,
|
|
975
|
+
postal_code: z.string().optional()
|
|
976
|
+
});
|
|
977
|
+
var objectIdSchema = z.string().length(24, {
|
|
978
|
+
message: "ObjectId must be a 24-character hexadecimal string"
|
|
979
|
+
}).regex(/^[0-9a-fA-F]{24}$/, {
|
|
980
|
+
message: "ObjectId must be a valid MongoDB ObjectId (24-character hex string)"
|
|
981
|
+
});
|
|
982
|
+
var USER_SCHEMA_VERSION = 1;
|
|
983
|
+
var userSchema = z.object({
|
|
984
|
+
id: z.string(),
|
|
985
|
+
full_name: z.string().min(1, { message: "full_name is required" }),
|
|
986
|
+
first_name: z.string().min(1, { message: "first_name is required" }),
|
|
987
|
+
middle_name: z.string().optional(),
|
|
988
|
+
last_name: z.string().min(1, { message: "last_name is required" }),
|
|
989
|
+
salutation: z.string().optional(),
|
|
990
|
+
title: z.string().optional(),
|
|
991
|
+
email: z.string().email({ message: "Invalid email address" }),
|
|
992
|
+
email_verified: z.boolean(),
|
|
993
|
+
image: z.string().optional(),
|
|
994
|
+
statuses: z.array(codedConceptSchema).nonempty({
|
|
995
|
+
message: "statuses must contain at least one CodedConcept"
|
|
996
|
+
}),
|
|
997
|
+
identifiers: z.array(codedConceptSchema).nonempty({
|
|
998
|
+
message: "identifiers must contain at least one CodedConcept"
|
|
999
|
+
}),
|
|
1000
|
+
demographic: demographicSchema,
|
|
1001
|
+
contacts: z.array(codedConceptSchema).optional(),
|
|
1002
|
+
settings_id: objectIdSchema,
|
|
1003
|
+
created_at: z.string(),
|
|
1004
|
+
updated_at: z.string()
|
|
1005
|
+
});
|
|
1006
|
+
var UserMongooseSchema = toMongooseSchema(userSchema);
|
|
1007
|
+
var UserModelName = "users";
|
|
1008
|
+
var UserModel = model(UserModelName, UserMongooseSchema);
|
|
1009
|
+
var USER_SETTING_FIELDS = [
|
|
1010
|
+
"lock_screen",
|
|
1011
|
+
"lock_screen_pin",
|
|
1012
|
+
"language"
|
|
1013
|
+
];
|
|
1014
|
+
var USER_SETTINGS_SCHEMA_VERSION = 1;
|
|
1015
|
+
var userSettingsSchema = z.object({
|
|
1016
|
+
_id: objectIdSchema,
|
|
1017
|
+
scope: z.string().min(1),
|
|
1018
|
+
options: z.array(
|
|
1019
|
+
settingOptionSchema.refine(
|
|
1020
|
+
(opt) => USER_SETTING_FIELDS.includes(opt.field),
|
|
1021
|
+
{ message: "Invalid field for user settings" }
|
|
1022
|
+
)
|
|
1023
|
+
),
|
|
1024
|
+
updated_at: timestampSchema,
|
|
1025
|
+
updated_by: z.string(),
|
|
1026
|
+
schema_version: z.number().int().positive().default(USER_SETTINGS_SCHEMA_VERSION)
|
|
1027
|
+
});
|
|
1028
|
+
var userSettingsKVSchema = z.object({
|
|
1029
|
+
lock_screen: z.boolean().default(false),
|
|
1030
|
+
lock_screen_pin: z.string().optional(),
|
|
1031
|
+
language: z.string().default("id-ID")
|
|
1032
|
+
});
|
|
1033
|
+
|
|
1034
|
+
// src/models/user/user-minimal.schema.ts
|
|
1035
|
+
var userMinimalSchema = userSchema.omit({
|
|
1036
|
+
id: true,
|
|
1037
|
+
created_at: true,
|
|
1038
|
+
updated_at: true
|
|
1039
|
+
});
|
|
1040
|
+
|
|
1041
|
+
// src/models/user/user-partial.schema.ts
|
|
1042
|
+
var userPartialSchema = userMinimalSchema.partial();
|
|
1043
|
+
var nonEmpty = z.string().min(1, { message: "assigned_to is required" });
|
|
1044
|
+
var ASSIGNMENT_SCHEMA_VERSION = 1;
|
|
1045
|
+
var assignmentSchema = z.object({
|
|
1046
|
+
_id: objectIdSchema,
|
|
1047
|
+
facility_id: objectIdSchema,
|
|
1048
|
+
type: codedConceptSchema,
|
|
1049
|
+
for: z.string().min(1, { message: "for is required" }),
|
|
1050
|
+
assigned_to: z.union([nonEmpty, z.array(nonEmpty)]).transform((val) => Array.isArray(val) ? val : [val]).refine((arr) => arr.length >= 1, {
|
|
1051
|
+
message: "assigned_to is required"
|
|
1052
|
+
}),
|
|
1053
|
+
created_at: z.string(),
|
|
1054
|
+
created_by: z.string(),
|
|
1055
|
+
updated_at: z.string(),
|
|
1056
|
+
updated_by: z.string(),
|
|
1057
|
+
schema_version: z.number().int().positive().default(ASSIGNMENT_SCHEMA_VERSION)
|
|
1058
|
+
});
|
|
1059
|
+
var AssignmentMongooseSchema = toMongooseSchema(assignmentSchema);
|
|
1060
|
+
var AssignmentModelName = "assignments";
|
|
1061
|
+
var AssignmentModel = model(AssignmentModelName, AssignmentMongooseSchema);
|
|
1062
|
+
|
|
1063
|
+
// src/models/assignment/assignment-minimal.schema.ts
|
|
1064
|
+
var assignmentMinimalSchema = assignmentSchema.omit({
|
|
1065
|
+
_id: true,
|
|
1066
|
+
created_at: true,
|
|
1067
|
+
created_by: true,
|
|
1068
|
+
updated_at: true,
|
|
1069
|
+
updated_by: true,
|
|
1070
|
+
schema_version: true
|
|
1071
|
+
});
|
|
1072
|
+
|
|
1073
|
+
// src/models/assignment/assignment-partial.schema.ts
|
|
1074
|
+
var assignmentPartialSchema = assignmentMinimalSchema.partial();
|
|
1075
|
+
var DEPARTMENT_SCHEMA_VERSION = 1;
|
|
1076
|
+
var departmentSchema = z.object({
|
|
1077
|
+
_id: objectIdSchema,
|
|
1078
|
+
facility_id: objectIdSchema,
|
|
1079
|
+
name: z.string().min(1, { message: "name is required" }),
|
|
1080
|
+
type: codedConceptSchema,
|
|
1081
|
+
created_at: z.string(),
|
|
1082
|
+
created_by: z.string(),
|
|
1083
|
+
updated_at: z.string(),
|
|
1084
|
+
updated_by: z.string(),
|
|
1085
|
+
schema_version: z.number().int().positive().default(DEPARTMENT_SCHEMA_VERSION)
|
|
1086
|
+
});
|
|
1087
|
+
var DepartmentMongooseSchema = toMongooseSchema(departmentSchema);
|
|
1088
|
+
var DepartmentModelName = "departments";
|
|
1089
|
+
var DepartmentModel = model(DepartmentModelName, DepartmentMongooseSchema);
|
|
1090
|
+
|
|
1091
|
+
// src/models/department/department-minimal.schema.ts
|
|
1092
|
+
var departmentMinimalSchema = departmentSchema.omit({
|
|
1093
|
+
_id: true,
|
|
1094
|
+
created_at: true,
|
|
1095
|
+
created_by: true,
|
|
1096
|
+
updated_at: true,
|
|
1097
|
+
updated_by: true,
|
|
1098
|
+
schema_version: true
|
|
1099
|
+
});
|
|
1100
|
+
|
|
1101
|
+
// src/models/department/department-partial.schema.ts
|
|
1102
|
+
var departmentPartialSchema = departmentMinimalSchema.partial();
|
|
1103
|
+
var FACILITY_SCHEMA_VERSION = 1;
|
|
1104
|
+
var facilitySchema = z.object({
|
|
1105
|
+
id: z.string().uuid({ message: "id must be a valid UUID" }),
|
|
1106
|
+
name: z.string().min(1, { message: "name is required" }),
|
|
1107
|
+
member_count: z.number().int().positive({ message: "member_count must be a positive integer" }),
|
|
1108
|
+
organization_id: objectIdSchema,
|
|
1109
|
+
status: codedConceptSchema,
|
|
1110
|
+
settings_id: objectIdSchema,
|
|
1111
|
+
createdAt: timestampSchema,
|
|
1112
|
+
updatedAt: timestampSchema
|
|
1113
|
+
});
|
|
1114
|
+
var FacilityMongooseSchema = toMongooseSchema(facilitySchema);
|
|
1115
|
+
var FacilityModelName = "facilities";
|
|
1116
|
+
var FacilityModel = model(FacilityModelName, FacilityMongooseSchema);
|
|
1117
|
+
var FACILITY_SETTING_FIELDS = [
|
|
1118
|
+
"branding_logo",
|
|
1119
|
+
"satusehat_org_id",
|
|
1120
|
+
"satusehat_client_id",
|
|
1121
|
+
"satusehat_client_secret",
|
|
1122
|
+
"queue_number_separator",
|
|
1123
|
+
"queue_number_prefix",
|
|
1124
|
+
"queue_no_response_count",
|
|
1125
|
+
"queue_skip_no_response"
|
|
1126
|
+
];
|
|
1127
|
+
var FACILITY_SETTINGS_SCHEMA_VERSION = 1;
|
|
1128
|
+
var facilitySettingsSchema = z.object({
|
|
1129
|
+
_id: objectIdSchema,
|
|
1130
|
+
scope: z.string().min(1),
|
|
1131
|
+
options: z.array(
|
|
1132
|
+
settingOptionSchema.refine(
|
|
1133
|
+
(opt) => FACILITY_SETTING_FIELDS.includes(opt.field),
|
|
1134
|
+
{ message: "Invalid field for facility settings" }
|
|
1135
|
+
)
|
|
1136
|
+
),
|
|
1137
|
+
updated_at: timestampSchema,
|
|
1138
|
+
updated_by: z.string(),
|
|
1139
|
+
schema_version: z.number().int().positive().default(FACILITY_SETTINGS_SCHEMA_VERSION)
|
|
1140
|
+
});
|
|
1141
|
+
var facilitySettingsKVSchema = z.object({
|
|
1142
|
+
branding_logo: z.string().optional(),
|
|
1143
|
+
satusehat_org_id: z.string().optional(),
|
|
1144
|
+
satusehat_client_id: z.string().optional(),
|
|
1145
|
+
satusehat_client_secret: z.string().optional(),
|
|
1146
|
+
queue_number_separator: z.string().optional(),
|
|
1147
|
+
queue_number_prefix: z.enum(["none", "payer"]).default("payer"),
|
|
1148
|
+
queue_no_response_count: z.number().default(3),
|
|
1149
|
+
queue_skip_no_response: z.boolean().default(true)
|
|
1150
|
+
});
|
|
1151
|
+
|
|
1152
|
+
// src/models/facility/facility-minimal.schema.ts
|
|
1153
|
+
var facilityMinimalSchema = facilitySchema.omit({
|
|
1154
|
+
id: true,
|
|
1155
|
+
createdAt: true,
|
|
1156
|
+
updatedAt: true
|
|
1157
|
+
});
|
|
1158
|
+
|
|
1159
|
+
// src/models/facility/facility-partial.schema.ts
|
|
1160
|
+
var facilityPartialSchema = facilityMinimalSchema.partial();
|
|
1161
|
+
var LOCATION_SCHEMA_VERSION = 1;
|
|
1162
|
+
var locationSchema = z.object({
|
|
1163
|
+
_id: objectIdSchema,
|
|
1164
|
+
parent_id: objectIdSchema,
|
|
1165
|
+
identifiers: z.array(codedConceptSchema).nonempty({
|
|
1166
|
+
message: "identifiers must contain at least one CodedConcept"
|
|
1167
|
+
}),
|
|
1168
|
+
name: z.string().min(1, { message: "name is required" }),
|
|
1169
|
+
types: z.array(codedConceptSchema).nonempty({
|
|
1170
|
+
message: "types must contain at least one CodedConcept"
|
|
1171
|
+
}),
|
|
1172
|
+
statuses: z.array(codedConceptSchema).nonempty({
|
|
1173
|
+
message: "statuses must contain at least one CodedConcept"
|
|
1174
|
+
}),
|
|
1175
|
+
settings_id: objectIdSchema,
|
|
1176
|
+
created_at: timestampSchema,
|
|
1177
|
+
created_by: z.string(),
|
|
1178
|
+
updated_at: timestampSchema,
|
|
1179
|
+
updated_by: z.string(),
|
|
1180
|
+
schema_version: z.number().int().positive().default(LOCATION_SCHEMA_VERSION)
|
|
1181
|
+
});
|
|
1182
|
+
var LocationMongooseSchema = toMongooseSchema(locationSchema);
|
|
1183
|
+
var LocationModelName = "locations";
|
|
1184
|
+
var LocationModel = model(LocationModelName, LocationMongooseSchema);
|
|
1185
|
+
var LOCATION_SETTING_FIELDS = [
|
|
1186
|
+
"sex_restriction",
|
|
1187
|
+
"is_inventory_location",
|
|
1188
|
+
"room_has_ventilator"
|
|
1189
|
+
];
|
|
1190
|
+
var LOCATION_SETTINGS_SCHEMA_VERSION = 1;
|
|
1191
|
+
var locationSettingsSchema = z.object({
|
|
1192
|
+
_id: objectIdSchema,
|
|
1193
|
+
scope: z.string().min(1),
|
|
1194
|
+
options: z.array(
|
|
1195
|
+
settingOptionSchema.refine(
|
|
1196
|
+
(opt) => LOCATION_SETTING_FIELDS.includes(opt.field),
|
|
1197
|
+
{ message: "Invalid field for location settings" }
|
|
1198
|
+
)
|
|
1199
|
+
),
|
|
1200
|
+
updated_at: timestampSchema,
|
|
1201
|
+
updated_by: z.string(),
|
|
1202
|
+
schema_version: z.number().int().positive().default(LOCATION_SETTINGS_SCHEMA_VERSION)
|
|
1203
|
+
});
|
|
1204
|
+
var locationSettingsKVSchema = z.object({
|
|
1205
|
+
sex_restriction: z.string().optional(),
|
|
1206
|
+
is_inventory_location: z.boolean().default(false),
|
|
1207
|
+
room_has_ventilator: z.boolean().default(false)
|
|
1208
|
+
});
|
|
1209
|
+
|
|
1210
|
+
// src/models/location/location-minimal.schema.ts
|
|
1211
|
+
var locationMinimalSchema = locationSchema.omit({
|
|
1212
|
+
_id: true,
|
|
1213
|
+
created_at: true,
|
|
1214
|
+
created_by: true,
|
|
1215
|
+
updated_at: true,
|
|
1216
|
+
updated_by: true
|
|
1217
|
+
});
|
|
1218
|
+
|
|
1219
|
+
// src/models/location/location-partial.schema.ts
|
|
1220
|
+
var locationPartialSchema = locationMinimalSchema.partial();
|
|
1221
|
+
var MEMBER_SCHEMA_VERSION = 1;
|
|
1222
|
+
var memberSchema = z.object({
|
|
1223
|
+
id: z.string().uuid({ message: "id must be a valid UUID" }),
|
|
1224
|
+
user_id: objectIdSchema,
|
|
1225
|
+
organization_id: objectIdSchema,
|
|
1226
|
+
role: z.string().min(1, { message: "role is required" }),
|
|
1227
|
+
created_at: timestampSchema
|
|
1228
|
+
});
|
|
1229
|
+
var MemberMongooseSchema = toMongooseSchema(memberSchema);
|
|
1230
|
+
var MemberModelName = "members";
|
|
1231
|
+
var MemberModel = model(MemberModelName, MemberMongooseSchema);
|
|
1232
|
+
|
|
1233
|
+
// src/models/member/member-minimal.schema.ts
|
|
1234
|
+
var memberMinimalSchema = memberSchema.omit({
|
|
1235
|
+
id: true,
|
|
1236
|
+
created_at: true
|
|
1237
|
+
});
|
|
1238
|
+
|
|
1239
|
+
// src/models/member/member-partial.schema.ts
|
|
1240
|
+
var memberPartialSchema = memberMinimalSchema.partial();
|
|
1241
|
+
var ORGANIZATION_SCHEMA_VERSION = 1;
|
|
1242
|
+
var organizationSchema = z.object({
|
|
1243
|
+
id: z.string().uuid({ message: "id must be a valid UUID" }),
|
|
1244
|
+
name: z.string().min(1, { message: "name is required" }),
|
|
1245
|
+
slug: z.string().min(1, { message: "slug is required" }),
|
|
1246
|
+
logo: z.string().optional(),
|
|
1247
|
+
status: codedConceptSchema,
|
|
1248
|
+
metadata: z.object({
|
|
1249
|
+
description: z.string().optional()
|
|
1250
|
+
}).optional(),
|
|
1251
|
+
settings_id: objectIdSchema,
|
|
1252
|
+
created_at: timestampSchema
|
|
1253
|
+
});
|
|
1254
|
+
var OrganizationMongooseSchema = toMongooseSchema(organizationSchema);
|
|
1255
|
+
var OrganizationModelName = "organizations";
|
|
1256
|
+
var OrganizationModel = model(OrganizationModelName, OrganizationMongooseSchema);
|
|
1257
|
+
var ORGANIZATION_SETTING_FIELDS = [
|
|
1258
|
+
"patient_mrn_length",
|
|
1259
|
+
"patient_mrn_separator",
|
|
1260
|
+
"member_invite_duration"
|
|
1261
|
+
];
|
|
1262
|
+
var ORGANIZATION_SETTINGS_SCHEMA_VERSION = 1;
|
|
1263
|
+
var organizationSettingsSchema = z.object({
|
|
1264
|
+
_id: objectIdSchema,
|
|
1265
|
+
scope: z.string().min(1),
|
|
1266
|
+
options: z.array(
|
|
1267
|
+
settingOptionSchema.refine(
|
|
1268
|
+
(opt) => ORGANIZATION_SETTING_FIELDS.includes(opt.field),
|
|
1269
|
+
{ message: "Invalid field for organization settings" }
|
|
1270
|
+
)
|
|
1271
|
+
),
|
|
1272
|
+
updated_at: timestampSchema,
|
|
1273
|
+
updated_by: z.string(),
|
|
1274
|
+
schema_version: z.number().int().positive().default(ORGANIZATION_SETTINGS_SCHEMA_VERSION)
|
|
1275
|
+
});
|
|
1276
|
+
var organizationSettingsKVSchema = z.object({
|
|
1277
|
+
patient_mrn_length: z.number().default(6),
|
|
1278
|
+
patient_mrn_separator: z.string().default("crn:mrn:separator:dash"),
|
|
1279
|
+
member_invite_duration: z.number().default(7)
|
|
1280
|
+
});
|
|
1281
|
+
|
|
1282
|
+
// src/models/organization/organization-minimal.schema.ts
|
|
1283
|
+
var organizationMinimalSchema = organizationSchema.omit({
|
|
1284
|
+
id: true,
|
|
1285
|
+
created_at: true
|
|
1286
|
+
});
|
|
1287
|
+
|
|
1288
|
+
// src/models/organization/organization-partial.schema.ts
|
|
1289
|
+
var organizationPartialSchema = organizationMinimalSchema.partial();
|
|
1290
|
+
var PATIENT_SCHEMA_VERSION = 1;
|
|
1291
|
+
var patientSchema = z.object({
|
|
1292
|
+
_id: objectIdSchema,
|
|
1293
|
+
organization_id: objectIdSchema,
|
|
1294
|
+
registering_facility_id: objectIdSchema,
|
|
1295
|
+
identifiers: z.array(codedConceptSchema),
|
|
1296
|
+
salutation: z.string().min(1, { message: "salutation is required" }),
|
|
1297
|
+
first_name: z.string().min(1, { message: "first_name is required" }),
|
|
1298
|
+
middle_name: z.string().optional(),
|
|
1299
|
+
last_name: z.string().min(1, { message: "last_name is required" }),
|
|
1300
|
+
title: z.string().optional(),
|
|
1301
|
+
image: z.string().optional(),
|
|
1302
|
+
demographic: demographicSchema,
|
|
1303
|
+
statuses: z.array(codedConceptSchema).nonempty({
|
|
1304
|
+
message: "statuses must contain at least one CodedConcept"
|
|
1305
|
+
}),
|
|
1306
|
+
contacts: z.array(codedConceptSchema).optional(),
|
|
1307
|
+
address: addressSchema,
|
|
1308
|
+
created_at: timestampSchema,
|
|
1309
|
+
created_by: z.string(),
|
|
1310
|
+
updated_at: timestampSchema,
|
|
1311
|
+
updated_by: z.string(),
|
|
1312
|
+
schema_version: z.number().int().positive().default(PATIENT_SCHEMA_VERSION)
|
|
1313
|
+
});
|
|
1314
|
+
var PatientMongooseSchema = toMongooseSchema(patientSchema);
|
|
1315
|
+
var PatientModelName = "patients";
|
|
1316
|
+
var PatientModel = model(PatientModelName, PatientMongooseSchema);
|
|
1317
|
+
|
|
1318
|
+
// src/models/patient/patient-minimal.schema.ts
|
|
1319
|
+
var patientMinimalSchema = patientSchema.omit({
|
|
1320
|
+
_id: true,
|
|
1321
|
+
created_at: true,
|
|
1322
|
+
created_by: true,
|
|
1323
|
+
updated_at: true,
|
|
1324
|
+
updated_by: true,
|
|
1325
|
+
schema_version: true
|
|
1326
|
+
});
|
|
1327
|
+
|
|
1328
|
+
// src/models/patient/patient-partial.schema.ts
|
|
1329
|
+
var patientPartialSchema = patientMinimalSchema.partial();
|
|
1330
|
+
var PATIENT_ADDITIONAL_SCHEMA_VERSION = 1;
|
|
1331
|
+
var patientAdditionalSchema = z.object({
|
|
1332
|
+
id: z.string().uuid({ message: "id must be a valid UUID" }),
|
|
1333
|
+
patient_id: objectIdSchema,
|
|
1334
|
+
type: codedConceptSchema,
|
|
1335
|
+
data: z.union([z.object({}), z.array(z.any())]),
|
|
1336
|
+
created_at: timestampSchema,
|
|
1337
|
+
created_by: z.string(),
|
|
1338
|
+
updated_at: timestampSchema,
|
|
1339
|
+
updated_by: z.string(),
|
|
1340
|
+
schema_version: z.number().int().positive().default(PATIENT_ADDITIONAL_SCHEMA_VERSION)
|
|
1341
|
+
});
|
|
1342
|
+
var PatientAdditionalMongooseSchema = toMongooseSchema(patientAdditionalSchema);
|
|
1343
|
+
var PatientAdditionalModelName = "patient_additionals";
|
|
1344
|
+
var PatientAdditionalModel = model(PatientAdditionalModelName, PatientAdditionalMongooseSchema);
|
|
1345
|
+
|
|
1346
|
+
// src/models/patient-additional/patient-additional-minimal.schema.ts
|
|
1347
|
+
var patientAdditionalMinimalSchema = patientAdditionalSchema.omit({
|
|
1348
|
+
id: true,
|
|
1349
|
+
created_at: true,
|
|
1350
|
+
created_by: true,
|
|
1351
|
+
updated_at: true,
|
|
1352
|
+
updated_by: true,
|
|
1353
|
+
schema_version: true
|
|
1354
|
+
});
|
|
1355
|
+
|
|
1356
|
+
// src/models/patient-additional/patient-additional-partial.schema.ts
|
|
1357
|
+
var patientAdditionalPartialSchema = patientAdditionalMinimalSchema.partial();
|
|
1358
|
+
var STAFF_SCHEMA_VERSION = 1;
|
|
1359
|
+
var staffSchema = z.object({
|
|
1360
|
+
id: z.string().uuid({ message: "id must be a valid UUID" }),
|
|
1361
|
+
team_id: objectIdSchema,
|
|
1362
|
+
user_id: objectIdSchema,
|
|
1363
|
+
type: codedConceptSchema,
|
|
1364
|
+
status: codedConceptSchema,
|
|
1365
|
+
membership_key: z.string().optional(),
|
|
1366
|
+
group: z.string().optional(),
|
|
1367
|
+
subspecialist: z.string().optional(),
|
|
1368
|
+
created_at: timestampSchema,
|
|
1369
|
+
created_by: z.string(),
|
|
1370
|
+
updated_at: timestampSchema,
|
|
1371
|
+
updated_by: z.string(),
|
|
1372
|
+
schema_version: z.number().int().positive().default(STAFF_SCHEMA_VERSION)
|
|
1373
|
+
});
|
|
1374
|
+
var StaffMongooseSchema = toMongooseSchema(staffSchema);
|
|
1375
|
+
var StaffModelName = "staffs";
|
|
1376
|
+
var StaffModel = model(StaffModelName, StaffMongooseSchema);
|
|
1377
|
+
|
|
1378
|
+
// src/models/staff/staff-minimal.schema.ts
|
|
1379
|
+
var staffMinimalSchema = staffSchema.omit({
|
|
1380
|
+
id: true,
|
|
1381
|
+
created_at: true,
|
|
1382
|
+
created_by: true,
|
|
1383
|
+
updated_at: true,
|
|
1384
|
+
updated_by: true,
|
|
1385
|
+
schema_version: true
|
|
1386
|
+
});
|
|
1387
|
+
|
|
1388
|
+
// src/models/staff/staff-partial.schema.ts
|
|
1389
|
+
var staffPartialSchema = staffMinimalSchema.partial();
|
|
1390
|
+
var UNIT_SCHEMA_VERSION = 1;
|
|
1391
|
+
var unitSchema = z.object({
|
|
1392
|
+
_id: objectIdSchema,
|
|
1393
|
+
facility_id: objectIdSchema,
|
|
1394
|
+
department_id: objectIdSchema,
|
|
1395
|
+
name: z.string().min(1, { message: "name is required" }),
|
|
1396
|
+
code: z.string().min(1, { message: "code is required" }),
|
|
1397
|
+
type: codedConceptSchema,
|
|
1398
|
+
statuses: z.array(codedConceptSchema).nonempty({
|
|
1399
|
+
message: "statuses must contain at least one CodedConcept"
|
|
1400
|
+
}),
|
|
1401
|
+
settings_id: objectIdSchema,
|
|
1402
|
+
created_at: timestampSchema,
|
|
1403
|
+
created_by: z.string(),
|
|
1404
|
+
updated_at: timestampSchema,
|
|
1405
|
+
updated_by: z.string(),
|
|
1406
|
+
schema_version: z.number().int().positive().default(UNIT_SCHEMA_VERSION)
|
|
1407
|
+
});
|
|
1408
|
+
var UnitMongooseSchema = toMongooseSchema(unitSchema);
|
|
1409
|
+
var UnitModelName = "units";
|
|
1410
|
+
var UnitModel = model(UnitModelName, UnitMongooseSchema);
|
|
1411
|
+
|
|
1412
|
+
// src/models/unit/unit-minimal.schema.ts
|
|
1413
|
+
var unitMinimalSchema = unitSchema.omit({
|
|
1414
|
+
_id: true,
|
|
1415
|
+
created_at: true,
|
|
1416
|
+
created_by: true,
|
|
1417
|
+
updated_at: true,
|
|
1418
|
+
updated_by: true,
|
|
1419
|
+
schema_version: true
|
|
1420
|
+
});
|
|
1421
|
+
|
|
1422
|
+
// src/models/unit/unit-partial.schema.ts
|
|
1423
|
+
var unitPartialSchema = unitMinimalSchema.partial();
|
|
1424
|
+
var PRACTITIONER_SCHEDULE_SCHEMA_VERSION = 1;
|
|
1425
|
+
var practitionerScheduleSchema = z.object({
|
|
1426
|
+
organization_id: objectIdSchema,
|
|
1427
|
+
facility_id: objectIdSchema,
|
|
1428
|
+
staff_id: objectIdSchema,
|
|
1429
|
+
unit_id: objectIdSchema,
|
|
1430
|
+
type: codedConceptSchema,
|
|
1431
|
+
day: z.union([z.number(), z.string()]).refine((val) => val != null, { message: "day is required" }),
|
|
1432
|
+
_id: objectIdSchema,
|
|
1433
|
+
created_at: timestampSchema.optional(),
|
|
1434
|
+
created_by: z.string().optional(),
|
|
1435
|
+
updated_at: timestampSchema.optional(),
|
|
1436
|
+
updated_by: z.string().optional(),
|
|
1437
|
+
schema_version: z.number().int().positive().default(PRACTITIONER_SCHEDULE_SCHEMA_VERSION)
|
|
1438
|
+
});
|
|
1439
|
+
var PractitionerScheduleMongooseSchema = toMongooseSchema(practitionerScheduleSchema);
|
|
1440
|
+
var PractitionerScheduleModelName = "practitioner_schedules";
|
|
1441
|
+
var PractitionerScheduleModel = model(PractitionerScheduleModelName, PractitionerScheduleMongooseSchema);
|
|
1442
|
+
|
|
1443
|
+
// src/models/practitioner-schedule/practitioner-schedule-minimal.schema.ts
|
|
1444
|
+
var practitionerScheduleMinimalSchema = practitionerScheduleSchema.omit({
|
|
1445
|
+
_id: true,
|
|
1446
|
+
created_at: true,
|
|
1447
|
+
created_by: true,
|
|
1448
|
+
updated_at: true,
|
|
1449
|
+
updated_by: true,
|
|
1450
|
+
schema_version: true
|
|
1451
|
+
});
|
|
1452
|
+
|
|
1453
|
+
// src/models/practitioner-schedule/practitioner-schedule-partial.schema.ts
|
|
1454
|
+
var practitionerSchedulePartialSchema = practitionerScheduleMinimalSchema.partial();
|
|
1455
|
+
var PRACTITIONER_SESSION_SCHEMA_VERSION = 1;
|
|
1456
|
+
var practitionerSessionSchema = z.object({
|
|
1457
|
+
schedule_id: objectIdSchema,
|
|
1458
|
+
staff_id: objectIdSchema,
|
|
1459
|
+
unit_id: objectIdSchema,
|
|
1460
|
+
start: z.string().min(1, { message: "start is required" }),
|
|
1461
|
+
end: z.string().min(1, { message: "end is required" }),
|
|
1462
|
+
max_quota: z.number().int().positive({ message: "max_quota must be a positive integer" }),
|
|
1463
|
+
_id: objectIdSchema,
|
|
1464
|
+
created_at: timestampSchema.optional(),
|
|
1465
|
+
created_by: z.string().optional(),
|
|
1466
|
+
updated_at: timestampSchema.optional(),
|
|
1467
|
+
updated_by: z.string().optional(),
|
|
1468
|
+
schema_version: z.number().int().positive().default(PRACTITIONER_SESSION_SCHEMA_VERSION)
|
|
1469
|
+
});
|
|
1470
|
+
var PractitionerSessionMongooseSchema = toMongooseSchema(practitionerSessionSchema);
|
|
1471
|
+
var PractitionerSessionModelName = "practitioner_sessions";
|
|
1472
|
+
var PractitionerSessionModel = model(PractitionerSessionModelName, PractitionerSessionMongooseSchema);
|
|
1473
|
+
|
|
1474
|
+
// src/models/practitioner-session/practitioner-session-minimal.schema.ts
|
|
1475
|
+
var practitionerSessionMinimalSchema = practitionerSessionSchema.omit({
|
|
1476
|
+
_id: true,
|
|
1477
|
+
created_at: true,
|
|
1478
|
+
created_by: true,
|
|
1479
|
+
updated_at: true,
|
|
1480
|
+
updated_by: true,
|
|
1481
|
+
schema_version: true
|
|
1482
|
+
});
|
|
1483
|
+
|
|
1484
|
+
// src/models/practitioner-session/practitioner-session-partial.schema.ts
|
|
1485
|
+
var practitionerSessionPartialSchema = practitionerSessionMinimalSchema.partial();
|
|
1486
|
+
var KSM_SCHEMA_VERSION = 1;
|
|
1487
|
+
var ksmSchema = z.object({
|
|
1488
|
+
id: z.string().uuid({ message: "id must be a valid UUID" }),
|
|
1489
|
+
organization_id: objectIdSchema,
|
|
1490
|
+
facility_id: objectIdSchema,
|
|
1491
|
+
name: z.string().min(1, { message: "name is required" }),
|
|
1492
|
+
subspecialist: z.array(z.string()).min(1, { message: "subspecialist is required" }),
|
|
1493
|
+
created_at: timestampSchema,
|
|
1494
|
+
created_by: z.string().min(1, { message: "created_by is required" }),
|
|
1495
|
+
updated_at: timestampSchema.nullable(),
|
|
1496
|
+
updated_by: z.string().nullable(),
|
|
1497
|
+
schema_version: z.number().int().positive().default(KSM_SCHEMA_VERSION)
|
|
1498
|
+
});
|
|
1499
|
+
var KsmMongooseSchema = toMongooseSchema(ksmSchema);
|
|
1500
|
+
var KsmModelName = "medical_staff_groups";
|
|
1501
|
+
var KsmModel = model(KsmModelName, KsmMongooseSchema);
|
|
1502
|
+
|
|
1503
|
+
// src/models/ksm/ksm-minimal.schema.ts
|
|
1504
|
+
var ksmMinimalSchema = ksmSchema.omit({
|
|
1505
|
+
id: true,
|
|
1506
|
+
created_at: true,
|
|
1507
|
+
created_by: true,
|
|
1508
|
+
updated_at: true,
|
|
1509
|
+
updated_by: true,
|
|
1510
|
+
schema_version: true
|
|
1511
|
+
});
|
|
1512
|
+
|
|
1513
|
+
// src/models/ksm/ksm-partial.schema.ts
|
|
1514
|
+
var ksmPartialSchema = ksmMinimalSchema.partial();
|
|
1515
|
+
var isoDatetimeRegex3 = /^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(\.\d+)?(Z|[+-]\d{2}:?\d{2})$/;
|
|
1516
|
+
var PAYER_SCHEMA_VERSION = 1;
|
|
1517
|
+
var payerSchema = z.object({
|
|
1518
|
+
id: z.string().uuid({ message: "id must be a valid UUID" }),
|
|
1519
|
+
organization_id: objectIdSchema,
|
|
1520
|
+
facility_id: objectIdSchema,
|
|
1521
|
+
code: z.string().min(1, { message: "code is required" }),
|
|
1522
|
+
name: z.string().min(1, { message: "name is required" }),
|
|
1523
|
+
category: codedConceptSchema,
|
|
1524
|
+
type: z.string().min(1, { message: "type is required" }),
|
|
1525
|
+
contacts: z.array(codedConceptSchema),
|
|
1526
|
+
statuses: z.array(codedConceptSchema),
|
|
1527
|
+
banks: z.array(
|
|
1528
|
+
z.object({
|
|
1529
|
+
name: z.string().min(1, { message: "bank name is required" }),
|
|
1530
|
+
account: z.string().min(1, { message: "bank account is required" }),
|
|
1531
|
+
number: z.string().min(1, { message: "bank number is required" })
|
|
1532
|
+
})
|
|
1533
|
+
),
|
|
1534
|
+
variations: z.array(
|
|
1535
|
+
z.object({
|
|
1536
|
+
code: z.string().min(1, { message: "variation code is required" }),
|
|
1537
|
+
name: z.string().min(1, { message: "variation name is required" }),
|
|
1538
|
+
description: z.string().optional(),
|
|
1539
|
+
start: z.string().refine((val) => isoDatetimeRegex3.test(val), { message: "variation start must be a valid ISO 8601 datetime" }),
|
|
1540
|
+
end: z.string().optional().refine((val) => !val || isoDatetimeRegex3.test(val), { message: "variation end must be a valid ISO 8601 datetime" }),
|
|
1541
|
+
contacts: z.array(codedConceptSchema).optional(),
|
|
1542
|
+
documents: z.array(z.string()).optional(),
|
|
1543
|
+
statuses: z.array(codedConceptSchema),
|
|
1544
|
+
banks: z.array(
|
|
1545
|
+
z.object({
|
|
1546
|
+
name: z.string().min(1, { message: "bank name is required" }),
|
|
1547
|
+
account: z.string().min(1, { message: "bank account is required" }),
|
|
1548
|
+
number: z.string().min(1, { message: "bank number is required" })
|
|
1549
|
+
})
|
|
1550
|
+
),
|
|
1551
|
+
settings_id: objectIdSchema
|
|
1552
|
+
})
|
|
1553
|
+
),
|
|
1554
|
+
created_at: timestampSchema,
|
|
1555
|
+
created_by: z.string().min(1, { message: "created_by is required" }),
|
|
1556
|
+
updated_at: timestampSchema,
|
|
1557
|
+
updated_by: z.string().min(1, { message: "updated_by is required" }),
|
|
1558
|
+
schema_version: z.number().int().positive().default(PAYER_SCHEMA_VERSION)
|
|
1559
|
+
});
|
|
1560
|
+
var PayerMongooseSchema = toMongooseSchema(payerSchema);
|
|
1561
|
+
var PayerModelName = "payers";
|
|
1562
|
+
var PayerModel = model(PayerModelName, PayerMongooseSchema);
|
|
1563
|
+
var PAYER_SETTING_FIELDS = [
|
|
1564
|
+
"use_header_contact_info",
|
|
1565
|
+
"use_header_bank_info",
|
|
1566
|
+
"use_header_status_info",
|
|
1567
|
+
"rules_drug_formulary",
|
|
1568
|
+
"rules_method",
|
|
1569
|
+
"rules_global_cover_outpatient",
|
|
1570
|
+
"rules_global_cover_emergency",
|
|
1571
|
+
"rules_global_tariff_calculation_date",
|
|
1572
|
+
"rules_global_margin_id",
|
|
1573
|
+
"rules_global_rule_type",
|
|
1574
|
+
"rules_admin_calculate",
|
|
1575
|
+
"rules_admin_min_fee",
|
|
1576
|
+
"rules_admin_max_fee",
|
|
1577
|
+
"rules_admin_before_discount",
|
|
1578
|
+
"rules_admin_covered",
|
|
1579
|
+
"rules_item_restriction_id"
|
|
1580
|
+
];
|
|
1581
|
+
var PAYER_SETTINGS_SCHEMA_VERSION = 1;
|
|
1582
|
+
var payerSettingsSchema = z.object({
|
|
1583
|
+
_id: objectIdSchema,
|
|
1584
|
+
scope: z.string().min(1),
|
|
1585
|
+
options: z.array(
|
|
1586
|
+
settingOptionSchema.refine(
|
|
1587
|
+
(opt) => PAYER_SETTING_FIELDS.includes(opt.field),
|
|
1588
|
+
{ message: "Invalid field for payer settings" }
|
|
1589
|
+
)
|
|
1590
|
+
),
|
|
1591
|
+
updated_at: timestampSchema,
|
|
1592
|
+
updated_by: z.string(),
|
|
1593
|
+
schema_version: z.number().int().positive().default(PAYER_SETTINGS_SCHEMA_VERSION)
|
|
1594
|
+
});
|
|
1595
|
+
var payerSettingsKVSchema = z.object({
|
|
1596
|
+
use_header_contact_info: z.boolean().default(false),
|
|
1597
|
+
use_header_bank_info: z.boolean().default(false),
|
|
1598
|
+
use_header_status_info: z.boolean().default(true),
|
|
1599
|
+
rules_drug_formulary: z.string().optional(),
|
|
1600
|
+
rules_method: z.string().optional(),
|
|
1601
|
+
rules_global_cover_outpatient: z.boolean().default(true),
|
|
1602
|
+
rules_global_cover_emergency: z.boolean().default(true),
|
|
1603
|
+
rules_global_tariff_calculation_date: z.enum(["transaction-date", "billing-date"]).default("transaction-date"),
|
|
1604
|
+
rules_global_margin_id: z.string().optional(),
|
|
1605
|
+
rules_global_rule_type: z.enum(["margin", "plafond"]).default("margin"),
|
|
1606
|
+
rules_admin_calculate: z.boolean().default(false),
|
|
1607
|
+
rules_admin_min_fee: z.number().default(0),
|
|
1608
|
+
rules_admin_max_fee: z.number().default(0),
|
|
1609
|
+
rules_admin_before_discount: z.boolean().default(false),
|
|
1610
|
+
rules_admin_covered: z.boolean().default(true),
|
|
1611
|
+
rules_item_restriction_id: z.string().optional()
|
|
1612
|
+
});
|
|
1613
|
+
|
|
1614
|
+
// src/models/payer/payer-minimal.schema.ts
|
|
1615
|
+
var payerMinimalSchema = payerSchema.omit({
|
|
1616
|
+
id: true,
|
|
1617
|
+
created_at: true,
|
|
1618
|
+
created_by: true,
|
|
1619
|
+
updated_at: true,
|
|
1620
|
+
updated_by: true,
|
|
1621
|
+
schema_version: true
|
|
1622
|
+
});
|
|
1623
|
+
|
|
1624
|
+
// src/models/payer/payer-partial.schema.ts
|
|
1625
|
+
var payerPartialSchema = payerMinimalSchema.partial();
|
|
1626
|
+
var QUEUE_SCHEMA_VERSION = 1;
|
|
1627
|
+
var queueSchema = z.object({
|
|
1628
|
+
id: z.string().uuid({ message: "id must be a valid UUID" }),
|
|
1629
|
+
organization_id: objectIdSchema,
|
|
1630
|
+
facility_id: objectIdSchema,
|
|
1631
|
+
unit_id: objectIdSchema,
|
|
1632
|
+
payer_type: z.string().min(1, { message: "payer_type is required" }),
|
|
1633
|
+
line: z.array(
|
|
1634
|
+
z.object({
|
|
1635
|
+
queue_number_id: objectIdSchema,
|
|
1636
|
+
queue_number: z.string().min(1, { message: "queue_number is required" }),
|
|
1637
|
+
stage: codedConceptSchema,
|
|
1638
|
+
status: codedConceptSchema,
|
|
1639
|
+
call_count: z.number().int().positive({ message: "call_count must be a positive integer" })
|
|
1640
|
+
})
|
|
1641
|
+
),
|
|
1642
|
+
created_at: timestampSchema,
|
|
1643
|
+
created_by: z.string().min(1, { message: "created_by is required" }),
|
|
1644
|
+
updated_at: timestampSchema,
|
|
1645
|
+
updated_by: z.string().min(1, { message: "updated_by is required" }),
|
|
1646
|
+
schema_version: z.number().int().positive().default(QUEUE_SCHEMA_VERSION)
|
|
1647
|
+
});
|
|
1648
|
+
var QueueMongooseSchema = toMongooseSchema(queueSchema);
|
|
1649
|
+
var QueueModelName = "queues";
|
|
1650
|
+
var QueueModel = model(QueueModelName, QueueMongooseSchema);
|
|
1651
|
+
var QUEUE_SETTING_FIELDS = [
|
|
1652
|
+
"number_length",
|
|
1653
|
+
"call_priority",
|
|
1654
|
+
"call_threshold"
|
|
1655
|
+
];
|
|
1656
|
+
var QUEUE_SETTINGS_SCHEMA_VERSION = 1;
|
|
1657
|
+
var queueSettingsSchema = z.object({
|
|
1658
|
+
_id: objectIdSchema,
|
|
1659
|
+
scope: z.string().min(1),
|
|
1660
|
+
options: z.array(
|
|
1661
|
+
settingOptionSchema.refine(
|
|
1662
|
+
(opt) => QUEUE_SETTING_FIELDS.includes(opt.field),
|
|
1663
|
+
{ message: "Invalid field for queue settings" }
|
|
1664
|
+
)
|
|
1665
|
+
),
|
|
1666
|
+
updated_at: timestampSchema,
|
|
1667
|
+
updated_by: z.string(),
|
|
1668
|
+
schema_version: z.number().int().positive().default(QUEUE_SETTINGS_SCHEMA_VERSION)
|
|
1669
|
+
});
|
|
1670
|
+
var queueSettingsKVSchema = z.object({
|
|
1671
|
+
number_length: z.number().int().positive().nullable().default(null),
|
|
1672
|
+
call_priority: z.string().default("sequence"),
|
|
1673
|
+
call_threshold: z.number().int().positive().default(3)
|
|
1674
|
+
}).refine((data) => validateCode("crn:queue:priority", data.call_priority), {
|
|
1675
|
+
message: "Invalid CodedConcept: system/value combination not found in registry"
|
|
1676
|
+
});
|
|
1677
|
+
|
|
1678
|
+
// src/models/queue/queue-minimal.schema.ts
|
|
1679
|
+
var queueMinimalSchema = queueSchema.omit({
|
|
1680
|
+
id: true,
|
|
1681
|
+
created_at: true,
|
|
1682
|
+
created_by: true,
|
|
1683
|
+
updated_at: true,
|
|
1684
|
+
updated_by: true,
|
|
1685
|
+
schema_version: true
|
|
1686
|
+
});
|
|
1687
|
+
|
|
1688
|
+
// src/models/queue/queue-partial.schema.ts
|
|
1689
|
+
var queuePartialSchema = queueMinimalSchema.partial();
|
|
1690
|
+
var QUEUE_EVENT_LOG_SCHEMA_VERSION = 1;
|
|
1691
|
+
var queueEventLogSchema = z.object({
|
|
1692
|
+
id: z.string().uuid({ message: "id must be a valid UUID" }),
|
|
1693
|
+
queue_number_id: objectIdSchema,
|
|
1694
|
+
queue_number: z.string().min(1, { message: "queue_number is required" }),
|
|
1695
|
+
events: z.array(codedConceptSchema),
|
|
1696
|
+
count: z.number().int().positive({ message: "count must be a positive integer" }),
|
|
1697
|
+
created_at: timestampSchema,
|
|
1698
|
+
created_by: z.string().min(1, { message: "created_by is required" }),
|
|
1699
|
+
updated_at: timestampSchema,
|
|
1700
|
+
updated_by: z.string().min(1, { message: "updated_by is required" }),
|
|
1701
|
+
schema_version: z.number().int().positive().default(QUEUE_EVENT_LOG_SCHEMA_VERSION)
|
|
1702
|
+
});
|
|
1703
|
+
var QueueEventLogMongooseSchema = toMongooseSchema(queueEventLogSchema);
|
|
1704
|
+
var QueueEventLogModelName = "queue_event_logs";
|
|
1705
|
+
var QueueEventLogModel = model(QueueEventLogModelName, QueueEventLogMongooseSchema);
|
|
1706
|
+
|
|
1707
|
+
// src/models/queue-event-log/queue-event-log-minimal.schema.ts
|
|
1708
|
+
var queueEventLogMinimalSchema = queueEventLogSchema.omit({
|
|
1709
|
+
id: true,
|
|
1710
|
+
created_at: true,
|
|
1711
|
+
created_by: true,
|
|
1712
|
+
updated_at: true,
|
|
1713
|
+
updated_by: true,
|
|
1714
|
+
schema_version: true
|
|
1715
|
+
});
|
|
1716
|
+
|
|
1717
|
+
// src/models/queue-event-log/queue-event-log-partial.schema.ts
|
|
1718
|
+
var queueEventLogPartialSchema = queueEventLogMinimalSchema.partial();
|
|
1719
|
+
var isoDatetimeRegex4 = /^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(\.\d+)?(Z|[+-]\d{2}:?\d{2})$/;
|
|
1720
|
+
var QUEUE_NUMBER_SCHEMA_VERSION = 1;
|
|
1721
|
+
var queueNumberSchema = z.object({
|
|
1722
|
+
id: z.string().uuid({ message: "id must be a valid UUID" }),
|
|
1723
|
+
organization_id: objectIdSchema,
|
|
1724
|
+
facility_id: objectIdSchema,
|
|
1725
|
+
patient_id: objectIdSchema,
|
|
1726
|
+
metadata: z.object({
|
|
1727
|
+
payer_type: z.string().min(1, { message: "payer_type is required" }),
|
|
1728
|
+
unit_id: objectIdSchema,
|
|
1729
|
+
practitioner_id: objectIdSchema,
|
|
1730
|
+
date: z.string().refine((val) => isoDatetimeRegex4.test(val), {
|
|
1731
|
+
message: "date must be a valid ISO 8601 datetime"
|
|
1732
|
+
}),
|
|
1733
|
+
session: z.string().min(1, { message: "session is required" })
|
|
1734
|
+
}),
|
|
1735
|
+
sequence: z.number().int().positive({ message: "sequence must be a positive integer" }),
|
|
1736
|
+
prefix: z.string().min(1, { message: "prefix is required" }),
|
|
1737
|
+
number: z.string().min(1, { message: "number is required" }),
|
|
1738
|
+
created_at: timestampSchema,
|
|
1739
|
+
created_by: z.string().min(1, { message: "created_by is required" }),
|
|
1740
|
+
updated_at: timestampSchema,
|
|
1741
|
+
updated_by: z.string().min(1, { message: "updated_by is required" }),
|
|
1742
|
+
expired_at: z.string().refine((val) => isoDatetimeRegex4.test(val), {
|
|
1743
|
+
message: "expired_at must be a valid ISO 8601 datetime"
|
|
1744
|
+
}),
|
|
1745
|
+
schema_version: z.number().int().positive().default(QUEUE_NUMBER_SCHEMA_VERSION)
|
|
1746
|
+
});
|
|
1747
|
+
var QueueNumberMongooseSchema = toMongooseSchema(queueNumberSchema);
|
|
1748
|
+
var QueueNumberModelName = "queue_numbers";
|
|
1749
|
+
var QueueNumberModel = model(
|
|
1750
|
+
QueueNumberModelName,
|
|
1751
|
+
QueueNumberMongooseSchema
|
|
1752
|
+
);
|
|
1753
|
+
var QUEUE_NUMBER_SETTING_FIELDS = [
|
|
1754
|
+
"use_header_contact_info",
|
|
1755
|
+
"use_header_bank_info",
|
|
1756
|
+
"use_header_status_info",
|
|
1757
|
+
"rules_drug_formulary",
|
|
1758
|
+
"rules_method",
|
|
1759
|
+
"rules_global_cover_outpatient",
|
|
1760
|
+
"rules_global_cover_emergency",
|
|
1761
|
+
"rules_global_tariff_calculation_date",
|
|
1762
|
+
"rules_global_margin_id",
|
|
1763
|
+
"rules_global_rule_type",
|
|
1764
|
+
"rules_admin_calculate",
|
|
1765
|
+
"rules_admin_min_fee",
|
|
1766
|
+
"rules_admin_max_fee",
|
|
1767
|
+
"rules_admin_before_discount",
|
|
1768
|
+
"rules_admin_covered",
|
|
1769
|
+
"rules_item_restriction_id"
|
|
1770
|
+
];
|
|
1771
|
+
var QUEUE_NUMBER_SETTINGS_SCHEMA_VERSION = 1;
|
|
1772
|
+
var queueNumberSettingsSchema = z.object({
|
|
1773
|
+
_id: objectIdSchema,
|
|
1774
|
+
scope: z.string().min(1),
|
|
1775
|
+
options: z.array(
|
|
1776
|
+
settingOptionSchema.refine(
|
|
1777
|
+
(opt) => QUEUE_NUMBER_SETTING_FIELDS.includes(opt.field),
|
|
1778
|
+
{ message: "Invalid field for queue number settings" }
|
|
1779
|
+
)
|
|
1780
|
+
),
|
|
1781
|
+
updated_at: timestampSchema,
|
|
1782
|
+
updated_by: z.string(),
|
|
1783
|
+
schema_version: z.number().int().positive().default(QUEUE_NUMBER_SETTINGS_SCHEMA_VERSION)
|
|
1784
|
+
});
|
|
1785
|
+
var queueNumberSettingsKVSchema = z.object({
|
|
1786
|
+
use_header_contact_info: z.boolean().default(false),
|
|
1787
|
+
use_header_bank_info: z.boolean().default(false),
|
|
1788
|
+
use_header_status_info: z.boolean().default(true),
|
|
1789
|
+
rules_drug_formulary: z.string().optional(),
|
|
1790
|
+
rules_method: z.string().optional(),
|
|
1791
|
+
rules_global_cover_outpatient: z.boolean().default(true),
|
|
1792
|
+
rules_global_cover_emergency: z.boolean().default(true),
|
|
1793
|
+
rules_global_tariff_calculation_date: z.enum(["transaction-date", "billing-date"]).default("transaction-date"),
|
|
1794
|
+
rules_global_margin_id: z.string().optional(),
|
|
1795
|
+
rules_global_rule_type: z.enum(["margin", "plafond"]).default("margin"),
|
|
1796
|
+
rules_admin_calculate: z.boolean().default(false),
|
|
1797
|
+
rules_admin_min_fee: z.number().default(0),
|
|
1798
|
+
rules_admin_max_fee: z.number().default(0),
|
|
1799
|
+
rules_admin_before_discount: z.boolean().default(false),
|
|
1800
|
+
rules_admin_covered: z.boolean().default(true),
|
|
1801
|
+
rules_item_restriction_id: z.string().optional()
|
|
1802
|
+
});
|
|
1803
|
+
|
|
1804
|
+
// src/models/queue-number/queue-number-minimal.schema.ts
|
|
1805
|
+
var queueNumberMinimalSchema = queueNumberSchema.omit({
|
|
1806
|
+
id: true,
|
|
1807
|
+
created_at: true,
|
|
1808
|
+
created_by: true,
|
|
1809
|
+
updated_at: true,
|
|
1810
|
+
updated_by: true,
|
|
1811
|
+
expired_at: true,
|
|
1812
|
+
schema_version: true
|
|
1813
|
+
});
|
|
1814
|
+
|
|
1815
|
+
// src/models/queue-number/queue-number-partial.schema.ts
|
|
1816
|
+
var queueNumberPartialSchema = queueNumberMinimalSchema.partial();
|
|
1817
|
+
|
|
1818
|
+
export { ASSIGNMENT_SCHEMA_VERSION, AssignmentModel, AssignmentMongooseSchema, DEPARTMENT_SCHEMA_VERSION, DepartmentModel, DepartmentMongooseSchema, FACILITY_SCHEMA_VERSION, FACILITY_SETTINGS_SCHEMA_VERSION, FacilityModel, FacilityMongooseSchema, KSM_SCHEMA_VERSION, KsmModel, KsmMongooseSchema, LOCATION_SCHEMA_VERSION, LOCATION_SETTINGS_SCHEMA_VERSION, LocationModel, LocationMongooseSchema, MEMBER_SCHEMA_VERSION, MemberModel, MemberMongooseSchema, ORGANIZATION_SCHEMA_VERSION, ORGANIZATION_SETTINGS_SCHEMA_VERSION, OrganizationModel, OrganizationMongooseSchema, PATIENT_ADDITIONAL_SCHEMA_VERSION, PATIENT_SCHEMA_VERSION, PAYER_SCHEMA_VERSION, PAYER_SETTINGS_SCHEMA_VERSION, PRACTITIONER_SCHEDULE_SCHEMA_VERSION, PRACTITIONER_SESSION_SCHEMA_VERSION, PatientAdditionalModel, PatientAdditionalMongooseSchema, PatientModel, PatientMongooseSchema, PayerModel, PayerMongooseSchema, PractitionerScheduleModel, PractitionerScheduleMongooseSchema, PractitionerSessionModel, PractitionerSessionMongooseSchema, QUEUE_EVENT_LOG_SCHEMA_VERSION, QUEUE_NUMBER_SCHEMA_VERSION, QUEUE_NUMBER_SETTINGS_SCHEMA_VERSION, QUEUE_SCHEMA_VERSION, QUEUE_SETTINGS_SCHEMA_VERSION, QueueEventLogModel, QueueEventLogMongooseSchema, QueueModel, QueueMongooseSchema, QueueNumberModel, QueueNumberMongooseSchema, STAFF_SCHEMA_VERSION, StaffModel, StaffMongooseSchema, UNIT_SCHEMA_VERSION, USER_SCHEMA_VERSION, USER_SETTINGS_SCHEMA_VERSION, UnitModel, UnitMongooseSchema, UserModel, UserMongooseSchema, addressSchema, apiResponseSchema, assignmentMinimalSchema, assignmentPartialSchema, assignmentSchema, codedConceptSchema, demographicSchema, departmentMinimalSchema, departmentPartialSchema, departmentSchema, facilityMinimalSchema, facilityPartialSchema, facilitySchema, facilitySettingsKVSchema, facilitySettingsSchema, ksmMinimalSchema, ksmPartialSchema, ksmSchema, locationMinimalSchema, locationPartialSchema, locationSchema, locationSettingsKVSchema, locationSettingsSchema, memberMinimalSchema, memberPartialSchema, memberSchema, metadataSchema, objectIdSchema, organizationMinimalSchema, organizationPartialSchema, organizationSchema, organizationSettingsKVSchema, organizationSettingsSchema, patientAdditionalMinimalSchema, patientAdditionalPartialSchema, patientAdditionalSchema, patientMinimalSchema, patientPartialSchema, patientSchema, payerMinimalSchema, payerPartialSchema, payerSchema, payerSettingsKVSchema, payerSettingsSchema, practitionerScheduleMinimalSchema, practitionerSchedulePartialSchema, practitionerScheduleSchema, practitionerSessionMinimalSchema, practitionerSessionPartialSchema, practitionerSessionSchema, queueEventLogMinimalSchema, queueEventLogPartialSchema, queueEventLogSchema, queueMinimalSchema, queueNumberMinimalSchema, queueNumberPartialSchema, queueNumberSchema, queueNumberSettingsKVSchema, queueNumberSettingsSchema, queuePartialSchema, queueSchema, queueSettingsKVSchema, queueSettingsSchema, settingOptionSchema, settingOptionTypeSchema, singleResourceResponseSchema, staffMinimalSchema, staffPartialSchema, staffSchema, timestampSchema, unitMinimalSchema, unitPartialSchema, unitSchema, userMinimalSchema, userPartialSchema, userSchema, userSettingsKVSchema, userSettingsSchema };
|
|
1819
|
+
//# sourceMappingURL=index.mjs.map
|
|
1820
|
+
//# sourceMappingURL=index.mjs.map
|