This commit is contained in:
2025-12-05 19:57:29 +08:00
parent fc032b6040
commit b2b942ab1b
5 changed files with 74 additions and 44 deletions

View File

@@ -1,6 +1,6 @@
{
"name": "@kevisual/hot-api",
"version": "0.0.1",
"version": "0.0.2",
"description": "",
"main": "mod.ts",
"basename": "/root/hot-api",
@@ -22,6 +22,9 @@
"dist",
"src"
],
"publishConfig": {
"access": "public"
},
"keywords": [],
"author": "abearxiong <xiongxiao@xiongxiao.me> (https://www.xiongxiao.me)",
"license": "MIT",
@@ -32,7 +35,7 @@
"@kevisual/query": "^0.0.30",
"@kevisual/router": "0.0.33",
"@kevisual/use-config": "^1.0.21",
"@nut-tree/nut-js": "^4.2.0",
"@nut-tree-fork/nut-js": "^4.2.6",
"archiver": "^7.0.1",
"dayjs": "^1.11.19",
"es-toolkit": "^1.42.0",

99
pnpm-lock.yaml generated
View File

@@ -20,9 +20,9 @@ importers:
'@kevisual/use-config':
specifier: ^1.0.21
version: 1.0.21(dotenv@16.6.1)
'@nut-tree/nut-js':
specifier: ^4.2.0
version: 4.2.0
'@nut-tree-fork/nut-js':
specifier: ^4.2.6
version: 4.2.6
archiver:
specifier: ^7.0.1
version: 7.0.1
@@ -246,46 +246,46 @@ packages:
peerDependencies:
dotenv: ^17
'@nut-tree/default-clipboard-provider@4.2.0':
resolution: {integrity: sha512-O9EXd7F+iuHcm1XaIT1wNa34WYQDxriKYwUhyofvJpl0fJ0ou3u+nxHITmsr1zoBoERaOhG+PT3MSSNsQ+rTug==}
peerDependencies:
'@nut-tree/nut-js': ^3
'@nut-tree-fork/default-clipboard-provider@4.2.6':
resolution: {integrity: sha512-Hzqj57rheIMGtsS4zK4//kOhaX5FxMluOiz+4TVaHXx+idZS/bPhZwd8e6o1w1GT0PVJOUIP+4CdUe//k5VRig==}
'@nut-tree/libnut-darwin@2.7.1':
resolution: {integrity: sha512-yJKwAeWuORi+EN4tWkJj/9L5f/MO6FT7ida0CSeN8AT4KppCAsXdkLcQjirFTuWrCVvbkizVTSE3d/J7rVi0kw==}
'@nut-tree-fork/libnut-darwin@2.7.5':
resolution: {integrity: sha512-LbqtPtMPTJUcg4XoPP2jsU1wc8flBcGyKTerKsIfK9cD7nBHROnO0QksbrsbSWEpLym8T8fRtuU7XEY83l6Z2Q==}
engines: {node: '>=10.15.3'}
cpu: [x64, arm64]
os: [darwin, linux, win32]
'@nut-tree/libnut-linux@2.7.1':
resolution: {integrity: sha512-ZAGoKL1ugy/2fibseOGhyZkthCdBRuTqf2fgHZgum0DQQAZCCNis+mySiTj4p+Xqeowe5t0L0Pn279embjz4bw==}
'@nut-tree-fork/libnut-linux@2.7.5':
resolution: {integrity: sha512-uxaXEcRKnFObAljsoR6tLOBUU1dJ2sctloG6gFgCBGN7+k6Jdv6jZfOuNjd/fpdq2C5WPMm0rtn9EE7h5J3Jcg==}
engines: {node: '>=10.15.3'}
cpu: [x64, arm64]
os: [darwin, linux, win32]
'@nut-tree/libnut-win32@2.7.1':
resolution: {integrity: sha512-QmaQt1U7jXNjhqb10x6Ziijbhvqn2o50WgADZMM7mADVc5iDf3Xhd9yA1TmiGbgfqxkRPq9HpuInoYBz0U234g==}
'@nut-tree-fork/libnut-win32@2.7.5':
resolution: {integrity: sha512-yqC87zvmFcDPwFrRU40DYhN0xmEVM3aSkOuyF0IX+y1x+HWSu/i0PNklATpPBhGid3QVb/TOHuVoaraMrUFCNw==}
engines: {node: '>=10.15.3'}
cpu: [x64, arm64]
os: [darwin, linux, win32]
'@nut-tree/libnut@4.2.0':
resolution: {integrity: sha512-rXrxxFs9TBAIsOHhO699y58J7kYvln/8dlq/BIPc9LcNEVthf/5Yp64acSTaZ/sjlWNboDxIBFHTWapxWHTB6w==}
'@nut-tree-fork/libnut@4.2.6':
resolution: {integrity: sha512-2FCiTBokMGrMl4eL/trEIO+mtpkXpdPHoVKdTBmW8UBIbhCbrCKmnXb2skWGfVs+U3q7o5EYDjVTNUYaUWbaxQ==}
engines: {node: '>=10.15.3'}
peerDependencies:
'@nut-tree/nut-js': ^3
'@nut-tree/nut-js@4.2.0':
resolution: {integrity: sha512-/xXsE7Z6+lOiltZgNWy6uPgiReSabgEYiTJFG2VqA9kRELtoiTyLM8ySds78zpPdTYYaL/Usi05+u54pIXnqQA==}
'@nut-tree-fork/node-mac-permissions@2.2.1':
resolution: {integrity: sha512-iSfOTDiBZ7VDa17PoQje5rUaZSvSAaq+XEyXCmhPuQwV5XuNU02Grv6oFhsdpz89w7+UvB/8KX/cX5IYQ5o2Bw==}
os: [darwin]
'@nut-tree-fork/nut-js@4.2.6':
resolution: {integrity: sha512-aI/WCX7gE1HFGPH3EZP/UWqpNMM1NMoM/EkXqp7pKMgXFCi8e5+o5p+jd/QOYpmALv9bQg7+s69nI7FONbMqDg==}
engines: {node: '>=16'}
cpu: [x64, arm64]
os: [linux, darwin, win32]
'@nut-tree/provider-interfaces@4.2.0':
resolution: {integrity: sha512-hx5Lc9RwkWmP92BxBc+SCL3/hhR4a95xj5QP2xhsvrgnGyUceRGgcr47kJRx8GL8qmrm/e9on0cZAG2SfSD30A==}
'@nut-tree-fork/provider-interfaces@4.2.6':
resolution: {integrity: sha512-brtRegDkLSV0sa5DUAigjWf6hCoamBNPb/hKK9AQlW+j3BxQ/8djaEdEB2cihqUh1ZjEtgPyXRqpCWSdKCX68A==}
'@nut-tree/shared@4.2.0':
resolution: {integrity: sha512-XAM/Ou2OY+Bp36HBMr31E50jgWZZuImlJQJcevmuXIq+x5ssf76uEewyIT2DyxqT1KUUFY/d+JD6SoY7Ox4zlg==}
'@nut-tree-fork/shared@4.2.6':
resolution: {integrity: sha512-xZaa0YtJt/DDDq/i1vZkabjq8HOWzfhXieMai61cMbYD11J6VhAfhV23ZtQEM02WG7nc2LKjl4UwRnQCteikwA==}
'@pkgjs/parseargs@0.11.0':
resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==}
@@ -659,6 +659,9 @@ packages:
node-abort-controller@3.1.1:
resolution: {integrity: sha512-AGK2yQKIjRuqnc6VkX2Xj5d+QW8xZ87pa1UK6yA6ouUyuxfHuMP6umE5QK7UmTeOAymo+Zx1Fxiuw9rVx8taHQ==}
node-addon-api@5.0.0:
resolution: {integrity: sha512-CvkDw2OEnme7ybCykJpVcKH+uAOLV2qLqiyla128dN9TkEWfrYmxG6C2boDe5KcNQqZF3orkqzGgOMvZ/JNekA==}
node-fetch@2.7.0:
resolution: {integrity: sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==}
engines: {node: 4.x || >=6.0.0}
@@ -734,6 +737,7 @@ packages:
phin@3.7.1:
resolution: {integrity: sha512-GEazpTWwTZaEQ9RhL7Nyz0WwqilbqgLahDM3D0hxWwmVDI52nXEybHqiN6/elwpkJBhcuj+WbBu+QfT0uhPGfQ==}
engines: {node: '>= 8'}
deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.
pixelmatch@4.0.2:
resolution: {integrity: sha512-J8B6xqiO37sU/gkcMglv6h5Jbd9xNER7aHzpfRdNmV4IbQBzBpe4l9XmbG+xPF/znacgu2jfEw+wHffaq/YkXA==}
@@ -1207,50 +1211,60 @@ snapshots:
'@kevisual/load': 0.0.6
dotenv: 16.6.1
'@nut-tree/default-clipboard-provider@4.2.0(@nut-tree/nut-js@4.2.0)':
'@nut-tree-fork/default-clipboard-provider@4.2.6':
dependencies:
'@nut-tree/nut-js': 4.2.0
clipboardy: 2.3.0
'@nut-tree/libnut-darwin@2.7.1':
'@nut-tree-fork/libnut-darwin@2.7.5':
dependencies:
bindings: 1.5.0
optionalDependencies:
'@nut-tree-fork/node-mac-permissions': 2.2.1
'@nut-tree/libnut-linux@2.7.1':
'@nut-tree-fork/libnut-linux@2.7.5':
dependencies:
bindings: 1.5.0
optionalDependencies:
'@nut-tree-fork/node-mac-permissions': 2.2.1
'@nut-tree/libnut-win32@2.7.1':
'@nut-tree-fork/libnut-win32@2.7.5':
dependencies:
bindings: 1.5.0
optionalDependencies:
'@nut-tree-fork/node-mac-permissions': 2.2.1
'@nut-tree/libnut@4.2.0(@nut-tree/nut-js@4.2.0)':
'@nut-tree-fork/libnut@4.2.6':
dependencies:
'@nut-tree/libnut-darwin': 2.7.1
'@nut-tree/libnut-linux': 2.7.1
'@nut-tree/libnut-win32': 2.7.1
'@nut-tree/nut-js': 4.2.0
'@nut-tree-fork/libnut-darwin': 2.7.5
'@nut-tree-fork/libnut-linux': 2.7.5
'@nut-tree-fork/libnut-win32': 2.7.5
'@nut-tree/nut-js@4.2.0':
'@nut-tree-fork/node-mac-permissions@2.2.1':
dependencies:
'@nut-tree/default-clipboard-provider': 4.2.0(@nut-tree/nut-js@4.2.0)
'@nut-tree/libnut': 4.2.0(@nut-tree/nut-js@4.2.0)
'@nut-tree/provider-interfaces': 4.2.0
'@nut-tree/shared': 4.2.0
bindings: 1.5.0
node-addon-api: 5.0.0
optional: true
'@nut-tree-fork/nut-js@4.2.6':
dependencies:
'@nut-tree-fork/default-clipboard-provider': 4.2.6
'@nut-tree-fork/libnut': 4.2.6
'@nut-tree-fork/provider-interfaces': 4.2.6
'@nut-tree-fork/shared': 4.2.6
jimp: 0.22.10
node-abort-controller: 3.1.1
transitivePeerDependencies:
- debug
- encoding
'@nut-tree/provider-interfaces@4.2.0':
'@nut-tree-fork/provider-interfaces@4.2.6':
dependencies:
'@nut-tree/shared': 4.2.0
'@nut-tree-fork/shared': 4.2.6
transitivePeerDependencies:
- debug
- encoding
'@nut-tree/shared@4.2.0':
'@nut-tree-fork/shared@4.2.6':
dependencies:
jimp: 0.22.10
node-abort-controller: 3.1.1
@@ -1619,6 +1633,9 @@ snapshots:
node-abort-controller@3.1.1: {}
node-addon-api@5.0.0:
optional: true
node-fetch@2.7.0:
dependencies:
whatwg-url: 5.0.0

View File

@@ -1,4 +1,4 @@
import { keyboard, Key } from "@nut-tree/nut-js";
import { keyboard, Key } from "@nut-tree-fork/nut-js";
/**
* 控制功能部分的案件映射

View File

@@ -0,0 +1,5 @@
相关资料
- @nut-tree-fork/nut-js
- @jitsi/robotjs
- screenshot-desktop
- iohook

5
src/test/common.ts Normal file
View File

@@ -0,0 +1,5 @@
import { Hotkeys } from "@/hot-api/hotkeys/index.js";
const hotkeys = new Hotkeys();
await hotkeys.pressHotkey({ hotkey: 'ctrl+d' })