import './elements/oswilno-price.js'; import './elements/oswilno-error.js'; import("https://unpkg.com/htmx.org@1.9.4/dist/htmx.min.js"); const AUTH_HEADER = 'ACX-Authorization'; const REFRESH_HEADER = ''; const body = document.body; body.addEventListener('htmx:beforeOnLoad', function (evt) { const detail = evt.detail; const xhr = detail.xhr; const status = xhr.status; const successful = detail.successful; if (status === 200) { const bearer = xhr.getResponseHeader(AUTH_HEADER); if (bearer) { localStorage.setItem('jwt', bearer.replace(/^Bearer /i, '')); } const refresh = xhr.getResponseHeader(REFRESH_HEADER); if (refresh) { localStorage.setItem('refresh', bearer.replace(/^Bearer /i, '')); } } else if (status === 401) { localStorage.removeItem('jwt'); } if (status === 422 || status === 400) { detail.shouldSwap = true; detail.isError = false; } }); body.addEventListener('htmx:configRequest', function (evt) { if (localStorage.getItem('jwt')) { evt.detail.headers[AUTH_HEADER] = 'Bearer ' + (localStorage.getItem('jwt') || ''); evt.detail.headers[REFRESH_HEADER] = 'Bearer ' + (localStorage.getItem('refresh') || ''); } });