gestament 0.1.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/README.md +122 -0
- package/dist/element.d.ts +15 -0
- package/dist/element.d.ts.map +1 -0
- package/dist/errors.d.ts +28 -0
- package/dist/errors.d.ts.map +1 -0
- package/dist/generated/packageMetadata.d.ts +18 -0
- package/dist/generated/packageMetadata.d.ts.map +1 -0
- package/dist/gestament-config.cjs +87 -0
- package/dist/gestament-config.cjs.map +1 -0
- package/dist/gestament-config.d.ts +18 -0
- package/dist/gestament-config.d.ts.map +1 -0
- package/dist/gestament-config.mjs +86 -0
- package/dist/gestament-config.mjs.map +1 -0
- package/dist/gestament-tray-host.cjs +12 -0
- package/dist/gestament-tray-host.cjs.map +1 -0
- package/dist/gestament-tray-host.d.ts +13 -0
- package/dist/gestament-tray-host.d.ts.map +1 -0
- package/dist/gestament-tray-host.mjs +11 -0
- package/dist/gestament-tray-host.mjs.map +1 -0
- package/dist/gestament-xvfb-worker.cjs +138 -0
- package/dist/gestament-xvfb-worker.cjs.map +1 -0
- package/dist/gestament-xvfb-worker.d.ts +13 -0
- package/dist/gestament-xvfb-worker.d.ts.map +1 -0
- package/dist/gestament-xvfb-worker.mjs +137 -0
- package/dist/gestament-xvfb-worker.mjs.map +1 -0
- package/dist/gestament-xvfb.cjs +132 -0
- package/dist/gestament-xvfb.cjs.map +1 -0
- package/dist/gestament-xvfb.d.ts +13 -0
- package/dist/gestament-xvfb.d.ts.map +1 -0
- package/dist/gestament-xvfb.mjs +131 -0
- package/dist/gestament-xvfb.mjs.map +1 -0
- package/dist/index.cjs +1077 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.ts +13 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.mjs +1077 -0
- package/dist/index.mjs.map +1 -0
- package/dist/launchGtkApp.d.ts +37 -0
- package/dist/launchGtkApp.d.ts.map +1 -0
- package/dist/native-BRnrsqMn.cjs +249 -0
- package/dist/native-BRnrsqMn.cjs.map +1 -0
- package/dist/native-DAhTiLnf.js +249 -0
- package/dist/native-DAhTiLnf.js.map +1 -0
- package/dist/native.d.ts +170 -0
- package/dist/native.d.ts.map +1 -0
- package/dist/testing.cjs +1180 -0
- package/dist/testing.cjs.map +1 -0
- package/dist/testing.d.ts +329 -0
- package/dist/testing.d.ts.map +1 -0
- package/dist/testing.mjs +1158 -0
- package/dist/testing.mjs.map +1 -0
- package/dist/tray.d.ts +17 -0
- package/dist/tray.d.ts.map +1 -0
- package/dist/types.d.ts +920 -0
- package/dist/types.d.ts.map +1 -0
- package/images/gestament-120.png +0 -0
- package/include/gestament/gtk.h +112 -0
- package/package.json +92 -0
- package/prebuilds/linux-arm/gtk3/node.napi.armv7.glibc.node +0 -0
- package/prebuilds/linux-arm/gtk4/node.napi.armv7.glibc.node +0 -0
- package/prebuilds/linux-arm64/gtk3/node.napi.glibc.node +0 -0
- package/prebuilds/linux-arm64/gtk4/node.napi.glibc.node +0 -0
- package/prebuilds/linux-ia32/gtk3/node.napi.glibc.node +0 -0
- package/prebuilds/linux-ia32/gtk4/node.napi.glibc.node +0 -0
- package/prebuilds/linux-riscv64/gtk3/node.napi.glibc.node +0 -0
- package/prebuilds/linux-riscv64/gtk4/node.napi.glibc.node +0 -0
- package/prebuilds/linux-x64/gtk3/node.napi.glibc.node +0 -0
- package/prebuilds/linux-x64/gtk4/node.napi.glibc.node +0 -0
package/dist/native.d.ts
ADDED
|
@@ -0,0 +1,170 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* name: gestament
|
|
3
|
+
* version: 0.1.0
|
|
4
|
+
* description: TypeScript based test driver for GTK
|
|
5
|
+
* author: Kouji Matsui (@kekyo@mi.kekyo.net)
|
|
6
|
+
* license: MIT
|
|
7
|
+
* repository.url: https://github.com/kekyo/gestament.git
|
|
8
|
+
* git.commit.hash: 2e2298272ff7a9fff6945b8d87de6223ac4d7847
|
|
9
|
+
*/
|
|
10
|
+
|
|
11
|
+
export interface NativeCaptureBounds {
|
|
12
|
+
readonly x: number;
|
|
13
|
+
readonly y: number;
|
|
14
|
+
readonly width: number;
|
|
15
|
+
readonly height: number;
|
|
16
|
+
}
|
|
17
|
+
export interface NativeCapture {
|
|
18
|
+
readonly image: Buffer;
|
|
19
|
+
readonly bounds: NativeCaptureBounds;
|
|
20
|
+
readonly visibleBounds: NativeCaptureBounds;
|
|
21
|
+
readonly clipped: boolean;
|
|
22
|
+
}
|
|
23
|
+
export interface NativeElementInfo {
|
|
24
|
+
readonly roleName: string;
|
|
25
|
+
readonly localizedRoleName: string;
|
|
26
|
+
readonly accessibleId: string;
|
|
27
|
+
readonly name: string;
|
|
28
|
+
readonly description: string;
|
|
29
|
+
readonly interfaces: string[];
|
|
30
|
+
readonly states: string[];
|
|
31
|
+
}
|
|
32
|
+
/** AT-SPI Value metadata returned by the native layer. */
|
|
33
|
+
export interface NativeValueInfo {
|
|
34
|
+
/** Current numeric value. */
|
|
35
|
+
readonly value: number;
|
|
36
|
+
/** Minimum accepted numeric value. */
|
|
37
|
+
readonly minimum: number;
|
|
38
|
+
/** Maximum accepted numeric value. */
|
|
39
|
+
readonly maximum: number;
|
|
40
|
+
/** Minimum increment used by step-based controls. */
|
|
41
|
+
readonly minimumIncrement: number;
|
|
42
|
+
/** Text representation reported by AT-SPI, when available. */
|
|
43
|
+
readonly text: string;
|
|
44
|
+
}
|
|
45
|
+
/** Point returned by the native layer. */
|
|
46
|
+
export interface NativeImagePoint {
|
|
47
|
+
/** Horizontal pixel coordinate. */
|
|
48
|
+
readonly x: number;
|
|
49
|
+
/** Vertical pixel coordinate. */
|
|
50
|
+
readonly y: number;
|
|
51
|
+
}
|
|
52
|
+
/** Image size returned by the native layer. */
|
|
53
|
+
export interface NativeImageSize {
|
|
54
|
+
/** Image width in physical pixels. */
|
|
55
|
+
readonly width: number;
|
|
56
|
+
/** Image height in physical pixels. */
|
|
57
|
+
readonly height: number;
|
|
58
|
+
}
|
|
59
|
+
/** AT-SPI Image metadata returned by the native layer. */
|
|
60
|
+
export interface NativeImageInfo {
|
|
61
|
+
/** Text description reported by AT-SPI. */
|
|
62
|
+
readonly description: string;
|
|
63
|
+
/** Image locale reported by AT-SPI. */
|
|
64
|
+
readonly locale: string;
|
|
65
|
+
/** Image position reported by AT-SPI. */
|
|
66
|
+
readonly position: NativeImagePoint;
|
|
67
|
+
/** Image size reported by AT-SPI. */
|
|
68
|
+
readonly size: NativeImageSize;
|
|
69
|
+
/** Screen-relative image bounds reported by AT-SPI. */
|
|
70
|
+
readonly bounds: NativeCaptureBounds;
|
|
71
|
+
}
|
|
72
|
+
/** Opaque native element handle backed by an AT-SPI accessible proxy. */
|
|
73
|
+
export type NativeElementHandle = object;
|
|
74
|
+
/** AT-SPI readiness state reported by the native layer. */
|
|
75
|
+
export type NativeAtspiReadiness = 'ready' | 'missing-bus-name' | 'missing-root' | 'missing-cache';
|
|
76
|
+
/** StatusNotifier tray item metadata reported by the native layer. */
|
|
77
|
+
export interface NativeTrayItem {
|
|
78
|
+
readonly busName: string;
|
|
79
|
+
readonly objectPath: string;
|
|
80
|
+
readonly id: string;
|
|
81
|
+
readonly title: string;
|
|
82
|
+
readonly status: string;
|
|
83
|
+
readonly iconName: string;
|
|
84
|
+
readonly accessibleId: string;
|
|
85
|
+
}
|
|
86
|
+
/** Resolves an accessible id to a native element when it exists. */
|
|
87
|
+
export declare const nativeFindById: (processId: number, id: string) => NativeElementHandle | undefined;
|
|
88
|
+
/** Checks whether a GTK process has completed AT-SPI root/cache registration. */
|
|
89
|
+
export declare const nativeProcessAtspiReadiness: (processId: number) => NativeAtspiReadiness;
|
|
90
|
+
/** Resolves an accessible id to a native element across all exposed processes. */
|
|
91
|
+
export declare const nativeFindAnyById: (id: string) => NativeElementHandle | undefined;
|
|
92
|
+
/** Sets text contents on the accessible with the given id. */
|
|
93
|
+
export declare const nativeSetTextById: (processId: number, id: string, text: string) => void;
|
|
94
|
+
/** Executes the first action on the accessible with the given id. */
|
|
95
|
+
export declare const nativeClickById: (processId: number, id: string) => void;
|
|
96
|
+
/** Reads text from the accessible with the given id. */
|
|
97
|
+
export declare const nativeTextById: (processId: number, id: string) => string;
|
|
98
|
+
/** Captures real screen pixels for the accessible with the given id. */
|
|
99
|
+
export declare const nativeCaptureById: (processId: number, id: string) => NativeCapture;
|
|
100
|
+
/** Counts top-level windows hosted by the process. */
|
|
101
|
+
export declare const nativeWindowCount: (processId: number) => number;
|
|
102
|
+
/** Resolves a top-level window index to an element handle when it exists. */
|
|
103
|
+
export declare const nativeWindowAt: (processId: number, index: number) => NativeElementHandle | undefined;
|
|
104
|
+
/** Counts direct children for an element handle. */
|
|
105
|
+
export declare const nativeChildCount: (element: NativeElementHandle) => number;
|
|
106
|
+
/** Resolves a direct child index to an element handle when it exists. */
|
|
107
|
+
export declare const nativeChildAt: (element: NativeElementHandle, index: number) => NativeElementHandle | undefined;
|
|
108
|
+
/** Counts selected children for a selectable element handle. */
|
|
109
|
+
export declare const nativeSelectedChildCount: (element: NativeElementHandle) => number;
|
|
110
|
+
/** Resolves a selected child index to an element handle when it exists. */
|
|
111
|
+
export declare const nativeSelectedChildAt: (element: NativeElementHandle, index: number) => NativeElementHandle | undefined;
|
|
112
|
+
/** Reads whether a direct child is selected. */
|
|
113
|
+
export declare const nativeIsChildSelected: (element: NativeElementHandle, index: number) => boolean;
|
|
114
|
+
/** Selects a direct child for a selectable element handle. */
|
|
115
|
+
export declare const nativeSelectChildAt: (element: NativeElementHandle, index: number) => void;
|
|
116
|
+
/** Deselects a direct child for a selectable element handle. */
|
|
117
|
+
export declare const nativeDeselectChildAt: (element: NativeElementHandle, index: number) => void;
|
|
118
|
+
/** Selects all children for a selectable element handle. */
|
|
119
|
+
export declare const nativeSelectAllChildren: (element: NativeElementHandle) => void;
|
|
120
|
+
/** Clears child selection for a selectable element handle. */
|
|
121
|
+
export declare const nativeClearSelection: (element: NativeElementHandle) => void;
|
|
122
|
+
/** Counts table rows for a table element handle. */
|
|
123
|
+
export declare const nativeTableRowCount: (element: NativeElementHandle) => number;
|
|
124
|
+
/** Counts table columns for a table element handle. */
|
|
125
|
+
export declare const nativeTableColumnCount: (element: NativeElementHandle) => number;
|
|
126
|
+
/** Resolves a table cell element handle by row and column when it exists. */
|
|
127
|
+
export declare const nativeTableCellAt: (element: NativeElementHandle, row: number, column: number) => NativeElementHandle | undefined;
|
|
128
|
+
/** Reads selected table row indexes. */
|
|
129
|
+
export declare const nativeTableSelectedRows: (element: NativeElementHandle) => number[];
|
|
130
|
+
/** Reads selected table column indexes. */
|
|
131
|
+
export declare const nativeTableSelectedColumns: (element: NativeElementHandle) => number[];
|
|
132
|
+
/** Reads whether a table row is selected. */
|
|
133
|
+
export declare const nativeTableIsRowSelected: (element: NativeElementHandle, row: number) => boolean;
|
|
134
|
+
/** Reads whether a table column is selected. */
|
|
135
|
+
export declare const nativeTableIsColumnSelected: (element: NativeElementHandle, column: number) => boolean;
|
|
136
|
+
/** Reads whether a table cell is selected. */
|
|
137
|
+
export declare const nativeTableIsCellSelected: (element: NativeElementHandle, row: number, column: number) => boolean;
|
|
138
|
+
/** Selects a table row. */
|
|
139
|
+
export declare const nativeTableSelectRow: (element: NativeElementHandle, row: number) => void;
|
|
140
|
+
/** Deselects a table row. */
|
|
141
|
+
export declare const nativeTableDeselectRow: (element: NativeElementHandle, row: number) => void;
|
|
142
|
+
/** Selects a table column. */
|
|
143
|
+
export declare const nativeTableSelectColumn: (element: NativeElementHandle, column: number) => void;
|
|
144
|
+
/** Deselects a table column. */
|
|
145
|
+
export declare const nativeTableDeselectColumn: (element: NativeElementHandle, column: number) => void;
|
|
146
|
+
/** Sets text contents on the accessible resolved by an element handle. */
|
|
147
|
+
export declare const nativeSetText: (element: NativeElementHandle, text: string) => void;
|
|
148
|
+
/** Executes the first action on the accessible resolved by an element handle. */
|
|
149
|
+
export declare const nativeClick: (element: NativeElementHandle) => void;
|
|
150
|
+
/** Reads text from the accessible resolved by an element handle. */
|
|
151
|
+
export declare const nativeText: (element: NativeElementHandle) => string;
|
|
152
|
+
/** Reads value metadata from the accessible resolved by an element handle. */
|
|
153
|
+
export declare const nativeValueInfo: (element: NativeElementHandle) => NativeValueInfo;
|
|
154
|
+
/** Reads image metadata from the accessible resolved by an element handle. */
|
|
155
|
+
export declare const nativeImageInfo: (element: NativeElementHandle) => NativeImageInfo;
|
|
156
|
+
/** Sets a numeric value on the accessible resolved by an element handle. */
|
|
157
|
+
export declare const nativeSetValue: (element: NativeElementHandle, value: number) => void;
|
|
158
|
+
/** Captures real screen pixels for the accessible resolved by an element handle. */
|
|
159
|
+
export declare const nativeCapture: (element: NativeElementHandle) => NativeCapture;
|
|
160
|
+
/** Captures the full X11 root window currently addressed by DISPLAY. */
|
|
161
|
+
export declare const nativeCaptureScreen: () => NativeCapture;
|
|
162
|
+
/** Captures real screen pixels for explicit screen-relative bounds. */
|
|
163
|
+
export declare const nativeCaptureBounds: (bounds: NativeCaptureBounds) => NativeCapture;
|
|
164
|
+
/** Reads AT-SPI metadata for the accessible resolved by an element handle. */
|
|
165
|
+
export declare const nativeElementInfo: (element: NativeElementHandle) => NativeElementInfo;
|
|
166
|
+
/** Lists StatusNotifier tray items owned by the process. */
|
|
167
|
+
export declare const nativeTrayItems: (processId: number) => NativeTrayItem[];
|
|
168
|
+
/** Runs the test tray host until the process is terminated. */
|
|
169
|
+
export declare const nativeRunTrayHost: () => void;
|
|
170
|
+
//# sourceMappingURL=native.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"native.d.ts","sourceRoot":"","sources":["../src/native.ts"],"names":[],"mappings":"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"}
|