const { PowerShellInput } = require('../services/input'); const logger = require('../utils/logger'); class InputController { constructor() { this.inputService = new PowerShellInput(); } async mouseMove(x, y) { try { await this.inputService.mouseMove(x, y); } catch (error) { logger.error('Mouse move failed', { error: error.message, x, y }); } } async mouseDown(button = 'left') { try { await this.inputService.mouseDown(button); } catch (error) { logger.error('Mouse down failed', { error: error.message, button }); } } async mouseUp(button = 'left') { try { await this.inputService.mouseUp(button); } catch (error) { logger.error('Mouse up failed', { error: error.message, button }); } } async mouseClick(button = 'left') { try { await this.inputService.mouseClick(button); } catch (error) { logger.error('Mouse click failed', { error: error.message, button }); } } async mouseWheel(delta) { try { await this.inputService.mouseWheel(delta); } catch (error) { logger.error('Mouse wheel failed', { error: error.message, delta }); } } async keyDown(key) { try { await this.inputService.keyDown(key); } catch (error) { logger.error('Key down failed', { error: error.message, key }); } } async keyUp(key) { try { await this.inputService.keyUp(key); } catch (error) { logger.error('Key up failed', { error: error.message, key }); } } async keyPress(key) { try { await this.inputService.keyPress(key); } catch (error) { logger.error('Key press failed', { error: error.message, key }); } } async keyType(text) { try { await this.inputService.keyType(text); } catch (error) { logger.error('Key type failed', { error: error.message, text }); } } stop() { this.inputService.stop(); } } module.exports = InputController;