Skip to content

Commit e290ece

Browse files
committed
refactor: clean up getInitialRichParameterValues for clarity
1 parent ac86d94 commit e290ece

File tree

1 file changed

+18
-15
lines changed

1 file changed

+18
-15
lines changed

site/src/utils/richParameters.ts

Lines changed: 18 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -5,24 +5,27 @@ import {
55
import * as Yup from "yup";
66

77
export const getInitialRichParameterValues = (
8-
templateParameters: TemplateVersionParameter[],
9-
buildParameters?: WorkspaceBuildParameter[],
8+
templateParameters: readonly TemplateVersionParameter[],
9+
buildParameters?: readonly WorkspaceBuildParameter[],
1010
): WorkspaceBuildParameter[] => {
11-
return templateParameters.map((parameter) => {
12-
const existentBuildParameter = buildParameters?.find(
13-
(p) => p.name === parameter.name,
11+
return templateParameters.map((templateParam) => {
12+
const matchedBuildParam = buildParameters?.find(
13+
(buildParam) => buildParam.name === templateParam.name,
1414
);
15-
const shouldReturnTheDefaultValue =
16-
!existentBuildParameter ||
17-
!isValidValue(parameter, existentBuildParameter) ||
18-
parameter.ephemeral;
19-
if (shouldReturnTheDefaultValue) {
20-
return {
21-
name: parameter.name,
22-
value: parameter.default_value,
23-
};
15+
16+
const shouldOverrideTemplate =
17+
matchedBuildParam !== undefined &&
18+
isValidValue(templateParam, matchedBuildParam) &&
19+
!templateParam.ephemeral;
20+
21+
if (shouldOverrideTemplate) {
22+
return matchedBuildParam;
2423
}
25-
return existentBuildParameter;
24+
25+
return {
26+
name: templateParam.name,
27+
value: templateParam.default_value,
28+
};
2629
});
2730
};
2831

0 commit comments

Comments
 (0)