From 6f1833d291613a75c969ca3ce37918893afbf15d Mon Sep 17 00:00:00 2001 From: Mia Miu Date: Fri, 26 Jun 2026 22:36:14 +1200 Subject: [PATCH] fix: show required marker on legacy select widgets --- .../src/widgets/MultiSelectTreeWidget/component/index.tsx | 3 +++ app/client/src/widgets/MultiSelectTreeWidget/widget/index.tsx | 1 + app/client/src/widgets/MultiSelectWidget/component/index.tsx | 3 +++ app/client/src/widgets/MultiSelectWidget/widget/index.tsx | 1 + app/client/src/widgets/MultiSelectWidgetV2/component/index.tsx | 3 +++ app/client/src/widgets/MultiSelectWidgetV2/widget/index.tsx | 1 + app/client/src/widgets/SelectWidget/component/index.tsx | 1 + .../src/widgets/SingleSelectTreeWidget/component/index.tsx | 3 +++ app/client/src/widgets/SingleSelectTreeWidget/widget/index.tsx | 1 + 9 files changed, 17 insertions(+) diff --git a/app/client/src/widgets/MultiSelectTreeWidget/component/index.tsx b/app/client/src/widgets/MultiSelectTreeWidget/component/index.tsx index 12e24f51f307..9958225e07db 100644 --- a/app/client/src/widgets/MultiSelectTreeWidget/component/index.tsx +++ b/app/client/src/widgets/MultiSelectTreeWidget/component/index.tsx @@ -54,6 +54,7 @@ export interface TreeSelectProps labelTextSize?: TextSize; labelStyle?: string; labelTooltip?: string; + isRequired?: boolean; compactMode: boolean; dropDownWidth: number; width: number; @@ -122,6 +123,7 @@ function MultiTreeSelectComponent({ filterText, isDynamicHeightEnabled, isFilterable, + isRequired, isValid, labelAlignment, labelPosition, @@ -260,6 +262,7 @@ function MultiTreeSelectComponent({ fontSize={labelTextSize} fontStyle={labelStyle} helpText={labelTooltip} + isRequired={isRequired} isDynamicHeightEnabled={isDynamicHeightEnabled} loading={loading} position={labelPosition} diff --git a/app/client/src/widgets/MultiSelectTreeWidget/widget/index.tsx b/app/client/src/widgets/MultiSelectTreeWidget/widget/index.tsx index adbca4de45ef..90493aec2dee 100644 --- a/app/client/src/widgets/MultiSelectTreeWidget/widget/index.tsx +++ b/app/client/src/widgets/MultiSelectTreeWidget/widget/index.tsx @@ -728,6 +728,7 @@ class MultiSelectTreeWidget extends BaseWidget< expandAll={this.props.expandAll} isDynamicHeightEnabled={isAutoHeightEnabledForWidget(this.props)} isFilterable + isRequired={this.props.isRequired} isValid={!isInvalid} labelAlignment={this.props.labelAlignment} labelPosition={this.props.labelPosition} diff --git a/app/client/src/widgets/MultiSelectWidget/component/index.tsx b/app/client/src/widgets/MultiSelectWidget/component/index.tsx index 39730468322c..ed9b9891780c 100644 --- a/app/client/src/widgets/MultiSelectWidget/component/index.tsx +++ b/app/client/src/widgets/MultiSelectWidget/component/index.tsx @@ -51,6 +51,7 @@ export interface MultiSelectProps labelTextColor?: string; labelTextSize?: TextSize; labelStyle?: string; + isRequired?: boolean; compactMode: boolean; isValid: boolean; allowSelectAll?: boolean; @@ -73,6 +74,7 @@ function MultiSelectComponent({ dropDownWidth, isDynamicHeightEnabled, isValid, + isRequired, labelAlignment, labelPosition, labelStyle, @@ -202,6 +204,7 @@ function MultiSelectComponent({ disabled={disabled} fontSize={labelTextSize} fontStyle={labelStyle} + isRequired={isRequired} isDynamicHeightEnabled={isDynamicHeightEnabled} loading={loading} position={labelPosition} diff --git a/app/client/src/widgets/MultiSelectWidget/widget/index.tsx b/app/client/src/widgets/MultiSelectWidget/widget/index.tsx index 708a9f1b5536..4f5da5570c89 100644 --- a/app/client/src/widgets/MultiSelectWidget/widget/index.tsx +++ b/app/client/src/widgets/MultiSelectWidget/widget/index.tsx @@ -564,6 +564,7 @@ class MultiSelectWidget extends BaseWidget< zIndex: Layers.dropdownModalWidget, }} isValid={this.props.isValid} + isRequired={this.props.isRequired} labelAlignment={this.props.labelAlignment} labelPosition={this.props.labelPosition} labelStyle={this.props.labelStyle} diff --git a/app/client/src/widgets/MultiSelectWidgetV2/component/index.tsx b/app/client/src/widgets/MultiSelectWidgetV2/component/index.tsx index d62defc7015c..18dd46507e9a 100644 --- a/app/client/src/widgets/MultiSelectWidgetV2/component/index.tsx +++ b/app/client/src/widgets/MultiSelectWidgetV2/component/index.tsx @@ -58,6 +58,7 @@ export interface MultiSelectProps labelStyle?: string; compactMode: boolean; labelTooltip?: string; + isRequired?: boolean; isValid: boolean; allowSelectAll?: boolean; filterText?: string; @@ -89,6 +90,7 @@ function MultiSelectComponent({ filterText, isDynamicHeightEnabled, isFilterable, + isRequired, isValid, labelAlignment, labelPosition, @@ -334,6 +336,7 @@ function MultiSelectComponent({ fontSize={labelTextSize} fontStyle={labelStyle} helpText={labelTooltip} + isRequired={isRequired} isDynamicHeightEnabled={isDynamicHeightEnabled} loading={loading} position={labelPosition} diff --git a/app/client/src/widgets/MultiSelectWidgetV2/widget/index.tsx b/app/client/src/widgets/MultiSelectWidgetV2/widget/index.tsx index 390121289a2e..f41e93c2c010 100644 --- a/app/client/src/widgets/MultiSelectWidgetV2/widget/index.tsx +++ b/app/client/src/widgets/MultiSelectWidgetV2/widget/index.tsx @@ -860,6 +860,7 @@ class MultiSelectWidget extends BaseWidget< filterText={this.props.filterText} isDynamicHeightEnabled={isAutoHeightEnabledForWidget(this.props)} isFilterable={this.props.isFilterable} + isRequired={this.props.isRequired} isValid={!isInvalid} labelAlignment={this.props.labelAlignment} labelPosition={this.props.labelPosition} diff --git a/app/client/src/widgets/SelectWidget/component/index.tsx b/app/client/src/widgets/SelectWidget/component/index.tsx index 127edda7b356..2ea643ed5a48 100644 --- a/app/client/src/widgets/SelectWidget/component/index.tsx +++ b/app/client/src/widgets/SelectWidget/component/index.tsx @@ -391,6 +391,7 @@ class SelectComponent extends React.Component< fontSize={labelTextSize} fontStyle={labelStyle} helpText={labelTooltip} + isRequired={this.props.isRequired} isDynamicHeightEnabled={isDynamicHeightEnabled} loading={isLoading} position={labelPosition} diff --git a/app/client/src/widgets/SingleSelectTreeWidget/component/index.tsx b/app/client/src/widgets/SingleSelectTreeWidget/component/index.tsx index 012f06a0e7ca..b8e2ba58a63d 100644 --- a/app/client/src/widgets/SingleSelectTreeWidget/component/index.tsx +++ b/app/client/src/widgets/SingleSelectTreeWidget/component/index.tsx @@ -49,6 +49,7 @@ export interface TreeSelectProps labelWidth?: number; labelTextColor?: string; labelTextSize?: TextSize; + isRequired?: boolean; onDropdownOpen?: () => void; onDropdownClose?: () => void; labelStyle?: string; @@ -121,6 +122,7 @@ function SingleSelectTreeComponent({ filterText, isDynamicHeightEnabled, isFilterable, + isRequired, isValid, labelAlignment, labelPosition, @@ -272,6 +274,7 @@ function SingleSelectTreeComponent({ fontSize={labelTextSize} fontStyle={labelStyle} helpText={labelTooltip} + isRequired={isRequired} isDynamicHeightEnabled={isDynamicHeightEnabled} loading={loading} position={labelPosition} diff --git a/app/client/src/widgets/SingleSelectTreeWidget/widget/index.tsx b/app/client/src/widgets/SingleSelectTreeWidget/widget/index.tsx index c65fb6c995c7..a6ea3b3c13af 100644 --- a/app/client/src/widgets/SingleSelectTreeWidget/widget/index.tsx +++ b/app/client/src/widgets/SingleSelectTreeWidget/widget/index.tsx @@ -688,6 +688,7 @@ class SingleSelectTreeWidget extends BaseWidget< expandAll={this.props.expandAll} isDynamicHeightEnabled={isAutoHeightEnabledForWidget(this.props)} isFilterable + isRequired={this.props.isRequired} isValid={!isInvalid} labelAlignment={this.props.labelAlignment} labelPosition={this.props.labelPosition}