24 lines
657 B
JavaScript
24 lines
657 B
JavaScript
const browser = require('../browser');
|
|
|
|
module.exports = async () => {
|
|
await browser.start();
|
|
const p = await browser.ensurePage();
|
|
|
|
const buttons = await p.evaluate(() => {
|
|
const elements = Array.from(document.querySelectorAll('button, input[type="submit"], input[type="button"], [role="button"], a.btn, a.button'));
|
|
|
|
return elements.map(el => ({
|
|
text: (el.innerText || el.value || el.getAttribute('aria-label') || '').trim(),
|
|
type: el.tagName.toLowerCase(),
|
|
id: el.id || null
|
|
})).filter(b => b.text !== '');
|
|
});
|
|
|
|
return {
|
|
success: true,
|
|
action: "get_buttons",
|
|
count: buttons.length,
|
|
buttons
|
|
};
|
|
};
|