Не получается объединить библиотеки inputmask, just-validate и POST запрос с formData
В консоли такая ошибка Uncaught TypeError: Cannot read properties of null (reading 'inputmask') at new FormData (inputmask.min.js:8:502) at HTMLFormElement. (postData.js:33:30)
"use strict"
document.addEventListener("DOMContentLoaded", () => {
//_______________MASK________________________________
const inputsPhone = document.querySelector("[data-phone]");
const mask = new Inputmask("+38 (099) 999-99-99");
mask.mask(inputsPhone);
console.log("+38 (099) 999-99-99".length);
//______________VALIDATION___________________________
const validation = new JustValidate("form");
validation
.addField("[data-phone]", [
{
rule: "required",
errorMessage: "Phone is required",
},
{
rule: 'minLength',
value: 19,
errorMessage: 'Phone is required',
}
]);
const forms = document.querySelectorAll("form");
forms.forEach(form => {
form.addEventListener("submit", (e) => {
e.preventDefault();
if (validation.isValid) {
console.log(document.querySelector("[data-phone]").value);
const formData = new FormData(form);
fetch("../php/server.php", {
method: "POST",
headers: {
"Content-Type": "application/json"
},
body: JSON.stringify(Object.fromEntries(formData.entries()))
})
.then((data) => {
if(!data.ok || data.status >= 400) {
throw new Error("Error")
}
return data.json();
})
.then(data => console.log(data))
.catch(err => console.log(err))
.finally(() => {
form.reset();
});
} else {
console.log("Form istn valid");
}
})
})
})