@@ -735,119 +735,120 @@ export const useValidationSchemaForDynamicParameters = (
735735 . of (
736736 Yup . object ( ) . shape ( {
737737 name : Yup . string ( ) . required ( ) ,
738- value : Yup . string ( ) . test ( "verify with template" , ( val , ctx ) => {
739- const name = ctx . parent . name ;
740- const parameter = parameters . find (
741- ( parameter ) => parameter . name === name ,
742- ) ;
743- if ( parameter ) {
744- switch ( parameter . type ) {
745- case "number" : {
746- const minValidation = parameter . validations . find (
747- ( v ) => v . validation_min !== null ,
748- ) ;
749- const maxValidation = parameter . validations . find (
750- ( v ) => v . validation_max !== null ,
751- ) ;
752-
753- if (
754- minValidation &&
755- minValidation . validation_min !== null &&
756- ! maxValidation &&
757- Number ( val ) < minValidation . validation_min
758- ) {
759- return ctx . createError ( {
760- path : ctx . path ,
761- message :
762- parameterError ( parameter , val ) ??
763- `Value must be greater than ${ minValidation . validation_min } .` ,
764- } ) ;
765- }
738+ value : Yup . string ( )
739+ . test ( "verify with template" , ( val , ctx ) => {
740+ const name = ctx . parent . name ;
741+ const parameter = parameters . find (
742+ ( parameter ) => parameter . name === name ,
743+ ) ;
744+ if ( parameter ) {
745+ switch ( parameter . type ) {
746+ case "number" : {
747+ const minValidation = parameter . validations . find (
748+ ( v ) => v . validation_min !== null ,
749+ ) ;
750+ const maxValidation = parameter . validations . find (
751+ ( v ) => v . validation_max !== null ,
752+ ) ;
766753
767- if (
768- ! minValidation &&
769- maxValidation &&
770- maxValidation . validation_max !== null &&
771- Number ( val ) > maxValidation . validation_max
772- ) {
773- return ctx . createError ( {
774- path : ctx . path ,
775- message :
776- parameterError ( parameter , val ) ??
777- `Value must be less than ${ maxValidation . validation_max } .` ,
778- } ) ;
779- }
754+ if (
755+ minValidation &&
756+ minValidation . validation_min !== null &&
757+ ! maxValidation &&
758+ Number ( val ) < minValidation . validation_min
759+ ) {
760+ return ctx . createError ( {
761+ path : ctx . path ,
762+ message :
763+ parameterError ( parameter , val ) ??
764+ `Value must be greater than ${ minValidation . validation_min } .` ,
765+ } ) ;
766+ }
780767
781- if (
782- minValidation &&
783- minValidation . validation_min !== null &&
784- maxValidation &&
785- maxValidation . validation_max !== null &&
786- ( Number ( val ) < minValidation . validation_min ||
787- Number ( val ) > maxValidation . validation_max )
788- ) {
789- return ctx . createError ( {
790- path : ctx . path ,
791- message :
792- parameterError ( parameter , val ) ??
793- `Value must be between ${ minValidation . validation_min } and ${ maxValidation . validation_max } .` ,
794- } ) ;
795- }
768+ if (
769+ ! minValidation &&
770+ maxValidation &&
771+ maxValidation . validation_max !== null &&
772+ Number ( val ) > maxValidation . validation_max
773+ ) {
774+ return ctx . createError ( {
775+ path : ctx . path ,
776+ message :
777+ parameterError ( parameter , val ) ??
778+ `Value must be less than ${ maxValidation . validation_max } .` ,
779+ } ) ;
780+ }
796781
797- const monotonic = parameter . validations . find (
798- ( v ) =>
799- v . validation_monotonic !== null &&
800- v . validation_monotonic !== "" ,
801- ) ;
782+ if (
783+ minValidation &&
784+ minValidation . validation_min !== null &&
785+ maxValidation &&
786+ maxValidation . validation_max !== null &&
787+ ( Number ( val ) < minValidation . validation_min ||
788+ Number ( val ) > maxValidation . validation_max )
789+ ) {
790+ return ctx . createError ( {
791+ path : ctx . path ,
792+ message :
793+ parameterError ( parameter , val ) ??
794+ `Value must be between ${ minValidation . validation_min } and ${ maxValidation . validation_max } .` ,
795+ } ) ;
796+ }
802797
803- if ( monotonic && lastBuildParameters ) {
804- const lastBuildParameter = lastBuildParameters . find (
805- ( last : { name : string } ) => last . name === name ,
798+ const monotonic = parameter . validations . find (
799+ ( v ) =>
800+ v . validation_monotonic !== null &&
801+ v . validation_monotonic !== "" ,
806802 ) ;
807- if ( lastBuildParameter ) {
808- switch ( monotonic . validation_monotonic ) {
809- case "increasing" :
810- if ( Number ( lastBuildParameter . value ) > Number ( val ) ) {
811- return ctx . createError ( {
812- path : ctx . path ,
813- message : `Value must only ever increase (last value was ${ lastBuildParameter . value } )` ,
814- } ) ;
815- }
816- break ;
817- case "decreasing" :
818- if ( Number ( lastBuildParameter . value ) < Number ( val ) ) {
819- return ctx . createError ( {
820- path : ctx . path ,
821- message : `Value must only ever decrease (last value was ${ lastBuildParameter . value } )` ,
822- } ) ;
823- }
824- break ;
803+
804+ if ( monotonic && lastBuildParameters ) {
805+ const lastBuildParameter = lastBuildParameters . find (
806+ ( last : { name : string } ) => last . name === name ,
807+ ) ;
808+ if ( lastBuildParameter ) {
809+ switch ( monotonic . validation_monotonic ) {
810+ case "increasing" :
811+ if ( Number ( lastBuildParameter . value ) > Number ( val ) ) {
812+ return ctx . createError ( {
813+ path : ctx . path ,
814+ message : `Value must only ever increase (last value was ${ lastBuildParameter . value } )` ,
815+ } ) ;
816+ }
817+ break ;
818+ case "decreasing" :
819+ if ( Number ( lastBuildParameter . value ) < Number ( val ) ) {
820+ return ctx . createError ( {
821+ path : ctx . path ,
822+ message : `Value must only ever decrease (last value was ${ lastBuildParameter . value } )` ,
823+ } ) ;
824+ }
825+ break ;
826+ }
825827 }
826828 }
829+ break ;
827830 }
828- break ;
829- }
830- case "string" : {
831- const regex = parameter . validations . find (
832- ( v ) =>
833- v . validation_regex !== null && v . validation_regex !== "" ,
834- ) ;
835- if ( ! regex || ! regex . validation_regex ) {
836- return true ;
837- }
831+ case "string" : {
832+ const regex = parameter . validations . find (
833+ ( v ) =>
834+ v . validation_regex !== null && v . validation_regex !== "" ,
835+ ) ;
836+ if ( ! regex || ! regex . validation_regex ) {
837+ return true ;
838+ }
838839
839- if ( val && ! new RegExp ( regex . validation_regex ) . test ( val ) ) {
840- return ctx . createError ( {
841- path : ctx . path ,
842- message : parameterError ( parameter , val ) ,
843- } ) ;
840+ if ( val && ! new RegExp ( regex . validation_regex ) . test ( val ) ) {
841+ return ctx . createError ( {
842+ path : ctx . path ,
843+ message : parameterError ( parameter , val ) ,
844+ } ) ;
845+ }
846+ break ;
844847 }
845- break ;
846848 }
847849 }
848- }
849- return true ;
850- } ) ,
850+ return true ;
851+ } ) ,
851852 } ) ,
852853 )
853854 . required ( ) ;
0 commit comments