LG-10405: Add state dropdown#8819
LG-10405: Add state dropdown#8819tomas-nava wants to merge 40 commits intotbradley/po-search-aggregate-prfrom
Conversation
…pplication.yml (#8803) * LG-10288: remove duplicated entries. * changelog: Internal, Document authentication, Clean up duplicated config entries (LG-10288)
changelog: Internal, Maintenance, Remove enabled rewrite_oidc_request_prompt feature flag
…document is not an ID card type (#8789) * display error messages * changelog: Bug Fixes, Docauth, block submission of non-ids * fix build * add testing for unsupported doc error message and log * refactor in response to feedback * clean up variable names in CaptureAttemptMetadata
…#8808) * Add new blank manual entry page behind a flag changelog: User-Facing Improvements, In-person full address entry, Add scaffolding for manual address entry * Remove unnecessary code * Remove unused effect hook
… the number of attempts using the acuant SDK before the fallback to the native camera (#8793)
* New GettingStartedController copied from WelcomeController changelog: User-facing Improvements, Identity Verification, New Getting Started experience behind A/B test * Remove StepIndicator from GettingStartedController * Add GettingStartedAbTestConcern and before action in WelcomeController * Specs for ABTest behavior * Add config flag and ABTestBucket. * Update getting_started_controller_spec and analytics * Add agreement checkbox and specs * Change the setup in getting_started_ab_test_concern_spec * Remove unneeded components from Getting Started template and add feature spec * Add new translation keys * Add new translation text and page formatting * Register both welcome and agreement steps in DocAuthLog * Lint * Test agreement checkbox in getting started feature spec * Remove unneeded locals when rendering show in WelcomeController * Add Agreement feature specs and make them pass * I18n lint * Clean up Funnel::DocAuth::RegisterStep code layout * Replace no_sp_name with APP_NAME when there's no SP * Add show template spec and external_redirect analytics spec Fix help center link by adding entry to MarketingSite * Update spec to match analytics arg change * Change A/B test buckets to :welcome and :getting_started instead of :default and :new * Use FakeABTestBucket to avoid any_instance stub * Only redirect if bucket is :getting_started, stay on Welcome for all other values --------- Co-authored-by: John Maxwell <john.maxwell@gsa.gov> Co-authored-by: Jessica Dembe <jessica.dembe@gsa.gov> Co-authored-by: Alexander Bradley <alexander.bradley@gsa.gov>
…hen TMx is disabled (#8809) When ThreatMetrix decisioning is not enabled we do not put users through the fraud review process after they enter their GPO code. This requires clearing out the fraud review columns on their profile. Previously, this was done by explicitly overwriting the fraud review columns on their profile. We are trying to move away from this pattern and move these methods into the profile. While we were explicitly overwriting the columns we missed that we need to also overwrite `fraud_pending_reason` which was added later than the other columns. This commit adds a method to the profile for activating the profile when fraud review is not necessary. That method is used in the verify form under these conditions instead of explicitly modifying the profile. [skip changelog]
…celed (#8805) * LG-10167: Delete phone no when enrollment is canceled changelog: Internal, In-person proofing, Delete phone number when enrollment cancelled
* changelog: Improvements, Scanning, Add ECR scans
* Use ?? to simplify label function * Make enum uppercase, use String.toLowerCase() * Remove AcuantDocumentTypeLabel because now the strings are lowercase --------- Co-authored-by: Andrew Duthie <aduth@users.noreply.github.com>
…://github.com/18F/identity-idp into tomas/lg-10405-add-state-dropdown
…d full address PO search form
… with ValidatedField React component
…troller (#8812) The please call controller is used to instruct users who are pending fraud review to contact Login.gov to finish verification. This controller should only be accessible to users who are fraud review. This commit adds a before action to redirect users in the following scenarios: 1. The user is not fraud review pending 2. The user has been fraud rejected (these users get a different message rendered by a different controller) This commit also fixes a latent 500 error on this controller. A user who signs in but is not fraud pending would encounter a `NoMethodError` at this line: ```ruby pending_at = current_user.fraud_review_pending_profile.fraud_review_pending_at ``` [skip changelog]
…es (#8814) This commit makes the first change to switch over to the new `fraud_pending_reason` column. It reads from the column instead of the `fraud_review_pending_at` timestamp to determine if a profile is fraud review pending. This will allow us to stop writing to the `fraud_review_pending_at` timestamp until the user actually enters the fraud review workflow and go back and make the value nil for users who have not entered fraud review. Eventually we will need to consider the presence of `fraud_pending_reason` and absence of `fraud_review_pending_at` as a new state (i.e. the user has not started fraud review but is eligible to start fraud review once they verify their address). That is out of scope for this PR which is intended to switch the reads to make that new state possible in a future release. changelog: Internal, Profile State, The code that computes whether a user is fraud review pending was changed to compute the fraud review pending status based off of the fraud_pending_reason column and fraud_rejection_at column to remove the fraud_review_pending_at column from the computation and allow the way that column is written to be changed in a future deploy.
…as/lg-10405-add-state-dropdown
- Helper class we can use to block associated emails changelog: Internal, User suspension, Add code to help normalize emails
sheldon-b
left a comment
There was a problem hiding this comment.
Nice! This looks good. Could we merge the new select input component into main in its own PR? Otherwise the PR to add the new full-address form is going to be very big and harder to review
app/javascript/packages/document-capture/components/po-search-fallback-select.scss
Show resolved
Hide resolved
app/javascript/packages/document-capture/components/in-person-full-address-search.tsx
Show resolved
Hide resolved
| @@ -0,0 +1,3 @@ | |||
| .usa-input--error.usa-input--error.usa-input--error { | |||
| border-color: #e21c3d; | |||
There was a problem hiding this comment.
Not a blocker, but would like to understand why this is needed. Is the error border not appearing correctly for select fields by default without the extra specificity in the selector?
This would also apply to any input on the document capture step, though I don't know if there's actually anything in practice that would be affected by this currently.
There was a problem hiding this comment.
We noticed that the red border wasn't being displayed on error because the usa-input--error border color was being overridden by usa-select's border color. It wasn't happening on another of our pages with a select because the inclusion of the memorable date component on the same page caused multiple declarations of usa-input--error. This change reproduces that scenario for this implementation of the select.
Missing `event:` named arg results in `wrong number of arguments (given 1, expected 0; required keyword: event)` error. (The spec was stubbing but not calling the original implementation, which is why the tests were green before.) changelog: Bug Fixes, Telephony, Add missing named argument to telephony logging call.
…ure React page (#8820) * LG-10405: Add support for using HTML select elements in document capture React page [skip changelog] * LG-10405: Fix type for registerField * LG-10405: Fix lint issue
…/lg-10405-add-state-dropdown
…ure React page [skip changelog]
8b3959b to
f0723db
Compare
app/javascript/packages/document-capture/components/in-person-full-address-search.tsx
Show resolved
Hide resolved
| } | ||
|
|
||
| setLocationQuery({ | ||
| address: `${addressInput}, ${cityInput}, ${stateInput} ${zipCodeInput}`, |
There was a problem hiding this comment.
why do we include the location data in 2 formats in setLocationQuery? is the api using the singular address but then also the separate pieces?
| if (flowPath !== 'hybrid') { | ||
| e.preventDefault(); | ||
| } | ||
| const selectedLocation = locationResults![id]!; |
There was a problem hiding this comment.
what does this signify locationResults![id]!, i haven't seen this syntax before
|
closing in favor of #8825 – I will address review comments in that PR |
🎫 Ticket
LG-10405
🛠 Summary of changes
Add state select component to the work on #8815
📷 Screenshots
Form with select component
Form showing validation error
Form with selected value