Skip to content

FOUR-22083: Preserve data object select values on refresh#472

Open
eiresendez wants to merge 1 commit into
developfrom
defect/FOUR-22083
Open

FOUR-22083: Preserve data object select values on refresh#472
eiresendez wants to merge 1 commit into
developfrom
defect/FOUR-22083

Conversation

@eiresendez

@eiresendez eiresendez commented Jun 15, 2026

Copy link
Copy Markdown
Contributor

Issue & Reproduction Steps

FOUR-22083 fixes data loss in a dependent Select List after refreshing a task screen.

To reproduce:

  1. Configure a screen with one Select List populated by a data connector.
  2. Configure a second multi-select Select List populated from a request data object, such as albumData.
  3. Add a watcher on the first Select List that runs on screen load and maps the data connector response into albumData.
  4. Start a task, select values in both fields, wait for autosave, then refresh the task page.

Before this fix, the draft still contained the selected values for the dependent Select List, but the component cleared them during initial render because albumData had not been repopulated yet.

Solution

  • Preserve existing Select List values while dataObject options are still pending.
  • Avoid emitting a reset when a dependent dataObject Select List has a draft value but its option source is still null or undefined.
  • Keep the existing reset behavior once options are available and the selected value is truly invalid.
  • Add unit coverage for pending data object options, resolving preserved values after options load, and resetting invalid values after options are available.

How to Test

  • npm run build
  • Manual verification in ProcessMaker:
    1. Build vue-form-elements.
    2. Copy the built dist into the core app's node_modules/@processmaker/vue-form-elements/dist.
    3. Run the core frontend build.
    4. Open the reproduced task screen.
    5. Select values in both dropdowns and wait for autosave.
    6. Refresh the task page.
    7. Confirm the watcher runs on load and the dependent Select List keeps the saved chips.

Related Tickets & Packages

ci:deploy

@eiresendez eiresendez self-assigned this Jun 15, 2026
@processmaker-sonarqube

Copy link
Copy Markdown

@eiresendez

Copy link
Copy Markdown
Contributor Author

Just a heads up: the PR checks are currently blocked by the CI deploy server, not by the package build or tests. So please check this change locally for now.

@eiresendez

Copy link
Copy Markdown
Contributor Author

@CarliPinell @mcraeteisha QA server for testing here:

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants