Skip to content

feat: 802 combobox - #852

Open
jarred-ritense wants to merge 3 commits into
next-minorfrom
feature/802-combobox
Open

feat: 802 combobox#852
jarred-ritense wants to merge 3 commits into
next-minorfrom
feature/802-combobox

Conversation

@jarred-ritense

Copy link
Copy Markdown
Contributor

Describe the changes

Link to the related Github issue: generiekzaakafhandelcomponent/gzac-issues#802

Specify the code branch location:

Relevant comments:

Breaking changes

  • [ x] The contribution only contains changes that are not breaking.

Documentation

  • Release notes have been written for these changes.

New features or changes that have been introduced have been documented.

  • [ x] Yes
  • Not applicable

Tests

Unit tests have been added that cover these changes

  • Yes
  • Not applicable

Integration tests have been added that cover these changes

  • Yes
  • Not applicable

Describe the testing steps

  • Step 1
  • Step 2
  • Step 3

Security

The Secure by Design principle has been applied to these changes

  • Yes
  • Not applicable

Added or changed REST API endpoints have authentication and authorization in place

  • Yes
  • Not applicable

Valtimo access control checks have been implemented

  • Yes
  • Not applicable

Dependencies

Newly added dependencies do not introduce known vulnerabilities/CVE's and are in line with the Valtimo license

  • Yes
  • Not applicable

@coderabbitai

coderabbitai Bot commented Jul 27, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

📝 Walkthrough

Summary by CodeRabbit

  • New Features
    • Replaced legacy dropdowns and select fields with searchable combo boxes in process progress and migration workflows.
    • Added clearer labels, placeholders, loading states, and selection behavior.
    • Improved process migration selections for definitions, versions, and task mappings.
    • Selections now stay synchronized when data loads, diagrams update, or migrations complete.

Walkthrough

The case progress process selector was migrated to a Carbon combo box, with selection handling updated to extract process instance identifiers from list items. The migration screen replaced native selects with combo boxes for definitions, versions, and task mappings. Migration component state now maintains combo box items, refreshes selections during loading and migration, and caches filtered task mapping options. The migration module imports Carbon’s combo box module.

🚥 Pre-merge checks | ✅ 2
✅ Passed checks (2 passed)
Check name Status Explanation
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch feature/802-combobox

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@jarred-ritense
jarred-ritense marked this pull request as ready for review July 28, 2026 08:31
@jarred-ritense
jarred-ritense requested a review from a team as a code owner July 28, 2026 08:31

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1


ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro Plus

Run ID: b317145c-88da-422f-bdb6-5e73c41c7032

📥 Commits

Reviewing files that changed from the base of the PR and between 675b51b and ac0ddc2.

📒 Files selected for processing (5)
  • frontend/projects/valtimo/case/src/lib/components/case-detail/tab/progress/progress.component.html
  • frontend/projects/valtimo/case/src/lib/components/case-detail/tab/progress/progress.component.ts
  • frontend/projects/valtimo/migration/src/lib/migration.component.html
  • frontend/projects/valtimo/migration/src/lib/migration.component.ts
  • frontend/projects/valtimo/migration/src/lib/migration.module.ts

Comment on lines 149 to 154
this.processService
.getProcessDefinitionVersions(key)
.subscribe((processDefinitionVersions: ProcessDefinition[]) => {
this.selectedVersions[type] = processDefinitionVersions;
this.refreshVersionItems(type);
});

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🎯 Functional Correctness | 🟠 Major | ⚡ Quick win

Discard stale version responses.

Selecting definition A and then B can let A’s slower request overwrite B’s version list. That can subsequently load a version unrelated to the displayed definition.

Proposed fix
         .getProcessDefinitionVersions(key)
         .subscribe((processDefinitionVersions: ProcessDefinition[]) => {
+          if (this.fields[type].definition !== key) {
+            return;
+          }
           this.selectedVersions[type] = processDefinitionVersions;
           this.refreshVersionItems(type);
         });
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
this.processService
.getProcessDefinitionVersions(key)
.subscribe((processDefinitionVersions: ProcessDefinition[]) => {
this.selectedVersions[type] = processDefinitionVersions;
this.refreshVersionItems(type);
});
this.processService
.getProcessDefinitionVersions(key)
.subscribe((processDefinitionVersions: ProcessDefinition[]) => {
if (this.fields[type].definition !== key) {
return;
}
this.selectedVersions[type] = processDefinitionVersions;
this.refreshVersionItems(type);
});

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.

1 participant