appium-desktop-driver 1.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +202 -0
- package/README.md +609 -0
- package/ROADMAP.md +175 -0
- package/build/lib/commands/actions.d.ts +12 -0
- package/build/lib/commands/actions.d.ts.map +1 -0
- package/build/lib/commands/actions.js +242 -0
- package/build/lib/commands/actions.js.map +1 -0
- package/build/lib/commands/app.d.ts +18 -0
- package/build/lib/commands/app.d.ts.map +1 -0
- package/build/lib/commands/app.js +280 -0
- package/build/lib/commands/app.js.map +1 -0
- package/build/lib/commands/device.d.ts +11 -0
- package/build/lib/commands/device.d.ts.map +1 -0
- package/build/lib/commands/device.js +236 -0
- package/build/lib/commands/device.js.map +1 -0
- package/build/lib/commands/element.d.ts +16 -0
- package/build/lib/commands/element.d.ts.map +1 -0
- package/build/lib/commands/element.js +233 -0
- package/build/lib/commands/element.js.map +1 -0
- package/build/lib/commands/extension.d.ts +124 -0
- package/build/lib/commands/extension.d.ts.map +1 -0
- package/build/lib/commands/extension.js +715 -0
- package/build/lib/commands/extension.js.map +1 -0
- package/build/lib/commands/functions.d.ts +3 -0
- package/build/lib/commands/functions.d.ts.map +1 -0
- package/build/lib/commands/functions.js +194 -0
- package/build/lib/commands/functions.js.map +1 -0
- package/build/lib/commands/index.d.ts +178 -0
- package/build/lib/commands/index.d.ts.map +1 -0
- package/build/lib/commands/index.js +54 -0
- package/build/lib/commands/index.js.map +1 -0
- package/build/lib/commands/powershell.d.ts +6 -0
- package/build/lib/commands/powershell.d.ts.map +1 -0
- package/build/lib/commands/powershell.js +202 -0
- package/build/lib/commands/powershell.js.map +1 -0
- package/build/lib/commands/screen-recorder.d.ts +40 -0
- package/build/lib/commands/screen-recorder.d.ts.map +1 -0
- package/build/lib/commands/screen-recorder.js +183 -0
- package/build/lib/commands/screen-recorder.js.map +1 -0
- package/build/lib/commands/system.d.ts +4 -0
- package/build/lib/commands/system.d.ts.map +1 -0
- package/build/lib/commands/system.js +8 -0
- package/build/lib/commands/system.js.map +1 -0
- package/build/lib/constants.d.ts +3 -0
- package/build/lib/constants.d.ts.map +1 -0
- package/build/lib/constants.js +6 -0
- package/build/lib/constants.js.map +1 -0
- package/build/lib/constraints.d.ts +58 -0
- package/build/lib/constraints.d.ts.map +1 -0
- package/build/lib/constraints.js +60 -0
- package/build/lib/constraints.js.map +1 -0
- package/build/lib/driver.d.ts +36 -0
- package/build/lib/driver.d.ts.map +1 -0
- package/build/lib/driver.js +209 -0
- package/build/lib/driver.js.map +1 -0
- package/build/lib/enums.d.ts +89 -0
- package/build/lib/enums.d.ts.map +1 -0
- package/build/lib/enums.js +83 -0
- package/build/lib/enums.js.map +1 -0
- package/build/lib/mcp/appium-manager.d.ts +8 -0
- package/build/lib/mcp/appium-manager.d.ts.map +1 -0
- package/build/lib/mcp/appium-manager.js +160 -0
- package/build/lib/mcp/appium-manager.js.map +1 -0
- package/build/lib/mcp/config.d.ts +7 -0
- package/build/lib/mcp/config.d.ts.map +1 -0
- package/build/lib/mcp/config.js +14 -0
- package/build/lib/mcp/config.js.map +1 -0
- package/build/lib/mcp/constants.d.ts +3 -0
- package/build/lib/mcp/constants.d.ts.map +1 -0
- package/build/lib/mcp/constants.js +6 -0
- package/build/lib/mcp/constants.js.map +1 -0
- package/build/lib/mcp/errors.d.ts +2 -0
- package/build/lib/mcp/errors.d.ts.map +1 -0
- package/build/lib/mcp/errors.js +10 -0
- package/build/lib/mcp/errors.js.map +1 -0
- package/build/lib/mcp/index.d.ts +3 -0
- package/build/lib/mcp/index.d.ts.map +1 -0
- package/build/lib/mcp/index.js +113 -0
- package/build/lib/mcp/index.js.map +1 -0
- package/build/lib/mcp/session.d.ts +24 -0
- package/build/lib/mcp/session.d.ts.map +1 -0
- package/build/lib/mcp/session.js +77 -0
- package/build/lib/mcp/session.js.map +1 -0
- package/build/lib/mcp/tools/advanced.d.ts +4 -0
- package/build/lib/mcp/tools/advanced.d.ts.map +1 -0
- package/build/lib/mcp/tools/advanced.js +119 -0
- package/build/lib/mcp/tools/advanced.js.map +1 -0
- package/build/lib/mcp/tools/app.d.ts +4 -0
- package/build/lib/mcp/tools/app.d.ts.map +1 -0
- package/build/lib/mcp/tools/app.js +64 -0
- package/build/lib/mcp/tools/app.js.map +1 -0
- package/build/lib/mcp/tools/clipboard.d.ts +4 -0
- package/build/lib/mcp/tools/clipboard.d.ts.map +1 -0
- package/build/lib/mcp/tools/clipboard.js +41 -0
- package/build/lib/mcp/tools/clipboard.js.map +1 -0
- package/build/lib/mcp/tools/find.d.ts +4 -0
- package/build/lib/mcp/tools/find.d.ts.map +1 -0
- package/build/lib/mcp/tools/find.js +119 -0
- package/build/lib/mcp/tools/find.js.map +1 -0
- package/build/lib/mcp/tools/index.d.ts +4 -0
- package/build/lib/mcp/tools/index.d.ts.map +1 -0
- package/build/lib/mcp/tools/index.js +24 -0
- package/build/lib/mcp/tools/index.js.map +1 -0
- package/build/lib/mcp/tools/inspect.d.ts +4 -0
- package/build/lib/mcp/tools/inspect.d.ts.map +1 -0
- package/build/lib/mcp/tools/inspect.js +106 -0
- package/build/lib/mcp/tools/inspect.js.map +1 -0
- package/build/lib/mcp/tools/interact.d.ts +4 -0
- package/build/lib/mcp/tools/interact.d.ts.map +1 -0
- package/build/lib/mcp/tools/interact.js +121 -0
- package/build/lib/mcp/tools/interact.js.map +1 -0
- package/build/lib/mcp/tools/patterns.d.ts +4 -0
- package/build/lib/mcp/tools/patterns.d.ts.map +1 -0
- package/build/lib/mcp/tools/patterns.js +136 -0
- package/build/lib/mcp/tools/patterns.js.map +1 -0
- package/build/lib/mcp/tools/session.d.ts +4 -0
- package/build/lib/mcp/tools/session.d.ts.map +1 -0
- package/build/lib/mcp/tools/session.js +55 -0
- package/build/lib/mcp/tools/session.js.map +1 -0
- package/build/lib/mcp/tools/window.d.ts +4 -0
- package/build/lib/mcp/tools/window.d.ts.map +1 -0
- package/build/lib/mcp/tools/window.js +134 -0
- package/build/lib/mcp/tools/window.js.map +1 -0
- package/build/lib/powershell/common.d.ts +39 -0
- package/build/lib/powershell/common.d.ts.map +1 -0
- package/build/lib/powershell/common.js +121 -0
- package/build/lib/powershell/common.js.map +1 -0
- package/build/lib/powershell/conditions.d.ts +24 -0
- package/build/lib/powershell/conditions.d.ts.map +1 -0
- package/build/lib/powershell/conditions.js +131 -0
- package/build/lib/powershell/conditions.js.map +1 -0
- package/build/lib/powershell/converter.d.ts +3 -0
- package/build/lib/powershell/converter.d.ts.map +1 -0
- package/build/lib/powershell/converter.js +273 -0
- package/build/lib/powershell/converter.js.map +1 -0
- package/build/lib/powershell/core.d.ts +8 -0
- package/build/lib/powershell/core.d.ts.map +1 -0
- package/build/lib/powershell/core.js +30 -0
- package/build/lib/powershell/core.js.map +1 -0
- package/build/lib/powershell/elements.d.ts +70 -0
- package/build/lib/powershell/elements.d.ts.map +1 -0
- package/build/lib/powershell/elements.js +523 -0
- package/build/lib/powershell/elements.js.map +1 -0
- package/build/lib/powershell/index.d.ts +8 -0
- package/build/lib/powershell/index.d.ts.map +1 -0
- package/build/lib/powershell/index.js +24 -0
- package/build/lib/powershell/index.js.map +1 -0
- package/build/lib/powershell/regex.d.ts +19 -0
- package/build/lib/powershell/regex.d.ts.map +1 -0
- package/build/lib/powershell/regex.js +68 -0
- package/build/lib/powershell/regex.js.map +1 -0
- package/build/lib/powershell/types.d.ts +155 -0
- package/build/lib/powershell/types.d.ts.map +1 -0
- package/build/lib/powershell/types.js +141 -0
- package/build/lib/powershell/types.js.map +1 -0
- package/build/lib/util.d.ts +17 -0
- package/build/lib/util.d.ts.map +1 -0
- package/build/lib/util.js +76 -0
- package/build/lib/util.js.map +1 -0
- package/build/lib/winapi/types/index.d.ts +8 -0
- package/build/lib/winapi/types/index.d.ts.map +1 -0
- package/build/lib/winapi/types/index.js +24 -0
- package/build/lib/winapi/types/index.js.map +1 -0
- package/build/lib/winapi/types/input.d.ts +11 -0
- package/build/lib/winapi/types/input.d.ts.map +1 -0
- package/build/lib/winapi/types/input.js +12 -0
- package/build/lib/winapi/types/input.js.map +1 -0
- package/build/lib/winapi/types/keyeventf.d.ts +13 -0
- package/build/lib/winapi/types/keyeventf.d.ts.map +1 -0
- package/build/lib/winapi/types/keyeventf.js +14 -0
- package/build/lib/winapi/types/keyeventf.js.map +1 -0
- package/build/lib/winapi/types/mouseeventf.d.ts +34 -0
- package/build/lib/winapi/types/mouseeventf.d.ts.map +1 -0
- package/build/lib/winapi/types/mouseeventf.js +37 -0
- package/build/lib/winapi/types/mouseeventf.js.map +1 -0
- package/build/lib/winapi/types/scancode.d.ts +95 -0
- package/build/lib/winapi/types/scancode.d.ts.map +1 -0
- package/build/lib/winapi/types/scancode.js +96 -0
- package/build/lib/winapi/types/scancode.js.map +1 -0
- package/build/lib/winapi/types/systemmetric.d.ts +214 -0
- package/build/lib/winapi/types/systemmetric.d.ts.map +1 -0
- package/build/lib/winapi/types/systemmetric.js +215 -0
- package/build/lib/winapi/types/systemmetric.js.map +1 -0
- package/build/lib/winapi/types/virtualkey.d.ts +353 -0
- package/build/lib/winapi/types/virtualkey.d.ts.map +1 -0
- package/build/lib/winapi/types/virtualkey.js +354 -0
- package/build/lib/winapi/types/virtualkey.js.map +1 -0
- package/build/lib/winapi/types/xmousebutton.d.ts +7 -0
- package/build/lib/winapi/types/xmousebutton.d.ts.map +1 -0
- package/build/lib/winapi/types/xmousebutton.js +8 -0
- package/build/lib/winapi/types/xmousebutton.js.map +1 -0
- package/build/lib/winapi/user32.d.ts +56 -0
- package/build/lib/winapi/user32.d.ts.map +1 -0
- package/build/lib/winapi/user32.js +592 -0
- package/build/lib/winapi/user32.js.map +1 -0
- package/build/lib/xpath/core.d.ts +8 -0
- package/build/lib/xpath/core.d.ts.map +1 -0
- package/build/lib/xpath/core.js +593 -0
- package/build/lib/xpath/core.js.map +1 -0
- package/build/lib/xpath/functions.d.ts +4 -0
- package/build/lib/xpath/functions.d.ts.map +1 -0
- package/build/lib/xpath/functions.js +271 -0
- package/build/lib/xpath/functions.js.map +1 -0
- package/build/lib/xpath/index.d.ts +3 -0
- package/build/lib/xpath/index.d.ts.map +1 -0
- package/build/lib/xpath/index.js +19 -0
- package/build/lib/xpath/index.js.map +1 -0
- package/package.json +71 -0
|
@@ -0,0 +1,233 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getProperty = getProperty;
|
|
4
|
+
exports.getAttribute = getAttribute;
|
|
5
|
+
exports.active = active;
|
|
6
|
+
exports.getName = getName;
|
|
7
|
+
exports.getText = getText;
|
|
8
|
+
exports.clear = clear;
|
|
9
|
+
exports.setValue = setValue;
|
|
10
|
+
exports.getElementRect = getElementRect;
|
|
11
|
+
exports.elementDisplayed = elementDisplayed;
|
|
12
|
+
exports.elementSelected = elementSelected;
|
|
13
|
+
exports.elementEnabled = elementEnabled;
|
|
14
|
+
exports.click = click;
|
|
15
|
+
exports.getElementScreenshot = getElementScreenshot;
|
|
16
|
+
const powershell_1 = require("../powershell");
|
|
17
|
+
const base_driver_1 = require("@appium/base-driver");
|
|
18
|
+
const user32_1 = require("../winapi/user32");
|
|
19
|
+
const enums_1 = require("../enums");
|
|
20
|
+
const util_1 = require("../util");
|
|
21
|
+
async function getProperty(propertyName, elementId) {
|
|
22
|
+
return await this.sendPowerShellCommand(new powershell_1.FoundAutomationElement(elementId).buildGetPropertyCommand(propertyName));
|
|
23
|
+
}
|
|
24
|
+
async function getAttribute(propertyName, elementId) {
|
|
25
|
+
this.log.warn('Warning: Use getProperty instead of getAttribute for retrieving element properties.');
|
|
26
|
+
return await this.getProperty(propertyName, elementId);
|
|
27
|
+
}
|
|
28
|
+
async function active() {
|
|
29
|
+
return { [base_driver_1.W3C_ELEMENT_KEY]: await this.sendPowerShellCommand(powershell_1.AutomationElement.focusedElement.buildCommand()) };
|
|
30
|
+
}
|
|
31
|
+
async function getName(elementId) {
|
|
32
|
+
return await this.sendPowerShellCommand(new powershell_1.FoundAutomationElement(elementId).buildGetTagNameCommand());
|
|
33
|
+
}
|
|
34
|
+
async function getText(elementId) {
|
|
35
|
+
return await this.sendPowerShellCommand(new powershell_1.FoundAutomationElement(elementId).buildGetTextCommand());
|
|
36
|
+
}
|
|
37
|
+
async function clear(elementId) {
|
|
38
|
+
await this.sendPowerShellCommand(new powershell_1.FoundAutomationElement(elementId).buildSetValueCommand(''));
|
|
39
|
+
}
|
|
40
|
+
async function setValue(value, elementId) {
|
|
41
|
+
await this.sendPowerShellCommand(new powershell_1.FoundAutomationElement(elementId).buildSetFocusCommand());
|
|
42
|
+
const metaKeyStates = {
|
|
43
|
+
shift: false,
|
|
44
|
+
ctrl: false,
|
|
45
|
+
meta: false,
|
|
46
|
+
alt: false,
|
|
47
|
+
};
|
|
48
|
+
if (!Array.isArray(value)) {
|
|
49
|
+
value = value.split('');
|
|
50
|
+
}
|
|
51
|
+
let keysToSend = [];
|
|
52
|
+
const sendKeysAndResetArray = async () => {
|
|
53
|
+
await this.sendPowerShellCommand(/* ps1 */ `[Windows.Forms.SendKeys]::SendWait(${new powershell_1.PSString(keysToSend.join(''))})`);
|
|
54
|
+
keysToSend = [];
|
|
55
|
+
};
|
|
56
|
+
for (const char of value) {
|
|
57
|
+
switch (char) {
|
|
58
|
+
case enums_1.Key.SHIFT:
|
|
59
|
+
case enums_1.Key.R_SHIFT:
|
|
60
|
+
await sendKeysAndResetArray();
|
|
61
|
+
if (metaKeyStates.shift) {
|
|
62
|
+
metaKeyStates.shift = false;
|
|
63
|
+
await this.handleKeyActionSequence({
|
|
64
|
+
type: 'key',
|
|
65
|
+
id: 'default keyboard',
|
|
66
|
+
actions: [{ type: 'keyUp', value: char }]
|
|
67
|
+
});
|
|
68
|
+
break;
|
|
69
|
+
}
|
|
70
|
+
metaKeyStates.shift = true;
|
|
71
|
+
await this.handleKeyActionSequence({
|
|
72
|
+
type: 'key',
|
|
73
|
+
id: 'default keyboard',
|
|
74
|
+
actions: [{ type: 'keyDown', value: char }]
|
|
75
|
+
});
|
|
76
|
+
break;
|
|
77
|
+
case enums_1.Key.CONTROL:
|
|
78
|
+
case enums_1.Key.R_CONTROL:
|
|
79
|
+
await sendKeysAndResetArray();
|
|
80
|
+
if (metaKeyStates.ctrl) {
|
|
81
|
+
metaKeyStates.ctrl = false;
|
|
82
|
+
await this.handleKeyActionSequence({
|
|
83
|
+
type: 'key',
|
|
84
|
+
id: 'default keyboard',
|
|
85
|
+
actions: [{ type: 'keyUp', value: char }]
|
|
86
|
+
});
|
|
87
|
+
break;
|
|
88
|
+
}
|
|
89
|
+
metaKeyStates.ctrl = true;
|
|
90
|
+
await this.handleKeyActionSequence({
|
|
91
|
+
type: 'key',
|
|
92
|
+
id: 'default keyboard',
|
|
93
|
+
actions: [{ type: 'keyDown', value: char }]
|
|
94
|
+
});
|
|
95
|
+
break;
|
|
96
|
+
case enums_1.Key.META:
|
|
97
|
+
case enums_1.Key.R_META:
|
|
98
|
+
await sendKeysAndResetArray();
|
|
99
|
+
if (metaKeyStates.meta) {
|
|
100
|
+
metaKeyStates.meta = false;
|
|
101
|
+
await this.handleKeyActionSequence({
|
|
102
|
+
type: 'key',
|
|
103
|
+
id: 'default keyboard',
|
|
104
|
+
actions: [{ type: 'keyUp', value: char }]
|
|
105
|
+
});
|
|
106
|
+
break;
|
|
107
|
+
}
|
|
108
|
+
metaKeyStates.meta = true;
|
|
109
|
+
await this.handleKeyActionSequence({
|
|
110
|
+
type: 'key',
|
|
111
|
+
id: 'default keyboard',
|
|
112
|
+
actions: [{ type: 'keyDown', value: char }]
|
|
113
|
+
});
|
|
114
|
+
break;
|
|
115
|
+
case enums_1.Key.ALT:
|
|
116
|
+
case enums_1.Key.R_ALT:
|
|
117
|
+
await sendKeysAndResetArray();
|
|
118
|
+
if (metaKeyStates.alt) {
|
|
119
|
+
metaKeyStates.alt = false;
|
|
120
|
+
await this.handleKeyActionSequence({
|
|
121
|
+
type: 'key',
|
|
122
|
+
id: 'default keyboard',
|
|
123
|
+
actions: [{ type: 'keyUp', value: char }]
|
|
124
|
+
});
|
|
125
|
+
break;
|
|
126
|
+
}
|
|
127
|
+
metaKeyStates.alt = true;
|
|
128
|
+
await this.handleKeyActionSequence({
|
|
129
|
+
type: 'key',
|
|
130
|
+
id: 'default keyboard',
|
|
131
|
+
actions: [{ type: 'keyDown', value: char }]
|
|
132
|
+
});
|
|
133
|
+
break;
|
|
134
|
+
default:
|
|
135
|
+
if (char.charCodeAt(0) >= 0xE000) {
|
|
136
|
+
await sendKeysAndResetArray();
|
|
137
|
+
await this.handleKeyActionSequence({
|
|
138
|
+
type: 'key',
|
|
139
|
+
id: 'default keyboard',
|
|
140
|
+
actions: [{ type: 'keyDown', value: char }, { type: 'keyUp', value: char }]
|
|
141
|
+
});
|
|
142
|
+
}
|
|
143
|
+
else {
|
|
144
|
+
keysToSend.push(char.replace(/[+^%~()]/, '{$&}'));
|
|
145
|
+
}
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
await sendKeysAndResetArray();
|
|
149
|
+
}
|
|
150
|
+
async function getElementRect(elementId) {
|
|
151
|
+
const result = await this.sendPowerShellCommand(new powershell_1.FoundAutomationElement(elementId).buildGetElementRectCommand());
|
|
152
|
+
const rootRectJson = await this.sendPowerShellCommand(powershell_1.AutomationElement.automationRoot.buildGetElementRectCommand());
|
|
153
|
+
const rootRect = JSON.parse(rootRectJson.replaceAll(/(?:infinity)/gi, 0x7FFFFFFF.toString()));
|
|
154
|
+
const rect = JSON.parse(result.replaceAll(/(?:infinity)/gi, 0x7FFFFFFF.toString()));
|
|
155
|
+
rect.x -= rootRect.x;
|
|
156
|
+
rect.y -= rootRect.y;
|
|
157
|
+
rect.x = Math.min(0x7FFFFFFF, rect.x);
|
|
158
|
+
rect.y = Math.min(0x7FFFFFFF, rect.y);
|
|
159
|
+
return rect;
|
|
160
|
+
}
|
|
161
|
+
async function elementDisplayed(elementId) {
|
|
162
|
+
const result = await this.sendPowerShellCommand(new powershell_1.FoundAutomationElement(elementId).buildGetPropertyCommand(powershell_1.Property.IS_OFFSCREEN));
|
|
163
|
+
return result.toLowerCase() === 'true' ? false : true;
|
|
164
|
+
}
|
|
165
|
+
// TODO: find better way to handle whether to use select or toggle
|
|
166
|
+
async function elementSelected(elementId) {
|
|
167
|
+
try {
|
|
168
|
+
const result = await this.sendPowerShellCommand(new powershell_1.FoundAutomationElement(elementId).buildIsSelectedCommand());
|
|
169
|
+
return result === 'True';
|
|
170
|
+
}
|
|
171
|
+
catch {
|
|
172
|
+
const result = await this.sendPowerShellCommand(new powershell_1.FoundAutomationElement(elementId).buildGetToggleStateCommand());
|
|
173
|
+
return result === 'On';
|
|
174
|
+
}
|
|
175
|
+
}
|
|
176
|
+
async function elementEnabled(elementId) {
|
|
177
|
+
const result = await this.sendPowerShellCommand(new powershell_1.FoundAutomationElement(elementId).buildGetPropertyCommand(powershell_1.Property.IS_ENABLED));
|
|
178
|
+
return result.toLowerCase() === 'true' ? true : false;
|
|
179
|
+
}
|
|
180
|
+
async function click(elementId) {
|
|
181
|
+
const easingFunction = this.caps.smoothPointerMove;
|
|
182
|
+
const element = new powershell_1.FoundAutomationElement(elementId);
|
|
183
|
+
const focusCondition = new powershell_1.AndCondition(new powershell_1.PropertyCondition(powershell_1.Property.IS_KEYBOARD_FOCUSABLE, new powershell_1.PSBoolean(true)), new powershell_1.OrCondition(new powershell_1.PropertyCondition(powershell_1.Property.CONTROL_TYPE, new powershell_1.PSControlType(powershell_1.ControlType.PANE)), new powershell_1.PropertyCondition(powershell_1.Property.CONTROL_TYPE, new powershell_1.PSControlType(powershell_1.ControlType.WINDOW))));
|
|
184
|
+
try {
|
|
185
|
+
const focusableElementId = await this.sendPowerShellCommand(element.findFirst(powershell_1.TreeScope.ANCESTORS_OR_SELF, focusCondition).buildCommand());
|
|
186
|
+
await this.sendPowerShellCommand(new powershell_1.FoundAutomationElement(focusableElementId.trim()).buildSetFocusCommand());
|
|
187
|
+
}
|
|
188
|
+
catch {
|
|
189
|
+
// ignore if it fails, focus may fail if there is a forced popup window
|
|
190
|
+
}
|
|
191
|
+
const coordinates = {
|
|
192
|
+
x: undefined,
|
|
193
|
+
y: undefined,
|
|
194
|
+
};
|
|
195
|
+
try {
|
|
196
|
+
const clickablePointJson = await this.sendPowerShellCommand(element.buildGetPropertyCommand(powershell_1.Property.CLICKABLE_POINT));
|
|
197
|
+
const clickablePoint = JSON.parse(clickablePointJson.replaceAll(/(?:infinity)/gi, 0x7FFFFFFF.toString()));
|
|
198
|
+
coordinates.x = clickablePoint.x;
|
|
199
|
+
coordinates.y = clickablePoint.y;
|
|
200
|
+
}
|
|
201
|
+
catch {
|
|
202
|
+
const rectJson = await this.sendPowerShellCommand(element.buildGetElementRectCommand());
|
|
203
|
+
const rect = JSON.parse(rectJson.replaceAll(/(?:infinity)/gi, 0x7FFFFFFF.toString()));
|
|
204
|
+
coordinates.x = rect.x + rect.width / 2;
|
|
205
|
+
coordinates.y = rect.y + rect.height / 2;
|
|
206
|
+
}
|
|
207
|
+
await (0, user32_1.mouseMoveAbsolute)(coordinates.x, coordinates.y, this.caps.delayBeforeClick ?? 0, easingFunction);
|
|
208
|
+
(0, user32_1.mouseDown)();
|
|
209
|
+
(0, user32_1.mouseUp)();
|
|
210
|
+
if (this.caps.delayAfterClick) {
|
|
211
|
+
await (0, util_1.sleep)(this.caps.delayAfterClick ?? 0);
|
|
212
|
+
}
|
|
213
|
+
}
|
|
214
|
+
const GET_ELEMENT_SCREENSHOT_COMMAND = (0, powershell_1.pwsh$ /* ps1 */) `
|
|
215
|
+
$element = ${0}
|
|
216
|
+
$rect = $element.Current.BoundingRectangle
|
|
217
|
+
$bitmap = New-Object Drawing.Bitmap([int32]$rect.Width, [int32]$rect.Height)
|
|
218
|
+
$graphics = [Drawing.Graphics]::FromImage($bitmap)
|
|
219
|
+
$graphics.CopyFromScreen([int32]$rect.Left, [int32]$rect.Top, 0, 0, $bitmap.Size)
|
|
220
|
+
$graphics.Dispose()
|
|
221
|
+
$stream = New-Object IO.MemoryStream
|
|
222
|
+
$bitmap.Save($stream, [Drawing.Imaging.ImageFormat]::Png)
|
|
223
|
+
$bitmap.Dispose()
|
|
224
|
+
[Convert]::ToBase64String($stream.ToArray())
|
|
225
|
+
`;
|
|
226
|
+
async function getElementScreenshot(elementId) {
|
|
227
|
+
const rootId = (await this.sendPowerShellCommand(powershell_1.AutomationElement.automationRoot.buildCommand())).trim();
|
|
228
|
+
if (!rootId) {
|
|
229
|
+
throw new base_driver_1.errors.NoSuchWindowError('No active window found for this session.');
|
|
230
|
+
}
|
|
231
|
+
return await this.sendPowerShellCommand(GET_ELEMENT_SCREENSHOT_COMMAND.format(new powershell_1.FoundAutomationElement(elementId)));
|
|
232
|
+
}
|
|
233
|
+
//# sourceMappingURL=element.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"element.js","sourceRoot":"","sources":["../../../lib/commands/element.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
import { Element } from '@appium/types';
|
|
2
|
+
import { NovaWindowsDriver } from '../driver';
|
|
3
|
+
import { ClickType, Enum } from '../enums';
|
|
4
|
+
import { UploadOptions } from './screen-recorder';
|
|
5
|
+
declare const ContentType: Readonly<{
|
|
6
|
+
readonly PLAINTEXT: "plaintext";
|
|
7
|
+
readonly IMAGE: "image";
|
|
8
|
+
}>;
|
|
9
|
+
type ContentType = Enum<typeof ContentType>;
|
|
10
|
+
type KeyAction = {
|
|
11
|
+
pause?: number;
|
|
12
|
+
text?: string;
|
|
13
|
+
virtualKeyCode?: number;
|
|
14
|
+
down?: boolean;
|
|
15
|
+
};
|
|
16
|
+
export declare function execute(this: NovaWindowsDriver, script: string, args: any[]): Promise<any>;
|
|
17
|
+
type CacheRequest = {
|
|
18
|
+
treeScope?: string;
|
|
19
|
+
treeFilter?: string;
|
|
20
|
+
automationElementMode?: string;
|
|
21
|
+
};
|
|
22
|
+
export declare function pushCacheRequest(this: NovaWindowsDriver, cacheRequest: CacheRequest): Promise<void>;
|
|
23
|
+
export declare function patternInvoke(this: NovaWindowsDriver, element: Element): Promise<void>;
|
|
24
|
+
export declare function patternExpand(this: NovaWindowsDriver, element: Element): Promise<void>;
|
|
25
|
+
export declare function patternCollapse(this: NovaWindowsDriver, element: Element): Promise<void>;
|
|
26
|
+
export declare function patternScrollIntoView(this: NovaWindowsDriver, element: Element): Promise<void>;
|
|
27
|
+
export declare function patternIsMultiple(this: NovaWindowsDriver, element: Element): Promise<boolean>;
|
|
28
|
+
export declare function patternGetSelectedItem(this: NovaWindowsDriver, element: Element): Promise<Element>;
|
|
29
|
+
export declare function patternGetAllSelectedItems(this: NovaWindowsDriver, element: Element): Promise<Element[]>;
|
|
30
|
+
export declare function patternAddToSelection(this: NovaWindowsDriver, element: Element): Promise<void>;
|
|
31
|
+
export declare function patternRemoveFromSelection(this: NovaWindowsDriver, element: Element): Promise<void>;
|
|
32
|
+
export declare function patternSelect(this: NovaWindowsDriver, element: Element): Promise<void>;
|
|
33
|
+
export declare function patternToggle(this: NovaWindowsDriver, element: Element): Promise<void>;
|
|
34
|
+
export declare function patternSetValue(this: NovaWindowsDriver, element: Element, value: string): Promise<void>;
|
|
35
|
+
export declare function patternGetValue(this: NovaWindowsDriver, element: Element): Promise<string>;
|
|
36
|
+
export declare function patternMaximize(this: NovaWindowsDriver, element: Element): Promise<void>;
|
|
37
|
+
export declare function patternMinimize(this: NovaWindowsDriver, element: Element): Promise<void>;
|
|
38
|
+
export declare function patternRestore(this: NovaWindowsDriver, element: Element): Promise<void>;
|
|
39
|
+
export declare function patternClose(this: NovaWindowsDriver, element: Element): Promise<void>;
|
|
40
|
+
export declare function windowsCloseApp(this: NovaWindowsDriver): Promise<void>;
|
|
41
|
+
export declare function windowsLaunchApp(this: NovaWindowsDriver): Promise<void>;
|
|
42
|
+
export declare function focusElement(this: NovaWindowsDriver, element: Element): Promise<void>;
|
|
43
|
+
export declare function getClipboardBase64(this: NovaWindowsDriver, contentType?: ContentType | {
|
|
44
|
+
contentType?: ContentType;
|
|
45
|
+
}): Promise<string>;
|
|
46
|
+
export declare function setClipboardFromBase64(this: NovaWindowsDriver, args: {
|
|
47
|
+
contentType?: ContentType;
|
|
48
|
+
b64Content: string;
|
|
49
|
+
}): Promise<string>;
|
|
50
|
+
export declare function executePowerShellScript(this: NovaWindowsDriver, script: string | {
|
|
51
|
+
script: string;
|
|
52
|
+
command: undefined;
|
|
53
|
+
} | {
|
|
54
|
+
script: undefined;
|
|
55
|
+
command: string;
|
|
56
|
+
}): Promise<string>;
|
|
57
|
+
export declare function executeKeys(this: NovaWindowsDriver, keyActions: {
|
|
58
|
+
actions: KeyAction | KeyAction[];
|
|
59
|
+
forceUnicode: boolean;
|
|
60
|
+
}): Promise<void>;
|
|
61
|
+
export declare function executeClick(this: NovaWindowsDriver, clickArgs: {
|
|
62
|
+
elementId?: string;
|
|
63
|
+
x?: number;
|
|
64
|
+
y?: number;
|
|
65
|
+
button?: ClickType;
|
|
66
|
+
modifierKeys?: ('shift' | 'ctrl' | 'alt' | 'win') | ('shift' | 'ctrl' | 'alt' | 'win')[];
|
|
67
|
+
durationMs?: number;
|
|
68
|
+
times?: number;
|
|
69
|
+
interClickDelayMs?: number;
|
|
70
|
+
}): Promise<void>;
|
|
71
|
+
export declare function executeHover(this: NovaWindowsDriver, hoverArgs: {
|
|
72
|
+
startElementId?: string;
|
|
73
|
+
startX?: number;
|
|
74
|
+
startY?: number;
|
|
75
|
+
endElementId?: string;
|
|
76
|
+
endX?: number;
|
|
77
|
+
endY?: number;
|
|
78
|
+
modifierKeys?: ('shift' | 'ctrl' | 'alt' | 'win') | ('shift' | 'ctrl' | 'alt' | 'win')[];
|
|
79
|
+
durationMs?: number;
|
|
80
|
+
}): Promise<void>;
|
|
81
|
+
export declare function executeScroll(this: NovaWindowsDriver, scrollArgs: {
|
|
82
|
+
elementId?: string;
|
|
83
|
+
x?: number;
|
|
84
|
+
y?: number;
|
|
85
|
+
deltaX?: number;
|
|
86
|
+
deltaY?: number;
|
|
87
|
+
modifierKeys?: ('shift' | 'ctrl' | 'alt' | 'win') | ('shift' | 'ctrl' | 'alt' | 'win')[];
|
|
88
|
+
}): Promise<void>;
|
|
89
|
+
export declare function startRecordingScreen(this: NovaWindowsDriver, args?: {
|
|
90
|
+
outputPath?: string;
|
|
91
|
+
timeLimit?: number;
|
|
92
|
+
videoFps?: number;
|
|
93
|
+
videoFilter?: string;
|
|
94
|
+
preset?: string;
|
|
95
|
+
captureCursor?: boolean;
|
|
96
|
+
captureClicks?: boolean;
|
|
97
|
+
audioInput?: string;
|
|
98
|
+
forceRestart?: boolean;
|
|
99
|
+
}): Promise<void>;
|
|
100
|
+
export declare function stopRecordingScreen(this: NovaWindowsDriver, args?: UploadOptions): Promise<string>;
|
|
101
|
+
export declare function deleteFile(this: NovaWindowsDriver, args: {
|
|
102
|
+
path: string;
|
|
103
|
+
}): Promise<void>;
|
|
104
|
+
export declare function deleteFolder(this: NovaWindowsDriver, args: {
|
|
105
|
+
path: string;
|
|
106
|
+
recursive?: boolean;
|
|
107
|
+
}): Promise<void>;
|
|
108
|
+
export declare function executeClickAndDrag(this: NovaWindowsDriver, dragArgs: {
|
|
109
|
+
startElementId?: string;
|
|
110
|
+
startX?: number;
|
|
111
|
+
startY?: number;
|
|
112
|
+
endElementId?: string;
|
|
113
|
+
endX?: number;
|
|
114
|
+
endY?: number;
|
|
115
|
+
modifierKeys?: ('shift' | 'ctrl' | 'alt' | 'win') | ('shift' | 'ctrl' | 'alt' | 'win')[];
|
|
116
|
+
durationMs?: number;
|
|
117
|
+
button?: ClickType;
|
|
118
|
+
}): Promise<void>;
|
|
119
|
+
export declare function windowsGetDeviceTime(this: NovaWindowsDriver, args?: {
|
|
120
|
+
format?: string;
|
|
121
|
+
}): Promise<string>;
|
|
122
|
+
export declare function getWindowElement(this: NovaWindowsDriver): Promise<Element>;
|
|
123
|
+
export {};
|
|
124
|
+
//# sourceMappingURL=extension.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"extension.d.ts","sourceRoot":"","sources":["../../../lib/commands/extension.ts"],"names":[],"mappings":"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"}
|