The Passes screen lives atDocumentation Index
Fetch the complete documentation index at: https://docs.encoreos.io/llms.txt
Use this file to discover all available pages before exploring further.
/rh/passes and provides a searchable, filterable list of resident pass requests with the ability to create new pass requests.
Overview
The page renders a header with a “New Pass Request” button, a freetext search input, and two select dropdowns for filtering by Status and Type. Pass status and type options are loaded dynamically from the picklistspass_status and pass_type via usePicklistItems. The PassesTable component renders the filtered list. Clicking “New Pass Request” opens the PassDialog modal, which renders PassForm. The form requires an active episode (status admitted), a pass type, start and end datetimes, a destination (minimum 3 characters), and a purpose (minimum 10 characters). Contact person and contact phone are optional. Phase eligibility is checked via usePassEligibility for the selected episode; if the episode is ineligible, the form shows a destructive alert and disables submission.
Who it’s for
RequiresRH_PERMISSIONS.DASHBOARD_VIEW (rh.dashboard.view) via the parent RHViewGuard. No additional permission gate is on this route in rh.tsx.
Before you start
Hold therh.dashboard.view permission. At least one resident episode with status admitted must exist to create a new pass request.
Steps
Filter the list
Use the search box to search by text. Use the Status dropdown to filter by pass status and the Type dropdown to filter by pass type.
Select a resident episode
Choose an admitted episode from the “Resident Episode” dropdown. The form checks eligibility and shows the current phase and allowed pass types.
Complete the form
Select a pass type (only allowed types are enabled), enter start and end datetimes, destination, and purpose. Optionally add contact person and phone.
Key concepts
Pass eligibility
Pass eligibility
When an episode is selected in the form,
usePassEligibility returns eligible (boolean), currentPhase (string), allowedTypes (array of pass type values), and reason (shown when ineligible). The form blocks submission when eligible is false.Pass type labels
Pass type labels
The form maps internal pass type codes to labels:
day_pass → “Day Pass”, overnight_pass → “Overnight Pass”, job_interview → “Job Interview”, housing_search → “Housing Search”, other → “Other”.Related
Recovery Housing
Recovery Housing references and overview.
Governance & parity
Documentation coverage and governance.
This page documents shipped product behavior. It is not medical, legal, or
billing advice. Verify against your organization’s policies and applicable
regulations before using it for clinical, compliance, or billing decisions.
Protected health information (PHI) shown in the product is governed by your
tenant’s access controls and is never exposed in this documentation.
Documentation sources
Documentation sources
- src/routes/rh.tsx
- src/cores/rh/pages/PassesPage.tsx
- src/cores/rh/components/forms/PassDialog.tsx
- src/cores/rh/components/forms/PassForm.tsx