1import { 2 init_define_process 3} from "./chunk-RFSPGZ3L.js"; 4 5// projects/lib/packages/yggdrasil-blueprints/src/Elements/Utils/inputValidator.ts 6init_define_process(); 7var phoneErrorMap = ["Invalid number", "Invalid country code", "Too short", "Too long", "Invalid number"]; 8var checkInputPatternValid = (input) => { 9 const validityState = input.validity; 10 const $inputParent = $(input).closest(".elFormItemWrapper"); 11 if (validityState.patternMismatch) { 12 input.setCustomValidity("Contains invalid characters"); 13 input.reportValidity(); 14 $inputParent.removeClass("elInputValid"); 15 $inputParent.addClass("elInputError"); 16 return false; 17 } else { 18 $inputParent.removeClass("elInputError"); 19 $inputParent.addClass("elInputValid"); 20 return true; 21 } 22}; 23var checkEmailInputValid = (input) => { 24 const re = /^(([^<>()[\].,;:#%\s@"]+(\.[^<>()[\].,;:#%\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/; 25 const value = $(input).val(); 26 const parsedEmail = $.trim(value); 27 const $inputParent = $(input).closest(".elFormItemWrapper"); 28 if (re.test(parsedEmail)) { 29 $inputParent.removeClass("elInputError"); 30 $inputParent.addClass("elInputValid"); 31 return true; 32 } else { 33 $inputParent.removeClass("elInputValid"); 34 $inputParent.addClass("elInputError"); 35 return false; 36 } 37}; 38var resetInputErrors = (input) => { 39 const $inputParent = $(input).closest(".elFormItemWrapper"); 40 const $status = $inputParent.find("[data-input-status-type]"); 41 $inputParent.removeClass("elInputError"); 42 $inputParent.css("border-color", ""); 43 $inputParent.css("border-width", ""); 44 $status.attr("data-input-status-type", ""); 45 $status.text(""); 46}; 47var resetErrorsAndCheckPhoneNumber = (input) => { 48 resetInputErrors(input); 49 const value = input.value.trim(); 50 if (value) { 51 const $inputParent = $(input).closest(".elFormItemWrapper"); 52 const $status = $inputParent.find("[data-input-status-type]"); 53 if (input.iti && !input.iti.isValidNumber()) { 54 const errorCode = input.iti.getValidationError(); 55 $inputParent.addClass("elInputError"); 56 $inputParent.removeClass("elInputValid"); 57 $status.attr("data-input-status-type", "error"); 58 $status.text(phoneErrorMap[errorCode]); 59 return false; 60 } else { 61 resetInputErrors(input); 62 } 63 } 64 return true; 65}; 66var validateInput = (input, options = {}) => { 67 const $input = $(input); 68 const $inputParent = $input.closest(".elFormItemWrapper"); 69 const inputValue = $input.is("select") ? $input.find(":selected").attr("value") : $input.val(); 70 const inputName = $input.attr("name"); 71 const inputType = $input.attr("type"); 72 const inputPattern = $input.attr("pattern"); 73 if ($input.hasClass("required1") && inputType == "checkbox") { 74 if ($input.is(":checked")) { 75 $inputParent.removeClass("elInputError"); 76 $inputParent.addClass("elInputValid"); 77 return true; 78 } else { 79 $inputParent.removeClass("elInputValid"); 80 $inputParent.addClass("elInputError"); 81 return false; 82 } 83 } else if ($input.hasClass("required1") && inputValue == "" || inputValue == null || typeof inputValue == "undefined") { 84 $inputParent.removeClass("elInputValid"); 85 $inputParent.addClass("elInputError"); 86 return false; 87 } else { 88 if (inputName == "email" || options.validateAsEmail) { 89 return checkEmailInputValid(input); 90 } else if (inputName == "phone_number") { 91 if (resetErrorsAndCheckPhoneNumber(input)) { 92 $inputParent.removeClass("elInputError"); 93 $inputParent.addClass("elInputValid"); 94 return true; 95 } else { 96 $inputParent.addClass("elInputError"); 97 $inputParent.removeClass("elInputValid"); 98 return false; 99 } 100 } else { 101 if (inputPattern) { 102 return checkInputPatternValid(input); 103 } else { 104 $inputParent.removeClass("elInputError"); 105 $inputParent.addClass("elInputValid"); 106 return true; 107 } 108 } 109 } 110}; 111 112export { 113 resetInputErrors, 114 resetErrorsAndCheckPhoneNumber, 115 validateInput 116}; 117//# sourceMappingURL=chunk-W3RKY5WP.js.map
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.