AISimBot / toggle_speech.js
chibop's picture
Upload folder using huggingface_hub
f37379e verified
function () {
function onAttributeChange(target, attribute, callback) {
const observerCallback = (mutationsList) => {
for (let mutation of mutationsList) {
if (mutation.type === 'attributes' && mutation.attributeName === attribute) {
callback(mutation.target);
}
}
};
const observer = new MutationObserver(observerCallback);
const config = { attributes: true };
observer.observe(target, config);
console.log("Start observing.");
}
function waitForElementToAppear(selector, callback) {
const targetNode = document.body;
const config = { childList: true, subtree: true };
const observer = new MutationObserver((mutationsList, observer) => {
const element = document.querySelector(selector);
if (element) {
observer.disconnect();
setTimeout(() => callback(element), 500);
}
});
observer.observe(targetNode, config);
}
const speech = document.querySelector("#speech");
if (speech) {
if (speech.textContent.trim() === "Record") {
speech.textContent = "Send";
const record = document.querySelector(".record-button");
record.click()
} else {
const stop = document.querySelector(".stop-button");
stop.click();
speech.textContent = "Processing";
speech.disabled= true
waitForElementToAppear(".record-button", (button) => {
speech.disabled= false
speech.textContent = "Record";
});
}
}
}