Btw, didn't think about if you need to take a look on the methods they are here, the scripts are in the header of the main layout:
helper.js:
// Get Element
window.getElement = function (selector) {
return document.querySelector(selector);
}
// Set innerHTML
window.setHTML = function (selector, html) {
getElement(selector).innerHTML = html;
}
// Reset input to blank
window.resetInput = function (e) {
const modernWrapper = e.target.closest(".modern-wrapper");
const modernInput = modernWrapper.querySelector(".modern-input");
modernInput.value = null;
modernInput.focus();
};
laravel.js:
const csrf_token = document.querySelector("meta[name='csrf-token']")?.content;
// POST Request Laravel
window.postRequest = async function (url, contentType, parameters = {}, loader = null) {
try {
loader && (loader.style.display = "block");
const response = await fetch(url, {
method: 'POST',
headers: {
"X-CSRF-TOKEN": csrf_token,
'Content-Type': contentType,
},
body: new URLSearchParams(parameters),
});
if (!response.ok) throw new Error(response.status);
return await response.json();
} catch (error) {
console.error(error);
throw error;
} finally {
loader && (loader.style.display = "none");
}
}
// GET Request Laravel
window.getRequest = async function (url) {
try {
let responsePromise = await fetch(url, {
method: 'GET',
headers: {
"X-CSRF-TOKEN": csrf_token,
}
});
if (!responsePromise.ok) {
throw new Error(responsePromise.status);
}
return await responsePromise.json();
} catch (error) {
alert(error);
}
}