gestament 0.1.0 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/element.d.ts +2 -2
- package/dist/errors.d.ts +2 -2
- package/dist/generated/packageMetadata.d.ts +4 -4
- package/dist/gestament-config.d.ts +2 -2
- package/dist/gestament-tray-host.cjs +1 -1
- package/dist/gestament-tray-host.d.ts +2 -2
- package/dist/gestament-tray-host.mjs +1 -1
- package/dist/gestament-xvfb-worker.d.ts +2 -2
- package/dist/gestament-xvfb.d.ts +2 -2
- package/dist/index.cjs +74 -1
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.mjs +74 -1
- package/dist/index.mjs.map +1 -1
- package/dist/launchGtkApp.d.ts +2 -2
- package/dist/launchGtkApp.d.ts.map +1 -1
- package/dist/{native-DAhTiLnf.js → native-DUeVYIBs.js} +2 -2
- package/dist/{native-DAhTiLnf.js.map → native-DUeVYIBs.js.map} +1 -1
- package/dist/{native-BRnrsqMn.cjs → native-ie_XIt1J.cjs} +4 -4
- package/dist/{native-BRnrsqMn.cjs.map → native-ie_XIt1J.cjs.map} +1 -1
- package/dist/native.d.ts +2 -2
- package/dist/testing.d.ts +2 -2
- package/dist/tray.d.ts +2 -2
- package/dist/types.d.ts +22 -2
- package/dist/types.d.ts.map +1 -1
- package/package.json +8 -8
- 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/launchGtkApp.d.ts
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* name: gestament
|
|
3
|
-
* version: 0.
|
|
3
|
+
* version: 0.2.0
|
|
4
4
|
* description: TypeScript based test driver for GTK
|
|
5
5
|
* author: Kouji Matsui (@kekyo@mi.kekyo.net)
|
|
6
6
|
* license: MIT
|
|
7
7
|
* repository.url: https://github.com/kekyo/gestament.git
|
|
8
|
-
* git.commit.hash:
|
|
8
|
+
* git.commit.hash: 82eaccb340f7304524549a1f95888845deb4a156
|
|
9
9
|
*/
|
|
10
10
|
|
|
11
11
|
import { GtkApp, GtkAppEnvironment, GtkAppLauncher, GtkAppLauncherOptions, LaunchGtkAppOptions } from './types.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"launchGtkApp.d.ts","sourceRoot":"","sources":["../src/launchGtkApp.ts"],"names":[],"mappings":";;;;;;;;;AA0BA,OAAO,KAAK,EACV,MAAM,EACN,iBAAiB,EACjB,cAAc,EACd,qBAAqB,EAKrB,mBAAmB,EACpB,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"launchGtkApp.d.ts","sourceRoot":"","sources":["../src/launchGtkApp.ts"],"names":[],"mappings":";;;;;;;;;AA0BA,OAAO,KAAK,EACV,MAAM,EACN,iBAAiB,EACjB,cAAc,EACd,qBAAqB,EAKrB,mBAAmB,EACpB,MAAM,SAAS,CAAC;AAoIjB;;;;;;;;;GASG;AACH,eAAO,MAAM,uBAAuB,GAClC,SAAS,iBAAiB,EAC1B,WAAW,iBAAiB,GAAG,SAAS,KACvC,MAAM,CAAC,UAUT,CAAC;AAIF;;;;;;GAMG;AACH,eAAO,MAAM,YAAY,GACvB,SAAS,MAAM,EACf,OAAO,SAAS,MAAM,EAAE,EACxB,UAAU,mBAAmB,KAC5B,OAAO,CAAC,MAAM,CAsQhB,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,GAC/B,SAAS,qBAAqB,KAC7B,cA4BF,CAAC"}
|
|
@@ -27,7 +27,7 @@ const normalizeNativeError = (error) => {
|
|
|
27
27
|
}
|
|
28
28
|
return createGtkAutomationError("OPERATION_FAILED", String(error));
|
|
29
29
|
};
|
|
30
|
-
const version = "0.
|
|
30
|
+
const version = "0.2.0";
|
|
31
31
|
const require$1 = createRequire(import.meta.url);
|
|
32
32
|
const packageRoot = resolve(dirname(fileURLToPath(import.meta.url)), "..");
|
|
33
33
|
let loadedAddon;
|
|
@@ -246,4 +246,4 @@ export {
|
|
|
246
246
|
nativeChildAt as y,
|
|
247
247
|
nativeValueInfo as z
|
|
248
248
|
};
|
|
249
|
-
//# sourceMappingURL=native-
|
|
249
|
+
//# sourceMappingURL=native-DUeVYIBs.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"native-DAhTiLnf.js","sources":["../src/errors.ts","../src/generated/packageMetadata.ts","../src/native.ts"],"sourcesContent":["// gestament - TypeScript based test driver for GTK.\n// Copyright (c) Kouji Matsui. (@kekyo@mi.kekyo.net)\n// Under MIT.\n// https://github.com/kekyo/gestament\n\nimport type { GtkAutomationError, GtkAutomationErrorCode } from './types';\n\n/////////////////////////////////////////////////////////////////////////////////////////\n\nconst createGtkAutomationError = (\n code: GtkAutomationErrorCode,\n message: string\n): GtkAutomationError => {\n const error = new Error(message) as GtkAutomationError;\n Object.defineProperty(error, 'code', {\n enumerable: true,\n value: code,\n });\n error.name = 'GtkAutomationError';\n return error;\n};\n\n/** Creates an error for a GTK application that exited before an operation completed. */\nexport const createGtkAppExitedError = (message: string): GtkAutomationError =>\n createGtkAutomationError('APP_EXITED', message);\n\n/** Creates an error for an invalid public API argument. */\nexport const createGtkInvalidArgumentError = (\n message: string\n): GtkAutomationError => createGtkAutomationError('INVALID_ARGUMENT', message);\n\n/** Creates an error for an accessible element that was not found. */\nexport const createGtkElementNotFoundError = (\n message: string\n): GtkAutomationError => createGtkAutomationError('ELEMENT_NOT_FOUND', message);\n\n/** Creates an error for an element whose host object no longer exists. */\nexport const createGtkStaleElementError = (\n message: string\n): GtkAutomationError => createGtkAutomationError('STALE_ELEMENT', message);\n\n/** Creates an error for an operation that exceeded its timeout. */\nexport const createGtkOperationTimeoutError = (\n message: string\n): GtkAutomationError => createGtkAutomationError('TIMEOUT', message);\n\n/** Creates an error for an operation that failed. */\nexport const createGtkOperationFailedError = (\n message: string\n): GtkAutomationError => createGtkAutomationError('OPERATION_FAILED', message);\n\n/** Creates an error for an operation that is not supported by the element. */\nexport const createGtkUnsupportedInterfaceError = (\n message: string\n): GtkAutomationError =>\n createGtkAutomationError('UNSUPPORTED_INTERFACE', message);\n\n/** Converts native addon errors into the public error shape. */\nexport const normalizeNativeError = (error: unknown): GtkAutomationError => {\n if (error instanceof Error) {\n const maybeCode = (error as { code?: unknown }).code;\n if (\n maybeCode === 'ELEMENT_NOT_FOUND' ||\n maybeCode === 'INVALID_ARGUMENT' ||\n maybeCode === 'NATIVE_LOAD_FAILED' ||\n maybeCode === 'OPERATION_FAILED' ||\n maybeCode === 'STALE_ELEMENT' ||\n maybeCode === 'UNSUPPORTED_INTERFACE'\n ) {\n return createGtkAutomationError(maybeCode, error.message);\n }\n\n return createGtkAutomationError('OPERATION_FAILED', error.message);\n }\n\n return createGtkAutomationError('OPERATION_FAILED', String(error));\n};\n","// @ts-nocheck\n// This file is auto-generated by screw-up plugin\n// Do not edit manually\n\nexport const name = \"gestament\";\nexport const version = \"0.1.0\";\nexport const description = \"TypeScript based test driver for GTK\";\nexport const author = \"Kouji Matsui (@kekyo@mi.kekyo.net)\";\nexport const license = \"MIT\";\nexport const repository_url = \"https://github.com/kekyo/gestament.git\";\nexport const git_commit_hash = \"2e2298272ff7a9fff6945b8d87de6223ac4d7847\";\n","// gestament - TypeScript based test driver for GTK.\n// Copyright (c) Kouji Matsui. (@kekyo@mi.kekyo.net)\n// Under MIT.\n// https://github.com/kekyo/gestament\n\nimport { createRequire } from 'node:module';\nimport { existsSync } from 'node:fs';\nimport { dirname, resolve } from 'node:path';\nimport { fileURLToPath } from 'node:url';\n\nimport { normalizeNativeError } from './errors';\nimport { version as packageVersion } from './generated/packageMetadata';\nimport type { GtkAutomationError } from './types';\n\n/////////////////////////////////////////////////////////////////////////////////////////\n\ninterface NativeInfo {\n readonly version: string;\n readonly arch: string;\n readonly gtkBackend: GtkBackend;\n readonly napiVersion: number;\n}\n\nexport interface NativeCaptureBounds {\n readonly x: number;\n readonly y: number;\n readonly width: number;\n readonly height: number;\n}\n\nexport interface NativeCapture {\n readonly image: Buffer;\n readonly bounds: NativeCaptureBounds;\n readonly visibleBounds: NativeCaptureBounds;\n readonly clipped: boolean;\n}\n\nexport interface NativeElementInfo {\n readonly roleName: string;\n readonly localizedRoleName: string;\n readonly accessibleId: string;\n readonly name: string;\n readonly description: string;\n readonly interfaces: string[];\n readonly states: string[];\n}\n\n/** AT-SPI Value metadata returned by the native layer. */\nexport interface NativeValueInfo {\n /** Current numeric value. */\n readonly value: number;\n\n /** Minimum accepted numeric value. */\n readonly minimum: number;\n\n /** Maximum accepted numeric value. */\n readonly maximum: number;\n\n /** Minimum increment used by step-based controls. */\n readonly minimumIncrement: number;\n\n /** Text representation reported by AT-SPI, when available. */\n readonly text: string;\n}\n\n/** Point returned by the native layer. */\nexport interface NativeImagePoint {\n /** Horizontal pixel coordinate. */\n readonly x: number;\n\n /** Vertical pixel coordinate. */\n readonly y: number;\n}\n\n/** Image size returned by the native layer. */\nexport interface NativeImageSize {\n /** Image width in physical pixels. */\n readonly width: number;\n\n /** Image height in physical pixels. */\n readonly height: number;\n}\n\n/** AT-SPI Image metadata returned by the native layer. */\nexport interface NativeImageInfo {\n /** Text description reported by AT-SPI. */\n readonly description: string;\n\n /** Image locale reported by AT-SPI. */\n readonly locale: string;\n\n /** Image position reported by AT-SPI. */\n readonly position: NativeImagePoint;\n\n /** Image size reported by AT-SPI. */\n readonly size: NativeImageSize;\n\n /** Screen-relative image bounds reported by AT-SPI. */\n readonly bounds: NativeCaptureBounds;\n}\n\n/** Opaque native element handle backed by an AT-SPI accessible proxy. */\nexport type NativeElementHandle = object;\n\n/** AT-SPI readiness state reported by the native layer. */\nexport type NativeAtspiReadiness =\n | 'ready'\n | 'missing-bus-name'\n | 'missing-root'\n | 'missing-cache';\n\n/** StatusNotifier tray item metadata reported by the native layer. */\nexport interface NativeTrayItem {\n readonly busName: string;\n readonly objectPath: string;\n readonly id: string;\n readonly title: string;\n readonly status: string;\n readonly iconName: string;\n readonly accessibleId: string;\n}\n\ninterface NativeAddon {\n readonly findById: (\n processId: number,\n id: string\n ) => NativeElementHandle | undefined;\n readonly processAtspiReadiness: (processId: number) => NativeAtspiReadiness;\n readonly findAnyById: (id: string) => NativeElementHandle | undefined;\n readonly setTextById: (processId: number, id: string, text: string) => void;\n readonly clickById: (processId: number, id: string) => void;\n readonly textById: (processId: number, id: string) => string;\n readonly captureById: (processId: number, id: string) => NativeCapture;\n readonly windowCount: (processId: number) => number;\n readonly windowAt: (\n processId: number,\n index: number\n ) => NativeElementHandle | undefined;\n readonly childCount: (element: NativeElementHandle) => number;\n readonly childAt: (\n element: NativeElementHandle,\n index: number\n ) => NativeElementHandle | undefined;\n readonly selectedChildCount: (element: NativeElementHandle) => number;\n readonly selectedChildAt: (\n element: NativeElementHandle,\n index: number\n ) => NativeElementHandle | undefined;\n readonly isChildSelected: (\n element: NativeElementHandle,\n index: number\n ) => boolean;\n readonly selectChildAt: (element: NativeElementHandle, index: number) => void;\n readonly deselectChildAt: (\n element: NativeElementHandle,\n index: number\n ) => void;\n readonly selectAllChildren: (element: NativeElementHandle) => void;\n readonly clearSelection: (element: NativeElementHandle) => void;\n readonly tableRowCount: (element: NativeElementHandle) => number;\n readonly tableColumnCount: (element: NativeElementHandle) => number;\n readonly tableCellAt: (\n element: NativeElementHandle,\n row: number,\n column: number\n ) => NativeElementHandle | undefined;\n readonly tableSelectedRows: (element: NativeElementHandle) => number[];\n readonly tableSelectedColumns: (element: NativeElementHandle) => number[];\n readonly tableIsRowSelected: (\n element: NativeElementHandle,\n row: number\n ) => boolean;\n readonly tableIsColumnSelected: (\n element: NativeElementHandle,\n column: number\n ) => boolean;\n readonly tableIsCellSelected: (\n element: NativeElementHandle,\n row: number,\n column: number\n ) => boolean;\n readonly tableSelectRow: (element: NativeElementHandle, row: number) => void;\n readonly tableDeselectRow: (\n element: NativeElementHandle,\n row: number\n ) => void;\n readonly tableSelectColumn: (\n element: NativeElementHandle,\n column: number\n ) => void;\n readonly tableDeselectColumn: (\n element: NativeElementHandle,\n column: number\n ) => void;\n readonly setText: (element: NativeElementHandle, text: string) => void;\n readonly click: (element: NativeElementHandle) => void;\n readonly text: (element: NativeElementHandle) => string;\n readonly valueInfo: (element: NativeElementHandle) => NativeValueInfo;\n readonly imageInfo: (element: NativeElementHandle) => NativeImageInfo;\n readonly setValue: (element: NativeElementHandle, value: number) => void;\n readonly capture: (element: NativeElementHandle) => NativeCapture;\n readonly captureScreen: () => NativeCapture;\n readonly captureBounds: (\n x: number,\n y: number,\n width: number,\n height: number\n ) => NativeCapture;\n readonly elementInfo: (element: NativeElementHandle) => NativeElementInfo;\n readonly trayItems: (processId: number) => NativeTrayItem[];\n readonly runTrayHost: () => void;\n readonly nativeInfo: () => NativeInfo;\n}\n\ntype GtkBackend = 'gtk3' | 'gtk4';\ntype GtkBackendSelection = GtkBackend | 'auto';\n\nconst require = createRequire(import.meta.url);\nconst packageRoot = resolve(dirname(fileURLToPath(import.meta.url)), '..');\n\nlet loadedAddon: NativeAddon | undefined;\n\nconst createNativeLoadError = (message: string): GtkAutomationError => {\n const loadError = new Error(message) as GtkAutomationError;\n Object.defineProperty(loadError, 'code', {\n enumerable: true,\n value: 'NATIVE_LOAD_FAILED',\n });\n return loadError;\n};\n\nconst selectedGtkBackend = (): GtkBackendSelection => {\n const value = process.env.GESTAMENT_GTK_BACKEND;\n if (value === undefined || value.length === 0) {\n return 'gtk3';\n }\n if (value === 'gtk3' || value === 'gtk4' || value === 'auto') {\n return value;\n }\n throw createNativeLoadError(\n `Unsupported GESTAMENT_GTK_BACKEND: ${value}. Expected gtk3, gtk4, or auto.`\n );\n};\n\nconst candidateGtkBackends = (): readonly GtkBackend[] => {\n const selected = selectedGtkBackend();\n return selected === 'auto' ? ['gtk3', 'gtk4'] : [selected];\n};\n\nconst prebuildDirectory = (): string => {\n if (process.platform !== 'linux') {\n throw createNativeLoadError(\n `Unsupported platform for gestament native prebuilds: ${process.platform}.`\n );\n }\n\n switch (process.arch) {\n case 'x64':\n return 'linux-x64';\n case 'ia32':\n return 'linux-ia32';\n case 'arm64':\n return 'linux-arm64';\n case 'arm':\n return 'linux-arm';\n case 'riscv64':\n return 'linux-riscv64';\n default:\n throw createNativeLoadError(\n `Unsupported architecture for gestament native prebuilds: ${process.arch}.`\n );\n }\n};\n\nconst prebuildFile = (): string =>\n process.arch === 'arm'\n ? 'node.napi.armv7.glibc.node'\n : 'node.napi.glibc.node';\n\nconst prebuildPath = (backend: GtkBackend): string =>\n resolve(\n packageRoot,\n 'prebuilds',\n prebuildDirectory(),\n backend,\n prebuildFile()\n );\n\nconst loadNativePrebuild = (backend: GtkBackend): NativeAddon => {\n const path = prebuildPath(backend);\n if (!existsSync(path)) {\n throw new Error(`Missing ${backend} native prebuild: ${path}`);\n }\n return require(path) as NativeAddon;\n};\n\nconst loadNativeAddon = (): NativeAddon => {\n if (loadedAddon !== undefined) {\n return loadedAddon;\n }\n\n const errors: string[] = [];\n for (const backend of candidateGtkBackends()) {\n try {\n const addon = loadNativePrebuild(backend);\n const nativeInfo = addon.nativeInfo();\n if (nativeInfo.version !== packageVersion) {\n throw new Error(\n `gestament native prebuild version mismatch: native=${nativeInfo.version}, package=${packageVersion}`\n );\n }\n if (nativeInfo.gtkBackend !== backend) {\n throw new Error(\n `gestament native prebuild backend mismatch: native=${nativeInfo.gtkBackend}, requested=${backend}`\n );\n }\n loadedAddon = addon;\n return loadedAddon;\n } catch (error) {\n const message =\n error instanceof Error\n ? error.message\n : `Unknown error: ${String(error)}`;\n errors.push(`${backend}: ${message}`);\n }\n }\n\n throw createNativeLoadError(\n `Failed to load a compatible gestament native prebuild from ${packageRoot} ` +\n `(GESTAMENT_GTK_BACKEND=${selectedGtkBackend()}). Ensure this package ` +\n 'includes prebuilds for the current Linux/glibc architecture and selected ' +\n 'GTK backend, and that runtime libraries such as libatspi, glib, gio, ' +\n `GTK, X11, and dbus are installed. Original errors: ${errors.join(' | ')}`\n );\n};\n\nconst callNative = <Result>(operation: () => Result): Result => {\n try {\n return operation();\n } catch (error) {\n throw normalizeNativeError(error);\n }\n};\n\n/////////////////////////////////////////////////////////////////////////////////////////\n\n/** Resolves an accessible id to a native element when it exists. */\nexport const nativeFindById = (\n processId: number,\n id: string\n): NativeElementHandle | undefined =>\n callNative(() => loadNativeAddon().findById(processId, id));\n\n/** Checks whether a GTK process has completed AT-SPI root/cache registration. */\nexport const nativeProcessAtspiReadiness = (\n processId: number\n): NativeAtspiReadiness =>\n callNative(() => loadNativeAddon().processAtspiReadiness(processId));\n\n/** Resolves an accessible id to a native element across all exposed processes. */\nexport const nativeFindAnyById = (\n id: string\n): NativeElementHandle | undefined =>\n callNative(() => loadNativeAddon().findAnyById(id));\n\n/** Sets text contents on the accessible with the given id. */\nexport const nativeSetTextById = (\n processId: number,\n id: string,\n text: string\n): void => {\n callNative(() => loadNativeAddon().setTextById(processId, id, text));\n};\n\n/** Executes the first action on the accessible with the given id. */\nexport const nativeClickById = (processId: number, id: string): void => {\n callNative(() => loadNativeAddon().clickById(processId, id));\n};\n\n/** Reads text from the accessible with the given id. */\nexport const nativeTextById = (processId: number, id: string): string =>\n callNative(() => loadNativeAddon().textById(processId, id));\n\n/** Captures real screen pixels for the accessible with the given id. */\nexport const nativeCaptureById = (\n processId: number,\n id: string\n): NativeCapture =>\n callNative(() => loadNativeAddon().captureById(processId, id));\n\n/** Counts top-level windows hosted by the process. */\nexport const nativeWindowCount = (processId: number): number =>\n callNative(() => loadNativeAddon().windowCount(processId));\n\n/** Resolves a top-level window index to an element handle when it exists. */\nexport const nativeWindowAt = (\n processId: number,\n index: number\n): NativeElementHandle | undefined =>\n callNative(() => loadNativeAddon().windowAt(processId, index));\n\n/** Counts direct children for an element handle. */\nexport const nativeChildCount = (element: NativeElementHandle): number =>\n callNative(() => loadNativeAddon().childCount(element));\n\n/** Resolves a direct child index to an element handle when it exists. */\nexport const nativeChildAt = (\n element: NativeElementHandle,\n index: number\n): NativeElementHandle | undefined =>\n callNative(() => loadNativeAddon().childAt(element, index));\n\n/** Counts selected children for a selectable element handle. */\nexport const nativeSelectedChildCount = (\n element: NativeElementHandle\n): number => callNative(() => loadNativeAddon().selectedChildCount(element));\n\n/** Resolves a selected child index to an element handle when it exists. */\nexport const nativeSelectedChildAt = (\n element: NativeElementHandle,\n index: number\n): NativeElementHandle | undefined =>\n callNative(() => loadNativeAddon().selectedChildAt(element, index));\n\n/** Reads whether a direct child is selected. */\nexport const nativeIsChildSelected = (\n element: NativeElementHandle,\n index: number\n): boolean =>\n callNative(() => loadNativeAddon().isChildSelected(element, index));\n\n/** Selects a direct child for a selectable element handle. */\nexport const nativeSelectChildAt = (\n element: NativeElementHandle,\n index: number\n): void => {\n callNative(() => loadNativeAddon().selectChildAt(element, index));\n};\n\n/** Deselects a direct child for a selectable element handle. */\nexport const nativeDeselectChildAt = (\n element: NativeElementHandle,\n index: number\n): void => {\n callNative(() => loadNativeAddon().deselectChildAt(element, index));\n};\n\n/** Selects all children for a selectable element handle. */\nexport const nativeSelectAllChildren = (element: NativeElementHandle): void => {\n callNative(() => loadNativeAddon().selectAllChildren(element));\n};\n\n/** Clears child selection for a selectable element handle. */\nexport const nativeClearSelection = (element: NativeElementHandle): void => {\n callNative(() => loadNativeAddon().clearSelection(element));\n};\n\n/** Counts table rows for a table element handle. */\nexport const nativeTableRowCount = (element: NativeElementHandle): number =>\n callNative(() => loadNativeAddon().tableRowCount(element));\n\n/** Counts table columns for a table element handle. */\nexport const nativeTableColumnCount = (element: NativeElementHandle): number =>\n callNative(() => loadNativeAddon().tableColumnCount(element));\n\n/** Resolves a table cell element handle by row and column when it exists. */\nexport const nativeTableCellAt = (\n element: NativeElementHandle,\n row: number,\n column: number\n): NativeElementHandle | undefined =>\n callNative(() => loadNativeAddon().tableCellAt(element, row, column));\n\n/** Reads selected table row indexes. */\nexport const nativeTableSelectedRows = (\n element: NativeElementHandle\n): number[] => callNative(() => loadNativeAddon().tableSelectedRows(element));\n\n/** Reads selected table column indexes. */\nexport const nativeTableSelectedColumns = (\n element: NativeElementHandle\n): number[] =>\n callNative(() => loadNativeAddon().tableSelectedColumns(element));\n\n/** Reads whether a table row is selected. */\nexport const nativeTableIsRowSelected = (\n element: NativeElementHandle,\n row: number\n): boolean =>\n callNative(() => loadNativeAddon().tableIsRowSelected(element, row));\n\n/** Reads whether a table column is selected. */\nexport const nativeTableIsColumnSelected = (\n element: NativeElementHandle,\n column: number\n): boolean =>\n callNative(() => loadNativeAddon().tableIsColumnSelected(element, column));\n\n/** Reads whether a table cell is selected. */\nexport const nativeTableIsCellSelected = (\n element: NativeElementHandle,\n row: number,\n column: number\n): boolean =>\n callNative(() => loadNativeAddon().tableIsCellSelected(element, row, column));\n\n/** Selects a table row. */\nexport const nativeTableSelectRow = (\n element: NativeElementHandle,\n row: number\n): void => {\n callNative(() => loadNativeAddon().tableSelectRow(element, row));\n};\n\n/** Deselects a table row. */\nexport const nativeTableDeselectRow = (\n element: NativeElementHandle,\n row: number\n): void => {\n callNative(() => loadNativeAddon().tableDeselectRow(element, row));\n};\n\n/** Selects a table column. */\nexport const nativeTableSelectColumn = (\n element: NativeElementHandle,\n column: number\n): void => {\n callNative(() => loadNativeAddon().tableSelectColumn(element, column));\n};\n\n/** Deselects a table column. */\nexport const nativeTableDeselectColumn = (\n element: NativeElementHandle,\n column: number\n): void => {\n callNative(() => loadNativeAddon().tableDeselectColumn(element, column));\n};\n\n/** Sets text contents on the accessible resolved by an element handle. */\nexport const nativeSetText = (\n element: NativeElementHandle,\n text: string\n): void => {\n callNative(() => loadNativeAddon().setText(element, text));\n};\n\n/** Executes the first action on the accessible resolved by an element handle. */\nexport const nativeClick = (element: NativeElementHandle): void => {\n callNative(() => loadNativeAddon().click(element));\n};\n\n/** Reads text from the accessible resolved by an element handle. */\nexport const nativeText = (element: NativeElementHandle): string =>\n callNative(() => loadNativeAddon().text(element));\n\n/** Reads value metadata from the accessible resolved by an element handle. */\nexport const nativeValueInfo = (\n element: NativeElementHandle\n): NativeValueInfo => callNative(() => loadNativeAddon().valueInfo(element));\n\n/** Reads image metadata from the accessible resolved by an element handle. */\nexport const nativeImageInfo = (\n element: NativeElementHandle\n): NativeImageInfo => callNative(() => loadNativeAddon().imageInfo(element));\n\n/** Sets a numeric value on the accessible resolved by an element handle. */\nexport const nativeSetValue = (\n element: NativeElementHandle,\n value: number\n): void => {\n callNative(() => loadNativeAddon().setValue(element, value));\n};\n\n/** Captures real screen pixels for the accessible resolved by an element handle. */\nexport const nativeCapture = (element: NativeElementHandle): NativeCapture =>\n callNative(() => loadNativeAddon().capture(element));\n\n/** Captures the full X11 root window currently addressed by DISPLAY. */\nexport const nativeCaptureScreen = (): NativeCapture =>\n callNative(() => loadNativeAddon().captureScreen());\n\n/** Captures real screen pixels for explicit screen-relative bounds. */\nexport const nativeCaptureBounds = (\n bounds: NativeCaptureBounds\n): NativeCapture =>\n callNative(() =>\n loadNativeAddon().captureBounds(\n bounds.x,\n bounds.y,\n bounds.width,\n bounds.height\n )\n );\n\n/** Reads AT-SPI metadata for the accessible resolved by an element handle. */\nexport const nativeElementInfo = (\n element: NativeElementHandle\n): NativeElementInfo =>\n callNative(() => loadNativeAddon().elementInfo(element));\n\n/** Lists StatusNotifier tray items owned by the process. */\nexport const nativeTrayItems = (processId: number): NativeTrayItem[] =>\n callNative(() => loadNativeAddon().trayItems(processId));\n\n/** Runs the test tray host until the process is terminated. */\nexport const nativeRunTrayHost = (): void => {\n callNative(() => loadNativeAddon().runTrayHost());\n};\n"],"names":["require","packageVersion"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"native-DUeVYIBs.js","sources":["../src/errors.ts","../src/generated/packageMetadata.ts","../src/native.ts"],"sourcesContent":["// gestament - TypeScript based test driver for GTK.\n// Copyright (c) Kouji Matsui. (@kekyo@mi.kekyo.net)\n// Under MIT.\n// https://github.com/kekyo/gestament\n\nimport type { GtkAutomationError, GtkAutomationErrorCode } from './types';\n\n/////////////////////////////////////////////////////////////////////////////////////////\n\nconst createGtkAutomationError = (\n code: GtkAutomationErrorCode,\n message: string\n): GtkAutomationError => {\n const error = new Error(message) as GtkAutomationError;\n Object.defineProperty(error, 'code', {\n enumerable: true,\n value: code,\n });\n error.name = 'GtkAutomationError';\n return error;\n};\n\n/** Creates an error for a GTK application that exited before an operation completed. */\nexport const createGtkAppExitedError = (message: string): GtkAutomationError =>\n createGtkAutomationError('APP_EXITED', message);\n\n/** Creates an error for an invalid public API argument. */\nexport const createGtkInvalidArgumentError = (\n message: string\n): GtkAutomationError => createGtkAutomationError('INVALID_ARGUMENT', message);\n\n/** Creates an error for an accessible element that was not found. */\nexport const createGtkElementNotFoundError = (\n message: string\n): GtkAutomationError => createGtkAutomationError('ELEMENT_NOT_FOUND', message);\n\n/** Creates an error for an element whose host object no longer exists. */\nexport const createGtkStaleElementError = (\n message: string\n): GtkAutomationError => createGtkAutomationError('STALE_ELEMENT', message);\n\n/** Creates an error for an operation that exceeded its timeout. */\nexport const createGtkOperationTimeoutError = (\n message: string\n): GtkAutomationError => createGtkAutomationError('TIMEOUT', message);\n\n/** Creates an error for an operation that failed. */\nexport const createGtkOperationFailedError = (\n message: string\n): GtkAutomationError => createGtkAutomationError('OPERATION_FAILED', message);\n\n/** Creates an error for an operation that is not supported by the element. */\nexport const createGtkUnsupportedInterfaceError = (\n message: string\n): GtkAutomationError =>\n createGtkAutomationError('UNSUPPORTED_INTERFACE', message);\n\n/** Converts native addon errors into the public error shape. */\nexport const normalizeNativeError = (error: unknown): GtkAutomationError => {\n if (error instanceof Error) {\n const maybeCode = (error as { code?: unknown }).code;\n if (\n maybeCode === 'ELEMENT_NOT_FOUND' ||\n maybeCode === 'INVALID_ARGUMENT' ||\n maybeCode === 'NATIVE_LOAD_FAILED' ||\n maybeCode === 'OPERATION_FAILED' ||\n maybeCode === 'STALE_ELEMENT' ||\n maybeCode === 'UNSUPPORTED_INTERFACE'\n ) {\n return createGtkAutomationError(maybeCode, error.message);\n }\n\n return createGtkAutomationError('OPERATION_FAILED', error.message);\n }\n\n return createGtkAutomationError('OPERATION_FAILED', String(error));\n};\n","// @ts-nocheck\n// This file is auto-generated by screw-up plugin\n// Do not edit manually\n\nexport const name = \"gestament\";\nexport const version = \"0.2.0\";\nexport const description = \"TypeScript based test driver for GTK\";\nexport const author = \"Kouji Matsui (@kekyo@mi.kekyo.net)\";\nexport const license = \"MIT\";\nexport const repository_url = \"https://github.com/kekyo/gestament.git\";\nexport const git_commit_hash = \"82eaccb340f7304524549a1f95888845deb4a156\";\n","// gestament - TypeScript based test driver for GTK.\n// Copyright (c) Kouji Matsui. (@kekyo@mi.kekyo.net)\n// Under MIT.\n// https://github.com/kekyo/gestament\n\nimport { createRequire } from 'node:module';\nimport { existsSync } from 'node:fs';\nimport { dirname, resolve } from 'node:path';\nimport { fileURLToPath } from 'node:url';\n\nimport { normalizeNativeError } from './errors';\nimport { version as packageVersion } from './generated/packageMetadata';\nimport type { GtkAutomationError } from './types';\n\n/////////////////////////////////////////////////////////////////////////////////////////\n\ninterface NativeInfo {\n readonly version: string;\n readonly arch: string;\n readonly gtkBackend: GtkBackend;\n readonly napiVersion: number;\n}\n\nexport interface NativeCaptureBounds {\n readonly x: number;\n readonly y: number;\n readonly width: number;\n readonly height: number;\n}\n\nexport interface NativeCapture {\n readonly image: Buffer;\n readonly bounds: NativeCaptureBounds;\n readonly visibleBounds: NativeCaptureBounds;\n readonly clipped: boolean;\n}\n\nexport interface NativeElementInfo {\n readonly roleName: string;\n readonly localizedRoleName: string;\n readonly accessibleId: string;\n readonly name: string;\n readonly description: string;\n readonly interfaces: string[];\n readonly states: string[];\n}\n\n/** AT-SPI Value metadata returned by the native layer. */\nexport interface NativeValueInfo {\n /** Current numeric value. */\n readonly value: number;\n\n /** Minimum accepted numeric value. */\n readonly minimum: number;\n\n /** Maximum accepted numeric value. */\n readonly maximum: number;\n\n /** Minimum increment used by step-based controls. */\n readonly minimumIncrement: number;\n\n /** Text representation reported by AT-SPI, when available. */\n readonly text: string;\n}\n\n/** Point returned by the native layer. */\nexport interface NativeImagePoint {\n /** Horizontal pixel coordinate. */\n readonly x: number;\n\n /** Vertical pixel coordinate. */\n readonly y: number;\n}\n\n/** Image size returned by the native layer. */\nexport interface NativeImageSize {\n /** Image width in physical pixels. */\n readonly width: number;\n\n /** Image height in physical pixels. */\n readonly height: number;\n}\n\n/** AT-SPI Image metadata returned by the native layer. */\nexport interface NativeImageInfo {\n /** Text description reported by AT-SPI. */\n readonly description: string;\n\n /** Image locale reported by AT-SPI. */\n readonly locale: string;\n\n /** Image position reported by AT-SPI. */\n readonly position: NativeImagePoint;\n\n /** Image size reported by AT-SPI. */\n readonly size: NativeImageSize;\n\n /** Screen-relative image bounds reported by AT-SPI. */\n readonly bounds: NativeCaptureBounds;\n}\n\n/** Opaque native element handle backed by an AT-SPI accessible proxy. */\nexport type NativeElementHandle = object;\n\n/** AT-SPI readiness state reported by the native layer. */\nexport type NativeAtspiReadiness =\n | 'ready'\n | 'missing-bus-name'\n | 'missing-root'\n | 'missing-cache';\n\n/** StatusNotifier tray item metadata reported by the native layer. */\nexport interface NativeTrayItem {\n readonly busName: string;\n readonly objectPath: string;\n readonly id: string;\n readonly title: string;\n readonly status: string;\n readonly iconName: string;\n readonly accessibleId: string;\n}\n\ninterface NativeAddon {\n readonly findById: (\n processId: number,\n id: string\n ) => NativeElementHandle | undefined;\n readonly processAtspiReadiness: (processId: number) => NativeAtspiReadiness;\n readonly findAnyById: (id: string) => NativeElementHandle | undefined;\n readonly setTextById: (processId: number, id: string, text: string) => void;\n readonly clickById: (processId: number, id: string) => void;\n readonly textById: (processId: number, id: string) => string;\n readonly captureById: (processId: number, id: string) => NativeCapture;\n readonly windowCount: (processId: number) => number;\n readonly windowAt: (\n processId: number,\n index: number\n ) => NativeElementHandle | undefined;\n readonly childCount: (element: NativeElementHandle) => number;\n readonly childAt: (\n element: NativeElementHandle,\n index: number\n ) => NativeElementHandle | undefined;\n readonly selectedChildCount: (element: NativeElementHandle) => number;\n readonly selectedChildAt: (\n element: NativeElementHandle,\n index: number\n ) => NativeElementHandle | undefined;\n readonly isChildSelected: (\n element: NativeElementHandle,\n index: number\n ) => boolean;\n readonly selectChildAt: (element: NativeElementHandle, index: number) => void;\n readonly deselectChildAt: (\n element: NativeElementHandle,\n index: number\n ) => void;\n readonly selectAllChildren: (element: NativeElementHandle) => void;\n readonly clearSelection: (element: NativeElementHandle) => void;\n readonly tableRowCount: (element: NativeElementHandle) => number;\n readonly tableColumnCount: (element: NativeElementHandle) => number;\n readonly tableCellAt: (\n element: NativeElementHandle,\n row: number,\n column: number\n ) => NativeElementHandle | undefined;\n readonly tableSelectedRows: (element: NativeElementHandle) => number[];\n readonly tableSelectedColumns: (element: NativeElementHandle) => number[];\n readonly tableIsRowSelected: (\n element: NativeElementHandle,\n row: number\n ) => boolean;\n readonly tableIsColumnSelected: (\n element: NativeElementHandle,\n column: number\n ) => boolean;\n readonly tableIsCellSelected: (\n element: NativeElementHandle,\n row: number,\n column: number\n ) => boolean;\n readonly tableSelectRow: (element: NativeElementHandle, row: number) => void;\n readonly tableDeselectRow: (\n element: NativeElementHandle,\n row: number\n ) => void;\n readonly tableSelectColumn: (\n element: NativeElementHandle,\n column: number\n ) => void;\n readonly tableDeselectColumn: (\n element: NativeElementHandle,\n column: number\n ) => void;\n readonly setText: (element: NativeElementHandle, text: string) => void;\n readonly click: (element: NativeElementHandle) => void;\n readonly text: (element: NativeElementHandle) => string;\n readonly valueInfo: (element: NativeElementHandle) => NativeValueInfo;\n readonly imageInfo: (element: NativeElementHandle) => NativeImageInfo;\n readonly setValue: (element: NativeElementHandle, value: number) => void;\n readonly capture: (element: NativeElementHandle) => NativeCapture;\n readonly captureScreen: () => NativeCapture;\n readonly captureBounds: (\n x: number,\n y: number,\n width: number,\n height: number\n ) => NativeCapture;\n readonly elementInfo: (element: NativeElementHandle) => NativeElementInfo;\n readonly trayItems: (processId: number) => NativeTrayItem[];\n readonly runTrayHost: () => void;\n readonly nativeInfo: () => NativeInfo;\n}\n\ntype GtkBackend = 'gtk3' | 'gtk4';\ntype GtkBackendSelection = GtkBackend | 'auto';\n\nconst require = createRequire(import.meta.url);\nconst packageRoot = resolve(dirname(fileURLToPath(import.meta.url)), '..');\n\nlet loadedAddon: NativeAddon | undefined;\n\nconst createNativeLoadError = (message: string): GtkAutomationError => {\n const loadError = new Error(message) as GtkAutomationError;\n Object.defineProperty(loadError, 'code', {\n enumerable: true,\n value: 'NATIVE_LOAD_FAILED',\n });\n return loadError;\n};\n\nconst selectedGtkBackend = (): GtkBackendSelection => {\n const value = process.env.GESTAMENT_GTK_BACKEND;\n if (value === undefined || value.length === 0) {\n return 'gtk3';\n }\n if (value === 'gtk3' || value === 'gtk4' || value === 'auto') {\n return value;\n }\n throw createNativeLoadError(\n `Unsupported GESTAMENT_GTK_BACKEND: ${value}. Expected gtk3, gtk4, or auto.`\n );\n};\n\nconst candidateGtkBackends = (): readonly GtkBackend[] => {\n const selected = selectedGtkBackend();\n return selected === 'auto' ? ['gtk3', 'gtk4'] : [selected];\n};\n\nconst prebuildDirectory = (): string => {\n if (process.platform !== 'linux') {\n throw createNativeLoadError(\n `Unsupported platform for gestament native prebuilds: ${process.platform}.`\n );\n }\n\n switch (process.arch) {\n case 'x64':\n return 'linux-x64';\n case 'ia32':\n return 'linux-ia32';\n case 'arm64':\n return 'linux-arm64';\n case 'arm':\n return 'linux-arm';\n case 'riscv64':\n return 'linux-riscv64';\n default:\n throw createNativeLoadError(\n `Unsupported architecture for gestament native prebuilds: ${process.arch}.`\n );\n }\n};\n\nconst prebuildFile = (): string =>\n process.arch === 'arm'\n ? 'node.napi.armv7.glibc.node'\n : 'node.napi.glibc.node';\n\nconst prebuildPath = (backend: GtkBackend): string =>\n resolve(\n packageRoot,\n 'prebuilds',\n prebuildDirectory(),\n backend,\n prebuildFile()\n );\n\nconst loadNativePrebuild = (backend: GtkBackend): NativeAddon => {\n const path = prebuildPath(backend);\n if (!existsSync(path)) {\n throw new Error(`Missing ${backend} native prebuild: ${path}`);\n }\n return require(path) as NativeAddon;\n};\n\nconst loadNativeAddon = (): NativeAddon => {\n if (loadedAddon !== undefined) {\n return loadedAddon;\n }\n\n const errors: string[] = [];\n for (const backend of candidateGtkBackends()) {\n try {\n const addon = loadNativePrebuild(backend);\n const nativeInfo = addon.nativeInfo();\n if (nativeInfo.version !== packageVersion) {\n throw new Error(\n `gestament native prebuild version mismatch: native=${nativeInfo.version}, package=${packageVersion}`\n );\n }\n if (nativeInfo.gtkBackend !== backend) {\n throw new Error(\n `gestament native prebuild backend mismatch: native=${nativeInfo.gtkBackend}, requested=${backend}`\n );\n }\n loadedAddon = addon;\n return loadedAddon;\n } catch (error) {\n const message =\n error instanceof Error\n ? error.message\n : `Unknown error: ${String(error)}`;\n errors.push(`${backend}: ${message}`);\n }\n }\n\n throw createNativeLoadError(\n `Failed to load a compatible gestament native prebuild from ${packageRoot} ` +\n `(GESTAMENT_GTK_BACKEND=${selectedGtkBackend()}). Ensure this package ` +\n 'includes prebuilds for the current Linux/glibc architecture and selected ' +\n 'GTK backend, and that runtime libraries such as libatspi, glib, gio, ' +\n `GTK, X11, and dbus are installed. Original errors: ${errors.join(' | ')}`\n );\n};\n\nconst callNative = <Result>(operation: () => Result): Result => {\n try {\n return operation();\n } catch (error) {\n throw normalizeNativeError(error);\n }\n};\n\n/////////////////////////////////////////////////////////////////////////////////////////\n\n/** Resolves an accessible id to a native element when it exists. */\nexport const nativeFindById = (\n processId: number,\n id: string\n): NativeElementHandle | undefined =>\n callNative(() => loadNativeAddon().findById(processId, id));\n\n/** Checks whether a GTK process has completed AT-SPI root/cache registration. */\nexport const nativeProcessAtspiReadiness = (\n processId: number\n): NativeAtspiReadiness =>\n callNative(() => loadNativeAddon().processAtspiReadiness(processId));\n\n/** Resolves an accessible id to a native element across all exposed processes. */\nexport const nativeFindAnyById = (\n id: string\n): NativeElementHandle | undefined =>\n callNative(() => loadNativeAddon().findAnyById(id));\n\n/** Sets text contents on the accessible with the given id. */\nexport const nativeSetTextById = (\n processId: number,\n id: string,\n text: string\n): void => {\n callNative(() => loadNativeAddon().setTextById(processId, id, text));\n};\n\n/** Executes the first action on the accessible with the given id. */\nexport const nativeClickById = (processId: number, id: string): void => {\n callNative(() => loadNativeAddon().clickById(processId, id));\n};\n\n/** Reads text from the accessible with the given id. */\nexport const nativeTextById = (processId: number, id: string): string =>\n callNative(() => loadNativeAddon().textById(processId, id));\n\n/** Captures real screen pixels for the accessible with the given id. */\nexport const nativeCaptureById = (\n processId: number,\n id: string\n): NativeCapture =>\n callNative(() => loadNativeAddon().captureById(processId, id));\n\n/** Counts top-level windows hosted by the process. */\nexport const nativeWindowCount = (processId: number): number =>\n callNative(() => loadNativeAddon().windowCount(processId));\n\n/** Resolves a top-level window index to an element handle when it exists. */\nexport const nativeWindowAt = (\n processId: number,\n index: number\n): NativeElementHandle | undefined =>\n callNative(() => loadNativeAddon().windowAt(processId, index));\n\n/** Counts direct children for an element handle. */\nexport const nativeChildCount = (element: NativeElementHandle): number =>\n callNative(() => loadNativeAddon().childCount(element));\n\n/** Resolves a direct child index to an element handle when it exists. */\nexport const nativeChildAt = (\n element: NativeElementHandle,\n index: number\n): NativeElementHandle | undefined =>\n callNative(() => loadNativeAddon().childAt(element, index));\n\n/** Counts selected children for a selectable element handle. */\nexport const nativeSelectedChildCount = (\n element: NativeElementHandle\n): number => callNative(() => loadNativeAddon().selectedChildCount(element));\n\n/** Resolves a selected child index to an element handle when it exists. */\nexport const nativeSelectedChildAt = (\n element: NativeElementHandle,\n index: number\n): NativeElementHandle | undefined =>\n callNative(() => loadNativeAddon().selectedChildAt(element, index));\n\n/** Reads whether a direct child is selected. */\nexport const nativeIsChildSelected = (\n element: NativeElementHandle,\n index: number\n): boolean =>\n callNative(() => loadNativeAddon().isChildSelected(element, index));\n\n/** Selects a direct child for a selectable element handle. */\nexport const nativeSelectChildAt = (\n element: NativeElementHandle,\n index: number\n): void => {\n callNative(() => loadNativeAddon().selectChildAt(element, index));\n};\n\n/** Deselects a direct child for a selectable element handle. */\nexport const nativeDeselectChildAt = (\n element: NativeElementHandle,\n index: number\n): void => {\n callNative(() => loadNativeAddon().deselectChildAt(element, index));\n};\n\n/** Selects all children for a selectable element handle. */\nexport const nativeSelectAllChildren = (element: NativeElementHandle): void => {\n callNative(() => loadNativeAddon().selectAllChildren(element));\n};\n\n/** Clears child selection for a selectable element handle. */\nexport const nativeClearSelection = (element: NativeElementHandle): void => {\n callNative(() => loadNativeAddon().clearSelection(element));\n};\n\n/** Counts table rows for a table element handle. */\nexport const nativeTableRowCount = (element: NativeElementHandle): number =>\n callNative(() => loadNativeAddon().tableRowCount(element));\n\n/** Counts table columns for a table element handle. */\nexport const nativeTableColumnCount = (element: NativeElementHandle): number =>\n callNative(() => loadNativeAddon().tableColumnCount(element));\n\n/** Resolves a table cell element handle by row and column when it exists. */\nexport const nativeTableCellAt = (\n element: NativeElementHandle,\n row: number,\n column: number\n): NativeElementHandle | undefined =>\n callNative(() => loadNativeAddon().tableCellAt(element, row, column));\n\n/** Reads selected table row indexes. */\nexport const nativeTableSelectedRows = (\n element: NativeElementHandle\n): number[] => callNative(() => loadNativeAddon().tableSelectedRows(element));\n\n/** Reads selected table column indexes. */\nexport const nativeTableSelectedColumns = (\n element: NativeElementHandle\n): number[] =>\n callNative(() => loadNativeAddon().tableSelectedColumns(element));\n\n/** Reads whether a table row is selected. */\nexport const nativeTableIsRowSelected = (\n element: NativeElementHandle,\n row: number\n): boolean =>\n callNative(() => loadNativeAddon().tableIsRowSelected(element, row));\n\n/** Reads whether a table column is selected. */\nexport const nativeTableIsColumnSelected = (\n element: NativeElementHandle,\n column: number\n): boolean =>\n callNative(() => loadNativeAddon().tableIsColumnSelected(element, column));\n\n/** Reads whether a table cell is selected. */\nexport const nativeTableIsCellSelected = (\n element: NativeElementHandle,\n row: number,\n column: number\n): boolean =>\n callNative(() => loadNativeAddon().tableIsCellSelected(element, row, column));\n\n/** Selects a table row. */\nexport const nativeTableSelectRow = (\n element: NativeElementHandle,\n row: number\n): void => {\n callNative(() => loadNativeAddon().tableSelectRow(element, row));\n};\n\n/** Deselects a table row. */\nexport const nativeTableDeselectRow = (\n element: NativeElementHandle,\n row: number\n): void => {\n callNative(() => loadNativeAddon().tableDeselectRow(element, row));\n};\n\n/** Selects a table column. */\nexport const nativeTableSelectColumn = (\n element: NativeElementHandle,\n column: number\n): void => {\n callNative(() => loadNativeAddon().tableSelectColumn(element, column));\n};\n\n/** Deselects a table column. */\nexport const nativeTableDeselectColumn = (\n element: NativeElementHandle,\n column: number\n): void => {\n callNative(() => loadNativeAddon().tableDeselectColumn(element, column));\n};\n\n/** Sets text contents on the accessible resolved by an element handle. */\nexport const nativeSetText = (\n element: NativeElementHandle,\n text: string\n): void => {\n callNative(() => loadNativeAddon().setText(element, text));\n};\n\n/** Executes the first action on the accessible resolved by an element handle. */\nexport const nativeClick = (element: NativeElementHandle): void => {\n callNative(() => loadNativeAddon().click(element));\n};\n\n/** Reads text from the accessible resolved by an element handle. */\nexport const nativeText = (element: NativeElementHandle): string =>\n callNative(() => loadNativeAddon().text(element));\n\n/** Reads value metadata from the accessible resolved by an element handle. */\nexport const nativeValueInfo = (\n element: NativeElementHandle\n): NativeValueInfo => callNative(() => loadNativeAddon().valueInfo(element));\n\n/** Reads image metadata from the accessible resolved by an element handle. */\nexport const nativeImageInfo = (\n element: NativeElementHandle\n): NativeImageInfo => callNative(() => loadNativeAddon().imageInfo(element));\n\n/** Sets a numeric value on the accessible resolved by an element handle. */\nexport const nativeSetValue = (\n element: NativeElementHandle,\n value: number\n): void => {\n callNative(() => loadNativeAddon().setValue(element, value));\n};\n\n/** Captures real screen pixels for the accessible resolved by an element handle. */\nexport const nativeCapture = (element: NativeElementHandle): NativeCapture =>\n callNative(() => loadNativeAddon().capture(element));\n\n/** Captures the full X11 root window currently addressed by DISPLAY. */\nexport const nativeCaptureScreen = (): NativeCapture =>\n callNative(() => loadNativeAddon().captureScreen());\n\n/** Captures real screen pixels for explicit screen-relative bounds. */\nexport const nativeCaptureBounds = (\n bounds: NativeCaptureBounds\n): NativeCapture =>\n callNative(() =>\n loadNativeAddon().captureBounds(\n bounds.x,\n bounds.y,\n bounds.width,\n bounds.height\n )\n );\n\n/** Reads AT-SPI metadata for the accessible resolved by an element handle. */\nexport const nativeElementInfo = (\n element: NativeElementHandle\n): NativeElementInfo =>\n callNative(() => loadNativeAddon().elementInfo(element));\n\n/** Lists StatusNotifier tray items owned by the process. */\nexport const nativeTrayItems = (processId: number): NativeTrayItem[] =>\n callNative(() => loadNativeAddon().trayItems(processId));\n\n/** Runs the test tray host until the process is terminated. */\nexport const nativeRunTrayHost = (): void => {\n callNative(() => loadNativeAddon().runTrayHost());\n};\n"],"names":["require","packageVersion"],"mappings":"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"}
|
|
@@ -29,9 +29,9 @@ const normalizeNativeError = (error) => {
|
|
|
29
29
|
}
|
|
30
30
|
return createGtkAutomationError("OPERATION_FAILED", String(error));
|
|
31
31
|
};
|
|
32
|
-
const version = "0.
|
|
33
|
-
const require$1 = node_module.createRequire(typeof document === "undefined" ? require("url").pathToFileURL(__filename).href : _documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === "SCRIPT" && _documentCurrentScript.src || new URL("native-
|
|
34
|
-
const packageRoot = node_path.resolve(node_path.dirname(node_url.fileURLToPath(typeof document === "undefined" ? require("url").pathToFileURL(__filename).href : _documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === "SCRIPT" && _documentCurrentScript.src || new URL("native-
|
|
32
|
+
const version = "0.2.0";
|
|
33
|
+
const require$1 = node_module.createRequire(typeof document === "undefined" ? require("url").pathToFileURL(__filename).href : _documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === "SCRIPT" && _documentCurrentScript.src || new URL("native-ie_XIt1J.cjs", document.baseURI).href);
|
|
34
|
+
const packageRoot = node_path.resolve(node_path.dirname(node_url.fileURLToPath(typeof document === "undefined" ? require("url").pathToFileURL(__filename).href : _documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === "SCRIPT" && _documentCurrentScript.src || new URL("native-ie_XIt1J.cjs", document.baseURI).href)), "..");
|
|
35
35
|
let loadedAddon;
|
|
36
36
|
const createNativeLoadError = (message) => {
|
|
37
37
|
const loadError = new Error(message);
|
|
@@ -246,4 +246,4 @@ exports.nativeValueInfo = nativeValueInfo;
|
|
|
246
246
|
exports.nativeWindowAt = nativeWindowAt;
|
|
247
247
|
exports.nativeWindowCount = nativeWindowCount;
|
|
248
248
|
exports.normalizeNativeError = normalizeNativeError;
|
|
249
|
-
//# sourceMappingURL=native-
|
|
249
|
+
//# sourceMappingURL=native-ie_XIt1J.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"native-BRnrsqMn.cjs","sources":["../src/errors.ts","../src/generated/packageMetadata.ts","../src/native.ts"],"sourcesContent":["// gestament - TypeScript based test driver for GTK.\n// Copyright (c) Kouji Matsui. (@kekyo@mi.kekyo.net)\n// Under MIT.\n// https://github.com/kekyo/gestament\n\nimport type { GtkAutomationError, GtkAutomationErrorCode } from './types';\n\n/////////////////////////////////////////////////////////////////////////////////////////\n\nconst createGtkAutomationError = (\n code: GtkAutomationErrorCode,\n message: string\n): GtkAutomationError => {\n const error = new Error(message) as GtkAutomationError;\n Object.defineProperty(error, 'code', {\n enumerable: true,\n value: code,\n });\n error.name = 'GtkAutomationError';\n return error;\n};\n\n/** Creates an error for a GTK application that exited before an operation completed. */\nexport const createGtkAppExitedError = (message: string): GtkAutomationError =>\n createGtkAutomationError('APP_EXITED', message);\n\n/** Creates an error for an invalid public API argument. */\nexport const createGtkInvalidArgumentError = (\n message: string\n): GtkAutomationError => createGtkAutomationError('INVALID_ARGUMENT', message);\n\n/** Creates an error for an accessible element that was not found. */\nexport const createGtkElementNotFoundError = (\n message: string\n): GtkAutomationError => createGtkAutomationError('ELEMENT_NOT_FOUND', message);\n\n/** Creates an error for an element whose host object no longer exists. */\nexport const createGtkStaleElementError = (\n message: string\n): GtkAutomationError => createGtkAutomationError('STALE_ELEMENT', message);\n\n/** Creates an error for an operation that exceeded its timeout. */\nexport const createGtkOperationTimeoutError = (\n message: string\n): GtkAutomationError => createGtkAutomationError('TIMEOUT', message);\n\n/** Creates an error for an operation that failed. */\nexport const createGtkOperationFailedError = (\n message: string\n): GtkAutomationError => createGtkAutomationError('OPERATION_FAILED', message);\n\n/** Creates an error for an operation that is not supported by the element. */\nexport const createGtkUnsupportedInterfaceError = (\n message: string\n): GtkAutomationError =>\n createGtkAutomationError('UNSUPPORTED_INTERFACE', message);\n\n/** Converts native addon errors into the public error shape. */\nexport const normalizeNativeError = (error: unknown): GtkAutomationError => {\n if (error instanceof Error) {\n const maybeCode = (error as { code?: unknown }).code;\n if (\n maybeCode === 'ELEMENT_NOT_FOUND' ||\n maybeCode === 'INVALID_ARGUMENT' ||\n maybeCode === 'NATIVE_LOAD_FAILED' ||\n maybeCode === 'OPERATION_FAILED' ||\n maybeCode === 'STALE_ELEMENT' ||\n maybeCode === 'UNSUPPORTED_INTERFACE'\n ) {\n return createGtkAutomationError(maybeCode, error.message);\n }\n\n return createGtkAutomationError('OPERATION_FAILED', error.message);\n }\n\n return createGtkAutomationError('OPERATION_FAILED', String(error));\n};\n","// @ts-nocheck\n// This file is auto-generated by screw-up plugin\n// Do not edit manually\n\nexport const name = \"gestament\";\nexport const version = \"0.1.0\";\nexport const description = \"TypeScript based test driver for GTK\";\nexport const author = \"Kouji Matsui (@kekyo@mi.kekyo.net)\";\nexport const license = \"MIT\";\nexport const repository_url = \"https://github.com/kekyo/gestament.git\";\nexport const git_commit_hash = \"2e2298272ff7a9fff6945b8d87de6223ac4d7847\";\n","// gestament - TypeScript based test driver for GTK.\n// Copyright (c) Kouji Matsui. (@kekyo@mi.kekyo.net)\n// Under MIT.\n// https://github.com/kekyo/gestament\n\nimport { createRequire } from 'node:module';\nimport { existsSync } from 'node:fs';\nimport { dirname, resolve } from 'node:path';\nimport { fileURLToPath } from 'node:url';\n\nimport { normalizeNativeError } from './errors';\nimport { version as packageVersion } from './generated/packageMetadata';\nimport type { GtkAutomationError } from './types';\n\n/////////////////////////////////////////////////////////////////////////////////////////\n\ninterface NativeInfo {\n readonly version: string;\n readonly arch: string;\n readonly gtkBackend: GtkBackend;\n readonly napiVersion: number;\n}\n\nexport interface NativeCaptureBounds {\n readonly x: number;\n readonly y: number;\n readonly width: number;\n readonly height: number;\n}\n\nexport interface NativeCapture {\n readonly image: Buffer;\n readonly bounds: NativeCaptureBounds;\n readonly visibleBounds: NativeCaptureBounds;\n readonly clipped: boolean;\n}\n\nexport interface NativeElementInfo {\n readonly roleName: string;\n readonly localizedRoleName: string;\n readonly accessibleId: string;\n readonly name: string;\n readonly description: string;\n readonly interfaces: string[];\n readonly states: string[];\n}\n\n/** AT-SPI Value metadata returned by the native layer. */\nexport interface NativeValueInfo {\n /** Current numeric value. */\n readonly value: number;\n\n /** Minimum accepted numeric value. */\n readonly minimum: number;\n\n /** Maximum accepted numeric value. */\n readonly maximum: number;\n\n /** Minimum increment used by step-based controls. */\n readonly minimumIncrement: number;\n\n /** Text representation reported by AT-SPI, when available. */\n readonly text: string;\n}\n\n/** Point returned by the native layer. */\nexport interface NativeImagePoint {\n /** Horizontal pixel coordinate. */\n readonly x: number;\n\n /** Vertical pixel coordinate. */\n readonly y: number;\n}\n\n/** Image size returned by the native layer. */\nexport interface NativeImageSize {\n /** Image width in physical pixels. */\n readonly width: number;\n\n /** Image height in physical pixels. */\n readonly height: number;\n}\n\n/** AT-SPI Image metadata returned by the native layer. */\nexport interface NativeImageInfo {\n /** Text description reported by AT-SPI. */\n readonly description: string;\n\n /** Image locale reported by AT-SPI. */\n readonly locale: string;\n\n /** Image position reported by AT-SPI. */\n readonly position: NativeImagePoint;\n\n /** Image size reported by AT-SPI. */\n readonly size: NativeImageSize;\n\n /** Screen-relative image bounds reported by AT-SPI. */\n readonly bounds: NativeCaptureBounds;\n}\n\n/** Opaque native element handle backed by an AT-SPI accessible proxy. */\nexport type NativeElementHandle = object;\n\n/** AT-SPI readiness state reported by the native layer. */\nexport type NativeAtspiReadiness =\n | 'ready'\n | 'missing-bus-name'\n | 'missing-root'\n | 'missing-cache';\n\n/** StatusNotifier tray item metadata reported by the native layer. */\nexport interface NativeTrayItem {\n readonly busName: string;\n readonly objectPath: string;\n readonly id: string;\n readonly title: string;\n readonly status: string;\n readonly iconName: string;\n readonly accessibleId: string;\n}\n\ninterface NativeAddon {\n readonly findById: (\n processId: number,\n id: string\n ) => NativeElementHandle | undefined;\n readonly processAtspiReadiness: (processId: number) => NativeAtspiReadiness;\n readonly findAnyById: (id: string) => NativeElementHandle | undefined;\n readonly setTextById: (processId: number, id: string, text: string) => void;\n readonly clickById: (processId: number, id: string) => void;\n readonly textById: (processId: number, id: string) => string;\n readonly captureById: (processId: number, id: string) => NativeCapture;\n readonly windowCount: (processId: number) => number;\n readonly windowAt: (\n processId: number,\n index: number\n ) => NativeElementHandle | undefined;\n readonly childCount: (element: NativeElementHandle) => number;\n readonly childAt: (\n element: NativeElementHandle,\n index: number\n ) => NativeElementHandle | undefined;\n readonly selectedChildCount: (element: NativeElementHandle) => number;\n readonly selectedChildAt: (\n element: NativeElementHandle,\n index: number\n ) => NativeElementHandle | undefined;\n readonly isChildSelected: (\n element: NativeElementHandle,\n index: number\n ) => boolean;\n readonly selectChildAt: (element: NativeElementHandle, index: number) => void;\n readonly deselectChildAt: (\n element: NativeElementHandle,\n index: number\n ) => void;\n readonly selectAllChildren: (element: NativeElementHandle) => void;\n readonly clearSelection: (element: NativeElementHandle) => void;\n readonly tableRowCount: (element: NativeElementHandle) => number;\n readonly tableColumnCount: (element: NativeElementHandle) => number;\n readonly tableCellAt: (\n element: NativeElementHandle,\n row: number,\n column: number\n ) => NativeElementHandle | undefined;\n readonly tableSelectedRows: (element: NativeElementHandle) => number[];\n readonly tableSelectedColumns: (element: NativeElementHandle) => number[];\n readonly tableIsRowSelected: (\n element: NativeElementHandle,\n row: number\n ) => boolean;\n readonly tableIsColumnSelected: (\n element: NativeElementHandle,\n column: number\n ) => boolean;\n readonly tableIsCellSelected: (\n element: NativeElementHandle,\n row: number,\n column: number\n ) => boolean;\n readonly tableSelectRow: (element: NativeElementHandle, row: number) => void;\n readonly tableDeselectRow: (\n element: NativeElementHandle,\n row: number\n ) => void;\n readonly tableSelectColumn: (\n element: NativeElementHandle,\n column: number\n ) => void;\n readonly tableDeselectColumn: (\n element: NativeElementHandle,\n column: number\n ) => void;\n readonly setText: (element: NativeElementHandle, text: string) => void;\n readonly click: (element: NativeElementHandle) => void;\n readonly text: (element: NativeElementHandle) => string;\n readonly valueInfo: (element: NativeElementHandle) => NativeValueInfo;\n readonly imageInfo: (element: NativeElementHandle) => NativeImageInfo;\n readonly setValue: (element: NativeElementHandle, value: number) => void;\n readonly capture: (element: NativeElementHandle) => NativeCapture;\n readonly captureScreen: () => NativeCapture;\n readonly captureBounds: (\n x: number,\n y: number,\n width: number,\n height: number\n ) => NativeCapture;\n readonly elementInfo: (element: NativeElementHandle) => NativeElementInfo;\n readonly trayItems: (processId: number) => NativeTrayItem[];\n readonly runTrayHost: () => void;\n readonly nativeInfo: () => NativeInfo;\n}\n\ntype GtkBackend = 'gtk3' | 'gtk4';\ntype GtkBackendSelection = GtkBackend | 'auto';\n\nconst require = createRequire(import.meta.url);\nconst packageRoot = resolve(dirname(fileURLToPath(import.meta.url)), '..');\n\nlet loadedAddon: NativeAddon | undefined;\n\nconst createNativeLoadError = (message: string): GtkAutomationError => {\n const loadError = new Error(message) as GtkAutomationError;\n Object.defineProperty(loadError, 'code', {\n enumerable: true,\n value: 'NATIVE_LOAD_FAILED',\n });\n return loadError;\n};\n\nconst selectedGtkBackend = (): GtkBackendSelection => {\n const value = process.env.GESTAMENT_GTK_BACKEND;\n if (value === undefined || value.length === 0) {\n return 'gtk3';\n }\n if (value === 'gtk3' || value === 'gtk4' || value === 'auto') {\n return value;\n }\n throw createNativeLoadError(\n `Unsupported GESTAMENT_GTK_BACKEND: ${value}. Expected gtk3, gtk4, or auto.`\n );\n};\n\nconst candidateGtkBackends = (): readonly GtkBackend[] => {\n const selected = selectedGtkBackend();\n return selected === 'auto' ? ['gtk3', 'gtk4'] : [selected];\n};\n\nconst prebuildDirectory = (): string => {\n if (process.platform !== 'linux') {\n throw createNativeLoadError(\n `Unsupported platform for gestament native prebuilds: ${process.platform}.`\n );\n }\n\n switch (process.arch) {\n case 'x64':\n return 'linux-x64';\n case 'ia32':\n return 'linux-ia32';\n case 'arm64':\n return 'linux-arm64';\n case 'arm':\n return 'linux-arm';\n case 'riscv64':\n return 'linux-riscv64';\n default:\n throw createNativeLoadError(\n `Unsupported architecture for gestament native prebuilds: ${process.arch}.`\n );\n }\n};\n\nconst prebuildFile = (): string =>\n process.arch === 'arm'\n ? 'node.napi.armv7.glibc.node'\n : 'node.napi.glibc.node';\n\nconst prebuildPath = (backend: GtkBackend): string =>\n resolve(\n packageRoot,\n 'prebuilds',\n prebuildDirectory(),\n backend,\n prebuildFile()\n );\n\nconst loadNativePrebuild = (backend: GtkBackend): NativeAddon => {\n const path = prebuildPath(backend);\n if (!existsSync(path)) {\n throw new Error(`Missing ${backend} native prebuild: ${path}`);\n }\n return require(path) as NativeAddon;\n};\n\nconst loadNativeAddon = (): NativeAddon => {\n if (loadedAddon !== undefined) {\n return loadedAddon;\n }\n\n const errors: string[] = [];\n for (const backend of candidateGtkBackends()) {\n try {\n const addon = loadNativePrebuild(backend);\n const nativeInfo = addon.nativeInfo();\n if (nativeInfo.version !== packageVersion) {\n throw new Error(\n `gestament native prebuild version mismatch: native=${nativeInfo.version}, package=${packageVersion}`\n );\n }\n if (nativeInfo.gtkBackend !== backend) {\n throw new Error(\n `gestament native prebuild backend mismatch: native=${nativeInfo.gtkBackend}, requested=${backend}`\n );\n }\n loadedAddon = addon;\n return loadedAddon;\n } catch (error) {\n const message =\n error instanceof Error\n ? error.message\n : `Unknown error: ${String(error)}`;\n errors.push(`${backend}: ${message}`);\n }\n }\n\n throw createNativeLoadError(\n `Failed to load a compatible gestament native prebuild from ${packageRoot} ` +\n `(GESTAMENT_GTK_BACKEND=${selectedGtkBackend()}). Ensure this package ` +\n 'includes prebuilds for the current Linux/glibc architecture and selected ' +\n 'GTK backend, and that runtime libraries such as libatspi, glib, gio, ' +\n `GTK, X11, and dbus are installed. Original errors: ${errors.join(' | ')}`\n );\n};\n\nconst callNative = <Result>(operation: () => Result): Result => {\n try {\n return operation();\n } catch (error) {\n throw normalizeNativeError(error);\n }\n};\n\n/////////////////////////////////////////////////////////////////////////////////////////\n\n/** Resolves an accessible id to a native element when it exists. */\nexport const nativeFindById = (\n processId: number,\n id: string\n): NativeElementHandle | undefined =>\n callNative(() => loadNativeAddon().findById(processId, id));\n\n/** Checks whether a GTK process has completed AT-SPI root/cache registration. */\nexport const nativeProcessAtspiReadiness = (\n processId: number\n): NativeAtspiReadiness =>\n callNative(() => loadNativeAddon().processAtspiReadiness(processId));\n\n/** Resolves an accessible id to a native element across all exposed processes. */\nexport const nativeFindAnyById = (\n id: string\n): NativeElementHandle | undefined =>\n callNative(() => loadNativeAddon().findAnyById(id));\n\n/** Sets text contents on the accessible with the given id. */\nexport const nativeSetTextById = (\n processId: number,\n id: string,\n text: string\n): void => {\n callNative(() => loadNativeAddon().setTextById(processId, id, text));\n};\n\n/** Executes the first action on the accessible with the given id. */\nexport const nativeClickById = (processId: number, id: string): void => {\n callNative(() => loadNativeAddon().clickById(processId, id));\n};\n\n/** Reads text from the accessible with the given id. */\nexport const nativeTextById = (processId: number, id: string): string =>\n callNative(() => loadNativeAddon().textById(processId, id));\n\n/** Captures real screen pixels for the accessible with the given id. */\nexport const nativeCaptureById = (\n processId: number,\n id: string\n): NativeCapture =>\n callNative(() => loadNativeAddon().captureById(processId, id));\n\n/** Counts top-level windows hosted by the process. */\nexport const nativeWindowCount = (processId: number): number =>\n callNative(() => loadNativeAddon().windowCount(processId));\n\n/** Resolves a top-level window index to an element handle when it exists. */\nexport const nativeWindowAt = (\n processId: number,\n index: number\n): NativeElementHandle | undefined =>\n callNative(() => loadNativeAddon().windowAt(processId, index));\n\n/** Counts direct children for an element handle. */\nexport const nativeChildCount = (element: NativeElementHandle): number =>\n callNative(() => loadNativeAddon().childCount(element));\n\n/** Resolves a direct child index to an element handle when it exists. */\nexport const nativeChildAt = (\n element: NativeElementHandle,\n index: number\n): NativeElementHandle | undefined =>\n callNative(() => loadNativeAddon().childAt(element, index));\n\n/** Counts selected children for a selectable element handle. */\nexport const nativeSelectedChildCount = (\n element: NativeElementHandle\n): number => callNative(() => loadNativeAddon().selectedChildCount(element));\n\n/** Resolves a selected child index to an element handle when it exists. */\nexport const nativeSelectedChildAt = (\n element: NativeElementHandle,\n index: number\n): NativeElementHandle | undefined =>\n callNative(() => loadNativeAddon().selectedChildAt(element, index));\n\n/** Reads whether a direct child is selected. */\nexport const nativeIsChildSelected = (\n element: NativeElementHandle,\n index: number\n): boolean =>\n callNative(() => loadNativeAddon().isChildSelected(element, index));\n\n/** Selects a direct child for a selectable element handle. */\nexport const nativeSelectChildAt = (\n element: NativeElementHandle,\n index: number\n): void => {\n callNative(() => loadNativeAddon().selectChildAt(element, index));\n};\n\n/** Deselects a direct child for a selectable element handle. */\nexport const nativeDeselectChildAt = (\n element: NativeElementHandle,\n index: number\n): void => {\n callNative(() => loadNativeAddon().deselectChildAt(element, index));\n};\n\n/** Selects all children for a selectable element handle. */\nexport const nativeSelectAllChildren = (element: NativeElementHandle): void => {\n callNative(() => loadNativeAddon().selectAllChildren(element));\n};\n\n/** Clears child selection for a selectable element handle. */\nexport const nativeClearSelection = (element: NativeElementHandle): void => {\n callNative(() => loadNativeAddon().clearSelection(element));\n};\n\n/** Counts table rows for a table element handle. */\nexport const nativeTableRowCount = (element: NativeElementHandle): number =>\n callNative(() => loadNativeAddon().tableRowCount(element));\n\n/** Counts table columns for a table element handle. */\nexport const nativeTableColumnCount = (element: NativeElementHandle): number =>\n callNative(() => loadNativeAddon().tableColumnCount(element));\n\n/** Resolves a table cell element handle by row and column when it exists. */\nexport const nativeTableCellAt = (\n element: NativeElementHandle,\n row: number,\n column: number\n): NativeElementHandle | undefined =>\n callNative(() => loadNativeAddon().tableCellAt(element, row, column));\n\n/** Reads selected table row indexes. */\nexport const nativeTableSelectedRows = (\n element: NativeElementHandle\n): number[] => callNative(() => loadNativeAddon().tableSelectedRows(element));\n\n/** Reads selected table column indexes. */\nexport const nativeTableSelectedColumns = (\n element: NativeElementHandle\n): number[] =>\n callNative(() => loadNativeAddon().tableSelectedColumns(element));\n\n/** Reads whether a table row is selected. */\nexport const nativeTableIsRowSelected = (\n element: NativeElementHandle,\n row: number\n): boolean =>\n callNative(() => loadNativeAddon().tableIsRowSelected(element, row));\n\n/** Reads whether a table column is selected. */\nexport const nativeTableIsColumnSelected = (\n element: NativeElementHandle,\n column: number\n): boolean =>\n callNative(() => loadNativeAddon().tableIsColumnSelected(element, column));\n\n/** Reads whether a table cell is selected. */\nexport const nativeTableIsCellSelected = (\n element: NativeElementHandle,\n row: number,\n column: number\n): boolean =>\n callNative(() => loadNativeAddon().tableIsCellSelected(element, row, column));\n\n/** Selects a table row. */\nexport const nativeTableSelectRow = (\n element: NativeElementHandle,\n row: number\n): void => {\n callNative(() => loadNativeAddon().tableSelectRow(element, row));\n};\n\n/** Deselects a table row. */\nexport const nativeTableDeselectRow = (\n element: NativeElementHandle,\n row: number\n): void => {\n callNative(() => loadNativeAddon().tableDeselectRow(element, row));\n};\n\n/** Selects a table column. */\nexport const nativeTableSelectColumn = (\n element: NativeElementHandle,\n column: number\n): void => {\n callNative(() => loadNativeAddon().tableSelectColumn(element, column));\n};\n\n/** Deselects a table column. */\nexport const nativeTableDeselectColumn = (\n element: NativeElementHandle,\n column: number\n): void => {\n callNative(() => loadNativeAddon().tableDeselectColumn(element, column));\n};\n\n/** Sets text contents on the accessible resolved by an element handle. */\nexport const nativeSetText = (\n element: NativeElementHandle,\n text: string\n): void => {\n callNative(() => loadNativeAddon().setText(element, text));\n};\n\n/** Executes the first action on the accessible resolved by an element handle. */\nexport const nativeClick = (element: NativeElementHandle): void => {\n callNative(() => loadNativeAddon().click(element));\n};\n\n/** Reads text from the accessible resolved by an element handle. */\nexport const nativeText = (element: NativeElementHandle): string =>\n callNative(() => loadNativeAddon().text(element));\n\n/** Reads value metadata from the accessible resolved by an element handle. */\nexport const nativeValueInfo = (\n element: NativeElementHandle\n): NativeValueInfo => callNative(() => loadNativeAddon().valueInfo(element));\n\n/** Reads image metadata from the accessible resolved by an element handle. */\nexport const nativeImageInfo = (\n element: NativeElementHandle\n): NativeImageInfo => callNative(() => loadNativeAddon().imageInfo(element));\n\n/** Sets a numeric value on the accessible resolved by an element handle. */\nexport const nativeSetValue = (\n element: NativeElementHandle,\n value: number\n): void => {\n callNative(() => loadNativeAddon().setValue(element, value));\n};\n\n/** Captures real screen pixels for the accessible resolved by an element handle. */\nexport const nativeCapture = (element: NativeElementHandle): NativeCapture =>\n callNative(() => loadNativeAddon().capture(element));\n\n/** Captures the full X11 root window currently addressed by DISPLAY. */\nexport const nativeCaptureScreen = (): NativeCapture =>\n callNative(() => loadNativeAddon().captureScreen());\n\n/** Captures real screen pixels for explicit screen-relative bounds. */\nexport const nativeCaptureBounds = (\n bounds: NativeCaptureBounds\n): NativeCapture =>\n callNative(() =>\n loadNativeAddon().captureBounds(\n bounds.x,\n bounds.y,\n bounds.width,\n bounds.height\n )\n );\n\n/** Reads AT-SPI metadata for the accessible resolved by an element handle. */\nexport const nativeElementInfo = (\n element: NativeElementHandle\n): NativeElementInfo =>\n callNative(() => loadNativeAddon().elementInfo(element));\n\n/** Lists StatusNotifier tray items owned by the process. */\nexport const nativeTrayItems = (processId: number): NativeTrayItem[] =>\n callNative(() => loadNativeAddon().trayItems(processId));\n\n/** Runs the test tray host until the process is terminated. */\nexport const nativeRunTrayHost = (): void => {\n callNative(() => loadNativeAddon().runTrayHost());\n};\n"],"names":["require","createRequire","resolve","dirname","fileURLToPath","existsSync","packageVersion"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"native-ie_XIt1J.cjs","sources":["../src/errors.ts","../src/generated/packageMetadata.ts","../src/native.ts"],"sourcesContent":["// gestament - TypeScript based test driver for GTK.\n// Copyright (c) Kouji Matsui. (@kekyo@mi.kekyo.net)\n// Under MIT.\n// https://github.com/kekyo/gestament\n\nimport type { GtkAutomationError, GtkAutomationErrorCode } from './types';\n\n/////////////////////////////////////////////////////////////////////////////////////////\n\nconst createGtkAutomationError = (\n code: GtkAutomationErrorCode,\n message: string\n): GtkAutomationError => {\n const error = new Error(message) as GtkAutomationError;\n Object.defineProperty(error, 'code', {\n enumerable: true,\n value: code,\n });\n error.name = 'GtkAutomationError';\n return error;\n};\n\n/** Creates an error for a GTK application that exited before an operation completed. */\nexport const createGtkAppExitedError = (message: string): GtkAutomationError =>\n createGtkAutomationError('APP_EXITED', message);\n\n/** Creates an error for an invalid public API argument. */\nexport const createGtkInvalidArgumentError = (\n message: string\n): GtkAutomationError => createGtkAutomationError('INVALID_ARGUMENT', message);\n\n/** Creates an error for an accessible element that was not found. */\nexport const createGtkElementNotFoundError = (\n message: string\n): GtkAutomationError => createGtkAutomationError('ELEMENT_NOT_FOUND', message);\n\n/** Creates an error for an element whose host object no longer exists. */\nexport const createGtkStaleElementError = (\n message: string\n): GtkAutomationError => createGtkAutomationError('STALE_ELEMENT', message);\n\n/** Creates an error for an operation that exceeded its timeout. */\nexport const createGtkOperationTimeoutError = (\n message: string\n): GtkAutomationError => createGtkAutomationError('TIMEOUT', message);\n\n/** Creates an error for an operation that failed. */\nexport const createGtkOperationFailedError = (\n message: string\n): GtkAutomationError => createGtkAutomationError('OPERATION_FAILED', message);\n\n/** Creates an error for an operation that is not supported by the element. */\nexport const createGtkUnsupportedInterfaceError = (\n message: string\n): GtkAutomationError =>\n createGtkAutomationError('UNSUPPORTED_INTERFACE', message);\n\n/** Converts native addon errors into the public error shape. */\nexport const normalizeNativeError = (error: unknown): GtkAutomationError => {\n if (error instanceof Error) {\n const maybeCode = (error as { code?: unknown }).code;\n if (\n maybeCode === 'ELEMENT_NOT_FOUND' ||\n maybeCode === 'INVALID_ARGUMENT' ||\n maybeCode === 'NATIVE_LOAD_FAILED' ||\n maybeCode === 'OPERATION_FAILED' ||\n maybeCode === 'STALE_ELEMENT' ||\n maybeCode === 'UNSUPPORTED_INTERFACE'\n ) {\n return createGtkAutomationError(maybeCode, error.message);\n }\n\n return createGtkAutomationError('OPERATION_FAILED', error.message);\n }\n\n return createGtkAutomationError('OPERATION_FAILED', String(error));\n};\n","// @ts-nocheck\n// This file is auto-generated by screw-up plugin\n// Do not edit manually\n\nexport const name = \"gestament\";\nexport const version = \"0.2.0\";\nexport const description = \"TypeScript based test driver for GTK\";\nexport const author = \"Kouji Matsui (@kekyo@mi.kekyo.net)\";\nexport const license = \"MIT\";\nexport const repository_url = \"https://github.com/kekyo/gestament.git\";\nexport const git_commit_hash = \"82eaccb340f7304524549a1f95888845deb4a156\";\n","// gestament - TypeScript based test driver for GTK.\n// Copyright (c) Kouji Matsui. (@kekyo@mi.kekyo.net)\n// Under MIT.\n// https://github.com/kekyo/gestament\n\nimport { createRequire } from 'node:module';\nimport { existsSync } from 'node:fs';\nimport { dirname, resolve } from 'node:path';\nimport { fileURLToPath } from 'node:url';\n\nimport { normalizeNativeError } from './errors';\nimport { version as packageVersion } from './generated/packageMetadata';\nimport type { GtkAutomationError } from './types';\n\n/////////////////////////////////////////////////////////////////////////////////////////\n\ninterface NativeInfo {\n readonly version: string;\n readonly arch: string;\n readonly gtkBackend: GtkBackend;\n readonly napiVersion: number;\n}\n\nexport interface NativeCaptureBounds {\n readonly x: number;\n readonly y: number;\n readonly width: number;\n readonly height: number;\n}\n\nexport interface NativeCapture {\n readonly image: Buffer;\n readonly bounds: NativeCaptureBounds;\n readonly visibleBounds: NativeCaptureBounds;\n readonly clipped: boolean;\n}\n\nexport interface NativeElementInfo {\n readonly roleName: string;\n readonly localizedRoleName: string;\n readonly accessibleId: string;\n readonly name: string;\n readonly description: string;\n readonly interfaces: string[];\n readonly states: string[];\n}\n\n/** AT-SPI Value metadata returned by the native layer. */\nexport interface NativeValueInfo {\n /** Current numeric value. */\n readonly value: number;\n\n /** Minimum accepted numeric value. */\n readonly minimum: number;\n\n /** Maximum accepted numeric value. */\n readonly maximum: number;\n\n /** Minimum increment used by step-based controls. */\n readonly minimumIncrement: number;\n\n /** Text representation reported by AT-SPI, when available. */\n readonly text: string;\n}\n\n/** Point returned by the native layer. */\nexport interface NativeImagePoint {\n /** Horizontal pixel coordinate. */\n readonly x: number;\n\n /** Vertical pixel coordinate. */\n readonly y: number;\n}\n\n/** Image size returned by the native layer. */\nexport interface NativeImageSize {\n /** Image width in physical pixels. */\n readonly width: number;\n\n /** Image height in physical pixels. */\n readonly height: number;\n}\n\n/** AT-SPI Image metadata returned by the native layer. */\nexport interface NativeImageInfo {\n /** Text description reported by AT-SPI. */\n readonly description: string;\n\n /** Image locale reported by AT-SPI. */\n readonly locale: string;\n\n /** Image position reported by AT-SPI. */\n readonly position: NativeImagePoint;\n\n /** Image size reported by AT-SPI. */\n readonly size: NativeImageSize;\n\n /** Screen-relative image bounds reported by AT-SPI. */\n readonly bounds: NativeCaptureBounds;\n}\n\n/** Opaque native element handle backed by an AT-SPI accessible proxy. */\nexport type NativeElementHandle = object;\n\n/** AT-SPI readiness state reported by the native layer. */\nexport type NativeAtspiReadiness =\n | 'ready'\n | 'missing-bus-name'\n | 'missing-root'\n | 'missing-cache';\n\n/** StatusNotifier tray item metadata reported by the native layer. */\nexport interface NativeTrayItem {\n readonly busName: string;\n readonly objectPath: string;\n readonly id: string;\n readonly title: string;\n readonly status: string;\n readonly iconName: string;\n readonly accessibleId: string;\n}\n\ninterface NativeAddon {\n readonly findById: (\n processId: number,\n id: string\n ) => NativeElementHandle | undefined;\n readonly processAtspiReadiness: (processId: number) => NativeAtspiReadiness;\n readonly findAnyById: (id: string) => NativeElementHandle | undefined;\n readonly setTextById: (processId: number, id: string, text: string) => void;\n readonly clickById: (processId: number, id: string) => void;\n readonly textById: (processId: number, id: string) => string;\n readonly captureById: (processId: number, id: string) => NativeCapture;\n readonly windowCount: (processId: number) => number;\n readonly windowAt: (\n processId: number,\n index: number\n ) => NativeElementHandle | undefined;\n readonly childCount: (element: NativeElementHandle) => number;\n readonly childAt: (\n element: NativeElementHandle,\n index: number\n ) => NativeElementHandle | undefined;\n readonly selectedChildCount: (element: NativeElementHandle) => number;\n readonly selectedChildAt: (\n element: NativeElementHandle,\n index: number\n ) => NativeElementHandle | undefined;\n readonly isChildSelected: (\n element: NativeElementHandle,\n index: number\n ) => boolean;\n readonly selectChildAt: (element: NativeElementHandle, index: number) => void;\n readonly deselectChildAt: (\n element: NativeElementHandle,\n index: number\n ) => void;\n readonly selectAllChildren: (element: NativeElementHandle) => void;\n readonly clearSelection: (element: NativeElementHandle) => void;\n readonly tableRowCount: (element: NativeElementHandle) => number;\n readonly tableColumnCount: (element: NativeElementHandle) => number;\n readonly tableCellAt: (\n element: NativeElementHandle,\n row: number,\n column: number\n ) => NativeElementHandle | undefined;\n readonly tableSelectedRows: (element: NativeElementHandle) => number[];\n readonly tableSelectedColumns: (element: NativeElementHandle) => number[];\n readonly tableIsRowSelected: (\n element: NativeElementHandle,\n row: number\n ) => boolean;\n readonly tableIsColumnSelected: (\n element: NativeElementHandle,\n column: number\n ) => boolean;\n readonly tableIsCellSelected: (\n element: NativeElementHandle,\n row: number,\n column: number\n ) => boolean;\n readonly tableSelectRow: (element: NativeElementHandle, row: number) => void;\n readonly tableDeselectRow: (\n element: NativeElementHandle,\n row: number\n ) => void;\n readonly tableSelectColumn: (\n element: NativeElementHandle,\n column: number\n ) => void;\n readonly tableDeselectColumn: (\n element: NativeElementHandle,\n column: number\n ) => void;\n readonly setText: (element: NativeElementHandle, text: string) => void;\n readonly click: (element: NativeElementHandle) => void;\n readonly text: (element: NativeElementHandle) => string;\n readonly valueInfo: (element: NativeElementHandle) => NativeValueInfo;\n readonly imageInfo: (element: NativeElementHandle) => NativeImageInfo;\n readonly setValue: (element: NativeElementHandle, value: number) => void;\n readonly capture: (element: NativeElementHandle) => NativeCapture;\n readonly captureScreen: () => NativeCapture;\n readonly captureBounds: (\n x: number,\n y: number,\n width: number,\n height: number\n ) => NativeCapture;\n readonly elementInfo: (element: NativeElementHandle) => NativeElementInfo;\n readonly trayItems: (processId: number) => NativeTrayItem[];\n readonly runTrayHost: () => void;\n readonly nativeInfo: () => NativeInfo;\n}\n\ntype GtkBackend = 'gtk3' | 'gtk4';\ntype GtkBackendSelection = GtkBackend | 'auto';\n\nconst require = createRequire(import.meta.url);\nconst packageRoot = resolve(dirname(fileURLToPath(import.meta.url)), '..');\n\nlet loadedAddon: NativeAddon | undefined;\n\nconst createNativeLoadError = (message: string): GtkAutomationError => {\n const loadError = new Error(message) as GtkAutomationError;\n Object.defineProperty(loadError, 'code', {\n enumerable: true,\n value: 'NATIVE_LOAD_FAILED',\n });\n return loadError;\n};\n\nconst selectedGtkBackend = (): GtkBackendSelection => {\n const value = process.env.GESTAMENT_GTK_BACKEND;\n if (value === undefined || value.length === 0) {\n return 'gtk3';\n }\n if (value === 'gtk3' || value === 'gtk4' || value === 'auto') {\n return value;\n }\n throw createNativeLoadError(\n `Unsupported GESTAMENT_GTK_BACKEND: ${value}. Expected gtk3, gtk4, or auto.`\n );\n};\n\nconst candidateGtkBackends = (): readonly GtkBackend[] => {\n const selected = selectedGtkBackend();\n return selected === 'auto' ? ['gtk3', 'gtk4'] : [selected];\n};\n\nconst prebuildDirectory = (): string => {\n if (process.platform !== 'linux') {\n throw createNativeLoadError(\n `Unsupported platform for gestament native prebuilds: ${process.platform}.`\n );\n }\n\n switch (process.arch) {\n case 'x64':\n return 'linux-x64';\n case 'ia32':\n return 'linux-ia32';\n case 'arm64':\n return 'linux-arm64';\n case 'arm':\n return 'linux-arm';\n case 'riscv64':\n return 'linux-riscv64';\n default:\n throw createNativeLoadError(\n `Unsupported architecture for gestament native prebuilds: ${process.arch}.`\n );\n }\n};\n\nconst prebuildFile = (): string =>\n process.arch === 'arm'\n ? 'node.napi.armv7.glibc.node'\n : 'node.napi.glibc.node';\n\nconst prebuildPath = (backend: GtkBackend): string =>\n resolve(\n packageRoot,\n 'prebuilds',\n prebuildDirectory(),\n backend,\n prebuildFile()\n );\n\nconst loadNativePrebuild = (backend: GtkBackend): NativeAddon => {\n const path = prebuildPath(backend);\n if (!existsSync(path)) {\n throw new Error(`Missing ${backend} native prebuild: ${path}`);\n }\n return require(path) as NativeAddon;\n};\n\nconst loadNativeAddon = (): NativeAddon => {\n if (loadedAddon !== undefined) {\n return loadedAddon;\n }\n\n const errors: string[] = [];\n for (const backend of candidateGtkBackends()) {\n try {\n const addon = loadNativePrebuild(backend);\n const nativeInfo = addon.nativeInfo();\n if (nativeInfo.version !== packageVersion) {\n throw new Error(\n `gestament native prebuild version mismatch: native=${nativeInfo.version}, package=${packageVersion}`\n );\n }\n if (nativeInfo.gtkBackend !== backend) {\n throw new Error(\n `gestament native prebuild backend mismatch: native=${nativeInfo.gtkBackend}, requested=${backend}`\n );\n }\n loadedAddon = addon;\n return loadedAddon;\n } catch (error) {\n const message =\n error instanceof Error\n ? error.message\n : `Unknown error: ${String(error)}`;\n errors.push(`${backend}: ${message}`);\n }\n }\n\n throw createNativeLoadError(\n `Failed to load a compatible gestament native prebuild from ${packageRoot} ` +\n `(GESTAMENT_GTK_BACKEND=${selectedGtkBackend()}). Ensure this package ` +\n 'includes prebuilds for the current Linux/glibc architecture and selected ' +\n 'GTK backend, and that runtime libraries such as libatspi, glib, gio, ' +\n `GTK, X11, and dbus are installed. Original errors: ${errors.join(' | ')}`\n );\n};\n\nconst callNative = <Result>(operation: () => Result): Result => {\n try {\n return operation();\n } catch (error) {\n throw normalizeNativeError(error);\n }\n};\n\n/////////////////////////////////////////////////////////////////////////////////////////\n\n/** Resolves an accessible id to a native element when it exists. */\nexport const nativeFindById = (\n processId: number,\n id: string\n): NativeElementHandle | undefined =>\n callNative(() => loadNativeAddon().findById(processId, id));\n\n/** Checks whether a GTK process has completed AT-SPI root/cache registration. */\nexport const nativeProcessAtspiReadiness = (\n processId: number\n): NativeAtspiReadiness =>\n callNative(() => loadNativeAddon().processAtspiReadiness(processId));\n\n/** Resolves an accessible id to a native element across all exposed processes. */\nexport const nativeFindAnyById = (\n id: string\n): NativeElementHandle | undefined =>\n callNative(() => loadNativeAddon().findAnyById(id));\n\n/** Sets text contents on the accessible with the given id. */\nexport const nativeSetTextById = (\n processId: number,\n id: string,\n text: string\n): void => {\n callNative(() => loadNativeAddon().setTextById(processId, id, text));\n};\n\n/** Executes the first action on the accessible with the given id. */\nexport const nativeClickById = (processId: number, id: string): void => {\n callNative(() => loadNativeAddon().clickById(processId, id));\n};\n\n/** Reads text from the accessible with the given id. */\nexport const nativeTextById = (processId: number, id: string): string =>\n callNative(() => loadNativeAddon().textById(processId, id));\n\n/** Captures real screen pixels for the accessible with the given id. */\nexport const nativeCaptureById = (\n processId: number,\n id: string\n): NativeCapture =>\n callNative(() => loadNativeAddon().captureById(processId, id));\n\n/** Counts top-level windows hosted by the process. */\nexport const nativeWindowCount = (processId: number): number =>\n callNative(() => loadNativeAddon().windowCount(processId));\n\n/** Resolves a top-level window index to an element handle when it exists. */\nexport const nativeWindowAt = (\n processId: number,\n index: number\n): NativeElementHandle | undefined =>\n callNative(() => loadNativeAddon().windowAt(processId, index));\n\n/** Counts direct children for an element handle. */\nexport const nativeChildCount = (element: NativeElementHandle): number =>\n callNative(() => loadNativeAddon().childCount(element));\n\n/** Resolves a direct child index to an element handle when it exists. */\nexport const nativeChildAt = (\n element: NativeElementHandle,\n index: number\n): NativeElementHandle | undefined =>\n callNative(() => loadNativeAddon().childAt(element, index));\n\n/** Counts selected children for a selectable element handle. */\nexport const nativeSelectedChildCount = (\n element: NativeElementHandle\n): number => callNative(() => loadNativeAddon().selectedChildCount(element));\n\n/** Resolves a selected child index to an element handle when it exists. */\nexport const nativeSelectedChildAt = (\n element: NativeElementHandle,\n index: number\n): NativeElementHandle | undefined =>\n callNative(() => loadNativeAddon().selectedChildAt(element, index));\n\n/** Reads whether a direct child is selected. */\nexport const nativeIsChildSelected = (\n element: NativeElementHandle,\n index: number\n): boolean =>\n callNative(() => loadNativeAddon().isChildSelected(element, index));\n\n/** Selects a direct child for a selectable element handle. */\nexport const nativeSelectChildAt = (\n element: NativeElementHandle,\n index: number\n): void => {\n callNative(() => loadNativeAddon().selectChildAt(element, index));\n};\n\n/** Deselects a direct child for a selectable element handle. */\nexport const nativeDeselectChildAt = (\n element: NativeElementHandle,\n index: number\n): void => {\n callNative(() => loadNativeAddon().deselectChildAt(element, index));\n};\n\n/** Selects all children for a selectable element handle. */\nexport const nativeSelectAllChildren = (element: NativeElementHandle): void => {\n callNative(() => loadNativeAddon().selectAllChildren(element));\n};\n\n/** Clears child selection for a selectable element handle. */\nexport const nativeClearSelection = (element: NativeElementHandle): void => {\n callNative(() => loadNativeAddon().clearSelection(element));\n};\n\n/** Counts table rows for a table element handle. */\nexport const nativeTableRowCount = (element: NativeElementHandle): number =>\n callNative(() => loadNativeAddon().tableRowCount(element));\n\n/** Counts table columns for a table element handle. */\nexport const nativeTableColumnCount = (element: NativeElementHandle): number =>\n callNative(() => loadNativeAddon().tableColumnCount(element));\n\n/** Resolves a table cell element handle by row and column when it exists. */\nexport const nativeTableCellAt = (\n element: NativeElementHandle,\n row: number,\n column: number\n): NativeElementHandle | undefined =>\n callNative(() => loadNativeAddon().tableCellAt(element, row, column));\n\n/** Reads selected table row indexes. */\nexport const nativeTableSelectedRows = (\n element: NativeElementHandle\n): number[] => callNative(() => loadNativeAddon().tableSelectedRows(element));\n\n/** Reads selected table column indexes. */\nexport const nativeTableSelectedColumns = (\n element: NativeElementHandle\n): number[] =>\n callNative(() => loadNativeAddon().tableSelectedColumns(element));\n\n/** Reads whether a table row is selected. */\nexport const nativeTableIsRowSelected = (\n element: NativeElementHandle,\n row: number\n): boolean =>\n callNative(() => loadNativeAddon().tableIsRowSelected(element, row));\n\n/** Reads whether a table column is selected. */\nexport const nativeTableIsColumnSelected = (\n element: NativeElementHandle,\n column: number\n): boolean =>\n callNative(() => loadNativeAddon().tableIsColumnSelected(element, column));\n\n/** Reads whether a table cell is selected. */\nexport const nativeTableIsCellSelected = (\n element: NativeElementHandle,\n row: number,\n column: number\n): boolean =>\n callNative(() => loadNativeAddon().tableIsCellSelected(element, row, column));\n\n/** Selects a table row. */\nexport const nativeTableSelectRow = (\n element: NativeElementHandle,\n row: number\n): void => {\n callNative(() => loadNativeAddon().tableSelectRow(element, row));\n};\n\n/** Deselects a table row. */\nexport const nativeTableDeselectRow = (\n element: NativeElementHandle,\n row: number\n): void => {\n callNative(() => loadNativeAddon().tableDeselectRow(element, row));\n};\n\n/** Selects a table column. */\nexport const nativeTableSelectColumn = (\n element: NativeElementHandle,\n column: number\n): void => {\n callNative(() => loadNativeAddon().tableSelectColumn(element, column));\n};\n\n/** Deselects a table column. */\nexport const nativeTableDeselectColumn = (\n element: NativeElementHandle,\n column: number\n): void => {\n callNative(() => loadNativeAddon().tableDeselectColumn(element, column));\n};\n\n/** Sets text contents on the accessible resolved by an element handle. */\nexport const nativeSetText = (\n element: NativeElementHandle,\n text: string\n): void => {\n callNative(() => loadNativeAddon().setText(element, text));\n};\n\n/** Executes the first action on the accessible resolved by an element handle. */\nexport const nativeClick = (element: NativeElementHandle): void => {\n callNative(() => loadNativeAddon().click(element));\n};\n\n/** Reads text from the accessible resolved by an element handle. */\nexport const nativeText = (element: NativeElementHandle): string =>\n callNative(() => loadNativeAddon().text(element));\n\n/** Reads value metadata from the accessible resolved by an element handle. */\nexport const nativeValueInfo = (\n element: NativeElementHandle\n): NativeValueInfo => callNative(() => loadNativeAddon().valueInfo(element));\n\n/** Reads image metadata from the accessible resolved by an element handle. */\nexport const nativeImageInfo = (\n element: NativeElementHandle\n): NativeImageInfo => callNative(() => loadNativeAddon().imageInfo(element));\n\n/** Sets a numeric value on the accessible resolved by an element handle. */\nexport const nativeSetValue = (\n element: NativeElementHandle,\n value: number\n): void => {\n callNative(() => loadNativeAddon().setValue(element, value));\n};\n\n/** Captures real screen pixels for the accessible resolved by an element handle. */\nexport const nativeCapture = (element: NativeElementHandle): NativeCapture =>\n callNative(() => loadNativeAddon().capture(element));\n\n/** Captures the full X11 root window currently addressed by DISPLAY. */\nexport const nativeCaptureScreen = (): NativeCapture =>\n callNative(() => loadNativeAddon().captureScreen());\n\n/** Captures real screen pixels for explicit screen-relative bounds. */\nexport const nativeCaptureBounds = (\n bounds: NativeCaptureBounds\n): NativeCapture =>\n callNative(() =>\n loadNativeAddon().captureBounds(\n bounds.x,\n bounds.y,\n bounds.width,\n bounds.height\n )\n );\n\n/** Reads AT-SPI metadata for the accessible resolved by an element handle. */\nexport const nativeElementInfo = (\n element: NativeElementHandle\n): NativeElementInfo =>\n callNative(() => loadNativeAddon().elementInfo(element));\n\n/** Lists StatusNotifier tray items owned by the process. */\nexport const nativeTrayItems = (processId: number): NativeTrayItem[] =>\n callNative(() => loadNativeAddon().trayItems(processId));\n\n/** Runs the test tray host until the process is terminated. */\nexport const nativeRunTrayHost = (): void => {\n callNative(() => loadNativeAddon().runTrayHost());\n};\n"],"names":["require","createRequire","resolve","dirname","fileURLToPath","existsSync","packageVersion"],"mappings":"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"}
|
package/dist/native.d.ts
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* name: gestament
|
|
3
|
-
* version: 0.
|
|
3
|
+
* version: 0.2.0
|
|
4
4
|
* description: TypeScript based test driver for GTK
|
|
5
5
|
* author: Kouji Matsui (@kekyo@mi.kekyo.net)
|
|
6
6
|
* license: MIT
|
|
7
7
|
* repository.url: https://github.com/kekyo/gestament.git
|
|
8
|
-
* git.commit.hash:
|
|
8
|
+
* git.commit.hash: 82eaccb340f7304524549a1f95888845deb4a156
|
|
9
9
|
*/
|
|
10
10
|
|
|
11
11
|
export interface NativeCaptureBounds {
|
package/dist/testing.d.ts
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* name: gestament
|
|
3
|
-
* version: 0.
|
|
3
|
+
* version: 0.2.0
|
|
4
4
|
* description: TypeScript based test driver for GTK
|
|
5
5
|
* author: Kouji Matsui (@kekyo@mi.kekyo.net)
|
|
6
6
|
* license: MIT
|
|
7
7
|
* repository.url: https://github.com/kekyo/gestament.git
|
|
8
|
-
* git.commit.hash:
|
|
8
|
+
* git.commit.hash: 82eaccb340f7304524549a1f95888845deb4a156
|
|
9
9
|
*/
|
|
10
10
|
|
|
11
11
|
import { GtkCapture, Releasable } from './types.js';
|
package/dist/tray.d.ts
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* name: gestament
|
|
3
|
-
* version: 0.
|
|
3
|
+
* version: 0.2.0
|
|
4
4
|
* description: TypeScript based test driver for GTK
|
|
5
5
|
* author: Kouji Matsui (@kekyo@mi.kekyo.net)
|
|
6
6
|
* license: MIT
|
|
7
7
|
* repository.url: https://github.com/kekyo/gestament.git
|
|
8
|
-
* git.commit.hash:
|
|
8
|
+
* git.commit.hash: 82eaccb340f7304524549a1f95888845deb4a156
|
|
9
9
|
*/
|
|
10
10
|
|
|
11
11
|
import { NativeTrayItem } from './native.js';
|
package/dist/types.d.ts
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* name: gestament
|
|
3
|
-
* version: 0.
|
|
3
|
+
* version: 0.2.0
|
|
4
4
|
* description: TypeScript based test driver for GTK
|
|
5
5
|
* author: Kouji Matsui (@kekyo@mi.kekyo.net)
|
|
6
6
|
* license: MIT
|
|
7
7
|
* repository.url: https://github.com/kekyo/gestament.git
|
|
8
|
-
* git.commit.hash:
|
|
8
|
+
* git.commit.hash: 82eaccb340f7304524549a1f95888845deb4a156
|
|
9
9
|
*/
|
|
10
10
|
|
|
11
11
|
/** Error code values reported by the GTK automation library. */
|
|
@@ -842,6 +842,26 @@ export interface GtkApp extends Releasable, GtkCapturable {
|
|
|
842
842
|
* @returns A promise that resolves to the matching element.
|
|
843
843
|
*/
|
|
844
844
|
readonly getById: (id: string) => Promise<GtkWidgetElement>;
|
|
845
|
+
/**
|
|
846
|
+
* Waits for an accessible path and returns an element when it exists.
|
|
847
|
+
*
|
|
848
|
+
* @param path - Accessible id followed by zero or more child indexes separated by `.`, `:`, `;`, or `,`.
|
|
849
|
+
* @returns A promise that resolves to the matching element, or undefined when it is not found before timeout.
|
|
850
|
+
* @remarks
|
|
851
|
+
* For example, `main_window.0.2` resolves `getById('main_window')`,
|
|
852
|
+
* then `childAt(0)`, then `childAt(2)`.
|
|
853
|
+
*/
|
|
854
|
+
readonly findByPath: (path: string) => Promise<GtkWidgetElement | undefined>;
|
|
855
|
+
/**
|
|
856
|
+
* Waits for an accessible path and rejects when it does not exist.
|
|
857
|
+
*
|
|
858
|
+
* @param path - Accessible id followed by zero or more child indexes separated by `.`, `:`, `;`, or `,`.
|
|
859
|
+
* @returns A promise that resolves to the matching element.
|
|
860
|
+
* @remarks
|
|
861
|
+
* For example, `main_window.0.2` resolves `getById('main_window')`,
|
|
862
|
+
* then `childAt(0)`, then `childAt(2)`.
|
|
863
|
+
*/
|
|
864
|
+
readonly getByPath: (path: string) => Promise<GtkWidgetElement>;
|
|
845
865
|
/**
|
|
846
866
|
* Resolves a top-level window by AT-SPI traversal order.
|
|
847
867
|
*
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "gestament",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.2.0",
|
|
4
4
|
"description": "TypeScript based test driver for GTK",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"test",
|
|
@@ -75,18 +75,18 @@
|
|
|
75
75
|
},
|
|
76
76
|
"git": {
|
|
77
77
|
"tags": [
|
|
78
|
-
"0.
|
|
78
|
+
"0.2.0"
|
|
79
79
|
],
|
|
80
80
|
"branches": [
|
|
81
81
|
"main"
|
|
82
82
|
],
|
|
83
83
|
"commit": {
|
|
84
|
-
"hash": "
|
|
85
|
-
"shortHash": "
|
|
86
|
-
"date": "2026-05-
|
|
87
|
-
"message": "
|
|
84
|
+
"hash": "82eaccb340f7304524549a1f95888845deb4a156",
|
|
85
|
+
"shortHash": "82eaccb",
|
|
86
|
+
"date": "2026-05-12T09:52:32+09:00",
|
|
87
|
+
"message": "Merge branch 'develop'"
|
|
88
88
|
},
|
|
89
|
-
"version": "0.
|
|
89
|
+
"version": "0.2.0"
|
|
90
90
|
},
|
|
91
|
-
"buildDate": "2026-05-
|
|
91
|
+
"buildDate": "2026-05-12T10:44:41+09:00"
|
|
92
92
|
}
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|