appium-novawindows2-driver 0.2.26 → 0.2.28
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/README.md +106 -13
- package/build/lib/commands/extension.d.ts +12 -0
- package/build/lib/commands/extension.d.ts.map +1 -1
- package/build/lib/commands/extension.js +105 -12
- package/build/lib/commands/extension.js.map +1 -1
- package/build/lib/commands/index.d.ts +12 -0
- package/build/lib/commands/index.d.ts.map +1 -1
- package/build/lib/powershell/{uiaHelper.d.ts → uiahelper.d.ts} +1 -1
- package/build/lib/powershell/uiahelper.d.ts.map +1 -0
- package/build/lib/powershell/{uiaHelper.js → uiahelper.js} +1 -1
- package/build/lib/powershell/{uiaHelper.js.map → uiahelper.js.map} +1 -1
- package/build/lib/winapi/user32.d.ts +1 -1
- package/build/lib/winapi/user32.d.ts.map +1 -1
- package/build/lib/winapi/user32.js +13 -4
- package/build/lib/winapi/user32.js.map +1 -1
- package/build/tsconfig.tsbuildinfo +1 -1
- package/package.json +1 -1
- package/build/lib/commands/app copy.d.ts +0 -12
- package/build/lib/commands/app copy.d.ts.map +0 -1
- package/build/lib/commands/app copy.js +0 -251
- package/build/lib/commands/app copy.js.map +0 -1
- package/build/lib/powershell/uiaHelper.d.ts.map +0 -1
package/README.md
CHANGED
|
@@ -53,7 +53,7 @@ NovaWindows2 Driver supports the following capabilities:
|
|
|
53
53
|
| :--- | :--- | :--- | :--- |
|
|
54
54
|
| `platformName` | Must be set to `Windows` (case-insensitive). | (Required) | `Windows` |
|
|
55
55
|
| `automationName` | Must be set to `NovaWindows2` (case-insensitive). | (Required) | `NovaWindows2` |
|
|
56
|
-
| `smoothPointerMove` | CSS-like easing function (including valid Bezier curve). This controls the smooth movement of the mouse for `delayBeforeClick` ms. | (None) | `ease-in`, `cubic-bezier(0.42, 0, 0.58, 1)` |
|
|
56
|
+
| `smoothPointerMove` | CSS-like easing function (including valid Bezier curve). This controls the smooth movement of the mouse for `delayBeforeClick` ms. | (None) | `ease-in`, `linear`, `ease`, `ease-in`, `ease-out`, `ease-in-out`, `cubic-bezier(0.42, 0, 0.58, 1)` |
|
|
57
57
|
| `delayBeforeClick` | Time in milliseconds before a click is performed. | `0` | `500` |
|
|
58
58
|
| `delayAfterClick` | Time in milliseconds after a click is performed. | `0` | `500` |
|
|
59
59
|
| `appTopLevelWindow` | The handle of an existing application top-level window to attach to. It can be a number or string (not necessarily hexadecimal). | (None) | `12345`, `0x12345` |
|
|
@@ -114,9 +114,9 @@ Retrieve comprehensive details about UI elements using standard or bulk methods.
|
|
|
114
114
|
- **Bulk Retrieval**: Use the `"all"` keyword to get 80+ properties in a single JSON object.
|
|
115
115
|
- **Dotted Names**: Access pattern-specific properties directly (e.g., `Window.CanMaximize`, `LegacyIAccessible.Name`).
|
|
116
116
|
|
|
117
|
-
```
|
|
118
|
-
|
|
119
|
-
|
|
117
|
+
```python
|
|
118
|
+
# getAttributes returns all properties as a JSON string
|
|
119
|
+
all_attributes = element.get_attribute("all")
|
|
120
120
|
```
|
|
121
121
|
|
|
122
122
|
### PowerShell Execution
|
|
@@ -124,15 +124,15 @@ Execute internal PowerShell scripts or commands directly from your test. This re
|
|
|
124
124
|
|
|
125
125
|
It is possible to execute a single PowerShell command or a whole script. Note that `powerShell` is case-insensitive.
|
|
126
126
|
|
|
127
|
-
```
|
|
128
|
-
|
|
129
|
-
|
|
127
|
+
```python
|
|
128
|
+
# Execute a command string
|
|
129
|
+
driver.execute_script('powerShell', {'command': 'Get-Process Notepad'})
|
|
130
130
|
|
|
131
|
-
|
|
132
|
-
|
|
131
|
+
# Execute a script string
|
|
132
|
+
driver.execute_script('powerShell', {'script': '$p = Get-Process Notepad; $p.Kill();'})
|
|
133
133
|
|
|
134
|
-
|
|
135
|
-
|
|
134
|
+
# Shorthand (executes as command/script depending on context)
|
|
135
|
+
driver.execute_script('powerShell', 'Get-Process')
|
|
136
136
|
```
|
|
137
137
|
|
|
138
138
|
### Enhanced Text Input
|
|
@@ -169,12 +169,81 @@ This is a shortcut for a single mouse click gesture.
|
|
|
169
169
|
| `interClickDelayMs` | `number` | no | Duration of the pause between each click gesture. Only makes sense if `times` is greater than one. 100ms by default. | `10` |
|
|
170
170
|
|
|
171
171
|
#### Usage
|
|
172
|
+
|
|
173
|
+
**Scenario 1: Using Element ID (Clicks Center)**
|
|
172
174
|
```python
|
|
173
175
|
driver.execute_script('windows: click', {
|
|
174
176
|
'elementId': element.id,
|
|
175
177
|
'button': 'right',
|
|
176
|
-
'times': 2
|
|
177
|
-
|
|
178
|
+
'times': 2
|
|
179
|
+
})
|
|
180
|
+
```
|
|
181
|
+
|
|
182
|
+
**Scenario 2: Using Absolute Coordinates**
|
|
183
|
+
```python
|
|
184
|
+
driver.execute_script('windows: click', {
|
|
185
|
+
'x': 500,
|
|
186
|
+
'y': 300,
|
|
187
|
+
'button': 'left'
|
|
188
|
+
})
|
|
189
|
+
```
|
|
190
|
+
|
|
191
|
+
**Scenario 3: Using Element ID with Offset (Relative to Top-Left)**
|
|
192
|
+
```python
|
|
193
|
+
driver.execute_script('windows: click', {
|
|
194
|
+
'elementId': element.id,
|
|
195
|
+
'x': 10, # 10px from the left edge of the element
|
|
196
|
+
'y': 10 # 10px from the top edge of the element
|
|
197
|
+
})
|
|
198
|
+
```
|
|
199
|
+
|
|
200
|
+
#### `windows: clickAndDrag`
|
|
201
|
+
Performs a click-and-drag gesture.
|
|
202
|
+
|
|
203
|
+
| Name | Type | Required | Description | Example |
|
|
204
|
+
| :--- | :--- | :--- | :--- | :--- |
|
|
205
|
+
| `startElementId` | `string` | no | Hexadecimal identifier of the start element. Either this OR both `startX` and `startY` must be provided. | `123e4567-e89b...` |
|
|
206
|
+
| `startX` | `number` | no | Horizontal coordinate of the start point. Required if `startElementId` is missing. | `100` |
|
|
207
|
+
| `startY` | `number` | no | Vertical coordinate of the start point. Required if `startElementId` is missing. | `100` |
|
|
208
|
+
| `endElementId` | `string` | no | Hexadecimal identifier of the end element. Either this OR both `endX` and `endY` must be provided. | `123e4567-e89b...` |
|
|
209
|
+
| `endX` | `number` | no | Horizontal coordinate of the end point. Required if `endElementId` is missing. | `200` |
|
|
210
|
+
| `endY` | `number` | no | Vertical coordinate of the end point. Required if `endElementId` is missing. | `200` |
|
|
211
|
+
| `durationMs` | `number` | no | Duration of the drag in milliseconds. Default is `1000`. | `2000` |
|
|
212
|
+
| `button` | `string` | no | Mouse button to use (`left`, `right`, `middle`). Default is `left`. | `right` |
|
|
213
|
+
| `smoothPointerMove` | `string` | no | CSS-like easing function (e.g., `linear`, `ease-out`) for smooth movement. Default is `None`. | `linear` |
|
|
214
|
+
| `modifierKeys` | `string[]` \| `string` | no | Keys to hold during the drag. | `shift` |
|
|
215
|
+
|
|
216
|
+
#### Usage
|
|
217
|
+
|
|
218
|
+
**Scenario 1: Element to Element (Center to Center)**
|
|
219
|
+
```python
|
|
220
|
+
driver.execute_script('windows: clickAndDrag', {
|
|
221
|
+
'startElementId': element1.id,
|
|
222
|
+
'endElementId': element2.id,
|
|
223
|
+
'durationMs': 2000
|
|
224
|
+
})
|
|
225
|
+
```
|
|
226
|
+
|
|
227
|
+
**Scenario 2: Absolute Coordinates**
|
|
228
|
+
```python
|
|
229
|
+
driver.execute_script('windows: clickAndDrag', {
|
|
230
|
+
'startX': 100,
|
|
231
|
+
'startY': 100,
|
|
232
|
+
'endX': 500,
|
|
233
|
+
'endY': 500,
|
|
234
|
+
'smoothPointerMove': 'linear'
|
|
235
|
+
})
|
|
236
|
+
```
|
|
237
|
+
|
|
238
|
+
**Scenario 3: Element with Offset (Drag from specific point inside element)**
|
|
239
|
+
```python
|
|
240
|
+
driver.execute_script('windows: clickAndDrag', {
|
|
241
|
+
'startElementId': element1.id,
|
|
242
|
+
'startX': 10, # Start 10px from left of element1
|
|
243
|
+
'startY': 10, # Start 10px from top of element1
|
|
244
|
+
'endElementId': element2.id,
|
|
245
|
+
'endX': 50, # End 50px from left of element2
|
|
246
|
+
'endY': 50 # End 50px from top of element2
|
|
178
247
|
})
|
|
179
248
|
```
|
|
180
249
|
|
|
@@ -214,6 +283,8 @@ This is a shortcut for a hover gesture.
|
|
|
214
283
|
| `durationMs` | `number` | no | The number of milliseconds between moving the cursor from the starting to the ending hover point. 500ms by default. | `700` |
|
|
215
284
|
|
|
216
285
|
#### Usage
|
|
286
|
+
|
|
287
|
+
**Scenario 1: Element to Element (Center to Center)**
|
|
217
288
|
```python
|
|
218
289
|
driver.execute_script('windows: hover', {
|
|
219
290
|
'startElementId': element1.id,
|
|
@@ -222,6 +293,28 @@ driver.execute_script('windows: hover', {
|
|
|
222
293
|
})
|
|
223
294
|
```
|
|
224
295
|
|
|
296
|
+
**Scenario 2: Absolute Coordinates**
|
|
297
|
+
```python
|
|
298
|
+
driver.execute_script('windows: hover', {
|
|
299
|
+
'startX': 100,
|
|
300
|
+
'startY': 100,
|
|
301
|
+
'endX': 500,
|
|
302
|
+
'endY': 500
|
|
303
|
+
})
|
|
304
|
+
```
|
|
305
|
+
|
|
306
|
+
**Scenario 3: Element with Offset (Hover specific point)**
|
|
307
|
+
```python
|
|
308
|
+
driver.execute_script('windows: hover', {
|
|
309
|
+
'startElementId': element1.id,
|
|
310
|
+
'startX': 5,
|
|
311
|
+
'startY': 5,
|
|
312
|
+
'endElementId': element2.id,
|
|
313
|
+
'endX': 5,
|
|
314
|
+
'endY': 5
|
|
315
|
+
})
|
|
316
|
+
```
|
|
317
|
+
|
|
225
318
|
### Keyboard
|
|
226
319
|
|
|
227
320
|
#### `windows: typeDelay`
|
|
@@ -92,5 +92,17 @@ export declare function getAttributes(this: NovaWindows2Driver, arg: any): Promi
|
|
|
92
92
|
export declare function typeDelay(this: NovaWindows2Driver, args: {
|
|
93
93
|
delay: number | string;
|
|
94
94
|
} | string | number | undefined): Promise<void>;
|
|
95
|
+
export declare function executeClickAndDrag(this: NovaWindows2Driver, clickAndDragArgs: {
|
|
96
|
+
startElementId?: string;
|
|
97
|
+
startX?: number;
|
|
98
|
+
startY?: number;
|
|
99
|
+
endElementId?: string;
|
|
100
|
+
endX?: number;
|
|
101
|
+
endY?: number;
|
|
102
|
+
modifierKeys?: ('shift' | 'ctrl' | 'alt' | 'win') | ('shift' | 'ctrl' | 'alt' | 'win')[];
|
|
103
|
+
durationMs?: number;
|
|
104
|
+
button?: ClickType;
|
|
105
|
+
smoothPointerMove?: string;
|
|
106
|
+
}): Promise<void>;
|
|
95
107
|
export {};
|
|
96
108
|
//# sourceMappingURL=extension.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"extension.d.ts","sourceRoot":"","sources":["../../../lib/commands/extension.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAQ,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AAgB/C,OAAO,EACH,iBAAiB,EAWpB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,SAAS,EAAE,IAAI,EAAO,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"extension.d.ts","sourceRoot":"","sources":["../../../lib/commands/extension.ts"],"names":[],"mappings":"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"}
|
|
@@ -31,6 +31,7 @@ exports.executeScroll = executeScroll;
|
|
|
31
31
|
exports.activateProcess = activateProcess;
|
|
32
32
|
exports.getAttributes = getAttributes;
|
|
33
33
|
exports.typeDelay = typeDelay;
|
|
34
|
+
exports.executeClickAndDrag = executeClickAndDrag;
|
|
34
35
|
const base_driver_1 = require("@appium/base-driver");
|
|
35
36
|
const util_1 = require("../util");
|
|
36
37
|
const constants_1 = require("../constants");
|
|
@@ -68,6 +69,7 @@ const EXTENSION_COMMANDS = Object.freeze({
|
|
|
68
69
|
setProcessForeground: 'activateProcess',
|
|
69
70
|
getAttributes: 'getAttributes',
|
|
70
71
|
typeDelay: 'typeDelay',
|
|
72
|
+
clickAndDrag: 'executeClickAndDrag',
|
|
71
73
|
});
|
|
72
74
|
const ContentType = Object.freeze({
|
|
73
75
|
PLAINTEXT: 'plaintext',
|
|
@@ -125,7 +127,6 @@ async function execute(script, args) {
|
|
|
125
127
|
}
|
|
126
128
|
if (script === 'arguments[0].scrollIntoView()') {
|
|
127
129
|
const element = args[0];
|
|
128
|
-
// basic validation
|
|
129
130
|
if (!element || typeof element !== 'object') {
|
|
130
131
|
throw new base_driver_1.errors.InvalidArgumentError('First argument must be an element object.');
|
|
131
132
|
}
|
|
@@ -380,8 +381,8 @@ async function executeKeys(keyActions) {
|
|
|
380
381
|
}
|
|
381
382
|
async function executeClick(clickArgs) {
|
|
382
383
|
const { elementId, x, y, button = enums_1.ClickType.LEFT, modifierKeys = [], durationMs = 0, times = 1, interClickDelayMs = 100, } = clickArgs;
|
|
383
|
-
if ((x
|
|
384
|
-
throw new base_driver_1.errors.InvalidArgumentError('
|
|
384
|
+
if (!elementId && (x == null || y == null)) {
|
|
385
|
+
throw new base_driver_1.errors.InvalidArgumentError('Either elementId or both x and y must be provided.');
|
|
385
386
|
}
|
|
386
387
|
let pos;
|
|
387
388
|
if (elementId) {
|
|
@@ -453,11 +454,11 @@ async function executeClick(clickArgs) {
|
|
|
453
454
|
}
|
|
454
455
|
async function executeHover(hoverArgs) {
|
|
455
456
|
const { startElementId, startX, startY, endElementId, endX, endY, modifierKeys = [], durationMs = 500, } = hoverArgs;
|
|
456
|
-
if ((startX
|
|
457
|
-
throw new base_driver_1.errors.InvalidArgumentError('
|
|
457
|
+
if (!startElementId && (startX == null || startY == null)) {
|
|
458
|
+
throw new base_driver_1.errors.InvalidArgumentError('Either startElementId or both startX and startY must be provided.');
|
|
458
459
|
}
|
|
459
|
-
if ((endX
|
|
460
|
-
throw new base_driver_1.errors.InvalidArgumentError('
|
|
460
|
+
if (!endElementId && (endX == null || endY == null)) {
|
|
461
|
+
throw new base_driver_1.errors.InvalidArgumentError('Either endElementId or both endX and endY must be provided.');
|
|
461
462
|
}
|
|
462
463
|
const processesModifierKeys = Array.isArray(modifierKeys) ? modifierKeys : [modifierKeys];
|
|
463
464
|
let startPos;
|
|
@@ -529,11 +530,8 @@ async function executeHover(hoverArgs) {
|
|
|
529
530
|
}
|
|
530
531
|
async function executeScroll(scrollArgs) {
|
|
531
532
|
const { elementId, x, y, deltaX, deltaY, modifierKeys = [], } = scrollArgs;
|
|
532
|
-
if (
|
|
533
|
-
throw new base_driver_1.errors.InvalidArgumentError('Either elementId or x and y must be provided.');
|
|
534
|
-
}
|
|
535
|
-
if ((x !== null && x !== undefined) !== (y !== null && y !== undefined)) {
|
|
536
|
-
throw new base_driver_1.errors.InvalidArgumentError('Both x and y must be provided.');
|
|
533
|
+
if (!elementId && (x == null || y == null)) {
|
|
534
|
+
throw new base_driver_1.errors.InvalidArgumentError('Either elementId or both x and y must be provided.');
|
|
537
535
|
}
|
|
538
536
|
const processesModifierKeys = Array.isArray(modifierKeys) ? modifierKeys : [modifierKeys];
|
|
539
537
|
let pos;
|
|
@@ -619,4 +617,99 @@ async function typeDelay(args) {
|
|
|
619
617
|
}
|
|
620
618
|
this.caps.typeDelay = delay;
|
|
621
619
|
}
|
|
620
|
+
async function executeClickAndDrag(clickAndDragArgs) {
|
|
621
|
+
const { startElementId, startX, startY, endElementId, endX, endY, modifierKeys = [], durationMs = 1000, button = enums_1.ClickType.LEFT, smoothPointerMove, } = clickAndDragArgs;
|
|
622
|
+
if (!startElementId && (startX == null || startY == null)) {
|
|
623
|
+
throw new base_driver_1.errors.InvalidArgumentError('Either startElementId or both startX and startY must be provided.');
|
|
624
|
+
}
|
|
625
|
+
if (!endElementId && (endX == null || endY == null)) {
|
|
626
|
+
throw new base_driver_1.errors.InvalidArgumentError('Either endElementId or both endX and endY must be provided.');
|
|
627
|
+
}
|
|
628
|
+
const clickTypeToButtonMapping = {
|
|
629
|
+
[enums_1.ClickType.LEFT]: 0,
|
|
630
|
+
[enums_1.ClickType.MIDDLE]: 1,
|
|
631
|
+
[enums_1.ClickType.RIGHT]: 2,
|
|
632
|
+
[enums_1.ClickType.BACK]: 3,
|
|
633
|
+
[enums_1.ClickType.FORWARD]: 4
|
|
634
|
+
};
|
|
635
|
+
const mouseButton = clickTypeToButtonMapping[button];
|
|
636
|
+
if (mouseButton === undefined) {
|
|
637
|
+
throw new base_driver_1.errors.InvalidArgumentError(`Invalid button '${button}'. Supported values are 'left', 'middle', 'right', 'back', 'forward'.`);
|
|
638
|
+
}
|
|
639
|
+
const processesModifierKeys = Array.isArray(modifierKeys) ? modifierKeys : [modifierKeys];
|
|
640
|
+
// Calculate Start Position
|
|
641
|
+
let startPos;
|
|
642
|
+
if (startElementId) {
|
|
643
|
+
if (await this.sendPowerShellCommand(/* ps1 */ `$null -eq ${new powershell_1.FoundAutomationElement(startElementId).toString()}`)) {
|
|
644
|
+
const condition = new powershell_1.PropertyCondition(powershell_1.Property.RUNTIME_ID, new powershell_1.PSInt32Array(startElementId.split('.').map(Number)));
|
|
645
|
+
const elId = await this.sendPowerShellCommand(powershell_1.AutomationElement.automationRoot.findFirst(powershell_1.TreeScope.SUBTREE, condition).buildCommand());
|
|
646
|
+
if (elId.trim() === '') {
|
|
647
|
+
throw new base_driver_1.errors.NoSuchElementError();
|
|
648
|
+
}
|
|
649
|
+
}
|
|
650
|
+
const rectJson = await this.sendPowerShellCommand(new powershell_1.FoundAutomationElement(startElementId).buildGetElementRectCommand());
|
|
651
|
+
const rect = JSON.parse(rectJson.replaceAll(/(?:infinity)/gi, 0x7FFFFFFF.toString()));
|
|
652
|
+
startPos = [
|
|
653
|
+
rect.x + (startX ?? Math.trunc(rect.width / 2)),
|
|
654
|
+
rect.y + (startY ?? Math.trunc(rect.height / 2))
|
|
655
|
+
];
|
|
656
|
+
}
|
|
657
|
+
else {
|
|
658
|
+
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
659
|
+
startPos = [startX, startY];
|
|
660
|
+
}
|
|
661
|
+
// Calculate End Position
|
|
662
|
+
let endPos;
|
|
663
|
+
if (endElementId) {
|
|
664
|
+
if (await this.sendPowerShellCommand(/* ps1 */ `$null -eq ${new powershell_1.FoundAutomationElement(endElementId).toString()}`)) {
|
|
665
|
+
const condition = new powershell_1.PropertyCondition(powershell_1.Property.RUNTIME_ID, new powershell_1.PSInt32Array(endElementId.split('.').map(Number)));
|
|
666
|
+
const elId = await this.sendPowerShellCommand(powershell_1.AutomationElement.automationRoot.findFirst(powershell_1.TreeScope.SUBTREE, condition).buildCommand());
|
|
667
|
+
if (elId.trim() === '') {
|
|
668
|
+
throw new base_driver_1.errors.NoSuchElementError();
|
|
669
|
+
}
|
|
670
|
+
}
|
|
671
|
+
const rectJson = await this.sendPowerShellCommand(new powershell_1.FoundAutomationElement(endElementId).buildGetElementRectCommand());
|
|
672
|
+
const rect = JSON.parse(rectJson.replaceAll(/(?:infinity)/gi, 0x7FFFFFFF.toString()));
|
|
673
|
+
endPos = [
|
|
674
|
+
rect.x + (endX ?? Math.trunc(rect.width / 2)),
|
|
675
|
+
rect.y + (endY ?? Math.trunc(rect.height / 2))
|
|
676
|
+
];
|
|
677
|
+
}
|
|
678
|
+
else {
|
|
679
|
+
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
680
|
+
endPos = [endX, endY];
|
|
681
|
+
}
|
|
682
|
+
// Perform Action
|
|
683
|
+
await (0, user32_1.mouseMoveAbsolute)(startPos[0], startPos[1], 0);
|
|
684
|
+
// Modifiers Down
|
|
685
|
+
if (processesModifierKeys.some((key) => key.toLowerCase() === 'ctrl')) {
|
|
686
|
+
(0, user32_1.keyDown)(enums_1.Key.CONTROL);
|
|
687
|
+
}
|
|
688
|
+
if (processesModifierKeys.some((key) => key.toLowerCase() === 'alt')) {
|
|
689
|
+
(0, user32_1.keyDown)(enums_1.Key.ALT);
|
|
690
|
+
}
|
|
691
|
+
if (processesModifierKeys.some((key) => key.toLowerCase() === 'shift')) {
|
|
692
|
+
(0, user32_1.keyDown)(enums_1.Key.SHIFT);
|
|
693
|
+
}
|
|
694
|
+
if (processesModifierKeys.some((key) => key.toLowerCase() === 'win')) {
|
|
695
|
+
(0, user32_1.keyDown)(enums_1.Key.META);
|
|
696
|
+
}
|
|
697
|
+
(0, user32_1.mouseDown)(mouseButton);
|
|
698
|
+
// Drag
|
|
699
|
+
await (0, user32_1.mouseMoveAbsolute)(endPos[0], endPos[1], durationMs, smoothPointerMove ?? this.caps.smoothPointerMove, startPos[0], startPos[1]);
|
|
700
|
+
(0, user32_1.mouseUp)(mouseButton);
|
|
701
|
+
// Modifiers Up
|
|
702
|
+
if (processesModifierKeys.some((key) => key.toLowerCase() === 'ctrl')) {
|
|
703
|
+
(0, user32_1.keyUp)(enums_1.Key.CONTROL);
|
|
704
|
+
}
|
|
705
|
+
if (processesModifierKeys.some((key) => key.toLowerCase() === 'alt')) {
|
|
706
|
+
(0, user32_1.keyUp)(enums_1.Key.ALT);
|
|
707
|
+
}
|
|
708
|
+
if (processesModifierKeys.some((key) => key.toLowerCase() === 'shift')) {
|
|
709
|
+
(0, user32_1.keyUp)(enums_1.Key.SHIFT);
|
|
710
|
+
}
|
|
711
|
+
if (processesModifierKeys.some((key) => key.toLowerCase() === 'win')) {
|
|
712
|
+
(0, user32_1.keyUp)(enums_1.Key.META);
|
|
713
|
+
}
|
|
714
|
+
}
|
|
622
715
|
//# sourceMappingURL=extension.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"extension.js","sourceRoot":"","sources":["../../../lib/commands/extension.ts"],"names":[],"mappings":";;AAwGA,0BA+CC;AAWD,4CAkCC;AAED,sCAEC;AAED,sCAEC;AAED,0CAEC;AAED,sDAcC;AAED,gDAkCC;AAED,8CAGC;AAED,wDASC;AAED,gEAGC;AAED,sDAEC;AAED,gEAEC;AAED,sCAEC;AAED,sCAEC;AAED,0CAMC;AAED,0CAEC;AAED,0CAEC;AAED,0CAEC;AAED,wCAEC;AAED,oCAEC;AAED,oCAEC;AAED,gDAaC;AAED,wDAeC;AAED,0DAiBC;AAED,kCAyDC;AAED,oCAkGC;AAED,oCAqGC;AAED,sCAwEC;AAED,0CAYC;AAED,sCAMC;AAED,8BAiBC;AArvBD,qDAA8D;AAG9D,kCAAmC;AACnC,4CAAmD;AACnD,6CAW0B;AAC1B,2CAA4D;AAC5D,8CAYuB;AACvB,oCAAgD;AAEhD,MAAM,uBAAuB,GAAG,UAAU,CAAC;AAE3C,MAAM,kBAAkB,GAAG,MAAM,CAAC,MAAM,CAAC;IACrC,YAAY,EAAE,kBAAkB;IAChC,MAAM,EAAE,eAAe;IACvB,MAAM,EAAE,eAAe;IACvB,QAAQ,EAAE,iBAAiB;IAC3B,UAAU,EAAE,mBAAmB;IAC/B,cAAc,EAAE,uBAAuB;IACvC,YAAY,EAAE,wBAAwB;IACtC,gBAAgB,EAAE,4BAA4B;IAC9C,cAAc,EAAE,uBAAuB;IACvC,mBAAmB,EAAE,4BAA4B;IACjD,MAAM,EAAE,eAAe;IACvB,MAAM,EAAE,eAAe;IACvB,QAAQ,EAAE,iBAAiB;IAC3B,QAAQ,EAAE,iBAAiB;IAC3B,QAAQ,EAAE,iBAAiB;IAC3B,QAAQ,EAAE,iBAAiB;IAC3B,OAAO,EAAE,gBAAgB;IACzB,KAAK,EAAE,cAAc;IACrB,IAAI,EAAE,aAAa;IACnB,KAAK,EAAE,cAAc;IACrB,KAAK,EAAE,cAAc;IACrB,MAAM,EAAE,eAAe;IACvB,QAAQ,EAAE,cAAc;IACxB,YAAY,EAAE,oBAAoB;IAClC,YAAY,EAAE,wBAAwB;IACtC,oBAAoB,EAAE,iBAAiB;IACvC,aAAa,EAAE,eAAe;IAC9B,SAAS,EAAE,WAAW;CAChB,CAAC,CAAC;AAEZ,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC;IAC9B,SAAS,EAAE,WAAW;IACtB,KAAK,EAAE,OAAO;CACR,CAAC,CAAC;AAIZ,MAAM,mBAAmB,GAAG,IAAA,QAAC,CAAC,SAAS,EAAC,mDAAmD,CAAC,wBAAwB,CAAC;AACrH,MAAM,kBAAkB,GAAG,IAAA,QAAC,CAAC,SAAS,EAAC,kDAAkD,CAAC,wBAAwB,CAAC;AACnH,MAAM,uBAAuB,GAAG,IAAA,QAAC,CAAC,SAAS,EAAC,8DAA8D,CAAC,wBAAwB,CAAC;AAEpI,MAAM,mCAAmC,GAAG,IAAA,QAAC,CAAC,SAAS,EAAC,6FAA6F,CAAC,MAAM,CAAC;AAC7J,MAAM,8BAA8B,GAAG,SAAS,CAAC,mFAAmF,CAAC;AAErI,MAAM,+BAA+B,GAAG,IAAA,QAAC,CAAC,SAAS,EAAC,qCAAqC,CAAC,8LAA8L,CAAC;AACzR,MAAM,0BAA0B,GAAG,IAAA,iBAAI,CAAC,SAAS,EAAC;;;;;;;;;;;;;;CAcjD,CAAC;AASK,KAAK,UAAU,OAAO,CAA2B,MAAc,EAAE,IAAW;IAC/E,IAAI,MAAM,CAAC,UAAU,CAAC,uBAAuB,CAAC,EAAE,CAAC;QAC7C,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,uBAAuB,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QAC5D,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,sBAAsB,uBAAuB,IAAI,MAAM,MAAM,CAAC,CAAC;QAE7E,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,kBAAkB,EAAE,MAAM,CAAC,EAAE,CAAC;YAC7C,MAAM,IAAI,oBAAM,CAAC,mBAAmB,CAAC,oBAAoB,uBAAuB,IAAI,MAAM,IAAI,CAAC,CAAC;QACpG,CAAC;QAED,OAAO,MAAM,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;IAC3D,CAAC;IAED,IAAI,MAAM,CAAC,WAAW,EAAE,KAAK,YAAY,EAAE,CAAC;QACxC,IAAI,CAAC,oBAAoB,CAAC,+BAAmB,CAAC,CAAC;QAC/C,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QAC5B,OAAO,MAAM,IAAI,CAAC,uBAAuB,CAAC,KAAK,CAAC,CAAC;IACrD,CAAC;IAED,IAAI,MAAM,KAAK,oBAAoB,EAAE,CAAC;QAClC,OAAO,MAAM,IAAI,CAAC,qBAAqB,CAAC,8BAAiB,CAAC,cAAc,CAAC,uBAAuB,CAAC,qBAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;IACrH,CAAC;IAED,IAAI,MAAM,KAAK,UAAU,EAAE,CAAC;QACxB,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QACzB,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IACrC,CAAC;IAED,IAAI,MAAM,KAAK,UAAU,EAAE,CAAC;QACxB,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QAC/B,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IAC3C,CAAC;IAED,IAAI,MAAM,KAAK,YAAY,EAAE,CAAC;QAC1B,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QACzB,OAAO,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IACvC,CAAC;IAED,IAAI,MAAM,KAAK,+BAA+B,EAAE,CAAC;QAC7C,MAAM,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QACxB,mBAAmB;QACnB,IAAI,CAAC,OAAO,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;YAC1C,MAAM,IAAI,oBAAM,CAAC,oBAAoB,CAAC,2CAA2C,CAAC,CAAC;QACvF,CAAC;QACD,OAAO,MAAM,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC;IACrD,CAAC;IAED,MAAM,IAAI,oBAAM,CAAC,mBAAmB,EAAE,CAAC;AAC3C,CAAC;AAAA,CAAC;AAQF,MAAM,gBAAgB,GAAG,IAAI,iCAAoB,CAAC,qCAAqC,EAAE,GAAG,MAAM,CAAC,MAAM,CAAC,sBAAS,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;AACnI,MAAM,6BAA6B,GAAG,IAAI,iCAAoB,CAAC,iDAAiD,EAAE,GAAG,MAAM,CAAC,MAAM,CAAC,kCAAqB,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;AAEjK,KAAK,UAAU,gBAAgB,CAA2B,YAA0B;IACvF,IAAI,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,KAAK,SAAS,CAAC,EAAE,CAAC;QAC5E,MAAM,IAAI,oBAAM,CAAC,oBAAoB,CAAC,yDAAyD,CAAC,CAAC;IACrG,CAAC;IAED,IAAI,YAAY,CAAC,UAAU,EAAE,CAAC;QAC1B,MAAM,IAAI,CAAC,qBAAqB,CAAC,mBAAmB,CAAC,MAAM,CAAC,IAAA,qCAAwB,EAAC,YAAY,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IACpH,CAAC;IAED,IAAI,YAAY,CAAC,SAAS,EAAE,CAAC;QACzB,MAAM,SAAS,GAAG,gBAAgB,CAAC,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC;QAC7E,IAAI,CAAC,SAAS,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC;YAC5F,MAAM,IAAI,oBAAM,CAAC,oBAAoB,CAAC,kBAAkB,YAAY,CAAC,SAAS,0CAA0C,CAAC,CAAC;QAC9H,CAAC;QAED,MAAM,IAAI,CAAC,qBAAqB,CAAC,kBAAkB,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,gBAAgB,YAAY,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC;IACrL,CAAC;IAED,IAAI,YAAY,CAAC,qBAAqB,EAAE,CAAC;QACrC,MAAM,SAAS,GAAG,6BAA6B,CAAC,IAAI,CAAC,YAAY,CAAC,qBAAqB,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC;QAEtG,IAAI,CAAC,SAAS,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,qBAAqB,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,YAAY,CAAC,qBAAqB,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YACnH,MAAM,IAAI,oBAAM,CAAC,oBAAoB,CAAC,kBAAkB,YAAY,CAAC,qBAAqB,sDAAsD,CAAC,CAAC;QACtJ,CAAC;QAED,IAAI,qBAA6B,CAAC;QAClC,IAAI,KAAK,CAAC,MAAM,CAAC,YAAY,CAAC,qBAAqB,CAAC,CAAC,EAAE,CAAC;YACpD,qBAAqB,GAAG,SAAS,CAAC,4BAA4B,YAAY,CAAC,qBAAqB,EAAE,CAAC;QACvG,CAAC;aAAM,CAAC;YACJ,qBAAqB,GAAG,YAAY,CAAC,qBAAqB,CAAC;QAC/D,CAAC;QAED,MAAM,IAAI,CAAC,qBAAqB,CAAC,uBAAuB,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAC,CAAC;IAC5F,CAAC;AACL,CAAC;AAEM,KAAK,UAAU,aAAa,CAA2B,OAAgB;IAC1E,MAAM,IAAI,CAAC,qBAAqB,CAAC,IAAI,mCAAsB,CAAC,OAAO,CAAC,6BAAe,CAAC,CAAC,CAAC,kBAAkB,EAAE,CAAC,CAAC;AAChH,CAAC;AAEM,KAAK,UAAU,aAAa,CAA2B,OAAgB;IAC1E,MAAM,IAAI,CAAC,qBAAqB,CAAC,IAAI,mCAAsB,CAAC,OAAO,CAAC,6BAAe,CAAC,CAAC,CAAC,kBAAkB,EAAE,CAAC,CAAC;AAChH,CAAC;AAEM,KAAK,UAAU,eAAe,CAA2B,OAAgB;IAC5E,MAAM,IAAI,CAAC,qBAAqB,CAAC,IAAI,mCAAsB,CAAC,OAAO,CAAC,6BAAe,CAAC,CAAC,CAAC,oBAAoB,EAAE,CAAC,CAAC;AAClH,CAAC;AAEM,KAAK,UAAU,qBAAqB,CAA2B,OAAgB;IAClF,MAAM,SAAS,GAAG,OAAO,EAAE,CAAC,6BAAe,CAAC,CAAC;IAC7C,IAAI,CAAC,SAAS,EAAE,CAAC;QACb,MAAM,IAAI,oBAAM,CAAC,oBAAoB,CAAC,4CAA4C,CAAC,CAAC;IACxF,CAAC;IAED,MAAM,iBAAiB,GAAG,IAAI,mCAAsB,CAAC,SAAS,CAAC,CAAC;IAEhE,IAAI,CAAC;QACD,MAAM,IAAI,CAAC,qBAAqB,CAAC,iBAAiB,CAAC,0BAA0B,EAAE,CAAC,CAAC;IACrF,CAAC;IAAC,OAAO,CAAM,EAAE,CAAC;QACd,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,mCAAmC,CAAC,CAAC,OAAO,8CAA8C,SAAS,GAAG,CAAC,CAAC;QACtH,MAAM,IAAI,CAAC,kBAAkB,CAAC,iBAAiB,CAAC,CAAC;IACrD,CAAC;AACL,CAAC;AAEM,KAAK,UAAU,kBAAkB,CAA2B,iBAAoC;IACnG,IAAI,CAAC;QACD,wCAAwC;QACxC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,iBAAiB,CAAC,SAAS,CAAC,sBAAS,CAAC,MAAM,EAAE,IAAI,0BAAa,EAAE,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC;QACrI,IAAI,QAAQ,EAAE,CAAC;YACX,MAAM,IAAI,CAAC,qBAAqB,CAAC,IAAI,mCAAsB,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,oBAAoB,EAAE,CAAC,CAAC;YAErG,MAAM,UAAU,GAAG,EAAE,CAAC;YACtB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,EAAE,CAAC,EAAE,EAAE,CAAC;gBAClC,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,iBAAiB,CAAC,uBAAuB,CAAC,qBAAQ,CAAC,YAAY,CAAC,CAAC,CAAC;gBACvH,IAAI,WAAW,CAAC,WAAW,EAAE,KAAK,OAAO,EAAE,CAAC;oBACxC,OAAO;gBACX,CAAC;gBAED,MAAM,IAAI,CAAC,uBAAuB,CAAC;oBAC/B,IAAI,EAAE,KAAK;oBACX,EAAE,EAAE,kBAAkB;oBACtB,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,WAAG,CAAC,SAAS,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,WAAG,CAAC,SAAS,EAAE,CAAC;iBAChG,CAAC,CAAC;gBAEH,MAAM,IAAA,YAAK,EAAC,GAAG,CAAC,CAAC;YACrB,CAAC;YAED,cAAc;YACd,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,iBAAiB,CAAC,uBAAuB,CAAC,qBAAQ,CAAC,YAAY,CAAC,CAAC,CAAC;YACvH,IAAI,WAAW,CAAC,WAAW,EAAE,KAAK,MAAM,EAAE,CAAC;gBACvC,MAAM,IAAI,KAAK,CAAC,iCAAiC,UAAU,oBAAoB,CAAC,CAAC;YACrF,CAAC;QACL,CAAC;aAAM,CAAC;YACJ,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC;QAC/D,CAAC;IACL,CAAC;IAAC,OAAO,aAAkB,EAAE,CAAC;QAC1B,MAAM,IAAI,KAAK,CAAC,oCAAoC,aAAa,CAAC,OAAO,EAAE,CAAC,CAAC;IACjF,CAAC;AACL,CAAC;AAEM,KAAK,UAAU,iBAAiB,CAA2B,OAAgB;IAC9E,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,IAAI,mCAAsB,CAAC,OAAO,CAAC,6BAAe,CAAC,CAAC,CAAC,4BAA4B,EAAE,CAAC,CAAC;IACrI,OAAO,MAAM,CAAC,WAAW,EAAE,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;AAC1D,CAAC;AAEM,KAAK,UAAU,sBAAsB,CAA2B,OAAgB;IACnF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,IAAI,mCAAsB,CAAC,OAAO,CAAC,6BAAe,CAAC,CAAC,CAAC,wBAAwB,EAAE,CAAC,CAAC;IACjI,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;IAEnD,IAAI,CAAC,IAAI,EAAE,CAAC;QACR,MAAM,IAAI,oBAAM,CAAC,kBAAkB,EAAE,CAAC;IAC1C,CAAC;IAED,OAAO,EAAE,CAAC,6BAAe,CAAC,EAAE,IAAI,EAAE,CAAC;AACvC,CAAC;AAEM,KAAK,UAAU,0BAA0B,CAA2B,OAAgB;IACvF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,IAAI,mCAAsB,CAAC,OAAO,CAAC,6BAAe,CAAC,CAAC,CAAC,wBAAwB,EAAE,CAAC,CAAC;IACjI,OAAO,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,6BAAe,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;AAC3F,CAAC;AAEM,KAAK,UAAU,qBAAqB,CAA2B,OAAgB;IAClF,MAAM,IAAI,CAAC,qBAAqB,CAAC,IAAI,mCAAsB,CAAC,OAAO,CAAC,6BAAe,CAAC,CAAC,CAAC,0BAA0B,EAAE,CAAC,CAAC;AACxH,CAAC;AAEM,KAAK,UAAU,0BAA0B,CAA2B,OAAgB;IACvF,MAAM,IAAI,CAAC,qBAAqB,CAAC,IAAI,mCAAsB,CAAC,OAAO,CAAC,6BAAe,CAAC,CAAC,CAAC,+BAA+B,EAAE,CAAC,CAAC;AAC7H,CAAC;AAEM,KAAK,UAAU,aAAa,CAA2B,OAAgB;IAC1E,MAAM,IAAI,CAAC,qBAAqB,CAAC,IAAI,mCAAsB,CAAC,OAAO,CAAC,6BAAe,CAAC,CAAC,CAAC,kBAAkB,EAAE,CAAC,CAAC;AAChH,CAAC;AAEM,KAAK,UAAU,aAAa,CAA2B,OAAgB;IAC1E,MAAM,IAAI,CAAC,qBAAqB,CAAC,IAAI,mCAAsB,CAAC,OAAO,CAAC,6BAAe,CAAC,CAAC,CAAC,kBAAkB,EAAE,CAAC,CAAC;AAChH,CAAC;AAEM,KAAK,UAAU,eAAe,CAA2B,OAAgB,EAAE,KAAa;IAC3F,IAAI,CAAC;QACD,MAAM,IAAI,CAAC,qBAAqB,CAAC,IAAI,mCAAsB,CAAC,OAAO,CAAC,6BAAe,CAAC,CAAC,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC,CAAC;IACvH,CAAC;IAAC,MAAM,CAAC;QACL,MAAM,IAAI,CAAC,qBAAqB,CAAC,IAAI,mCAAsB,CAAC,OAAO,CAAC,6BAAe,CAAC,CAAC,CAAC,yBAAyB,CAAC,KAAK,CAAC,CAAC,CAAC;IAC5H,CAAC;AACL,CAAC;AAEM,KAAK,UAAU,eAAe,CAA2B,OAAgB;IAC5E,MAAM,IAAI,CAAC,qBAAqB,CAAC,IAAI,mCAAsB,CAAC,OAAO,CAAC,6BAAe,CAAC,CAAC,CAAC,oBAAoB,EAAE,CAAC,CAAC;AAClH,CAAC;AAEM,KAAK,UAAU,eAAe,CAA2B,OAAgB;IAC5E,MAAM,IAAI,CAAC,qBAAqB,CAAC,IAAI,mCAAsB,CAAC,OAAO,CAAC,6BAAe,CAAC,CAAC,CAAC,oBAAoB,EAAE,CAAC,CAAC;AAClH,CAAC;AAEM,KAAK,UAAU,eAAe,CAA2B,OAAgB;IAC5E,MAAM,IAAI,CAAC,qBAAqB,CAAC,IAAI,mCAAsB,CAAC,OAAO,CAAC,6BAAe,CAAC,CAAC,CAAC,oBAAoB,EAAE,CAAC,CAAC;AAClH,CAAC;AAEM,KAAK,UAAU,cAAc,CAA2B,OAAgB;IAC3E,MAAM,IAAI,CAAC,qBAAqB,CAAC,IAAI,mCAAsB,CAAC,OAAO,CAAC,6BAAe,CAAC,CAAC,CAAC,mBAAmB,EAAE,CAAC,CAAC;AACjH,CAAC;AAEM,KAAK,UAAU,YAAY,CAA2B,OAAgB;IACzE,MAAM,IAAI,CAAC,qBAAqB,CAAC,IAAI,mCAAsB,CAAC,OAAO,CAAC,6BAAe,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC,CAAC;AAC/G,CAAC;AAEM,KAAK,UAAU,YAAY,CAA2B,OAAgB;IACzE,MAAM,IAAI,CAAC,qBAAqB,CAAC,IAAI,mCAAsB,CAAC,OAAO,CAAC,6BAAe,CAAC,CAAC,CAAC,oBAAoB,EAAE,CAAC,CAAC;AAClH,CAAC;AAEM,KAAK,UAAU,kBAAkB,CAA2B,WAAyD;IACxH,IAAI,CAAC,WAAW,IAAI,CAAC,WAAW,IAAI,OAAO,WAAW,KAAK,QAAQ,CAAC,EAAE,CAAC;QACnE,WAAW,GAAG,WAAW,EAAE,WAAW,IAAI,WAAW,CAAC,SAAS,CAAC;IACpE,CAAC;IAED,QAAQ,WAAW,CAAC,WAAW,EAAE,EAAE,CAAC;QAChC,KAAK,WAAW,CAAC,SAAS;YACtB,OAAO,MAAM,IAAI,CAAC,qBAAqB,CAAC,8BAA8B,CAAC,CAAC;QAC5E,KAAK,WAAW,CAAC,KAAK;YAClB,OAAO,MAAM,IAAI,CAAC,qBAAqB,CAAC,0BAA0B,CAAC,CAAC;QACxE;YACI,MAAM,IAAI,oBAAM,CAAC,oBAAoB,CAAC,6BAA6B,WAAW,IAAI,CAAC,CAAC;IAC5F,CAAC;AACL,CAAC;AAEM,KAAK,UAAU,sBAAsB,CAA2B,IAAuD;IAC1H,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;QACxD,MAAM,IAAI,oBAAM,CAAC,oBAAoB,CAAC,gCAAgC,CAAC,CAAC;IAC5E,CAAC;IAED,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,IAAI,WAAW,CAAC,SAAS,CAAC;IAE9D,QAAQ,WAAW,CAAC,WAAW,EAAE,EAAE,CAAC;QAChC,KAAK,WAAW,CAAC,SAAS;YACtB,OAAO,MAAM,IAAI,CAAC,qBAAqB,CAAC,mCAAmC,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;QACzG,KAAK,WAAW,CAAC,KAAK;YAClB,OAAO,MAAM,IAAI,CAAC,qBAAqB,CAAC,+BAA+B,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;QACrG;YACI,MAAM,IAAI,oBAAM,CAAC,oBAAoB,CAAC,6BAA6B,WAAW,IAAI,CAAC,CAAC;IAC5F,CAAC;AACL,CAAC;AAEM,KAAK,UAAU,uBAAuB,CAA2B,MAAgG;IACpK,IAAI,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;QACvC,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;YAChB,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;QAC3B,CAAC;aAAM,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACxB,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC;QAC5B,CAAC;aAAM,CAAC;YACJ,MAAM,IAAI,oBAAM,CAAC,oBAAoB,CAAC,4CAA4C,CAAC,CAAC;QACxF,CAAC;IACL,CAAC;IAED,MAAM,eAAe,GAAG,IAAA,iBAAI,EAAA,GAAG,MAAM,EAAE,CAAC;IACxC,IAAI,IAAI,CAAC,IAAI,CAAC,uBAAuB,EAAE,CAAC;QACpC,OAAO,MAAM,IAAI,CAAC,6BAA6B,CAAC,eAAe,CAAC,CAAC;IACrE,CAAC;SAAM,CAAC;QACJ,OAAO,MAAM,IAAI,CAAC,qBAAqB,CAAC,eAAe,CAAC,CAAC;IAC7D,CAAC;AACL,CAAC;AAEM,KAAK,UAAU,WAAW,CAA2B,UAAuE;IAC/H,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;QACrC,UAAU,CAAC,OAAO,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;IAC9C,CAAC;IAED,UAAU,CAAC,YAAY,KAAK,KAAK,CAAC;IAElC,KAAK,MAAM,MAAM,IAAI,UAAU,CAAC,OAAO,EAAE,CAAC;QACtC,IAAI,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE,CAAC;YACzF,MAAM,IAAI,oBAAM,CAAC,oBAAoB,CAAC,qDAAqD,CAAC,CAAC;QACjG,CAAC;QAED,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;YACf,MAAM,IAAA,YAAK,EAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAC1B,SAAS;QACb,CAAC;QAED,IAAI,MAAM,CAAC,cAAc,EAAE,CAAC;YACxB,IAAI,MAAM,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;gBAC5B,IAAA,2BAAkB,EAAC,CAAC;wBAChB,GAAG,EAAE,MAAM,CAAC,cAA4B;wBACxC,KAAK,EAAE,CAAC;wBACR,OAAO,EAAE,CAAC;wBACV,IAAI,EAAE,CAAC;wBACP,WAAW,EAAE,CAAC;qBACjB,EAAE;wBACC,GAAG,EAAE,MAAM,CAAC,cAA4B;wBACxC,KAAK,EAAE,CAAC;wBACR,OAAO,EAAE,qBAAa,CAAC,eAAe;wBACtC,IAAI,EAAE,CAAC;wBACP,WAAW,EAAE,CAAC;qBACjB,CAAC,CAAC,CAAC;YACR,CAAC;iBAAM,CAAC;gBACJ,IAAA,2BAAkB,EAAC,CAAC;wBAChB,GAAG,EAAE,MAAM,CAAC,cAA4B;wBACxC,KAAK,EAAE,CAAC;wBACR,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,qBAAa,CAAC,eAAe;wBACxD,IAAI,EAAE,CAAC;wBACP,WAAW,EAAE,CAAC;qBACjB,CAAC,CAAC,CAAC;YACR,CAAC;YACD,SAAS;QACb,CAAC;QAED,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,IAAI,EAAE,EAAE,CAAC;YAClC,IAAI,MAAM,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;gBAC5B,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;oBACd,IAAA,gBAAO,EAAC,GAAG,EAAE,UAAU,CAAC,YAAY,CAAC,CAAC;gBAC1C,CAAC;qBAAM,CAAC;oBACJ,IAAA,cAAK,EAAC,GAAG,EAAE,UAAU,CAAC,YAAY,CAAC,CAAC;gBACxC,CAAC;YACL,CAAC;iBAAM,CAAC;gBACJ,IAAA,gBAAO,EAAC,GAAG,EAAE,UAAU,CAAC,YAAY,CAAC,CAAC;gBACtC,IAAA,cAAK,EAAC,GAAG,EAAE,UAAU,CAAC,YAAY,CAAC,CAAC;YACxC,CAAC;QACL,CAAC;IACL,CAAC;AACL,CAAC;AAEM,KAAK,UAAU,YAAY,CAA2B,SAS5D;IACG,MAAM,EACF,SAAS,EACT,CAAC,EAAE,CAAC,EACJ,MAAM,GAAG,iBAAS,CAAC,IAAI,EACvB,YAAY,GAAG,EAAE,EACjB,UAAU,GAAG,CAAC,EACd,KAAK,GAAG,CAAC,EACT,iBAAiB,GAAG,GAAG,GAC1B,GAAG,SAAS,CAAC;IAEd,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,IAAI,CAAC,EAAE,CAAC;QAC9B,MAAM,IAAI,oBAAM,CAAC,oBAAoB,CAAC,iDAAiD,CAAC,CAAC;IAC7F,CAAC;IAED,IAAI,GAAqB,CAAC;IAC1B,IAAI,SAAS,EAAE,CAAC;QACZ,IAAI,MAAM,IAAI,CAAC,qBAAqB,CAAC,SAAS,CAAC,aAAa,IAAI,mCAAsB,CAAC,SAAS,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,EAAE,CAAC;YAC9G,MAAM,SAAS,GAAG,IAAI,8BAAiB,CAAC,qBAAQ,CAAC,UAAU,EAAE,IAAI,yBAAY,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YACjH,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,8BAAiB,CAAC,cAAc,CAAC,SAAS,CAAC,sBAAS,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC;YAEvI,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;gBACrB,MAAM,IAAI,oBAAM,CAAC,kBAAkB,EAAE,CAAC;YAC1C,CAAC;QACL,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,IAAI,mCAAsB,CAAC,SAAS,CAAC,CAAC,0BAA0B,EAAE,CAAC,CAAC;QACtH,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC,gBAAgB,EAAE,UAAU,CAAC,QAAQ,EAAE,CAAC,CAAS,CAAC;QAC9F,GAAG,GAAG;YACF,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;YAC1C,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;SAC9C,CAAC;IACN,CAAC;SAAM,CAAC;QACJ,oEAAoE;QACpE,GAAG,GAAG,CAAC,CAAE,EAAE,CAAE,CAAC,CAAC;IACnB,CAAC;IAED,MAAM,wBAAwB,GAAmC;QAC7D,CAAC,iBAAS,CAAC,IAAI,CAAC,EAAE,CAAC;QACnB,CAAC,iBAAS,CAAC,MAAM,CAAC,EAAE,CAAC;QACrB,CAAC,iBAAS,CAAC,KAAK,CAAC,EAAE,CAAC;QACpB,CAAC,iBAAS,CAAC,IAAI,CAAC,EAAE,CAAC;QACnB,CAAC,iBAAS,CAAC,OAAO,CAAC,EAAE,CAAC;KACzB,CAAC;IACF,MAAM,WAAW,GAAW,wBAAwB,CAAC,MAAM,CAAC,CAAC;IAE7D,MAAM,qBAAqB,GAAG,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC;IAC1F,MAAM,IAAA,0BAAiB,EAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC3C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC;QAC7B,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YACV,MAAM,IAAA,YAAK,EAAC,iBAAiB,CAAC,CAAC;QACnC,CAAC;QAED,IAAI,qBAAqB,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,WAAW,EAAE,KAAK,MAAM,CAAC,EAAE,CAAC;YACpE,IAAA,gBAAO,EAAC,WAAG,CAAC,OAAO,CAAC,CAAC;QACzB,CAAC;QACD,IAAI,qBAAqB,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,WAAW,EAAE,KAAK,KAAK,CAAC,EAAE,CAAC;YACnE,IAAA,gBAAO,EAAC,WAAG,CAAC,GAAG,CAAC,CAAC;QACrB,CAAC;QACD,IAAI,qBAAqB,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,WAAW,EAAE,KAAK,OAAO,CAAC,EAAE,CAAC;YACrE,IAAA,gBAAO,EAAC,WAAG,CAAC,KAAK,CAAC,CAAC;QACvB,CAAC;QACD,IAAI,qBAAqB,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,WAAW,EAAE,KAAK,KAAK,CAAC,EAAE,CAAC;YACnE,IAAA,gBAAO,EAAC,WAAG,CAAC,IAAI,CAAC,CAAC;QACtB,CAAC;QAED,IAAA,kBAAS,EAAC,WAAW,CAAC,CAAC;QACvB,IAAI,UAAU,GAAG,CAAC,EAAE,CAAC;YACjB,MAAM,IAAA,YAAK,EAAC,UAAU,CAAC,CAAC;QAC5B,CAAC;QACD,IAAA,gBAAO,EAAC,WAAW,CAAC,CAAC;QAErB,IAAI,qBAAqB,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,WAAW,EAAE,KAAK,MAAM,CAAC,EAAE,CAAC;YACpE,IAAA,cAAK,EAAC,WAAG,CAAC,OAAO,CAAC,CAAC;QACvB,CAAC;QACD,IAAI,qBAAqB,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,WAAW,EAAE,KAAK,KAAK,CAAC,EAAE,CAAC;YACnE,IAAA,cAAK,EAAC,WAAG,CAAC,GAAG,CAAC,CAAC;QACnB,CAAC;QACD,IAAI,qBAAqB,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,WAAW,EAAE,KAAK,OAAO,CAAC,EAAE,CAAC;YACrE,IAAA,cAAK,EAAC,WAAG,CAAC,KAAK,CAAC,CAAC;QACrB,CAAC;QACD,IAAI,qBAAqB,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,WAAW,EAAE,KAAK,KAAK,CAAC,EAAE,CAAC;YACnE,IAAA,cAAK,EAAC,WAAG,CAAC,IAAI,CAAC,CAAC;QACpB,CAAC;IACL,CAAC;IAED,IAAI,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC;QAC5B,MAAM,IAAA,YAAK,EAAC,IAAI,CAAC,IAAI,CAAC,eAAe,IAAI,CAAC,CAAC,CAAC;IAChD,CAAC;AACL,CAAC;AAEM,KAAK,UAAU,YAAY,CAA2B,SAS5D;IACG,MAAM,EACF,cAAc,EACd,MAAM,EAAE,MAAM,EACd,YAAY,EACZ,IAAI,EAAE,IAAI,EACV,YAAY,GAAG,EAAE,EACjB,UAAU,GAAG,GAAG,GACnB,GAAG,SAAS,CAAC;IAEd,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,IAAI,CAAC,EAAE,CAAC;QACxC,MAAM,IAAI,oBAAM,CAAC,oBAAoB,CAAC,2DAA2D,CAAC,CAAC;IACvG,CAAC;IAED,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,IAAI,IAAI,CAAC,EAAE,CAAC;QACpC,MAAM,IAAI,oBAAM,CAAC,oBAAoB,CAAC,uDAAuD,CAAC,CAAC;IACnG,CAAC;IAED,MAAM,qBAAqB,GAAG,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC;IAC1F,IAAI,QAA0B,CAAC;IAC/B,IAAI,cAAc,EAAE,CAAC;QACjB,IAAI,MAAM,IAAI,CAAC,qBAAqB,CAAC,SAAS,CAAC,aAAa,IAAI,mCAAsB,CAAC,cAAc,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,EAAE,CAAC;YACnH,MAAM,SAAS,GAAG,IAAI,8BAAiB,CAAC,qBAAQ,CAAC,UAAU,EAAE,IAAI,yBAAY,CAAC,cAAc,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YACtH,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,8BAAiB,CAAC,cAAc,CAAC,SAAS,CAAC,sBAAS,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC;YAEvI,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;gBACrB,MAAM,IAAI,oBAAM,CAAC,kBAAkB,EAAE,CAAC;YAC1C,CAAC;QACL,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,IAAI,mCAAsB,CAAC,cAAc,CAAC,CAAC,0BAA0B,EAAE,CAAC,CAAC;QAC3H,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC,gBAAgB,EAAE,UAAU,CAAC,QAAQ,EAAE,CAAC,CAAS,CAAC;QAC9F,QAAQ,GAAG;YACP,IAAI,CAAC,CAAC,GAAG,CAAC,MAAM,IAAI,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC;YACnC,IAAI,CAAC,CAAC,GAAG,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;SACvC,CAAC;IACN,CAAC;SAAM,CAAC;QACJ,oEAAoE;QACpE,QAAQ,GAAG,CAAC,MAAO,EAAE,MAAO,CAAC,CAAC;IAClC,CAAC;IAED,IAAI,MAAwB,CAAC;IAC7B,IAAI,YAAY,EAAE,CAAC;QACf,IAAI,MAAM,IAAI,CAAC,qBAAqB,CAAC,SAAS,CAAC,aAAa,IAAI,mCAAsB,CAAC,YAAY,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,EAAE,CAAC;YACjH,MAAM,SAAS,GAAG,IAAI,8BAAiB,CAAC,qBAAQ,CAAC,UAAU,EAAE,IAAI,yBAAY,CAAC,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YACpH,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,8BAAiB,CAAC,cAAc,CAAC,SAAS,CAAC,sBAAS,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC;YAEvI,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;gBACrB,MAAM,IAAI,oBAAM,CAAC,kBAAkB,EAAE,CAAC;YAC1C,CAAC;QACL,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,IAAI,mCAAsB,CAAC,YAAY,CAAC,CAAC,0BAA0B,EAAE,CAAC,CAAC;QACzH,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC,gBAAgB,EAAE,UAAU,CAAC,QAAQ,EAAE,CAAC,CAAS,CAAC;QAC9F,MAAM,GAAG;YACL,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC;YACjC,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;SACrC,CAAC;IACN,CAAC;SAAM,CAAC;QACJ,oEAAoE;QACpE,MAAM,GAAG,CAAC,IAAK,EAAE,IAAK,CAAC,CAAC;IAC5B,CAAC;IAED,MAAM,IAAA,0BAAiB,EAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAErD,IAAI,qBAAqB,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,WAAW,EAAE,KAAK,MAAM,CAAC,EAAE,CAAC;QACpE,IAAA,gBAAO,EAAC,WAAG,CAAC,OAAO,CAAC,CAAC;IACzB,CAAC;IACD,IAAI,qBAAqB,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,WAAW,EAAE,KAAK,KAAK,CAAC,EAAE,CAAC;QACnE,IAAA,gBAAO,EAAC,WAAG,CAAC,GAAG,CAAC,CAAC;IACrB,CAAC;IACD,IAAI,qBAAqB,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,WAAW,EAAE,KAAK,OAAO,CAAC,EAAE,CAAC;QACrE,IAAA,gBAAO,EAAC,WAAG,CAAC,KAAK,CAAC,CAAC;IACvB,CAAC;IACD,IAAI,qBAAqB,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,WAAW,EAAE,KAAK,KAAK,CAAC,EAAE,CAAC;QACnE,IAAA,gBAAO,EAAC,WAAG,CAAC,IAAI,CAAC,CAAC;IACtB,CAAC;IAED,MAAM,IAAA,0BAAiB,EAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;IAEvF,IAAI,qBAAqB,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,WAAW,EAAE,KAAK,MAAM,CAAC,EAAE,CAAC;QACpE,IAAA,cAAK,EAAC,WAAG,CAAC,OAAO,CAAC,CAAC;IACvB,CAAC;IACD,IAAI,qBAAqB,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,WAAW,EAAE,KAAK,KAAK,CAAC,EAAE,CAAC;QACnE,IAAA,cAAK,EAAC,WAAG,CAAC,GAAG,CAAC,CAAC;IACnB,CAAC;IACD,IAAI,qBAAqB,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,WAAW,EAAE,KAAK,OAAO,CAAC,EAAE,CAAC;QACrE,IAAA,cAAK,EAAC,WAAG,CAAC,KAAK,CAAC,CAAC;IACrB,CAAC;IACD,IAAI,qBAAqB,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,WAAW,EAAE,KAAK,KAAK,CAAC,EAAE,CAAC;QACnE,IAAA,cAAK,EAAC,WAAG,CAAC,IAAI,CAAC,CAAC;IACpB,CAAC;AACL,CAAC;AAEM,KAAK,UAAU,aAAa,CAA2B,UAO7D;IACG,MAAM,EACF,SAAS,EACT,CAAC,EAAE,CAAC,EACJ,MAAM,EAAE,MAAM,EACd,YAAY,GAAG,EAAE,GACpB,GAAG,UAAU,CAAC;IAEf,IAAI,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,SAAS,CAAC,IAAI,CAAC,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,SAAS,CAAC,CAAC,EAAE,CAAC;QACtF,MAAM,IAAI,oBAAM,CAAC,oBAAoB,CAAC,+CAA+C,CAAC,CAAC;IAC3F,CAAC;IAED,IAAI,CAAC,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,SAAS,CAAC,KAAK,CAAC,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,SAAS,CAAC,EAAE,CAAC;QACtE,MAAM,IAAI,oBAAM,CAAC,oBAAoB,CAAC,gCAAgC,CAAC,CAAC;IAC5E,CAAC;IAED,MAAM,qBAAqB,GAAG,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC;IAC1F,IAAI,GAAqB,CAAC;IAC1B,IAAI,SAAS,EAAE,CAAC;QACZ,IAAI,MAAM,IAAI,CAAC,qBAAqB,CAAC,SAAS,CAAC,aAAa,IAAI,mCAAsB,CAAC,SAAS,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,EAAE,CAAC;YAC9G,MAAM,SAAS,GAAG,IAAI,8BAAiB,CAAC,qBAAQ,CAAC,UAAU,EAAE,IAAI,yBAAY,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YACjH,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,8BAAiB,CAAC,cAAc,CAAC,SAAS,CAAC,sBAAS,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC;YAEvI,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;gBACrB,MAAM,IAAI,oBAAM,CAAC,kBAAkB,EAAE,CAAC;YAC1C,CAAC;QACL,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,IAAI,mCAAsB,CAAC,SAAS,CAAC,CAAC,0BAA0B,EAAE,CAAC,CAAC;QACtH,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC,gBAAgB,EAAE,UAAU,CAAC,QAAQ,EAAE,CAAC,CAAS,CAAC;QAC9F,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;IAClE,CAAC;SAAM,CAAC;QACJ,oEAAoE;QACpE,GAAG,GAAG,CAAC,CAAE,EAAE,CAAE,CAAC,CAAC;IACnB,CAAC;IAED,MAAM,IAAA,0BAAiB,EAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAE3C,IAAI,qBAAqB,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,WAAW,EAAE,KAAK,MAAM,CAAC,EAAE,CAAC;QACpE,IAAA,gBAAO,EAAC,WAAG,CAAC,OAAO,CAAC,CAAC;IACzB,CAAC;IACD,IAAI,qBAAqB,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,WAAW,EAAE,KAAK,KAAK,CAAC,EAAE,CAAC;QACnE,IAAA,gBAAO,EAAC,WAAG,CAAC,GAAG,CAAC,CAAC;IACrB,CAAC;IACD,IAAI,qBAAqB,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,WAAW,EAAE,KAAK,OAAO,CAAC,EAAE,CAAC;QACrE,IAAA,gBAAO,EAAC,WAAG,CAAC,KAAK,CAAC,CAAC;IACvB,CAAC;IACD,IAAI,qBAAqB,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,WAAW,EAAE,KAAK,KAAK,CAAC,EAAE,CAAC;QACnE,IAAA,gBAAO,EAAC,WAAG,CAAC,IAAI,CAAC,CAAC;IACtB,CAAC;IAED,IAAA,oBAAW,EAAC,MAAM,IAAI,CAAC,EAAE,MAAM,IAAI,CAAC,CAAC,CAAC;IAEtC,IAAI,qBAAqB,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,WAAW,EAAE,KAAK,MAAM,CAAC,EAAE,CAAC;QACpE,IAAA,cAAK,EAAC,WAAG,CAAC,OAAO,CAAC,CAAC;IACvB,CAAC;IACD,IAAI,qBAAqB,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,WAAW,EAAE,KAAK,KAAK,CAAC,EAAE,CAAC;QACnE,IAAA,cAAK,EAAC,WAAG,CAAC,GAAG,CAAC,CAAC;IACnB,CAAC;IACD,IAAI,qBAAqB,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,WAAW,EAAE,KAAK,OAAO,CAAC,EAAE,CAAC;QACrE,IAAA,cAAK,EAAC,WAAG,CAAC,KAAK,CAAC,CAAC;IACrB,CAAC;IACD,IAAI,qBAAqB,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,WAAW,EAAE,KAAK,KAAK,CAAC,EAAE,CAAC;QACnE,IAAA,cAAK,EAAC,WAAG,CAAC,IAAI,CAAC,CAAC;IACpB,CAAC;AACL,CAAC;AAEM,KAAK,UAAU,eAAe,CAA2B,IAAyB;IACrF,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;QACrD,MAAM,IAAI,oBAAM,CAAC,oBAAoB,CAAC,6BAA6B,CAAC,CAAC;IACzE,CAAC;IAED,MAAM,IAAI,GAAG,IAAA,yBAAgB,EAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC5C,IAAI,IAAI,EAAE,CAAC;QACP,IAAA,mBAAU,EAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,aAAa;QAClC,IAAA,+BAAsB,EAAC,IAAI,CAAC,CAAC;IACjC,CAAC;SAAM,CAAC;QACJ,MAAM,IAAI,oBAAM,CAAC,kBAAkB,CAAC,wCAAwC,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC;IACjG,CAAC;AACL,CAAC;AAEM,KAAK,UAAU,aAAa,CAA2B,GAAQ;IAClE,MAAM,SAAS,GAAG,GAAG,EAAE,CAAC,6BAAe,CAAC,IAAI,GAAG,EAAE,SAAS,IAAI,CAAC,OAAO,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IAC1G,IAAI,CAAC,SAAS,EAAE,CAAC;QACb,MAAM,IAAI,oBAAM,CAAC,oBAAoB,CAAC,+FAA+F,CAAC,CAAC;IAC3I,CAAC;IACD,OAAO,MAAM,IAAI,CAAC,qBAAqB,CAAC,IAAI,mCAAsB,CAAC,SAAS,CAAC,CAAC,4BAA4B,EAAE,CAAC,CAAC;AAClH,CAAC;AAEM,KAAK,UAAU,SAAS,CAA2B,IAA8D;IACpH,IAAI,KAAa,CAAC;IAClB,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,IAAI,IAAI,OAAO,IAAI,IAAI,EAAE,CAAC;QAC/D,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC/B,CAAC;SAAM,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;QAClC,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;IACzB,CAAC;SAAM,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;QAClC,KAAK,GAAG,IAAI,CAAC;IACjB,CAAC;SAAM,CAAC;QACJ,MAAM,IAAI,oBAAM,CAAC,oBAAoB,CAAC,2EAA2E,CAAC,CAAC;IACvH,CAAC;IAED,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;QAC5B,MAAM,IAAI,oBAAM,CAAC,oBAAoB,CAAC,sCAAsC,CAAC,CAAC;IAClF,CAAC;IAED,IAAI,CAAC,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;AAChC,CAAC"}
|
|
1
|
+
{"version":3,"file":"extension.js","sourceRoot":"","sources":["../../../lib/commands/extension.ts"],"names":[],"mappings":"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"}
|
|
@@ -101,6 +101,18 @@ declare const commands: {
|
|
|
101
101
|
typeDelay(this: import("../driver").NovaWindows2Driver, args: {
|
|
102
102
|
delay: number | string;
|
|
103
103
|
} | string | number | undefined): Promise<void>;
|
|
104
|
+
executeClickAndDrag(this: import("../driver").NovaWindows2Driver, clickAndDragArgs: {
|
|
105
|
+
startElementId?: string;
|
|
106
|
+
startX?: number;
|
|
107
|
+
startY?: number;
|
|
108
|
+
endElementId?: string;
|
|
109
|
+
endX?: number;
|
|
110
|
+
endY?: number;
|
|
111
|
+
modifierKeys?: ("shift" | "ctrl" | "alt" | "win") | ("shift" | "ctrl" | "alt" | "win")[];
|
|
112
|
+
durationMs?: number;
|
|
113
|
+
button?: import("../enums").ClickType;
|
|
114
|
+
smoothPointerMove?: string;
|
|
115
|
+
}): Promise<void>;
|
|
104
116
|
getProperty(this: import("../driver").NovaWindows2Driver, propertyName: string, elementId: string): Promise<string>;
|
|
105
117
|
getAttribute(this: import("../driver").NovaWindows2Driver, propertyName: string, elementId: string): Promise<string>;
|
|
106
118
|
active(this: import("../driver").NovaWindows2Driver): Promise<import("@appium/types").Element>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../lib/commands/index.ts"],"names":[],"mappings":"AASA,QAAA,MAAM,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../lib/commands/index.ts"],"names":[],"mappings":"AASA,QAAA,MAAM,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mBAoB0gb,CAAC;;;mBAAwqB,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;iBAAkhH,CAAC;SAAe,CAAC;SAAe,CAAC;cAAoB,CAAC;oBAA6B,CAAC;kBAA8G,CAAC;aAAmB,CAAC;yBAA+B,CAAC;;;sBAAiuG,CAAC;cAAoB,CAAC;cAAoB,CAAC;oBAA0B,CAAC;YAAkB,CAAC;YAAkB,CAAC;oBAA0B,CAAC;kBAA2F,CAAC;;;iBAAs1H,CAAC;SAAe,CAAC;SAAe,CAAC;cAAoB,CAAC;cAAoB,CAAC;oBAA0B,CAAC;;;;;;;;;;sBAAq2I,CAAC;cAAoB,CAAC;cAAoB,CAAC;oBAA0B,CAAC;YAAkB,CAAC;YAAkB,CAAC;oBAA0B,CAAC;kBAA2F,CAAC;cAAoB,CAAC;yBAAkC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;CAV187B,CAAC;AAEF,KAAK,QAAQ,GAAG;KACX,GAAG,IAAI,MAAM,OAAO,QAAQ,GAAG,OAAO,QAAQ,CAAC,GAAG,CAAC;CACvD,CAAC;AAEF,OAAO,QAAQ,WAAW,CAAC;IACvB,UAAU,kBAAmB,SAAQ,QAAQ;KAAI;CACpD;AAED,eAAe,QAAQ,CAAC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export declare const UIA_HELPER_SCRIPT: string;
|
|
2
|
-
//# sourceMappingURL=
|
|
2
|
+
//# sourceMappingURL=uiahelper.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"uiahelper.d.ts","sourceRoot":"","sources":["../../../lib/powershell/uiahelper.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,iBAAiB,QA2bzB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"
|
|
1
|
+
{"version":3,"file":"uiahelper.js","sourceRoot":"","sources":["../../../lib/powershell/uiahelper.ts"],"names":[],"mappings":";;;;;;AAAA,0DAA6B;AAE7B,MAAM,OAAO,GAAG,mBAAI,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,eAAe,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;AAC7F,MAAM,MAAM,GAAG,mBAAI,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;AAE9D,QAAA,iBAAiB,GAAa;;;cAG7B,OAAO;aACR,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAubd,CAAC"}
|
|
@@ -44,7 +44,7 @@ export declare function keyDown(char: string, forceUnicode?: boolean): void;
|
|
|
44
44
|
export declare function keyUp(char: string, forceUnicode?: boolean): void;
|
|
45
45
|
export declare function mouseMoveRelative(x: number, y: number, duration?: number, easingFunction?: string): Promise<void>;
|
|
46
46
|
export declare function mouseScroll(x: number, y: number): void;
|
|
47
|
-
export declare function mouseMoveAbsolute(x: number, y: number, duration?: number, easingFunction?: string): Promise<void>;
|
|
47
|
+
export declare function mouseMoveAbsolute(x: number, y: number, duration?: number, easingFunction?: string, startX?: number, startY?: number): Promise<void>;
|
|
48
48
|
export declare function mouseDown(button?: number): void;
|
|
49
49
|
export declare function mouseUp(button?: number): void;
|
|
50
50
|
export declare function getDisplayOrientation(): Orientation;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"user32.d.ts","sourceRoot":"","sources":["../../../lib/winapi/user32.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAc5C,OAAO,EACH,SAAS,EACT,aAAa,EAEb,QAAQ,EACR,UAAU,EAEb,MAAM,SAAS,CAAC;AAOjB,UAAU,KAAK;IACX,IAAI,EAAE,SAAS,CAAC;IAChB,CAAC,EAAE;QACC,EAAE,CAAC,EAAE,mBAAmB,CAAC;QACzB,EAAE,CAAC,EAAE,gBAAgB,CAAC;QACtB,EAAE,CAAC,EAAE,mBAAmB,CAAC;KAC5B,CAAA;CACJ;AAED,UAAU,aAAc,SAAQ,KAAK;IACjC,IAAI,EAAE,OAAO,SAAS,CAAC,cAAc,CAAC;IACtC,CAAC,EAAE;QACC,EAAE,EAAE;YACA,GAAG,EAAE,UAAU,GAAG,CAAC,CAAC;YACpB,KAAK,EAAE,QAAQ,GAAG,CAAC,CAAC;YACpB,OAAO,EAAE,aAAa,CAAC;YACvB,IAAI,EAAE,OAAO,CAAC;YACd,WAAW,EAAE,OAAO,CAAC;SACxB,GAAG,mBAAmB,CAAC;KAC3B,CAAC;CACL;AA+FD,KAAK,gBAAgB,GAAG;IACpB,EAAE,EAAE,OAAO,CAAC;IACZ,EAAE,EAAE,OAAO,CAAC;IACZ,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,OAAO,CAAC;IACd,WAAW,EAAE,OAAO,CAAC;CACxB,CAAA;AAED,KAAK,mBAAmB,GAAG;IACvB,GAAG,EAAE,OAAO,CAAC;IACb,KAAK,EAAE,OAAO,CAAC;IACf,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,OAAO,CAAC;IACd,WAAW,EAAE,OAAO,CAAC;CACxB,CAAA;AAED,KAAK,mBAAmB,GAAG;IACvB,IAAI,EAAE,OAAO,CAAC;IACd,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;CACpB,CAAA;
|
|
1
|
+
{"version":3,"file":"user32.d.ts","sourceRoot":"","sources":["../../../lib/winapi/user32.ts"],"names":[],"mappings":"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"}
|
|
@@ -440,7 +440,7 @@ function sendMouseButtonInput(button, down) {
|
|
|
440
440
|
}
|
|
441
441
|
async function sendMouseMoveInput(args) {
|
|
442
442
|
const { duration } = args;
|
|
443
|
-
let { x, y, easingFunction, relative } = args;
|
|
443
|
+
let { x, y, easingFunction, relative, startX, startY } = args;
|
|
444
444
|
const screenResolutionAndRefreshRate = getScreenResolutionAndRefreshRate();
|
|
445
445
|
const [, , refreshRate] = screenResolutionAndRefreshRate;
|
|
446
446
|
const updateInterval = 1000 / refreshRate;
|
|
@@ -449,7 +449,16 @@ async function sendMouseMoveInput(args) {
|
|
|
449
449
|
x: 0,
|
|
450
450
|
y: 0,
|
|
451
451
|
};
|
|
452
|
-
|
|
452
|
+
let gotCursorPos = false;
|
|
453
|
+
if (startX !== undefined && startY !== undefined) {
|
|
454
|
+
cursorPosition.x = startX;
|
|
455
|
+
cursorPosition.y = startY;
|
|
456
|
+
gotCursorPos = true;
|
|
457
|
+
}
|
|
458
|
+
else {
|
|
459
|
+
gotCursorPos = GetCursorPos(cursorPosition);
|
|
460
|
+
}
|
|
461
|
+
if (gotCursorPos && iterations > 1) {
|
|
453
462
|
if (relative) {
|
|
454
463
|
x += cursorPosition.x;
|
|
455
464
|
y += cursorPosition.y;
|
|
@@ -544,8 +553,8 @@ async function mouseMoveRelative(x, y, duration = 0, easingFunction) {
|
|
|
544
553
|
function mouseScroll(x, y) {
|
|
545
554
|
sendMouseScrollInput(x, y);
|
|
546
555
|
}
|
|
547
|
-
async function mouseMoveAbsolute(x, y, duration = 0, easingFunction) {
|
|
548
|
-
await sendMouseMoveInput({ x, y, relative: false, duration, easingFunction });
|
|
556
|
+
async function mouseMoveAbsolute(x, y, duration = 0, easingFunction, startX, startY) {
|
|
557
|
+
await sendMouseMoveInput({ x, y, relative: false, duration, easingFunction, startX, startY });
|
|
549
558
|
}
|
|
550
559
|
function mouseDown(button = 0) {
|
|
551
560
|
sendMouseButtonInput(button, true);
|