Skip to content

Commit ec54762

Browse files
committed
isopen is struggling
1 parent 6f0d2eb commit ec54762

File tree

1 file changed

+44
-23
lines changed

1 file changed

+44
-23
lines changed

src/Components/CreateImageWizard/steps/ImageOutput/ReleaseSelect.tsx

+44-23
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,13 @@
11
import React, { ReactElement, useState } from 'react';
22

3-
import { FormGroup } from '@patternfly/react-core';
43
import {
4+
FormGroup,
5+
MenuToggle,
6+
MenuToggleElement,
57
Select,
8+
SelectList,
69
SelectOption,
7-
SelectVariant,
8-
} from '@patternfly/react-core/deprecated';
10+
} from '@patternfly/react-core';
911

1012
import {
1113
RELEASES,
@@ -45,13 +47,15 @@ const ReleaseSelect = () => {
4547
const releases = process.env.IS_ON_PREMISE ? ON_PREM_RELEASES : RELEASES;
4648

4749
const handleSelect = (_event: React.MouseEvent, selection: Distributions) => {
48-
if (!isRhel(selection)) {
49-
dispatch(changeRegistrationType('register-later'));
50-
} else {
51-
dispatch(changeRegistrationType('register-now-rhc'));
50+
if (selection !== ('loader' as Distributions)) {
51+
if (!isRhel(selection)) {
52+
dispatch(changeRegistrationType('register-later'));
53+
} else {
54+
dispatch(changeRegistrationType('register-now-rhc'));
55+
}
56+
dispatch(changeDistribution(selection));
57+
setIsOpen(false);
5258
}
53-
dispatch(changeDistribution(selection));
54-
setIsOpen(false);
5559
};
5660

5761
const handleExpand = () => {
@@ -124,26 +128,43 @@ const ReleaseSelect = () => {
124128
return options;
125129
};
126130

131+
const onToggleClick = () => {
132+
setIsOpen(!isOpen);
133+
};
134+
135+
const toggle = (toggleRef: React.Ref<MenuToggleElement>) => (
136+
<MenuToggle
137+
ref={toggleRef}
138+
onClick={onToggleClick}
139+
isExpanded={isOpen}
140+
isFullWidth
141+
>
142+
{releases.get(distribution)}
143+
</MenuToggle>
144+
);
145+
127146
return (
128147
<FormGroup isRequired={true} label="Release">
129148
<Select
130149
ouiaId="release_select"
131-
variant={SelectVariant.single}
132-
onToggle={() => setIsOpen(!isOpen)}
133-
onSelect={handleSelect}
134-
selections={releases.get(distribution)}
135150
isOpen={isOpen}
136-
{...(!showDevelopmentOptions &&
137-
// Hide this for on-prem since the host
138-
// could be centos or fedora
139-
!process.env.IS_ON_PREMISE && {
140-
loadingVariant: {
141-
text: 'Show options for further development of RHEL',
142-
onClick: handleExpand,
143-
},
144-
})}
151+
selected={releases.get(distribution)}
152+
onSelect={handleSelect}
153+
onOpenChange={(isOpen) => setIsOpen(isOpen)}
154+
toggle={toggle}
155+
shouldFocusToggleOnSelect
145156
>
146-
{setSelectOptions()}
157+
<SelectList>
158+
{setSelectOptions()}
159+
{!showDevelopmentOptions &&
160+
// Hide this for on-prem since the host
161+
// could be centos or fedora
162+
!process.env.IS_ON_PREMISE && (
163+
<SelectOption onClick={handleExpand} value="loader" isLoadButton>
164+
Show options for further development of RHEL
165+
</SelectOption>
166+
)}
167+
</SelectList>
147168
</Select>
148169
</FormGroup>
149170
);

0 commit comments

Comments
 (0)