nautogui 0.3.1
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 +201 -0
- package/README.md +212 -0
- package/README.zh-CN.md +212 -0
- package/bin/mouseinfo.mjs +8 -0
- package/dist/backend.d.ts +59 -0
- package/dist/backend.d.ts.map +1 -0
- package/dist/backend.js +210 -0
- package/dist/backend.js.map +1 -0
- package/dist/config.d.ts +38 -0
- package/dist/config.d.ts.map +1 -0
- package/dist/config.js +60 -0
- package/dist/config.js.map +1 -0
- package/dist/constants.d.ts +16 -0
- package/dist/constants.d.ts.map +1 -0
- package/dist/constants.js +209 -0
- package/dist/constants.js.map +1 -0
- package/dist/coords.d.ts +12 -0
- package/dist/coords.d.ts.map +1 -0
- package/dist/coords.js +46 -0
- package/dist/coords.js.map +1 -0
- package/dist/display-mouse.d.ts +3 -0
- package/dist/display-mouse.d.ts.map +1 -0
- package/dist/display-mouse.js +25 -0
- package/dist/display-mouse.js.map +1 -0
- package/dist/easing-all.d.ts +77 -0
- package/dist/easing-all.d.ts.map +1 -0
- package/dist/easing-all.js +231 -0
- package/dist/easing-all.js.map +1 -0
- package/dist/easing-base.d.ts +8 -0
- package/dist/easing-base.d.ts.map +1 -0
- package/dist/easing-base.js +3 -0
- package/dist/easing-base.js.map +1 -0
- package/dist/easing.d.ts +9 -0
- package/dist/easing.d.ts.map +1 -0
- package/dist/easing.js +15 -0
- package/dist/easing.js.map +1 -0
- package/dist/exceptions.d.ts +18 -0
- package/dist/exceptions.d.ts.map +1 -0
- package/dist/exceptions.js +30 -0
- package/dist/exceptions.js.map +1 -0
- package/dist/hold-context.d.ts +10 -0
- package/dist/hold-context.d.ts.map +1 -0
- package/dist/hold-context.js +31 -0
- package/dist/hold-context.js.map +1 -0
- package/dist/index.d.ts +104 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +362 -0
- package/dist/index.js.map +1 -0
- package/dist/keyboard-utils.d.ts +7 -0
- package/dist/keyboard-utils.d.ts.map +1 -0
- package/dist/keyboard-utils.js +33 -0
- package/dist/keyboard-utils.js.map +1 -0
- package/dist/locate-haystack.d.ts +14 -0
- package/dist/locate-haystack.d.ts.map +1 -0
- package/dist/locate-haystack.js +90 -0
- package/dist/locate-haystack.js.map +1 -0
- package/dist/locate-window.d.ts +12 -0
- package/dist/locate-window.d.ts.map +1 -0
- package/dist/locate-window.js +78 -0
- package/dist/locate-window.js.map +1 -0
- package/dist/log-screenshots.d.ts +3 -0
- package/dist/log-screenshots.d.ts.map +1 -0
- package/dist/log-screenshots.js +32 -0
- package/dist/log-screenshots.js.map +1 -0
- package/dist/mouseinfo.d.ts +8 -0
- package/dist/mouseinfo.d.ts.map +1 -0
- package/dist/mouseinfo.js +83 -0
- package/dist/mouseinfo.js.map +1 -0
- package/dist/msgbox.d.ts +17 -0
- package/dist/msgbox.d.ts.map +1 -0
- package/dist/msgbox.js +77 -0
- package/dist/msgbox.js.map +1 -0
- package/dist/native-msgbox.d.ts +13 -0
- package/dist/native-msgbox.d.ts.map +1 -0
- package/dist/native-msgbox.js +222 -0
- package/dist/native-msgbox.js.map +1 -0
- package/dist/native-utils.d.ts +8 -0
- package/dist/native-utils.d.ts.map +1 -0
- package/dist/native-utils.js +24 -0
- package/dist/native-utils.js.map +1 -0
- package/dist/pixel.d.ts +9 -0
- package/dist/pixel.d.ts.map +1 -0
- package/dist/pixel.js +14 -0
- package/dist/pixel.js.map +1 -0
- package/dist/region.d.ts +14 -0
- package/dist/region.d.ts.map +1 -0
- package/dist/region.js +13 -0
- package/dist/region.js.map +1 -0
- package/dist/run.d.ts +9 -0
- package/dist/run.d.ts.map +1 -0
- package/dist/run.js +189 -0
- package/dist/run.js.map +1 -0
- package/dist/runtime.d.ts +12 -0
- package/dist/runtime.d.ts.map +1 -0
- package/dist/runtime.js +53 -0
- package/dist/runtime.js.map +1 -0
- package/dist/windows.d.ts +30 -0
- package/dist/windows.d.ts.map +1 -0
- package/dist/windows.js +62 -0
- package/dist/windows.js.map +1 -0
- package/package.json +63 -0
package/dist/backend.js
ADDED
|
@@ -0,0 +1,210 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* OS input backend via optional @nut-tree/nut-js (Windows / macOS / Linux).
|
|
3
|
+
*/
|
|
4
|
+
let nutCache;
|
|
5
|
+
export async function loadNutJs() {
|
|
6
|
+
if (nutCache !== undefined)
|
|
7
|
+
return nutCache;
|
|
8
|
+
try {
|
|
9
|
+
nutCache = await import("@nut-tree/nut-js");
|
|
10
|
+
return nutCache;
|
|
11
|
+
}
|
|
12
|
+
catch {
|
|
13
|
+
nutCache = null;
|
|
14
|
+
return null;
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
export async function getNut() {
|
|
18
|
+
const n = await loadNutJs();
|
|
19
|
+
if (!n) {
|
|
20
|
+
throw new Error("@nut-tree/nut-js not installed");
|
|
21
|
+
}
|
|
22
|
+
return n;
|
|
23
|
+
}
|
|
24
|
+
export async function sleepMs(ms) {
|
|
25
|
+
const n = await getNut();
|
|
26
|
+
await n.sleep(Math.max(0, ms));
|
|
27
|
+
}
|
|
28
|
+
export async function screenSize() {
|
|
29
|
+
const n = await getNut();
|
|
30
|
+
return { width: await n.screen.width(), height: await n.screen.height() };
|
|
31
|
+
}
|
|
32
|
+
export async function mousePosition() {
|
|
33
|
+
const n = await getNut();
|
|
34
|
+
const p = await n.mouse.getPosition();
|
|
35
|
+
return { x: p.x, y: p.y };
|
|
36
|
+
}
|
|
37
|
+
export async function mouseSetPosition(x, y) {
|
|
38
|
+
const n = await getNut();
|
|
39
|
+
await n.mouse.setPosition({ x: Math.round(x), y: Math.round(y) });
|
|
40
|
+
}
|
|
41
|
+
export async function mouseLeftClick() {
|
|
42
|
+
const n = await getNut();
|
|
43
|
+
await n.mouse.leftClick();
|
|
44
|
+
}
|
|
45
|
+
export async function mouseRightClick() {
|
|
46
|
+
const n = await getNut();
|
|
47
|
+
await n.mouse.rightClick();
|
|
48
|
+
}
|
|
49
|
+
export async function mouseMiddleClick() {
|
|
50
|
+
const n = await getNut();
|
|
51
|
+
await n.mouse.click(n.Button.MIDDLE);
|
|
52
|
+
}
|
|
53
|
+
export async function mouseDoubleClick() {
|
|
54
|
+
const n = await getNut();
|
|
55
|
+
await n.mouse.doubleClick(n.Button.LEFT);
|
|
56
|
+
}
|
|
57
|
+
export async function mousePressButton(button = "left") {
|
|
58
|
+
const n = await getNut();
|
|
59
|
+
const btn = button === "right"
|
|
60
|
+
? n.Button.RIGHT
|
|
61
|
+
: button === "middle"
|
|
62
|
+
? n.Button.MIDDLE
|
|
63
|
+
: n.Button.LEFT;
|
|
64
|
+
await n.mouse.pressButton(btn);
|
|
65
|
+
}
|
|
66
|
+
export async function mouseReleaseButton(button = "left") {
|
|
67
|
+
const n = await getNut();
|
|
68
|
+
const btn = button === "right"
|
|
69
|
+
? n.Button.RIGHT
|
|
70
|
+
: button === "middle"
|
|
71
|
+
? n.Button.MIDDLE
|
|
72
|
+
: n.Button.LEFT;
|
|
73
|
+
await n.mouse.releaseButton(btn);
|
|
74
|
+
}
|
|
75
|
+
export async function mouseScrollDown(amount) {
|
|
76
|
+
const n = await getNut();
|
|
77
|
+
await n.mouse.scrollDown(amount);
|
|
78
|
+
}
|
|
79
|
+
export async function mouseScrollUp(amount) {
|
|
80
|
+
const n = await getNut();
|
|
81
|
+
await n.mouse.scrollUp(amount);
|
|
82
|
+
}
|
|
83
|
+
export async function mouseScrollLeft(amount) {
|
|
84
|
+
const n = await getNut();
|
|
85
|
+
await n.mouse.scrollLeft(amount);
|
|
86
|
+
}
|
|
87
|
+
export async function mouseScrollRight(amount) {
|
|
88
|
+
const n = await getNut();
|
|
89
|
+
await n.mouse.scrollRight(amount);
|
|
90
|
+
}
|
|
91
|
+
export async function keyboardType(text) {
|
|
92
|
+
const n = await getNut();
|
|
93
|
+
await n.keyboard.type(text);
|
|
94
|
+
}
|
|
95
|
+
export async function resolveNutKey(name) {
|
|
96
|
+
const n = await getNut();
|
|
97
|
+
const aliases = {
|
|
98
|
+
ctrl: "LeftControl",
|
|
99
|
+
control: "LeftControl",
|
|
100
|
+
shift: "LeftShift",
|
|
101
|
+
alt: "LeftAlt",
|
|
102
|
+
enter: "Enter",
|
|
103
|
+
return: "Enter",
|
|
104
|
+
esc: "Escape",
|
|
105
|
+
escape: "Escape",
|
|
106
|
+
tab: "Tab",
|
|
107
|
+
space: "Space",
|
|
108
|
+
backspace: "Backspace",
|
|
109
|
+
delete: "Delete",
|
|
110
|
+
del: "Delete",
|
|
111
|
+
up: "Up",
|
|
112
|
+
down: "Down",
|
|
113
|
+
left: "Left",
|
|
114
|
+
right: "Right",
|
|
115
|
+
home: "Home",
|
|
116
|
+
end: "End",
|
|
117
|
+
pageup: "PageUp",
|
|
118
|
+
pagedown: "PageDown",
|
|
119
|
+
win: "LeftWin",
|
|
120
|
+
cmd: "LeftWin",
|
|
121
|
+
};
|
|
122
|
+
const raw = name.trim();
|
|
123
|
+
const mapped = aliases[raw.toLowerCase()] ?? raw;
|
|
124
|
+
const key = n.Key[mapped];
|
|
125
|
+
if (key === undefined) {
|
|
126
|
+
throw new Error(`Unknown key: ${name}`);
|
|
127
|
+
}
|
|
128
|
+
return key;
|
|
129
|
+
}
|
|
130
|
+
export async function keyboardPressKey(name) {
|
|
131
|
+
const n = await getNut();
|
|
132
|
+
const key = await resolveNutKey(name);
|
|
133
|
+
await n.keyboard.pressKey(key);
|
|
134
|
+
await n.keyboard.releaseKey(key);
|
|
135
|
+
}
|
|
136
|
+
export async function keyboardPressCombo(keys) {
|
|
137
|
+
const n = await getNut();
|
|
138
|
+
const resolved = await Promise.all(keys.map((k) => resolveNutKey(k)));
|
|
139
|
+
await n.keyboard.pressKey(...resolved);
|
|
140
|
+
await n.keyboard.releaseKey(...resolved.reverse());
|
|
141
|
+
}
|
|
142
|
+
export async function keyboardKeyDown(name) {
|
|
143
|
+
const n = await getNut();
|
|
144
|
+
const key = await resolveNutKey(name);
|
|
145
|
+
await n.keyboard.pressKey(key);
|
|
146
|
+
}
|
|
147
|
+
export async function keyboardKeyUp(name) {
|
|
148
|
+
const n = await getNut();
|
|
149
|
+
const key = await resolveNutKey(name);
|
|
150
|
+
await n.keyboard.releaseKey(key);
|
|
151
|
+
}
|
|
152
|
+
export async function mouseDragPath(points) {
|
|
153
|
+
const n = await getNut();
|
|
154
|
+
await n.mouse.drag(points.map((p) => ({ x: Math.round(p.x), y: Math.round(p.y) })));
|
|
155
|
+
}
|
|
156
|
+
export async function captureScreenPng(dir, stem, region) {
|
|
157
|
+
const n = await getNut();
|
|
158
|
+
if (region) {
|
|
159
|
+
return n.screen.captureRegion(stem, new (await import("@nut-tree/shared")).Region(region.left, region.top, region.width, region.height), n.FileType.PNG, dir);
|
|
160
|
+
}
|
|
161
|
+
return n.screen.capture(stem, n.FileType.PNG, dir);
|
|
162
|
+
}
|
|
163
|
+
export async function pixelColorAt(x, y) {
|
|
164
|
+
const n = await getNut();
|
|
165
|
+
const rgba = await n.screen.colorAt({ x: Math.round(x), y: Math.round(y) });
|
|
166
|
+
return { r: rgba.R, g: rgba.G, b: rgba.B, a: rgba.A };
|
|
167
|
+
}
|
|
168
|
+
export async function findImageOnScreen(imagePath, opts) {
|
|
169
|
+
const n = await getNut();
|
|
170
|
+
const img = await n.loadImage(imagePath);
|
|
171
|
+
try {
|
|
172
|
+
const params = opts?.region || opts?.confidence !== undefined
|
|
173
|
+
? new (await import("@nut-tree/shared")).OptionalSearchParameters(opts?.region
|
|
174
|
+
? new (await import("@nut-tree/shared")).Region(opts.region.left, opts.region.top, opts.region.width, opts.region.height)
|
|
175
|
+
: undefined, opts?.confidence)
|
|
176
|
+
: undefined;
|
|
177
|
+
const region = await n.screen.find(img, params);
|
|
178
|
+
return {
|
|
179
|
+
left: region.left,
|
|
180
|
+
top: region.top,
|
|
181
|
+
width: region.width,
|
|
182
|
+
height: region.height,
|
|
183
|
+
};
|
|
184
|
+
}
|
|
185
|
+
catch {
|
|
186
|
+
return null;
|
|
187
|
+
}
|
|
188
|
+
}
|
|
189
|
+
export async function findAllImagesOnScreen(imagePath, opts) {
|
|
190
|
+
const n = await getNut();
|
|
191
|
+
const img = await n.loadImage(imagePath);
|
|
192
|
+
try {
|
|
193
|
+
const params = opts?.region || opts?.confidence !== undefined
|
|
194
|
+
? new (await import("@nut-tree/shared")).OptionalSearchParameters(opts?.region
|
|
195
|
+
? new (await import("@nut-tree/shared")).Region(opts.region.left, opts.region.top, opts.region.width, opts.region.height)
|
|
196
|
+
: undefined, opts?.confidence)
|
|
197
|
+
: undefined;
|
|
198
|
+
const regions = await n.screen.findAll(img, params);
|
|
199
|
+
return regions.map((region) => ({
|
|
200
|
+
left: region.left,
|
|
201
|
+
top: region.top,
|
|
202
|
+
width: region.width,
|
|
203
|
+
height: region.height,
|
|
204
|
+
}));
|
|
205
|
+
}
|
|
206
|
+
catch {
|
|
207
|
+
return [];
|
|
208
|
+
}
|
|
209
|
+
}
|
|
210
|
+
//# sourceMappingURL=backend.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"backend.js","sourceRoot":"","sources":["../src/backend.ts"],"names":[],"mappings":"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"}
|
package/dist/config.d.ts
ADDED
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
/** Global nautogui runtime settings. */
|
|
2
|
+
export declare let PAUSE_SEC: number;
|
|
3
|
+
/** Alias matching PAUSE (seconds). */
|
|
4
|
+
export declare let PAUSE: number;
|
|
5
|
+
export declare let FAILSAFE: boolean;
|
|
6
|
+
export declare let MINIMUM_DURATION_SEC: number;
|
|
7
|
+
/** Alias matching MINIMUM_DURATION. */
|
|
8
|
+
export declare let MINIMUM_DURATION: number;
|
|
9
|
+
export declare let MINIMUM_SLEEP_SEC: number;
|
|
10
|
+
export declare let MINIMUM_SLEEP: number;
|
|
11
|
+
export declare let DARWIN_CATCH_UP_TIME_SEC: number;
|
|
12
|
+
export declare let DARWIN_CATCH_UP_TIME: number;
|
|
13
|
+
export declare let LOG_SCREENSHOTS: boolean;
|
|
14
|
+
export declare let LOG_SCREENSHOTS_LIMIT: number | null;
|
|
15
|
+
export declare const G_LOG_SCREENSHOTS_FILENAMES: string[];
|
|
16
|
+
/** When true, image locate functions throw ImageNotFoundException instead of returning null. */
|
|
17
|
+
export declare let USE_IMAGE_NOT_FOUND_EXCEPTION: boolean;
|
|
18
|
+
/** Corner failsafe points; updated when screen size is known. */
|
|
19
|
+
export declare let FAILSAFE_POINTS: Array<{
|
|
20
|
+
x: number;
|
|
21
|
+
y: number;
|
|
22
|
+
}>;
|
|
23
|
+
export declare function configureNautogui(opts: {
|
|
24
|
+
pauseSec?: number;
|
|
25
|
+
pause?: number;
|
|
26
|
+
failSafe?: boolean;
|
|
27
|
+
minimumDurationSec?: number;
|
|
28
|
+
minimumDuration?: number;
|
|
29
|
+
minimumSleepSec?: number;
|
|
30
|
+
logScreenshots?: boolean;
|
|
31
|
+
logId?: boolean;
|
|
32
|
+
useImageNotFoundException?: boolean;
|
|
33
|
+
}): void;
|
|
34
|
+
/** useImageNotFoundException() */
|
|
35
|
+
export declare function useImageNotFoundException(value?: boolean): void;
|
|
36
|
+
export declare function refreshFailSafePoints(): Promise<void>;
|
|
37
|
+
export { FailSafeException, ImageNotFoundException, NautoguiFailSafeError, NautoguiNotAvailableError, NautoguiException, } from "./exceptions.js";
|
|
38
|
+
//# sourceMappingURL=config.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,wCAAwC;AAIxC,eAAO,IAAI,SAAS,QAAM,CAAC;AAC3B,sCAAsC;AACtC,eAAO,IAAI,KAAK,QAAY,CAAC;AAE7B,eAAO,IAAI,QAAQ,SAAO,CAAC;AAC3B,eAAO,IAAI,oBAAoB,QAAM,CAAC;AACtC,uCAAuC;AACvC,eAAO,IAAI,gBAAgB,QAAuB,CAAC;AAEnD,eAAO,IAAI,iBAAiB,QAAO,CAAC;AACpC,eAAO,IAAI,aAAa,QAAoB,CAAC;AAE7C,eAAO,IAAI,wBAAwB,QAAO,CAAC;AAC3C,eAAO,IAAI,oBAAoB,QAA2B,CAAC;AAE3D,eAAO,IAAI,eAAe,SAAQ,CAAC;AACnC,eAAO,IAAI,qBAAqB,EAAE,MAAM,GAAG,IAAS,CAAC;AACrD,eAAO,MAAM,2BAA2B,EAAE,MAAM,EAAO,CAAC;AAExD,gGAAgG;AAChG,eAAO,IAAI,6BAA6B,SAAQ,CAAC;AAEjD,iEAAiE;AACjE,eAAO,IAAI,eAAe,EAAE,KAAK,CAAC;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAE,CAAoB,CAAC;AAE/E,wBAAgB,iBAAiB,CAAC,IAAI,EAAE;IACtC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,yBAAyB,CAAC,EAAE,OAAO,CAAC;CACrC,GAAG,IAAI,CAwBP;AAED,kCAAkC;AAClC,wBAAgB,yBAAyB,CAAC,KAAK,CAAC,EAAE,OAAO,GAAG,IAAI,CAE/D;AAED,wBAAsB,qBAAqB,IAAI,OAAO,CAAC,IAAI,CAAC,CAQ3D;AAED,OAAO,EACL,iBAAiB,EACjB,sBAAsB,EACtB,qBAAqB,EACrB,yBAAyB,EACzB,iBAAiB,GAClB,MAAM,iBAAiB,CAAC"}
|
package/dist/config.js
ADDED
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
/** Global nautogui runtime settings. */
|
|
2
|
+
import { screenSize } from "./backend.js";
|
|
3
|
+
export let PAUSE_SEC = 0.1;
|
|
4
|
+
/** Alias matching PAUSE (seconds). */
|
|
5
|
+
export let PAUSE = PAUSE_SEC;
|
|
6
|
+
export let FAILSAFE = true;
|
|
7
|
+
export let MINIMUM_DURATION_SEC = 0.1;
|
|
8
|
+
/** Alias matching MINIMUM_DURATION. */
|
|
9
|
+
export let MINIMUM_DURATION = MINIMUM_DURATION_SEC;
|
|
10
|
+
export let MINIMUM_SLEEP_SEC = 0.05;
|
|
11
|
+
export let MINIMUM_SLEEP = MINIMUM_SLEEP_SEC;
|
|
12
|
+
export let DARWIN_CATCH_UP_TIME_SEC = 0.01;
|
|
13
|
+
export let DARWIN_CATCH_UP_TIME = DARWIN_CATCH_UP_TIME_SEC;
|
|
14
|
+
export let LOG_SCREENSHOTS = false;
|
|
15
|
+
export let LOG_SCREENSHOTS_LIMIT = 10;
|
|
16
|
+
export const G_LOG_SCREENSHOTS_FILENAMES = [];
|
|
17
|
+
/** When true, image locate functions throw ImageNotFoundException instead of returning null. */
|
|
18
|
+
export let USE_IMAGE_NOT_FOUND_EXCEPTION = false;
|
|
19
|
+
/** Corner failsafe points; updated when screen size is known. */
|
|
20
|
+
export let FAILSAFE_POINTS = [{ x: 0, y: 0 }];
|
|
21
|
+
export function configureNautogui(opts) {
|
|
22
|
+
const pause = opts.pauseSec ?? opts.pause;
|
|
23
|
+
if (pause !== undefined) {
|
|
24
|
+
PAUSE_SEC = Math.max(0, pause);
|
|
25
|
+
PAUSE = PAUSE_SEC;
|
|
26
|
+
}
|
|
27
|
+
if (opts.failSafe !== undefined) {
|
|
28
|
+
FAILSAFE = opts.failSafe;
|
|
29
|
+
}
|
|
30
|
+
const minDur = opts.minimumDurationSec ?? opts.minimumDuration;
|
|
31
|
+
if (minDur !== undefined) {
|
|
32
|
+
MINIMUM_DURATION_SEC = Math.max(0, minDur);
|
|
33
|
+
MINIMUM_DURATION = MINIMUM_DURATION_SEC;
|
|
34
|
+
}
|
|
35
|
+
if (opts.minimumSleepSec !== undefined) {
|
|
36
|
+
MINIMUM_SLEEP_SEC = Math.max(0, opts.minimumSleepSec);
|
|
37
|
+
MINIMUM_SLEEP = MINIMUM_SLEEP_SEC;
|
|
38
|
+
}
|
|
39
|
+
if (opts.logScreenshots !== undefined) {
|
|
40
|
+
LOG_SCREENSHOTS = opts.logScreenshots;
|
|
41
|
+
}
|
|
42
|
+
if (opts.useImageNotFoundException !== undefined) {
|
|
43
|
+
USE_IMAGE_NOT_FOUND_EXCEPTION = opts.useImageNotFoundException;
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
/** useImageNotFoundException() */
|
|
47
|
+
export function useImageNotFoundException(value) {
|
|
48
|
+
USE_IMAGE_NOT_FOUND_EXCEPTION = value ?? true;
|
|
49
|
+
}
|
|
50
|
+
export async function refreshFailSafePoints() {
|
|
51
|
+
const { width, height } = await screenSize();
|
|
52
|
+
FAILSAFE_POINTS = [
|
|
53
|
+
{ x: 0, y: 0 },
|
|
54
|
+
{ x: width - 1, y: 0 },
|
|
55
|
+
{ x: 0, y: height - 1 },
|
|
56
|
+
{ x: width - 1, y: height - 1 },
|
|
57
|
+
];
|
|
58
|
+
}
|
|
59
|
+
export { FailSafeException, ImageNotFoundException, NautoguiFailSafeError, NautoguiNotAvailableError, NautoguiException, } from "./exceptions.js";
|
|
60
|
+
//# sourceMappingURL=config.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,wCAAwC;AAExC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,MAAM,CAAC,IAAI,SAAS,GAAG,GAAG,CAAC;AAC3B,sCAAsC;AACtC,MAAM,CAAC,IAAI,KAAK,GAAG,SAAS,CAAC;AAE7B,MAAM,CAAC,IAAI,QAAQ,GAAG,IAAI,CAAC;AAC3B,MAAM,CAAC,IAAI,oBAAoB,GAAG,GAAG,CAAC;AACtC,uCAAuC;AACvC,MAAM,CAAC,IAAI,gBAAgB,GAAG,oBAAoB,CAAC;AAEnD,MAAM,CAAC,IAAI,iBAAiB,GAAG,IAAI,CAAC;AACpC,MAAM,CAAC,IAAI,aAAa,GAAG,iBAAiB,CAAC;AAE7C,MAAM,CAAC,IAAI,wBAAwB,GAAG,IAAI,CAAC;AAC3C,MAAM,CAAC,IAAI,oBAAoB,GAAG,wBAAwB,CAAC;AAE3D,MAAM,CAAC,IAAI,eAAe,GAAG,KAAK,CAAC;AACnC,MAAM,CAAC,IAAI,qBAAqB,GAAkB,EAAE,CAAC;AACrD,MAAM,CAAC,MAAM,2BAA2B,GAAa,EAAE,CAAC;AAExD,gGAAgG;AAChG,MAAM,CAAC,IAAI,6BAA6B,GAAG,KAAK,CAAC;AAEjD,iEAAiE;AACjE,MAAM,CAAC,IAAI,eAAe,GAAoC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;AAE/E,MAAM,UAAU,iBAAiB,CAAC,IAUjC;IACC,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,KAAK,CAAC;IAC1C,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;QAC/B,KAAK,GAAG,SAAS,CAAC;IACpB,CAAC;IACD,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;QAChC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;IAC3B,CAAC;IACD,MAAM,MAAM,GAAG,IAAI,CAAC,kBAAkB,IAAI,IAAI,CAAC,eAAe,CAAC;IAC/D,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACzB,oBAAoB,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;QAC3C,gBAAgB,GAAG,oBAAoB,CAAC;IAC1C,CAAC;IACD,IAAI,IAAI,CAAC,eAAe,KAAK,SAAS,EAAE,CAAC;QACvC,iBAAiB,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;QACtD,aAAa,GAAG,iBAAiB,CAAC;IACpC,CAAC;IACD,IAAI,IAAI,CAAC,cAAc,KAAK,SAAS,EAAE,CAAC;QACtC,eAAe,GAAG,IAAI,CAAC,cAAc,CAAC;IACxC,CAAC;IACD,IAAI,IAAI,CAAC,yBAAyB,KAAK,SAAS,EAAE,CAAC;QACjD,6BAA6B,GAAG,IAAI,CAAC,yBAAyB,CAAC;IACjE,CAAC;AACH,CAAC;AAED,kCAAkC;AAClC,MAAM,UAAU,yBAAyB,CAAC,KAAe;IACvD,6BAA6B,GAAG,KAAK,IAAI,IAAI,CAAC;AAChD,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,qBAAqB;IACzC,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM,UAAU,EAAE,CAAC;IAC7C,eAAe,GAAG;QAChB,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE;QACd,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE;QACtB,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,MAAM,GAAG,CAAC,EAAE;QACvB,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,EAAE,MAAM,GAAG,CAAC,EAAE;KAChC,CAAC;AACJ,CAAC;AAED,OAAO,EACL,iBAAiB,EACjB,sBAAsB,EACtB,qBAAqB,EACrB,yBAAyB,EACzB,iBAAiB,GAClB,MAAM,iBAAiB,CAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/** Mouse button name constants (LEFT / MIDDLE / RIGHT / PRIMARY / SECONDARY). */
|
|
2
|
+
export declare const LEFT: "left";
|
|
3
|
+
export declare const MIDDLE: "middle";
|
|
4
|
+
export declare const RIGHT: "right";
|
|
5
|
+
export declare const PRIMARY: "primary";
|
|
6
|
+
export declare const SECONDARY: "secondary";
|
|
7
|
+
export type MouseButtonName = typeof LEFT | typeof MIDDLE | typeof RIGHT | typeof PRIMARY | typeof SECONDARY;
|
|
8
|
+
/** Supported keyboard key names. */
|
|
9
|
+
export declare const KEY_NAMES: readonly ["\t", "\n", "\r", " ", "!", "\"", "#", "$", "%", "&", "'", "(", ")", "*", "+", ",", "-", ".", "/", "0", "1", "2", "3", "4", "5", "6", "7", "8", "9", ":", ";", "<", "=", ">", "?", "@", "[", "\\", "]", "^", "_", "`", "a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z", "{", "|", "}", "~", "accept", "add", "alt", "altleft", "altright", "apps", "backspace", "browserback", "browserfavorites", "browserforward", "browserhome", "browserrefresh", "browsersearch", "browserstop", "capslock", "clear", "convert", "ctrl", "ctrlleft", "ctrlright", "decimal", "del", "delete", "divide", "down", "end", "enter", "esc", "escape", "execute", "f1", "f10", "f11", "f12", "f13", "f14", "f15", "f16", "f17", "f18", "f19", "f2", "f20", "f21", "f22", "f23", "f24", "f3", "f4", "f5", "f6", "f7", "f8", "f9", "final", "fn", "hanguel", "hangul", "hanja", "help", "home", "insert", "junja", "kana", "kanji", "launchapp1", "launchapp2", "launchmail", "launchmediaselect", "left", "modechange", "multiply", "nexttrack", "nonconvert", "num0", "num1", "num2", "num3", "num4", "num5", "num6", "num7", "num8", "num9", "numlock", "pagedown", "pageup", "pause", "pgdn", "pgup", "playpause", "prevtrack", "print", "printscreen", "prntscrn", "prtsc", "prtscr", "return", "right", "scrolllock", "select", "separator", "shift", "shiftleft", "shiftright", "sleep", "space", "stop", "subtract", "tab", "up", "volumedown", "volumemute", "volumeup", "win", "winleft", "winright", "yen", "command", "option", "optionleft", "optionright"];
|
|
10
|
+
export declare const KEYBOARD_KEYS: readonly ["\t", "\n", "\r", " ", "!", "\"", "#", "$", "%", "&", "'", "(", ")", "*", "+", ",", "-", ".", "/", "0", "1", "2", "3", "4", "5", "6", "7", "8", "9", ":", ";", "<", "=", ">", "?", "@", "[", "\\", "]", "^", "_", "`", "a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z", "{", "|", "}", "~", "accept", "add", "alt", "altleft", "altright", "apps", "backspace", "browserback", "browserfavorites", "browserforward", "browserhome", "browserrefresh", "browsersearch", "browserstop", "capslock", "clear", "convert", "ctrl", "ctrlleft", "ctrlright", "decimal", "del", "delete", "divide", "down", "end", "enter", "esc", "escape", "execute", "f1", "f10", "f11", "f12", "f13", "f14", "f15", "f16", "f17", "f18", "f19", "f2", "f20", "f21", "f22", "f23", "f24", "f3", "f4", "f5", "f6", "f7", "f8", "f9", "final", "fn", "hanguel", "hangul", "hanja", "help", "home", "insert", "junja", "kana", "kanji", "launchapp1", "launchapp2", "launchmail", "launchmediaselect", "left", "modechange", "multiply", "nexttrack", "nonconvert", "num0", "num1", "num2", "num3", "num4", "num5", "num6", "num7", "num8", "num9", "numlock", "pagedown", "pageup", "pause", "pgdn", "pgup", "playpause", "prevtrack", "print", "printscreen", "prntscrn", "prtsc", "prtscr", "return", "right", "scrolllock", "select", "separator", "shift", "shiftleft", "shiftright", "sleep", "space", "stop", "subtract", "tab", "up", "volumedown", "volumemute", "volumeup", "win", "winleft", "winright", "yen", "command", "option", "optionleft", "optionright"];
|
|
11
|
+
export type KeyboardKey = (typeof KEY_NAMES)[number];
|
|
12
|
+
/** Keyboard layout strings (QWERTY / QWERTZ). */
|
|
13
|
+
export declare const QWERTY = "`1234567890-=qwertyuiop[]\\asdfghjkl;'zxcvbnm,./~!@#$%^&*()_+QWERTYUIOP{}|ASDFGHJKL:\"ZXCVBNM<>?";
|
|
14
|
+
export declare const QWERTZ = "=1234567890/0qwertzuiop89-asdfghjkl,\\yxcvbnm,.7+!@#$%^&*()?)QWERTZUIOP*(_ASDFGHJKL<|YXCVBNM<>&";
|
|
15
|
+
export declare const VERSION = "0.3.0";
|
|
16
|
+
//# sourceMappingURL=constants.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA,iFAAiF;AAEjF,eAAO,MAAM,IAAI,EAAG,MAAe,CAAC;AACpC,eAAO,MAAM,MAAM,EAAG,QAAiB,CAAC;AACxC,eAAO,MAAM,KAAK,EAAG,OAAgB,CAAC;AACtC,eAAO,MAAM,OAAO,EAAG,SAAkB,CAAC;AAC1C,eAAO,MAAM,SAAS,EAAG,WAAoB,CAAC;AAE9C,MAAM,MAAM,eAAe,GACvB,OAAO,IAAI,GACX,OAAO,MAAM,GACb,OAAO,KAAK,GACZ,OAAO,OAAO,GACd,OAAO,SAAS,CAAC;AAErB,oCAAoC;AACpC,eAAO,MAAM,SAAS,kjDAmMZ,CAAC;AAEX,eAAO,MAAM,aAAa,kjDAAY,CAAC;AAEvC,MAAM,MAAM,WAAW,GAAG,CAAC,OAAO,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC;AAErD,iDAAiD;AACjD,eAAO,MAAM,MAAM,qGACiF,CAAC;AACrG,eAAO,MAAM,MAAM,oGACgF,CAAC;AAEpG,eAAO,MAAM,OAAO,UAAU,CAAC"}
|
|
@@ -0,0 +1,209 @@
|
|
|
1
|
+
/** Mouse button name constants (LEFT / MIDDLE / RIGHT / PRIMARY / SECONDARY). */
|
|
2
|
+
export const LEFT = "left";
|
|
3
|
+
export const MIDDLE = "middle";
|
|
4
|
+
export const RIGHT = "right";
|
|
5
|
+
export const PRIMARY = "primary";
|
|
6
|
+
export const SECONDARY = "secondary";
|
|
7
|
+
/** Supported keyboard key names. */
|
|
8
|
+
export const KEY_NAMES = [
|
|
9
|
+
"\t",
|
|
10
|
+
"\n",
|
|
11
|
+
"\r",
|
|
12
|
+
" ",
|
|
13
|
+
"!",
|
|
14
|
+
'"',
|
|
15
|
+
"#",
|
|
16
|
+
"$",
|
|
17
|
+
"%",
|
|
18
|
+
"&",
|
|
19
|
+
"'",
|
|
20
|
+
"(",
|
|
21
|
+
")",
|
|
22
|
+
"*",
|
|
23
|
+
"+",
|
|
24
|
+
",",
|
|
25
|
+
"-",
|
|
26
|
+
".",
|
|
27
|
+
"/",
|
|
28
|
+
"0",
|
|
29
|
+
"1",
|
|
30
|
+
"2",
|
|
31
|
+
"3",
|
|
32
|
+
"4",
|
|
33
|
+
"5",
|
|
34
|
+
"6",
|
|
35
|
+
"7",
|
|
36
|
+
"8",
|
|
37
|
+
"9",
|
|
38
|
+
":",
|
|
39
|
+
";",
|
|
40
|
+
"<",
|
|
41
|
+
"=",
|
|
42
|
+
">",
|
|
43
|
+
"?",
|
|
44
|
+
"@",
|
|
45
|
+
"[",
|
|
46
|
+
"\\",
|
|
47
|
+
"]",
|
|
48
|
+
"^",
|
|
49
|
+
"_",
|
|
50
|
+
"`",
|
|
51
|
+
"a",
|
|
52
|
+
"b",
|
|
53
|
+
"c",
|
|
54
|
+
"d",
|
|
55
|
+
"e",
|
|
56
|
+
"f",
|
|
57
|
+
"g",
|
|
58
|
+
"h",
|
|
59
|
+
"i",
|
|
60
|
+
"j",
|
|
61
|
+
"k",
|
|
62
|
+
"l",
|
|
63
|
+
"m",
|
|
64
|
+
"n",
|
|
65
|
+
"o",
|
|
66
|
+
"p",
|
|
67
|
+
"q",
|
|
68
|
+
"r",
|
|
69
|
+
"s",
|
|
70
|
+
"t",
|
|
71
|
+
"u",
|
|
72
|
+
"v",
|
|
73
|
+
"w",
|
|
74
|
+
"x",
|
|
75
|
+
"y",
|
|
76
|
+
"z",
|
|
77
|
+
"{",
|
|
78
|
+
"|",
|
|
79
|
+
"}",
|
|
80
|
+
"~",
|
|
81
|
+
"accept",
|
|
82
|
+
"add",
|
|
83
|
+
"alt",
|
|
84
|
+
"altleft",
|
|
85
|
+
"altright",
|
|
86
|
+
"apps",
|
|
87
|
+
"backspace",
|
|
88
|
+
"browserback",
|
|
89
|
+
"browserfavorites",
|
|
90
|
+
"browserforward",
|
|
91
|
+
"browserhome",
|
|
92
|
+
"browserrefresh",
|
|
93
|
+
"browsersearch",
|
|
94
|
+
"browserstop",
|
|
95
|
+
"capslock",
|
|
96
|
+
"clear",
|
|
97
|
+
"convert",
|
|
98
|
+
"ctrl",
|
|
99
|
+
"ctrlleft",
|
|
100
|
+
"ctrlright",
|
|
101
|
+
"decimal",
|
|
102
|
+
"del",
|
|
103
|
+
"delete",
|
|
104
|
+
"divide",
|
|
105
|
+
"down",
|
|
106
|
+
"end",
|
|
107
|
+
"enter",
|
|
108
|
+
"esc",
|
|
109
|
+
"escape",
|
|
110
|
+
"execute",
|
|
111
|
+
"f1",
|
|
112
|
+
"f10",
|
|
113
|
+
"f11",
|
|
114
|
+
"f12",
|
|
115
|
+
"f13",
|
|
116
|
+
"f14",
|
|
117
|
+
"f15",
|
|
118
|
+
"f16",
|
|
119
|
+
"f17",
|
|
120
|
+
"f18",
|
|
121
|
+
"f19",
|
|
122
|
+
"f2",
|
|
123
|
+
"f20",
|
|
124
|
+
"f21",
|
|
125
|
+
"f22",
|
|
126
|
+
"f23",
|
|
127
|
+
"f24",
|
|
128
|
+
"f3",
|
|
129
|
+
"f4",
|
|
130
|
+
"f5",
|
|
131
|
+
"f6",
|
|
132
|
+
"f7",
|
|
133
|
+
"f8",
|
|
134
|
+
"f9",
|
|
135
|
+
"final",
|
|
136
|
+
"fn",
|
|
137
|
+
"hanguel",
|
|
138
|
+
"hangul",
|
|
139
|
+
"hanja",
|
|
140
|
+
"help",
|
|
141
|
+
"home",
|
|
142
|
+
"insert",
|
|
143
|
+
"junja",
|
|
144
|
+
"kana",
|
|
145
|
+
"kanji",
|
|
146
|
+
"launchapp1",
|
|
147
|
+
"launchapp2",
|
|
148
|
+
"launchmail",
|
|
149
|
+
"launchmediaselect",
|
|
150
|
+
"left",
|
|
151
|
+
"modechange",
|
|
152
|
+
"multiply",
|
|
153
|
+
"nexttrack",
|
|
154
|
+
"nonconvert",
|
|
155
|
+
"num0",
|
|
156
|
+
"num1",
|
|
157
|
+
"num2",
|
|
158
|
+
"num3",
|
|
159
|
+
"num4",
|
|
160
|
+
"num5",
|
|
161
|
+
"num6",
|
|
162
|
+
"num7",
|
|
163
|
+
"num8",
|
|
164
|
+
"num9",
|
|
165
|
+
"numlock",
|
|
166
|
+
"pagedown",
|
|
167
|
+
"pageup",
|
|
168
|
+
"pause",
|
|
169
|
+
"pgdn",
|
|
170
|
+
"pgup",
|
|
171
|
+
"playpause",
|
|
172
|
+
"prevtrack",
|
|
173
|
+
"print",
|
|
174
|
+
"printscreen",
|
|
175
|
+
"prntscrn",
|
|
176
|
+
"prtsc",
|
|
177
|
+
"prtscr",
|
|
178
|
+
"return",
|
|
179
|
+
"right",
|
|
180
|
+
"scrolllock",
|
|
181
|
+
"select",
|
|
182
|
+
"separator",
|
|
183
|
+
"shift",
|
|
184
|
+
"shiftleft",
|
|
185
|
+
"shiftright",
|
|
186
|
+
"sleep",
|
|
187
|
+
"space",
|
|
188
|
+
"stop",
|
|
189
|
+
"subtract",
|
|
190
|
+
"tab",
|
|
191
|
+
"up",
|
|
192
|
+
"volumedown",
|
|
193
|
+
"volumemute",
|
|
194
|
+
"volumeup",
|
|
195
|
+
"win",
|
|
196
|
+
"winleft",
|
|
197
|
+
"winright",
|
|
198
|
+
"yen",
|
|
199
|
+
"command",
|
|
200
|
+
"option",
|
|
201
|
+
"optionleft",
|
|
202
|
+
"optionright",
|
|
203
|
+
];
|
|
204
|
+
export const KEYBOARD_KEYS = KEY_NAMES;
|
|
205
|
+
/** Keyboard layout strings (QWERTY / QWERTZ). */
|
|
206
|
+
export const QWERTY = "`1234567890-=qwertyuiop[]\\asdfghjkl;'zxcvbnm,./~!@#$%^&*()_+QWERTYUIOP{}|ASDFGHJKL:\"ZXCVBNM<>?";
|
|
207
|
+
export const QWERTZ = "=1234567890/0qwertzuiop89-asdfghjkl,\\yxcvbnm,.7+!@#$%^&*()?)QWERTZUIOP*(_ASDFGHJKL<|YXCVBNM<>&";
|
|
208
|
+
export const VERSION = "0.3.0";
|
|
209
|
+
//# sourceMappingURL=constants.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA,iFAAiF;AAEjF,MAAM,CAAC,MAAM,IAAI,GAAG,MAAe,CAAC;AACpC,MAAM,CAAC,MAAM,MAAM,GAAG,QAAiB,CAAC;AACxC,MAAM,CAAC,MAAM,KAAK,GAAG,OAAgB,CAAC;AACtC,MAAM,CAAC,MAAM,OAAO,GAAG,SAAkB,CAAC;AAC1C,MAAM,CAAC,MAAM,SAAS,GAAG,WAAoB,CAAC;AAS9C,oCAAoC;AACpC,MAAM,CAAC,MAAM,SAAS,GAAG;IACvB,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,IAAI;IACJ,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,QAAQ;IACR,KAAK;IACL,KAAK;IACL,SAAS;IACT,UAAU;IACV,MAAM;IACN,WAAW;IACX,aAAa;IACb,kBAAkB;IAClB,gBAAgB;IAChB,aAAa;IACb,gBAAgB;IAChB,eAAe;IACf,aAAa;IACb,UAAU;IACV,OAAO;IACP,SAAS;IACT,MAAM;IACN,UAAU;IACV,WAAW;IACX,SAAS;IACT,KAAK;IACL,QAAQ;IACR,QAAQ;IACR,MAAM;IACN,KAAK;IACL,OAAO;IACP,KAAK;IACL,QAAQ;IACR,SAAS;IACT,IAAI;IACJ,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,IAAI;IACJ,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,OAAO;IACP,IAAI;IACJ,SAAS;IACT,QAAQ;IACR,OAAO;IACP,MAAM;IACN,MAAM;IACN,QAAQ;IACR,OAAO;IACP,MAAM;IACN,OAAO;IACP,YAAY;IACZ,YAAY;IACZ,YAAY;IACZ,mBAAmB;IACnB,MAAM;IACN,YAAY;IACZ,UAAU;IACV,WAAW;IACX,YAAY;IACZ,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,SAAS;IACT,UAAU;IACV,QAAQ;IACR,OAAO;IACP,MAAM;IACN,MAAM;IACN,WAAW;IACX,WAAW;IACX,OAAO;IACP,aAAa;IACb,UAAU;IACV,OAAO;IACP,QAAQ;IACR,QAAQ;IACR,OAAO;IACP,YAAY;IACZ,QAAQ;IACR,WAAW;IACX,OAAO;IACP,WAAW;IACX,YAAY;IACZ,OAAO;IACP,OAAO;IACP,MAAM;IACN,UAAU;IACV,KAAK;IACL,IAAI;IACJ,YAAY;IACZ,YAAY;IACZ,UAAU;IACV,KAAK;IACL,SAAS;IACT,UAAU;IACV,KAAK;IACL,SAAS;IACT,QAAQ;IACR,YAAY;IACZ,aAAa;CACL,CAAC;AAEX,MAAM,CAAC,MAAM,aAAa,GAAG,SAAS,CAAC;AAIvC,iDAAiD;AACjD,MAAM,CAAC,MAAM,MAAM,GACjB,kGAAkG,CAAC;AACrG,MAAM,CAAC,MAAM,MAAM,GACjB,iGAAiG,CAAC;AAEpG,MAAM,CAAC,MAAM,OAAO,GAAG,OAAO,CAAC"}
|
package/dist/coords.d.ts
ADDED
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/** Coordinate normalization (_normalizeXYArgs). */
|
|
2
|
+
import { type Box } from "./region.js";
|
|
3
|
+
export type ScreenPoint = {
|
|
4
|
+
x: number;
|
|
5
|
+
y: number;
|
|
6
|
+
};
|
|
7
|
+
export declare function normalizeXYArgs(first: number | string | Box | [number, number] | null | undefined, second: number | null | undefined, deps: {
|
|
8
|
+
position: () => Promise<ScreenPoint>;
|
|
9
|
+
locateOnScreen: (image: string) => Promise<Box | null>;
|
|
10
|
+
}): Promise<ScreenPoint | null>;
|
|
11
|
+
export declare function normalizeButton(button: string | number): "left" | "right" | "middle";
|
|
12
|
+
//# sourceMappingURL=coords.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"coords.d.ts","sourceRoot":"","sources":["../src/coords.ts"],"names":[],"mappings":"AAAA,mDAAmD;AAGnD,OAAO,EAAuB,KAAK,GAAG,EAAE,MAAM,aAAa,CAAC;AAE5D,MAAM,MAAM,WAAW,GAAG;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAEnD,wBAAsB,eAAe,CACnC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,GAAG,SAAS,EAClE,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EACjC,IAAI,EAAE;IACJ,QAAQ,EAAE,MAAM,OAAO,CAAC,WAAW,CAAC,CAAC;IACrC,cAAc,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,GAAG,GAAG,IAAI,CAAC,CAAC;CACxD,GACA,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC,CA+B7B;AAED,wBAAgB,eAAe,CAC7B,MAAM,EAAE,MAAM,GAAG,MAAM,GACtB,MAAM,GAAG,OAAO,GAAG,QAAQ,CAO7B"}
|
package/dist/coords.js
ADDED
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
/** Coordinate normalization (_normalizeXYArgs). */
|
|
2
|
+
import { existsSync } from "node:fs";
|
|
3
|
+
import { center, isImagePath } from "./region.js";
|
|
4
|
+
export async function normalizeXYArgs(first, second, deps) {
|
|
5
|
+
if (first == null && second == null) {
|
|
6
|
+
return deps.position();
|
|
7
|
+
}
|
|
8
|
+
if (first == null && second != null) {
|
|
9
|
+
const p = await deps.position();
|
|
10
|
+
return { x: p.x, y: Math.round(second) };
|
|
11
|
+
}
|
|
12
|
+
if (second == null && typeof first === "number") {
|
|
13
|
+
const p = await deps.position();
|
|
14
|
+
return { x: Math.round(first), y: p.y };
|
|
15
|
+
}
|
|
16
|
+
if (typeof first === "string" && isImagePath(first) && existsSync(first)) {
|
|
17
|
+
const box = await deps.locateOnScreen(first);
|
|
18
|
+
return box ? center(box) : null;
|
|
19
|
+
}
|
|
20
|
+
if (Array.isArray(first) && first.length === 2) {
|
|
21
|
+
return { x: Math.round(first[0]), y: Math.round(first[1]) };
|
|
22
|
+
}
|
|
23
|
+
if (Array.isArray(first) && first.length === 4) {
|
|
24
|
+
return center({
|
|
25
|
+
left: first[0],
|
|
26
|
+
top: first[1],
|
|
27
|
+
width: first[2],
|
|
28
|
+
height: first[3],
|
|
29
|
+
});
|
|
30
|
+
}
|
|
31
|
+
if (typeof first === "number" && typeof second === "number") {
|
|
32
|
+
return { x: Math.round(first), y: Math.round(second) };
|
|
33
|
+
}
|
|
34
|
+
throw new Error("Invalid coordinate arguments");
|
|
35
|
+
}
|
|
36
|
+
export function normalizeButton(button) {
|
|
37
|
+
if (button === 1 || button === "left" || button === "primary")
|
|
38
|
+
return "left";
|
|
39
|
+
if (button === 2 || button === "middle")
|
|
40
|
+
return "middle";
|
|
41
|
+
if (button === 3 || button === "right" || button === "secondary") {
|
|
42
|
+
return "right";
|
|
43
|
+
}
|
|
44
|
+
throw new Error(`Invalid button: ${String(button)}`);
|
|
45
|
+
}
|
|
46
|
+
//# sourceMappingURL=coords.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"coords.js","sourceRoot":"","sources":["../src/coords.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"display-mouse.d.ts","sourceRoot":"","sources":["../src/display-mouse.ts"],"names":[],"mappings":"AAAA,2BAA2B;AAI3B,wBAAsB,oBAAoB,CACxC,OAAO,SAAI,EACX,OAAO,SAAI,GACV,OAAO,CAAC,IAAI,CAAC,CAuBf"}
|