@@ -5,24 +5,27 @@ import {
5
5
import * as Yup from "yup" ;
6
6
7
7
export const getInitialRichParameterValues = (
8
- templateParameters : TemplateVersionParameter [ ] ,
9
- buildParameters ?: WorkspaceBuildParameter [ ] ,
8
+ templateParameters : readonly TemplateVersionParameter [ ] ,
9
+ buildParameters ?: readonly WorkspaceBuildParameter [ ] ,
10
10
) : 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 ,
14
14
) ;
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 ;
24
23
}
25
- return existentBuildParameter ;
24
+
25
+ return {
26
+ name : templateParam . name ,
27
+ value : templateParam . default_value ,
28
+ } ;
26
29
} ) ;
27
30
} ;
28
31
0 commit comments