handler-hover-element.js 841 B

123456789101112131415161718192021222324252627282930313233
  1. import handleSelector from '../handle-selector';
  2. import { sendMessage } from '@/utils/message';
  3. function eventClick(block) {
  4. return new Promise((resolve, reject) => {
  5. handleSelector(block, {
  6. async onSelected(element) {
  7. const { width, height, x, y } = element.getBoundingClientRect();
  8. const payload = {
  9. tabId: block.activeTabId,
  10. method: 'Input.dispatchMouseEvent',
  11. params: {
  12. type: 'mousePressed',
  13. x: x + width / 2,
  14. y: y + height / 2,
  15. button: 'left',
  16. clickCount: 1,
  17. },
  18. };
  19. await sendMessage('debugger:send-command', payload, 'background');
  20. },
  21. onError(error) {
  22. reject(error);
  23. },
  24. onSuccess() {
  25. resolve('');
  26. },
  27. });
  28. });
  29. }
  30. export default eventClick;