Как имитировать ввод пароля в input password

Есть расширение для гугла. Хочу немного оптимизировать работу с ним для себя. Нужно в поле input type="password" вставить свой пароль.

Просто вставить свой пароль в это поле не проблема:

document.querySelector("input").value = 'password' Пароль вставляется, но при нажатии на input пароль сразу пропадает.

Вот их input:

<input aria-invalid="false" autocomplete="new-password" id="create-password" type="password" dir="auto" class="MuiInputBase-input MuiInput-input" value="">

Как заставить думать сайт что текст введен с клавиатуры?

Буду благодарен за помощь!


Ответы (2 шт):

Автор решения: Алексей Шиманский

let input = document.querySelector("input");

/* Для демонстрации триггера события */
input.addEventListener('change', (e) => {
    console.log('changeEvent');
})
input.addEventListener('input', (e) => {
    console.log('inputEvent');
})
/* Для демонстрации триггера события */

let pass = 'wertwer';

for (let i = 0; i < pass.length; i++) {
  setTimeout(() => {
      input.value += pass.charAt(i);
      
      let changeEvent = new Event('change');
      let inputEvent = new Event('input');
      input.dispatchEvent(changeEvent);      
      input.dispatchEvent(inputEvent);      
  }, 500 * (i + 1));  
}
<input type="text">

Ещё может быть событие keyup, keydown и ещё бог знает сколько там навешано

→ Ссылка
Автор решения: VTsM

Помогла эта функция

function changeValue(input, value) {
            var nativeInputValueSetter = Object.getOwnPropertyDescriptor(
                window.HTMLInputElement.prototype, "value").set;
            nativeInputValueSetter.call(input, value)
            var inputEvent = new Event("input", {
                bubbles: true
            });
            input.dispatchEvent(inputEvent);
        }
→ Ссылка