- [x] [Patient files selector] Add instructions to select the files to attach to the letter - [x] [Panels/Modals] add the patient name / visit info at the top under the navbar so they don't get confused if going back and forth and put bad data in the wrong visit / patient - [x] [Letter viewer] Show the attachments that were sent with the letter - [x] [Visit modal] Form data is not being cleared when pressing the back button - [x] [Visit panel] provider should be sticky to patient like referring doctor - [x] [Appointments modal] Selecting a visit that has been finalized, should show the loading toast - [x] [Anesthesia form] Remove the confusing field that shows when 'summarize medications' is OFF - [x] [Appointments selector] filter for providers - [x] [Appointments selector] search filter for patient name OR procedure name - [x] [Appointments selector] display the procedure name - [x] [Select fields] Improve the UI of the 'Done' button - [x] [PIN Code] Require PIN to delete letter - [x] [Procedure prep] Remove the prep form from the Procedure page - [x] [Procedure prep] Put the prep form on the top of the procedure panel so it is 'shared' across all of the procedures they are doing - [x] [Prep form] make consent signed and timeout sticky - [x] [Anesthesia form] Make anesthesia assistant a multi-select field with options that are customizable - [x] [Bug - Frontend] Fix issue with creating/updating option not updating the data source correctly with a :value key causing nils - [x] [Bug - Backend] Fix sync ops syncing not being global - [x] [Options/Snippets modal] Show loader when archiving one - [x] [Product Select field] Show an X on the field so people know they can update / clear it - [x] [Visit saving page] add a small delay because sometimes it seems like the data is not saved when returning back to the visit page - [x] [Settings] Show loader when creating a Stripe billing portal session - [x] [Data sync] add button in settings to clear all cached data and re-sync it - [x] [Internet] when internet goes out, show a banner - [x] [Users] Fetch assistants on app load because they are used in the visit panel - [x] [Appointments selector] Store the provider-id in local storage - [x] [Mobile UX] Disable isSearchable on react select if the field is not async - [x] [Treatment planning UI/UX] Selecting the codes was confusing for Brian. He was trying to select it 4 times which was toggling it ON/OFF each time. - [x] [All on x procedure] make the arch incisions optional - [x] [All on x procedure] split arch incision options per arch (i.e. maxillary: Crestal-palatal. mandiular: Crestal) - [x] [Options] Add 'periosteal suture' to the membrane fixation options. - [x] [Perio eval] I think that since we are inside the Perio Evaluation we could take the word 'Periodontal' out of the bone loss and pocketing fields - [x] [Finding fields] Canine Dental Classification ⇒ Canine Classification - [x] [Finding Fields] Molar Dental Classification ⇒ Molar Classification - [x] [Finding fields] Excursion ⇒ Lateral Excursion - [x] [Perio eval] Reorder the perio findings in the Periodontal Findings section to flow better - [x] [Occlusion eval] add Mobility summary to the Occlusion Assessment - [x] [Occlusion eval] Make overbite and overjet 1/4 width, then to the right you have Maximum Opening and First Tooth Contact - [x] [TMJ Eval] move the TMJ Crepitus next to the TMJ Clicking and then move the Deviation up so we only have 2 rows. - [x] [TMJ Eval] remove TMJ pole - [x] [Finding fields] add TMJ Medial Pole Pain TMJ Lateral Pole Pain (absent or present) - [x] [TMJ Eval form] add TMJ Medial Pole Pain TMJ Lateral Pole Pain (absent or present) - [x] [Form fields] Support for disabled-values which can use vars from the form-state. - [x] [Finding fields] Attached gingiva, Buccal atrophy, Gingiva tone, Gingival display, Lingual/Palatal atrophy, Vertical atrophy: The same tooth can't have more than one. If none on a tooth, then grey it out on the minimal and adequate. That will assist them in the faster data entry