Skip to content

[$250] Migrate InitialListValueSelectorModal to @react-navigation modal screen #90472

@mountiny

Description

@mountiny

Context

This is a sub-issue of #53493 (Replace modal screens with modals from @react-navigation).

For full background and migration approach, see the triage analysis comment and the sub-issue breakdown comment.

Problem

InitialListValueSelectorModal is currently implemented using react-native-modal, which causes animation inconsistencies on native platforms.

Migration approach (Group 3 — Write to known form draft)

Used via InputWrapper in only one place with a known formID/inputID. The new navigation page writes directly to the Onyx form draft, and FormProvider merges it reactively.

  • File: src/pages/workspace/reports/InitialListValueSelector/InitialListValueSelectorModal.tsx
  • Used by: Only InitialListValueSelectorCreateReportFieldsPage.tsx
  • On select: updateValueInput(initialValue)onInputChange(value === initialValue ? '' : initialValue) (toggle behavior)
  • State destination: Form WORKSPACE_REPORT_FIELDS_FORM, field initialValue

Steps

  1. Create a new @react-navigation modal route for initial list value selection.
  2. Extract the modal content into a standalone screen component.
  3. On selection, write directly to WORKSPACE_REPORT_FIELDS_FORM form draft field initialValue via Onyx (preserving the toggle behavior: if selected value equals current value, write empty string), then navigate back.
  4. Replace the <InitialListValueSelectorModal /> usage with a navigation call.
  5. Test the report fields creation flow on iOS, Android, and web.

Reference

Upwork Automation - Do Not Edit
  • Upwork Job URL: https://www.upwork.com/jobs/~022054512687743799204
  • Upwork Job ID: 2054512687743799204
  • Last Price Increase: 2026-05-20
Issue OwnerCurrent Issue Owner: @ShridharGoel

Metadata

Metadata

Labels

DailyKSv2ExternalAdded to denote the issue can be worked on by a contributorHelp WantedApply this label when an issue is open to proposals by contributors

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions