Skip to content

Commit 6206407

Browse files
Diana2886Diana Abdykassenova
andauthored
EPMRPP-114403 || Change display of disabled options in organization settings and project settings dropdowns (#288)
* EPMRPP-114403 || Change the display of disabled options in Organization settings and Project settings dropdowns * fix: change background-color * EPMRPP-114403 || Change the display of disabled options in Organization settings and Project settings dropdowns * fix: fix AI message * fix: show tooltip only for disabled keep-period options --------- Co-authored-by: Diana Abdykassenova <diana_abdykassenova@epam.com>
1 parent 5386c2c commit 6206407

2 files changed

Lines changed: 13 additions & 3 deletions

File tree

src/components/dropdown/dropdown.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -661,7 +661,7 @@ export const Dropdown: FC<DropdownProps> = ({
661661
const { keyCode } = event;
662662
if (keyCode === KeyCodes.ENTER_KEY_CODE || keyCode === KeyCodes.SPACE_KEY_CODE) {
663663
const option = selectableOptions[highlightedIndex];
664-
if (!option) {
664+
if (!option || option.disabled) {
665665
return;
666666
}
667667
if (multiSelect) {

src/components/dropdown/dropdownOption/dropdownOption.tsx

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,9 @@ export const DropdownOption: FC<DropdownOptionProps> = forwardRef(
2323

2424
const onChangeHandler: MouseEventHandler<HTMLDivElement | HTMLInputElement> = (e) => {
2525
const target = e.target as HTMLElement;
26+
if (disabled) {
27+
return;
28+
}
2629
if (
2730
target.closest('label') &&
2831
!(target instanceof HTMLInputElement || target instanceof HTMLDivElement)
@@ -32,7 +35,7 @@ export const DropdownOption: FC<DropdownOptionProps> = forwardRef(
3235
onChange?.(value);
3336
};
3437

35-
return (
38+
const optionElement = (
3639
<div
3740
className={cx('dropdown-option', {
3841
selected,
@@ -43,7 +46,7 @@ export const DropdownOption: FC<DropdownOptionProps> = forwardRef(
4346
'has-children': hasChildren,
4447
[`depth-${depth}`]: depth > 0,
4548
})}
46-
title={title}
49+
title={!disabled ? title : undefined}
4750
onClick={onChangeHandler}
4851
ref={ref}
4952
onMouseEnter={onMouseEnter}
@@ -58,5 +61,12 @@ export const DropdownOption: FC<DropdownOptionProps> = forwardRef(
5861
</div>
5962
</div>
6063
);
64+
65+
if (disabled && title) {
66+
// Disabled option root has pointer-events: none; wrapper keeps native title tooltip available.
67+
return <div title={title}>{optionElement}</div>;
68+
}
69+
70+
return optionElement;
6171
},
6272
);

0 commit comments

Comments
 (0)