/**
* Password visibility toggle for all password inputs.
* Wraps inputs on load; preserves autofill via type toggle only.
*/
(function () {
"use strict";
var EYE =
'';
var EYE_OFF =
'';
function enhanceInput(input) {
if (!input || input.type !== "password") return;
if (input.closest(".password-field-wrap")) return;
var wrap = document.createElement("div");
wrap.className = "password-field-wrap";
input.parentNode.insertBefore(wrap, input);
wrap.appendChild(input);
var btn = document.createElement("button");
btn.type = "button";
btn.className = "password-toggle-btn";
btn.setAttribute("aria-label", "Show password");
btn.setAttribute("aria-pressed", "false");
btn.innerHTML = EYE;
wrap.appendChild(btn);
btn.addEventListener("click", function () {
var showing = input.type === "text";
input.type = showing ? "password" : "text";
btn.setAttribute("aria-label", showing ? "Show password" : "Hide password");
btn.setAttribute("aria-pressed", showing ? "false" : "true");
btn.innerHTML = showing ? EYE : EYE_OFF;
});
}
function init() {
document.querySelectorAll('input[type="password"]').forEach(enhanceInput);
}
if (document.readyState === "loading") {
document.addEventListener("DOMContentLoaded", init);
} else {
init();
}
})();