Skip to content

Commit 23d1423

Browse files
authored
chore: hide classic workspace checkbox when experiment is not enabled (#18061)
resolves coder/preview#137 This hides the `Use classic workspace creation form` checkbox on the template settings page if the dynamic-parameters experiment is not enabled Add mention of "workspace parameters settings form" in the checkbox description as this is also affected.
1 parent 71a647b commit 23d1423

File tree

3 files changed

+39
-28
lines changed

3 files changed

+39
-28
lines changed

site/src/pages/TemplateSettingsPage/TemplateGeneralSettingsPage/TemplateSettingsForm.tsx

Lines changed: 33 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -63,6 +63,7 @@ export interface TemplateSettingsForm {
6363
accessControlEnabled: boolean;
6464
advancedSchedulingEnabled: boolean;
6565
portSharingControlsEnabled: boolean;
66+
isDynamicParametersEnabled: boolean;
6667
}
6768

6869
export const TemplateSettingsForm: FC<TemplateSettingsForm> = ({
@@ -75,6 +76,7 @@ export const TemplateSettingsForm: FC<TemplateSettingsForm> = ({
7576
accessControlEnabled,
7677
advancedSchedulingEnabled,
7778
portSharingControlsEnabled,
79+
isDynamicParametersEnabled,
7880
}) => {
7981
const form = useFormik<UpdateTemplateMeta>({
8082
initialValues: {
@@ -224,34 +226,37 @@ export const TemplateSettingsForm: FC<TemplateSettingsForm> = ({
224226
</StackLabel>
225227
}
226228
/>
227-
<FormControlLabel
228-
control={
229-
<Checkbox
230-
size="small"
231-
id="use_classic_parameter_flow"
232-
name="use_classic_parameter_flow"
233-
checked={form.values.use_classic_parameter_flow}
234-
onChange={form.handleChange}
235-
disabled={false}
236-
/>
237-
}
238-
label={
239-
<StackLabel>
240-
Use classic workspace creation form
241-
<StackLabelHelperText>
242-
<span>
243-
Show the original workspace creation form without dynamic
244-
parameters or live updates. Recommended if your provisioners
245-
aren't updated or the new form causes issues.{" "}
246-
<strong>
247-
Users can always manually switch experiences in the
248-
workspace creation form.
249-
</strong>
250-
</span>
251-
</StackLabelHelperText>
252-
</StackLabel>
253-
}
254-
/>
229+
{isDynamicParametersEnabled && (
230+
<FormControlLabel
231+
control={
232+
<Checkbox
233+
size="small"
234+
id="use_classic_parameter_flow"
235+
name="use_classic_parameter_flow"
236+
checked={form.values.use_classic_parameter_flow}
237+
onChange={form.handleChange}
238+
disabled={false}
239+
/>
240+
}
241+
label={
242+
<StackLabel>
243+
Use classic workspace creation form
244+
<StackLabelHelperText>
245+
<span>
246+
Show the original workspace creation form and workspace
247+
parameters settings form without dynamic parameters or
248+
live updates. Recommended if your provisioners aren't
249+
updated or the new form causes issues.{" "}
250+
<strong>
251+
Users can always manually switch experiences in the
252+
workspace creation form.
253+
</strong>
254+
</span>
255+
</StackLabelHelperText>
256+
</StackLabel>
257+
}
258+
/>
259+
)}
255260
</FormFields>
256261
</FormSection>
257262

site/src/pages/TemplateSettingsPage/TemplateGeneralSettingsPage/TemplateSettingsPage.tsx

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,8 @@ import { useTemplateSettings } from "../TemplateSettingsLayout";
1414
import { TemplateSettingsPageView } from "./TemplateSettingsPageView";
1515

1616
const TemplateSettingsPage: FC = () => {
17+
const { experiments } = useDashboard();
18+
const isDynamicParametersEnabled = experiments.includes("dynamic-parameters");
1719
const { template: templateName } = useParams() as { template: string };
1820
const navigate = useNavigate();
1921
const getLink = useLinks();
@@ -79,6 +81,7 @@ const TemplateSettingsPage: FC = () => {
7981
accessControlEnabled={accessControlEnabled}
8082
advancedSchedulingEnabled={advancedSchedulingEnabled}
8183
sharedPortControlsEnabled={sharedPortControlsEnabled}
84+
isDynamicParametersEnabled={isDynamicParametersEnabled}
8285
/>
8386
</>
8487
);

site/src/pages/TemplateSettingsPage/TemplateGeneralSettingsPage/TemplateSettingsPageView.tsx

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ interface TemplateSettingsPageViewProps {
1515
accessControlEnabled: boolean;
1616
advancedSchedulingEnabled: boolean;
1717
sharedPortControlsEnabled: boolean;
18+
isDynamicParametersEnabled: boolean;
1819
}
1920

2021
export const TemplateSettingsPageView: FC<TemplateSettingsPageViewProps> = ({
@@ -27,6 +28,7 @@ export const TemplateSettingsPageView: FC<TemplateSettingsPageViewProps> = ({
2728
accessControlEnabled,
2829
advancedSchedulingEnabled,
2930
sharedPortControlsEnabled,
31+
isDynamicParametersEnabled,
3032
}) => {
3133
return (
3234
<>
@@ -44,6 +46,7 @@ export const TemplateSettingsPageView: FC<TemplateSettingsPageViewProps> = ({
4446
accessControlEnabled={accessControlEnabled}
4547
advancedSchedulingEnabled={advancedSchedulingEnabled}
4648
portSharingControlsEnabled={sharedPortControlsEnabled}
49+
isDynamicParametersEnabled={isDynamicParametersEnabled}
4750
/>
4851
</>
4952
);

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy