[Chore/Refactor] SimpleSelect chevron icon state desync and missing notClearable prop #16110

Closed
opened 2026-02-21 19:24:41 -05:00 by yindo · 0 comments
Owner

Originally created by @lyzno1 on GitHub (Aug 13, 2025).

Self Checks

  • I have read the Contributing Guide and Language Policy.
  • This is only for refactoring, if you would like to ask a question, please head to Discussions.
  • I have searched for existing issues search for existing issues, including closed ones.
  • I confirm that I am using English to submit this report, otherwise it will be closed.
  • 【中文用户 & Non English User】请使用英语提交,否则会被关闭 :)
  • Please do not modify this template :) and fill in all the required fields.

Description

The SimpleSelect component has two issues:

  1. Chevron icon state desync: When users click outside to close the dropdown, the chevron icon (v/^) doesn't update correctly - it remains as up arrow (^) even though the dropdown is closed. The icon only updates when clicking the component again. This happens because the component's local state doesn't sync with Headless UI's internal state changes.

  2. Missing notClearable in monitoring interface: The model selection dropdown in the monitoring dashboard allows accidental clearing of selected items.

Motivation

Solution

  • Fix chevron state by using Headless UI's render prop pattern to access actual open state
  • Add notClearable prop to monitoring model selector to prevent accidental deselection

Additional Context

No response

Originally created by @lyzno1 on GitHub (Aug 13, 2025). ### Self Checks - [x] I have read the [Contributing Guide](https://github.com/langgenius/dify/blob/main/CONTRIBUTING.md) and [Language Policy](https://github.com/langgenius/dify/issues/1542). - [x] This is only for refactoring, if you would like to ask a question, please head to [Discussions](https://github.com/langgenius/dify/discussions/categories/general). - [x] I have searched for existing issues [search for existing issues](https://github.com/langgenius/dify/issues), including closed ones. - [x] I confirm that I am using English to submit this report, otherwise it will be closed. - [x] 【中文用户 & Non English User】请使用英语提交,否则会被关闭 :) - [x] Please do not modify this template :) and fill in all the required fields. ### Description The SimpleSelect component has two issues: 1. **Chevron icon state desync**: When users click outside to close the dropdown, the chevron icon (v/^) doesn't update correctly - it remains as up arrow (^) even though the dropdown is closed. The icon only updates when clicking the component again. This happens because the component's local state doesn't sync with Headless UI's internal state changes. 2. **Missing notClearable in monitoring interface**: The model selection dropdown in the monitoring dashboard allows accidental clearing of selected items. ### Motivation ## Solution - Fix chevron state by using Headless UI's render prop pattern to access actual open state - Add notClearable prop to monitoring model selector to prevent accidental deselection ### Additional Context _No response_
yindo added the 💪 enhancement label 2026-02-21 19:24:41 -05:00
yindo closed this issue 2026-02-21 19:24:41 -05:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: langgenius/dify#16110