Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit 605f40d

Browse files
committed
oh boy
1 parent 7a0510a commit 605f40d

File tree

1 file changed

+102
-101
lines changed

1 file changed

+102
-101
lines changed

site/src/modules/workspaces/DynamicParameter/DynamicParameter.tsx

Lines changed: 102 additions & 101 deletions
Original file line numberDiff line numberDiff line change
@@ -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

Comments
 (0)