@agent-infra/browser 0.1.6 → 0.2.0-alpha.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +35 -52
- package/README.zh-CN.md +57 -0
- package/dist/actions/index.d.ts +3 -0
- package/dist/actions/index.d.ts.map +1 -0
- package/dist/actions/index.js +46 -0
- package/dist/actions/index.js.map +1 -0
- package/dist/actions/index.mjs +7 -0
- package/dist/actions/key-map.d.ts +28 -0
- package/dist/actions/key-map.d.ts.map +1 -0
- package/dist/actions/key-map.js +409 -0
- package/dist/actions/key-map.js.map +1 -0
- package/dist/actions/key-map.mjs +369 -0
- package/dist/actions/key-map.mjs.map +1 -0
- package/dist/actions/keyboard.d.ts +21 -0
- package/dist/actions/keyboard.d.ts.map +1 -0
- package/dist/actions/keyboard.js +196 -0
- package/dist/actions/keyboard.js.map +1 -0
- package/dist/actions/keyboard.mjs +152 -0
- package/dist/actions/keyboard.mjs.map +1 -0
- package/dist/actions/keyboard.test.d.ts +2 -0
- package/dist/actions/keyboard.test.d.ts.map +1 -0
- package/dist/actions/mouse.d.ts +19 -0
- package/dist/actions/mouse.d.ts.map +1 -0
- package/dist/actions/mouse.js +173 -0
- package/dist/actions/mouse.js.map +1 -0
- package/dist/actions/mouse.mjs +136 -0
- package/dist/actions/mouse.mjs.map +1 -0
- package/dist/browser/base.d.ts +47 -0
- package/dist/browser/base.d.ts.map +1 -0
- package/dist/browser/base.js +156 -0
- package/dist/browser/base.js.map +1 -0
- package/dist/browser/base.mjs +122 -0
- package/dist/browser/base.mjs.map +1 -0
- package/dist/browser/browser.d.ts +23 -0
- package/dist/browser/browser.d.ts.map +1 -0
- package/dist/browser/browser.js +183 -0
- package/dist/browser/browser.js.map +1 -0
- package/dist/browser/browser.mjs +149 -0
- package/dist/browser/browser.mjs.map +1 -0
- package/dist/env.d.ts +4 -0
- package/dist/env.d.ts.map +1 -0
- package/dist/env.js +96 -0
- package/dist/env.js.map +1 -0
- package/dist/env.mjs +62 -0
- package/dist/env.mjs.map +1 -0
- package/dist/index.node.d.ts +7 -0
- package/dist/index.node.d.ts.map +1 -0
- package/dist/index.node.js +106 -0
- package/dist/index.node.js.map +1 -0
- package/dist/index.node.mjs +10 -0
- package/dist/index.web.d.ts +7 -0
- package/dist/index.web.d.ts.map +1 -0
- package/dist/{index.js → index.web.js} +33 -20
- package/dist/index.web.js.map +1 -0
- package/dist/index.web.mjs +10 -0
- package/dist/injected-script/index.d.ts +3 -0
- package/dist/injected-script/index.d.ts.map +1 -0
- package/dist/injected-script/index.js +46 -0
- package/dist/injected-script/index.js.map +1 -0
- package/dist/injected-script/index.mjs +7 -0
- package/dist/injected-script/visibility.d.ts +2 -0
- package/dist/injected-script/visibility.d.ts.map +1 -0
- package/dist/injected-script/visibility.js +66 -0
- package/dist/injected-script/visibility.js.map +1 -0
- package/dist/injected-script/visibility.mjs +32 -0
- package/dist/injected-script/visibility.mjs.map +1 -0
- package/dist/injected-script/webdriver.d.ts +2 -0
- package/dist/injected-script/webdriver.d.ts.map +1 -0
- package/dist/injected-script/webdriver.js +71 -0
- package/dist/injected-script/webdriver.js.map +1 -0
- package/dist/injected-script/webdriver.mjs +37 -0
- package/dist/injected-script/webdriver.mjs.map +1 -0
- package/dist/polyfills/index.d.ts +2 -0
- package/dist/polyfills/index.d.ts.map +1 -0
- package/dist/polyfills/index.js +66 -0
- package/dist/polyfills/index.js.map +1 -0
- package/dist/polyfills/index.mjs +5 -0
- package/dist/polyfills/withResolvers.d.ts +2 -0
- package/dist/polyfills/withResolvers.d.ts.map +1 -0
- package/dist/polyfills/withResolvers.js +37 -0
- package/dist/polyfills/withResolvers.js.map +1 -0
- package/dist/polyfills/withResolvers.mjs +19 -0
- package/dist/polyfills/withResolvers.mjs.map +1 -0
- package/dist/tabs/dialog.d.ts +14 -0
- package/dist/tabs/dialog.d.ts.map +1 -0
- package/dist/tabs/dialog.js +175 -0
- package/dist/tabs/dialog.js.map +1 -0
- package/dist/tabs/dialog.mjs +141 -0
- package/dist/tabs/dialog.mjs.map +1 -0
- package/dist/tabs/index.d.ts +3 -0
- package/dist/tabs/index.d.ts.map +1 -0
- package/dist/tabs/index.js +46 -0
- package/dist/tabs/index.js.map +1 -0
- package/dist/tabs/index.mjs +7 -0
- package/dist/tabs/tab.d.ts +50 -0
- package/dist/tabs/tab.d.ts.map +1 -0
- package/dist/tabs/tab.js +579 -0
- package/dist/tabs/tab.js.map +1 -0
- package/dist/tabs/tab.mjs +545 -0
- package/dist/tabs/tab.mjs.map +1 -0
- package/dist/tabs/tabs.d.ts +21 -0
- package/dist/tabs/tabs.d.ts.map +1 -0
- package/dist/tabs/tabs.js +458 -0
- package/dist/tabs/tabs.js.map +1 -0
- package/dist/tabs/tabs.mjs +424 -0
- package/dist/tabs/tabs.mjs.map +1 -0
- package/dist/types/actions.d.ts +26 -0
- package/dist/types/actions.d.ts.map +1 -0
- package/dist/types/actions.js +24 -0
- package/dist/types/actions.js.map +1 -0
- package/dist/types/browser.d.ts +7 -0
- package/dist/types/browser.d.ts.map +1 -0
- package/dist/types/browser.js +24 -0
- package/dist/types/browser.js.map +1 -0
- package/dist/types/browser.mjs +4 -0
- package/dist/types/dialog.d.ts +7 -0
- package/dist/types/dialog.d.ts.map +1 -0
- package/dist/types/dialog.js +24 -0
- package/dist/types/dialog.js.map +1 -0
- package/dist/types/dialog.mjs +4 -0
- package/dist/types/env.d.ts +8 -0
- package/dist/types/env.d.ts.map +1 -0
- package/dist/{types.js → types/env.js} +1 -1
- package/dist/types/env.js.map +1 -0
- package/dist/types/env.mjs +4 -0
- package/dist/types/index.d.ts +6 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +102 -0
- package/dist/types/index.js.map +1 -0
- package/dist/types/index.mjs +9 -0
- package/dist/types/tabs.d.ts +98 -0
- package/dist/types/tabs.d.ts.map +1 -0
- package/dist/types/tabs.js +48 -0
- package/dist/types/tabs.js.map +1 -0
- package/dist/types/tabs.mjs +14 -0
- package/dist/types/tabs.mjs.map +1 -0
- package/dist/utils/iife.d.ts +2 -0
- package/dist/utils/iife.d.ts.map +1 -0
- package/dist/utils/iife.js +48 -0
- package/dist/utils/iife.js.map +1 -0
- package/dist/utils/iife.mjs +14 -0
- package/dist/utils/iife.mjs.map +1 -0
- package/dist/utils/index.d.ts +4 -0
- package/dist/utils/index.d.ts.map +1 -0
- package/dist/utils/index.js +50 -0
- package/dist/utils/index.js.map +1 -0
- package/dist/utils/index.mjs +8 -0
- package/dist/utils/mutex.d.ts +21 -0
- package/dist/utils/mutex.d.ts.map +1 -0
- package/dist/utils/mutex.js +133 -0
- package/dist/utils/mutex.js.map +1 -0
- package/dist/utils/mutex.mjs +99 -0
- package/dist/utils/mutex.mjs.map +1 -0
- package/dist/utils/url.d.ts +7 -0
- package/dist/utils/url.d.ts.map +1 -0
- package/dist/utils/url.js +76 -0
- package/dist/utils/url.js.map +1 -0
- package/dist/utils/url.mjs +42 -0
- package/dist/utils/url.mjs.map +1 -0
- package/package.json +21 -13
- package/dist/base-browser.d.ts +0 -94
- package/dist/base-browser.d.ts.map +0 -1
- package/dist/base-browser.js +0 -189
- package/dist/base-browser.js.map +0 -1
- package/dist/base-browser.mjs +0 -155
- package/dist/base-browser.mjs.map +0 -1
- package/dist/index.d.ts +0 -15
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/index.mjs +0 -8
- package/dist/local-browser.d.ts +0 -19
- package/dist/local-browser.d.ts.map +0 -1
- package/dist/local-browser.js +0 -134
- package/dist/local-browser.js.map +0 -1
- package/dist/local-browser.mjs +0 -100
- package/dist/local-browser.mjs.map +0 -1
- package/dist/remote-browser.d.ts +0 -49
- package/dist/remote-browser.d.ts.map +0 -1
- package/dist/remote-browser.js +0 -89
- package/dist/remote-browser.js.map +0 -1
- package/dist/remote-browser.mjs +0 -55
- package/dist/remote-browser.mjs.map +0 -1
- package/dist/types.d.ts +0 -158
- package/dist/types.d.ts.map +0 -1
- package/dist/types.js.map +0 -1
- /package/dist/{types.mjs → types/actions.mjs} +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"actions/key-map.js","sources":["webpack://@agent-infra/browser/webpack/runtime/define_property_getters","webpack://@agent-infra/browser/webpack/runtime/has_own_property","webpack://@agent-infra/browser/webpack/runtime/make_namespace_object","webpack://@agent-infra/browser/./src/actions/key-map.ts"],"sourcesContent":["__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n Object.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n }\n }\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","/**\n * The following code is modified based on\n * https://github.com/puppeteer/puppeteer/blob/main/packages/puppeteer-core/src/common/USKeyboardLayout.ts\n *\n * Copyright 2017 Google Inc.\n * SPDX-License-Identifier: Apache-2.0\n * https://github.com/puppeteer/puppeteer/blob/main/LICENSE\n */\nimport type { KeyInput } from 'puppeteer-core';\n\n/**\n * Only adapt for common macOS system hotkeys\n *\n * See issues:\n * - https://github.com/bytedance/UI-TARS-desktop/pull/560\n *\n * References:\n * - Mac shortcuts list: https://support.apple.com/zh-cn/102650\n * - Chrome: https://support.google.com/chrome/answer/157179\n * - CDP: https://chromedevtools.github.io/devtools-protocol/tot/Input/#method-dispatchKeyEvent\n * - Commands: https://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/renderer/core/editing/commands/editor_command_names.h\n */\nexport const MAC_SYSTEM_HOTKEY_MAP = new Map<\n string,\n { key: KeyInput; commands: string }\n>([\n ['CorM+A', { key: 'KeyA', commands: 'SelectAll' }],\n ['CorM+KeyA', { key: 'KeyA', commands: 'SelectAll' }],\n\n ['CorM+X', { key: 'KeyX', commands: 'Cut' }],\n ['CorM+KeyX', { key: 'KeyX', commands: 'Cut' }],\n\n ['CorM+C', { key: 'KeyC', commands: 'Copy' }],\n ['CorM+KeyC', { key: 'KeyC', commands: 'Copy' }],\n\n ['CorM+V', { key: 'KeyV', commands: 'Paste' }],\n ['CorM+KeyV', { key: 'KeyV', commands: 'Paste' }],\n\n ['CorM+Z', { key: 'KeyZ', commands: 'Undo' }],\n ['CorM+KeyZ', { key: 'KeyZ', commands: 'Undo' }],\n\n ['CorM+Y', { key: 'KeyY', commands: 'Redo' }],\n ['CorM+KeyY', { key: 'KeyY', commands: 'Redo' }],\n ['CorM+Shift+Z', { key: 'KeyZ', commands: 'Redo' }],\n ['CorM+Shift+KeyZ', { key: 'KeyZ', commands: 'Redo' }],\n ['Shift+CorM+Z', { key: 'KeyZ', commands: 'Redo' }],\n ['Shift+CorM+KeyZ', { key: 'KeyZ', commands: 'Redo' }],\n]);\n\nexport const KEY_ABBR_TO_STANDARD_MAP: Readonly<Record<string, KeyInput>> = {\n // modifier keys\n ctrl: 'Control',\n cmd: 'Meta', // macOS only\n command: 'Meta', // macOS only\n opt: 'Alt', // macOS only\n option: 'Alt', // macOS only\n // arraw keys\n up: 'ArrowUp',\n down: 'ArrowDown',\n left: 'ArrowLeft',\n right: 'ArrowRight',\n // others\n esc: 'Escape',\n del: 'Delete',\n ins: 'Insert',\n pgup: 'PageUp',\n pgdown: 'PageDown',\n return: 'Enter',\n};\n\n// Auto-generated form puppeteer-core/src/common/USKeyboardLayout.ts _keyDefinitions\nexport const KEY_LOW_TO_STANDARD_MAP: Readonly<Record<string, KeyInput>> = {\n '0': '0',\n '1': '1',\n '2': '2',\n '3': '3',\n '4': '4',\n '5': '5',\n '6': '6',\n '7': '7',\n '8': '8',\n '9': '9',\n power: 'Power',\n eject: 'Eject',\n abort: 'Abort',\n help: 'Help',\n backspace: 'Backspace',\n tab: 'Tab',\n numpad5: 'Numpad5',\n numpadenter: 'NumpadEnter',\n enter: 'Enter',\n '\\r': '\\r',\n '\\n': '\\n',\n shiftleft: 'ShiftLeft',\n shiftright: 'ShiftRight',\n controlleft: 'ControlLeft',\n controlright: 'ControlRight',\n altleft: 'AltLeft',\n altright: 'AltRight',\n pause: 'Pause',\n capslock: 'CapsLock',\n escape: 'Escape',\n convert: 'Convert',\n nonconvert: 'NonConvert',\n space: 'Space',\n numpad9: 'Numpad9',\n pageup: 'PageUp',\n numpad3: 'Numpad3',\n pagedown: 'PageDown',\n end: 'End',\n numpad1: 'Numpad1',\n home: 'Home',\n numpad7: 'Numpad7',\n arrowleft: 'ArrowLeft',\n numpad4: 'Numpad4',\n numpad8: 'Numpad8',\n arrowup: 'ArrowUp',\n arrowright: 'ArrowRight',\n numpad6: 'Numpad6',\n numpad2: 'Numpad2',\n arrowdown: 'ArrowDown',\n select: 'Select',\n open: 'Open',\n printscreen: 'PrintScreen',\n insert: 'Insert',\n numpad0: 'Numpad0',\n delete: 'Delete',\n numpaddecimal: 'NumpadDecimal',\n digit0: 'Digit0',\n digit1: 'Digit1',\n digit2: 'Digit2',\n digit3: 'Digit3',\n digit4: 'Digit4',\n digit5: 'Digit5',\n digit6: 'Digit6',\n digit7: 'Digit7',\n digit8: 'Digit8',\n digit9: 'Digit9',\n keya: 'KeyA',\n keyb: 'KeyB',\n keyc: 'KeyC',\n keyd: 'KeyD',\n keye: 'KeyE',\n keyf: 'KeyF',\n keyg: 'KeyG',\n keyh: 'KeyH',\n keyi: 'KeyI',\n keyj: 'KeyJ',\n keyk: 'KeyK',\n keyl: 'KeyL',\n keym: 'KeyM',\n keyn: 'KeyN',\n keyo: 'KeyO',\n keyp: 'KeyP',\n keyq: 'KeyQ',\n keyr: 'KeyR',\n keys: 'KeyS',\n keyt: 'KeyT',\n keyu: 'KeyU',\n keyv: 'KeyV',\n keyw: 'KeyW',\n keyx: 'KeyX',\n keyy: 'KeyY',\n keyz: 'KeyZ',\n metaleft: 'MetaLeft',\n metaright: 'MetaRight',\n contextmenu: 'ContextMenu',\n numpadmultiply: 'NumpadMultiply',\n numpadadd: 'NumpadAdd',\n numpadsubtract: 'NumpadSubtract',\n numpaddivide: 'NumpadDivide',\n f1: 'F1',\n f2: 'F2',\n f3: 'F3',\n f4: 'F4',\n f5: 'F5',\n f6: 'F6',\n f7: 'F7',\n f8: 'F8',\n f9: 'F9',\n f10: 'F10',\n f11: 'F11',\n f12: 'F12',\n f13: 'F13',\n f14: 'F14',\n f15: 'F15',\n f16: 'F16',\n f17: 'F17',\n f18: 'F18',\n f19: 'F19',\n f20: 'F20',\n f21: 'F21',\n f22: 'F22',\n f23: 'F23',\n f24: 'F24',\n numlock: 'NumLock',\n scrolllock: 'ScrollLock',\n audiovolumemute: 'AudioVolumeMute',\n audiovolumedown: 'AudioVolumeDown',\n audiovolumeup: 'AudioVolumeUp',\n mediatracknext: 'MediaTrackNext',\n mediatrackprevious: 'MediaTrackPrevious',\n mediastop: 'MediaStop',\n mediaplaypause: 'MediaPlayPause',\n semicolon: 'Semicolon',\n equal: 'Equal',\n numpadequal: 'NumpadEqual',\n comma: 'Comma',\n minus: 'Minus',\n period: 'Period',\n slash: 'Slash',\n backquote: 'Backquote',\n bracketleft: 'BracketLeft',\n backslash: 'Backslash',\n bracketright: 'BracketRight',\n quote: 'Quote',\n altgraph: 'AltGraph',\n props: 'Props',\n cancel: 'Cancel',\n clear: 'Clear',\n shift: 'Shift',\n control: 'Control',\n alt: 'Alt',\n accept: 'Accept',\n modechange: 'ModeChange',\n ' ': ' ',\n print: 'Print',\n execute: 'Execute',\n '\\u0000': '\\u0000',\n a: 'A',\n b: 'B',\n c: 'C',\n d: 'D',\n e: 'E',\n f: 'F',\n g: 'G',\n h: 'H',\n i: 'I',\n j: 'J',\n k: 'K',\n l: 'L',\n m: 'M',\n n: 'N',\n o: 'O',\n p: 'P',\n q: 'Q',\n r: 'R',\n s: 'S',\n t: 'T',\n u: 'U',\n v: 'V',\n w: 'W',\n x: 'X',\n y: 'Y',\n z: 'Z',\n meta: 'Meta',\n '*': '*',\n '+': '+',\n '-': '-',\n '/': '/',\n ';': ';',\n '=': '=',\n ',': ',',\n '.': '.',\n '`': '`',\n '[': '[',\n '\\\\': '\\\\',\n ']': ']',\n \"'\": \"'\",\n attn: 'Attn',\n crsel: 'CrSel',\n exsel: 'ExSel',\n eraseeof: 'EraseEof',\n play: 'Play',\n zoomout: 'ZoomOut',\n ')': ')',\n '!': '!',\n '@': '@',\n '#': '#',\n $: '$',\n '%': '%',\n '^': '^',\n '&': '&',\n '(': '(',\n ':': ':',\n '<': '<',\n _: '_',\n '>': '>',\n '?': '?',\n '~': '~',\n '{': '{',\n '|': '|',\n '}': '}',\n '\"': '\"',\n softleft: 'SoftLeft',\n softright: 'SoftRight',\n camera: 'Camera',\n call: 'Call',\n endcall: 'EndCall',\n volumedown: 'VolumeDown',\n volumeup: 'VolumeUp',\n};\n"],"names":["__webpack_require__","definition","key","Object","obj","prop","Symbol","MAC_SYSTEM_HOTKEY_MAP","Map","KEY_ABBR_TO_STANDARD_MAP","KEY_LOW_TO_STANDARD_MAP"],"mappings":"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"}
|
|
@@ -0,0 +1,369 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) 2025 Bytedance, Inc. and its affiliates.
|
|
3
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
4
|
+
*/
|
|
5
|
+
const MAC_SYSTEM_HOTKEY_MAP = new Map([
|
|
6
|
+
[
|
|
7
|
+
'CorM+A',
|
|
8
|
+
{
|
|
9
|
+
key: 'KeyA',
|
|
10
|
+
commands: 'SelectAll'
|
|
11
|
+
}
|
|
12
|
+
],
|
|
13
|
+
[
|
|
14
|
+
'CorM+KeyA',
|
|
15
|
+
{
|
|
16
|
+
key: 'KeyA',
|
|
17
|
+
commands: 'SelectAll'
|
|
18
|
+
}
|
|
19
|
+
],
|
|
20
|
+
[
|
|
21
|
+
'CorM+X',
|
|
22
|
+
{
|
|
23
|
+
key: 'KeyX',
|
|
24
|
+
commands: 'Cut'
|
|
25
|
+
}
|
|
26
|
+
],
|
|
27
|
+
[
|
|
28
|
+
'CorM+KeyX',
|
|
29
|
+
{
|
|
30
|
+
key: 'KeyX',
|
|
31
|
+
commands: 'Cut'
|
|
32
|
+
}
|
|
33
|
+
],
|
|
34
|
+
[
|
|
35
|
+
'CorM+C',
|
|
36
|
+
{
|
|
37
|
+
key: 'KeyC',
|
|
38
|
+
commands: 'Copy'
|
|
39
|
+
}
|
|
40
|
+
],
|
|
41
|
+
[
|
|
42
|
+
'CorM+KeyC',
|
|
43
|
+
{
|
|
44
|
+
key: 'KeyC',
|
|
45
|
+
commands: 'Copy'
|
|
46
|
+
}
|
|
47
|
+
],
|
|
48
|
+
[
|
|
49
|
+
'CorM+V',
|
|
50
|
+
{
|
|
51
|
+
key: 'KeyV',
|
|
52
|
+
commands: 'Paste'
|
|
53
|
+
}
|
|
54
|
+
],
|
|
55
|
+
[
|
|
56
|
+
'CorM+KeyV',
|
|
57
|
+
{
|
|
58
|
+
key: 'KeyV',
|
|
59
|
+
commands: 'Paste'
|
|
60
|
+
}
|
|
61
|
+
],
|
|
62
|
+
[
|
|
63
|
+
'CorM+Z',
|
|
64
|
+
{
|
|
65
|
+
key: 'KeyZ',
|
|
66
|
+
commands: 'Undo'
|
|
67
|
+
}
|
|
68
|
+
],
|
|
69
|
+
[
|
|
70
|
+
'CorM+KeyZ',
|
|
71
|
+
{
|
|
72
|
+
key: 'KeyZ',
|
|
73
|
+
commands: 'Undo'
|
|
74
|
+
}
|
|
75
|
+
],
|
|
76
|
+
[
|
|
77
|
+
'CorM+Y',
|
|
78
|
+
{
|
|
79
|
+
key: 'KeyY',
|
|
80
|
+
commands: 'Redo'
|
|
81
|
+
}
|
|
82
|
+
],
|
|
83
|
+
[
|
|
84
|
+
'CorM+KeyY',
|
|
85
|
+
{
|
|
86
|
+
key: 'KeyY',
|
|
87
|
+
commands: 'Redo'
|
|
88
|
+
}
|
|
89
|
+
],
|
|
90
|
+
[
|
|
91
|
+
'CorM+Shift+Z',
|
|
92
|
+
{
|
|
93
|
+
key: 'KeyZ',
|
|
94
|
+
commands: 'Redo'
|
|
95
|
+
}
|
|
96
|
+
],
|
|
97
|
+
[
|
|
98
|
+
'CorM+Shift+KeyZ',
|
|
99
|
+
{
|
|
100
|
+
key: 'KeyZ',
|
|
101
|
+
commands: 'Redo'
|
|
102
|
+
}
|
|
103
|
+
],
|
|
104
|
+
[
|
|
105
|
+
'Shift+CorM+Z',
|
|
106
|
+
{
|
|
107
|
+
key: 'KeyZ',
|
|
108
|
+
commands: 'Redo'
|
|
109
|
+
}
|
|
110
|
+
],
|
|
111
|
+
[
|
|
112
|
+
'Shift+CorM+KeyZ',
|
|
113
|
+
{
|
|
114
|
+
key: 'KeyZ',
|
|
115
|
+
commands: 'Redo'
|
|
116
|
+
}
|
|
117
|
+
]
|
|
118
|
+
]);
|
|
119
|
+
const KEY_ABBR_TO_STANDARD_MAP = {
|
|
120
|
+
ctrl: 'Control',
|
|
121
|
+
cmd: 'Meta',
|
|
122
|
+
command: 'Meta',
|
|
123
|
+
opt: 'Alt',
|
|
124
|
+
option: 'Alt',
|
|
125
|
+
up: 'ArrowUp',
|
|
126
|
+
down: 'ArrowDown',
|
|
127
|
+
left: 'ArrowLeft',
|
|
128
|
+
right: 'ArrowRight',
|
|
129
|
+
esc: 'Escape',
|
|
130
|
+
del: 'Delete',
|
|
131
|
+
ins: 'Insert',
|
|
132
|
+
pgup: 'PageUp',
|
|
133
|
+
pgdown: 'PageDown',
|
|
134
|
+
return: 'Enter'
|
|
135
|
+
};
|
|
136
|
+
const KEY_LOW_TO_STANDARD_MAP = {
|
|
137
|
+
0: '0',
|
|
138
|
+
1: '1',
|
|
139
|
+
2: '2',
|
|
140
|
+
3: '3',
|
|
141
|
+
4: '4',
|
|
142
|
+
5: '5',
|
|
143
|
+
6: '6',
|
|
144
|
+
7: '7',
|
|
145
|
+
8: '8',
|
|
146
|
+
9: '9',
|
|
147
|
+
power: 'Power',
|
|
148
|
+
eject: 'Eject',
|
|
149
|
+
abort: 'Abort',
|
|
150
|
+
help: 'Help',
|
|
151
|
+
backspace: 'Backspace',
|
|
152
|
+
tab: 'Tab',
|
|
153
|
+
numpad5: 'Numpad5',
|
|
154
|
+
numpadenter: 'NumpadEnter',
|
|
155
|
+
enter: 'Enter',
|
|
156
|
+
'\r': '\r',
|
|
157
|
+
'\n': '\n',
|
|
158
|
+
shiftleft: 'ShiftLeft',
|
|
159
|
+
shiftright: 'ShiftRight',
|
|
160
|
+
controlleft: 'ControlLeft',
|
|
161
|
+
controlright: 'ControlRight',
|
|
162
|
+
altleft: 'AltLeft',
|
|
163
|
+
altright: 'AltRight',
|
|
164
|
+
pause: 'Pause',
|
|
165
|
+
capslock: 'CapsLock',
|
|
166
|
+
escape: 'Escape',
|
|
167
|
+
convert: 'Convert',
|
|
168
|
+
nonconvert: 'NonConvert',
|
|
169
|
+
space: 'Space',
|
|
170
|
+
numpad9: 'Numpad9',
|
|
171
|
+
pageup: 'PageUp',
|
|
172
|
+
numpad3: 'Numpad3',
|
|
173
|
+
pagedown: 'PageDown',
|
|
174
|
+
end: 'End',
|
|
175
|
+
numpad1: 'Numpad1',
|
|
176
|
+
home: 'Home',
|
|
177
|
+
numpad7: 'Numpad7',
|
|
178
|
+
arrowleft: 'ArrowLeft',
|
|
179
|
+
numpad4: 'Numpad4',
|
|
180
|
+
numpad8: 'Numpad8',
|
|
181
|
+
arrowup: 'ArrowUp',
|
|
182
|
+
arrowright: 'ArrowRight',
|
|
183
|
+
numpad6: 'Numpad6',
|
|
184
|
+
numpad2: 'Numpad2',
|
|
185
|
+
arrowdown: 'ArrowDown',
|
|
186
|
+
select: 'Select',
|
|
187
|
+
open: 'Open',
|
|
188
|
+
printscreen: 'PrintScreen',
|
|
189
|
+
insert: 'Insert',
|
|
190
|
+
numpad0: 'Numpad0',
|
|
191
|
+
delete: 'Delete',
|
|
192
|
+
numpaddecimal: 'NumpadDecimal',
|
|
193
|
+
digit0: 'Digit0',
|
|
194
|
+
digit1: 'Digit1',
|
|
195
|
+
digit2: 'Digit2',
|
|
196
|
+
digit3: 'Digit3',
|
|
197
|
+
digit4: 'Digit4',
|
|
198
|
+
digit5: 'Digit5',
|
|
199
|
+
digit6: 'Digit6',
|
|
200
|
+
digit7: 'Digit7',
|
|
201
|
+
digit8: 'Digit8',
|
|
202
|
+
digit9: 'Digit9',
|
|
203
|
+
keya: 'KeyA',
|
|
204
|
+
keyb: 'KeyB',
|
|
205
|
+
keyc: 'KeyC',
|
|
206
|
+
keyd: 'KeyD',
|
|
207
|
+
keye: 'KeyE',
|
|
208
|
+
keyf: 'KeyF',
|
|
209
|
+
keyg: 'KeyG',
|
|
210
|
+
keyh: 'KeyH',
|
|
211
|
+
keyi: 'KeyI',
|
|
212
|
+
keyj: 'KeyJ',
|
|
213
|
+
keyk: 'KeyK',
|
|
214
|
+
keyl: 'KeyL',
|
|
215
|
+
keym: 'KeyM',
|
|
216
|
+
keyn: 'KeyN',
|
|
217
|
+
keyo: 'KeyO',
|
|
218
|
+
keyp: 'KeyP',
|
|
219
|
+
keyq: 'KeyQ',
|
|
220
|
+
keyr: 'KeyR',
|
|
221
|
+
keys: 'KeyS',
|
|
222
|
+
keyt: 'KeyT',
|
|
223
|
+
keyu: 'KeyU',
|
|
224
|
+
keyv: 'KeyV',
|
|
225
|
+
keyw: 'KeyW',
|
|
226
|
+
keyx: 'KeyX',
|
|
227
|
+
keyy: 'KeyY',
|
|
228
|
+
keyz: 'KeyZ',
|
|
229
|
+
metaleft: 'MetaLeft',
|
|
230
|
+
metaright: 'MetaRight',
|
|
231
|
+
contextmenu: 'ContextMenu',
|
|
232
|
+
numpadmultiply: 'NumpadMultiply',
|
|
233
|
+
numpadadd: 'NumpadAdd',
|
|
234
|
+
numpadsubtract: 'NumpadSubtract',
|
|
235
|
+
numpaddivide: 'NumpadDivide',
|
|
236
|
+
f1: 'F1',
|
|
237
|
+
f2: 'F2',
|
|
238
|
+
f3: 'F3',
|
|
239
|
+
f4: 'F4',
|
|
240
|
+
f5: 'F5',
|
|
241
|
+
f6: 'F6',
|
|
242
|
+
f7: 'F7',
|
|
243
|
+
f8: 'F8',
|
|
244
|
+
f9: 'F9',
|
|
245
|
+
f10: 'F10',
|
|
246
|
+
f11: 'F11',
|
|
247
|
+
f12: 'F12',
|
|
248
|
+
f13: 'F13',
|
|
249
|
+
f14: 'F14',
|
|
250
|
+
f15: 'F15',
|
|
251
|
+
f16: 'F16',
|
|
252
|
+
f17: 'F17',
|
|
253
|
+
f18: 'F18',
|
|
254
|
+
f19: 'F19',
|
|
255
|
+
f20: 'F20',
|
|
256
|
+
f21: 'F21',
|
|
257
|
+
f22: 'F22',
|
|
258
|
+
f23: 'F23',
|
|
259
|
+
f24: 'F24',
|
|
260
|
+
numlock: 'NumLock',
|
|
261
|
+
scrolllock: 'ScrollLock',
|
|
262
|
+
audiovolumemute: 'AudioVolumeMute',
|
|
263
|
+
audiovolumedown: 'AudioVolumeDown',
|
|
264
|
+
audiovolumeup: 'AudioVolumeUp',
|
|
265
|
+
mediatracknext: 'MediaTrackNext',
|
|
266
|
+
mediatrackprevious: 'MediaTrackPrevious',
|
|
267
|
+
mediastop: 'MediaStop',
|
|
268
|
+
mediaplaypause: 'MediaPlayPause',
|
|
269
|
+
semicolon: 'Semicolon',
|
|
270
|
+
equal: 'Equal',
|
|
271
|
+
numpadequal: 'NumpadEqual',
|
|
272
|
+
comma: 'Comma',
|
|
273
|
+
minus: 'Minus',
|
|
274
|
+
period: 'Period',
|
|
275
|
+
slash: 'Slash',
|
|
276
|
+
backquote: 'Backquote',
|
|
277
|
+
bracketleft: 'BracketLeft',
|
|
278
|
+
backslash: 'Backslash',
|
|
279
|
+
bracketright: 'BracketRight',
|
|
280
|
+
quote: 'Quote',
|
|
281
|
+
altgraph: 'AltGraph',
|
|
282
|
+
props: 'Props',
|
|
283
|
+
cancel: 'Cancel',
|
|
284
|
+
clear: 'Clear',
|
|
285
|
+
shift: 'Shift',
|
|
286
|
+
control: 'Control',
|
|
287
|
+
alt: 'Alt',
|
|
288
|
+
accept: 'Accept',
|
|
289
|
+
modechange: 'ModeChange',
|
|
290
|
+
' ': ' ',
|
|
291
|
+
print: 'Print',
|
|
292
|
+
execute: 'Execute',
|
|
293
|
+
'\u0000': '\u0000',
|
|
294
|
+
a: 'A',
|
|
295
|
+
b: 'B',
|
|
296
|
+
c: 'C',
|
|
297
|
+
d: 'D',
|
|
298
|
+
e: 'E',
|
|
299
|
+
f: 'F',
|
|
300
|
+
g: 'G',
|
|
301
|
+
h: 'H',
|
|
302
|
+
i: 'I',
|
|
303
|
+
j: 'J',
|
|
304
|
+
k: 'K',
|
|
305
|
+
l: 'L',
|
|
306
|
+
m: 'M',
|
|
307
|
+
n: 'N',
|
|
308
|
+
o: 'O',
|
|
309
|
+
p: 'P',
|
|
310
|
+
q: 'Q',
|
|
311
|
+
r: 'R',
|
|
312
|
+
s: 'S',
|
|
313
|
+
t: 'T',
|
|
314
|
+
u: 'U',
|
|
315
|
+
v: 'V',
|
|
316
|
+
w: 'W',
|
|
317
|
+
x: 'X',
|
|
318
|
+
y: 'Y',
|
|
319
|
+
z: 'Z',
|
|
320
|
+
meta: 'Meta',
|
|
321
|
+
'*': '*',
|
|
322
|
+
'+': '+',
|
|
323
|
+
'-': '-',
|
|
324
|
+
'/': '/',
|
|
325
|
+
';': ';',
|
|
326
|
+
'=': '=',
|
|
327
|
+
',': ',',
|
|
328
|
+
'.': '.',
|
|
329
|
+
'`': '`',
|
|
330
|
+
'[': '[',
|
|
331
|
+
'\\': '\\',
|
|
332
|
+
']': ']',
|
|
333
|
+
"'": "'",
|
|
334
|
+
attn: 'Attn',
|
|
335
|
+
crsel: 'CrSel',
|
|
336
|
+
exsel: 'ExSel',
|
|
337
|
+
eraseeof: 'EraseEof',
|
|
338
|
+
play: 'Play',
|
|
339
|
+
zoomout: 'ZoomOut',
|
|
340
|
+
')': ')',
|
|
341
|
+
'!': '!',
|
|
342
|
+
'@': '@',
|
|
343
|
+
'#': '#',
|
|
344
|
+
$: '$',
|
|
345
|
+
'%': '%',
|
|
346
|
+
'^': '^',
|
|
347
|
+
'&': '&',
|
|
348
|
+
'(': '(',
|
|
349
|
+
':': ':',
|
|
350
|
+
'<': '<',
|
|
351
|
+
_: '_',
|
|
352
|
+
'>': '>',
|
|
353
|
+
'?': '?',
|
|
354
|
+
'~': '~',
|
|
355
|
+
'{': '{',
|
|
356
|
+
'|': '|',
|
|
357
|
+
'}': '}',
|
|
358
|
+
'"': '"',
|
|
359
|
+
softleft: 'SoftLeft',
|
|
360
|
+
softright: 'SoftRight',
|
|
361
|
+
camera: 'Camera',
|
|
362
|
+
call: 'Call',
|
|
363
|
+
endcall: 'EndCall',
|
|
364
|
+
volumedown: 'VolumeDown',
|
|
365
|
+
volumeup: 'VolumeUp'
|
|
366
|
+
};
|
|
367
|
+
export { KEY_ABBR_TO_STANDARD_MAP, KEY_LOW_TO_STANDARD_MAP, MAC_SYSTEM_HOTKEY_MAP };
|
|
368
|
+
|
|
369
|
+
//# sourceMappingURL=key-map.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"actions/key-map.mjs","sources":["webpack://@agent-infra/browser/./src/actions/key-map.ts"],"sourcesContent":["/**\n * The following code is modified based on\n * https://github.com/puppeteer/puppeteer/blob/main/packages/puppeteer-core/src/common/USKeyboardLayout.ts\n *\n * Copyright 2017 Google Inc.\n * SPDX-License-Identifier: Apache-2.0\n * https://github.com/puppeteer/puppeteer/blob/main/LICENSE\n */\nimport type { KeyInput } from 'puppeteer-core';\n\n/**\n * Only adapt for common macOS system hotkeys\n *\n * See issues:\n * - https://github.com/bytedance/UI-TARS-desktop/pull/560\n *\n * References:\n * - Mac shortcuts list: https://support.apple.com/zh-cn/102650\n * - Chrome: https://support.google.com/chrome/answer/157179\n * - CDP: https://chromedevtools.github.io/devtools-protocol/tot/Input/#method-dispatchKeyEvent\n * - Commands: https://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/renderer/core/editing/commands/editor_command_names.h\n */\nexport const MAC_SYSTEM_HOTKEY_MAP = new Map<\n string,\n { key: KeyInput; commands: string }\n>([\n ['CorM+A', { key: 'KeyA', commands: 'SelectAll' }],\n ['CorM+KeyA', { key: 'KeyA', commands: 'SelectAll' }],\n\n ['CorM+X', { key: 'KeyX', commands: 'Cut' }],\n ['CorM+KeyX', { key: 'KeyX', commands: 'Cut' }],\n\n ['CorM+C', { key: 'KeyC', commands: 'Copy' }],\n ['CorM+KeyC', { key: 'KeyC', commands: 'Copy' }],\n\n ['CorM+V', { key: 'KeyV', commands: 'Paste' }],\n ['CorM+KeyV', { key: 'KeyV', commands: 'Paste' }],\n\n ['CorM+Z', { key: 'KeyZ', commands: 'Undo' }],\n ['CorM+KeyZ', { key: 'KeyZ', commands: 'Undo' }],\n\n ['CorM+Y', { key: 'KeyY', commands: 'Redo' }],\n ['CorM+KeyY', { key: 'KeyY', commands: 'Redo' }],\n ['CorM+Shift+Z', { key: 'KeyZ', commands: 'Redo' }],\n ['CorM+Shift+KeyZ', { key: 'KeyZ', commands: 'Redo' }],\n ['Shift+CorM+Z', { key: 'KeyZ', commands: 'Redo' }],\n ['Shift+CorM+KeyZ', { key: 'KeyZ', commands: 'Redo' }],\n]);\n\nexport const KEY_ABBR_TO_STANDARD_MAP: Readonly<Record<string, KeyInput>> = {\n // modifier keys\n ctrl: 'Control',\n cmd: 'Meta', // macOS only\n command: 'Meta', // macOS only\n opt: 'Alt', // macOS only\n option: 'Alt', // macOS only\n // arraw keys\n up: 'ArrowUp',\n down: 'ArrowDown',\n left: 'ArrowLeft',\n right: 'ArrowRight',\n // others\n esc: 'Escape',\n del: 'Delete',\n ins: 'Insert',\n pgup: 'PageUp',\n pgdown: 'PageDown',\n return: 'Enter',\n};\n\n// Auto-generated form puppeteer-core/src/common/USKeyboardLayout.ts _keyDefinitions\nexport const KEY_LOW_TO_STANDARD_MAP: Readonly<Record<string, KeyInput>> = {\n '0': '0',\n '1': '1',\n '2': '2',\n '3': '3',\n '4': '4',\n '5': '5',\n '6': '6',\n '7': '7',\n '8': '8',\n '9': '9',\n power: 'Power',\n eject: 'Eject',\n abort: 'Abort',\n help: 'Help',\n backspace: 'Backspace',\n tab: 'Tab',\n numpad5: 'Numpad5',\n numpadenter: 'NumpadEnter',\n enter: 'Enter',\n '\\r': '\\r',\n '\\n': '\\n',\n shiftleft: 'ShiftLeft',\n shiftright: 'ShiftRight',\n controlleft: 'ControlLeft',\n controlright: 'ControlRight',\n altleft: 'AltLeft',\n altright: 'AltRight',\n pause: 'Pause',\n capslock: 'CapsLock',\n escape: 'Escape',\n convert: 'Convert',\n nonconvert: 'NonConvert',\n space: 'Space',\n numpad9: 'Numpad9',\n pageup: 'PageUp',\n numpad3: 'Numpad3',\n pagedown: 'PageDown',\n end: 'End',\n numpad1: 'Numpad1',\n home: 'Home',\n numpad7: 'Numpad7',\n arrowleft: 'ArrowLeft',\n numpad4: 'Numpad4',\n numpad8: 'Numpad8',\n arrowup: 'ArrowUp',\n arrowright: 'ArrowRight',\n numpad6: 'Numpad6',\n numpad2: 'Numpad2',\n arrowdown: 'ArrowDown',\n select: 'Select',\n open: 'Open',\n printscreen: 'PrintScreen',\n insert: 'Insert',\n numpad0: 'Numpad0',\n delete: 'Delete',\n numpaddecimal: 'NumpadDecimal',\n digit0: 'Digit0',\n digit1: 'Digit1',\n digit2: 'Digit2',\n digit3: 'Digit3',\n digit4: 'Digit4',\n digit5: 'Digit5',\n digit6: 'Digit6',\n digit7: 'Digit7',\n digit8: 'Digit8',\n digit9: 'Digit9',\n keya: 'KeyA',\n keyb: 'KeyB',\n keyc: 'KeyC',\n keyd: 'KeyD',\n keye: 'KeyE',\n keyf: 'KeyF',\n keyg: 'KeyG',\n keyh: 'KeyH',\n keyi: 'KeyI',\n keyj: 'KeyJ',\n keyk: 'KeyK',\n keyl: 'KeyL',\n keym: 'KeyM',\n keyn: 'KeyN',\n keyo: 'KeyO',\n keyp: 'KeyP',\n keyq: 'KeyQ',\n keyr: 'KeyR',\n keys: 'KeyS',\n keyt: 'KeyT',\n keyu: 'KeyU',\n keyv: 'KeyV',\n keyw: 'KeyW',\n keyx: 'KeyX',\n keyy: 'KeyY',\n keyz: 'KeyZ',\n metaleft: 'MetaLeft',\n metaright: 'MetaRight',\n contextmenu: 'ContextMenu',\n numpadmultiply: 'NumpadMultiply',\n numpadadd: 'NumpadAdd',\n numpadsubtract: 'NumpadSubtract',\n numpaddivide: 'NumpadDivide',\n f1: 'F1',\n f2: 'F2',\n f3: 'F3',\n f4: 'F4',\n f5: 'F5',\n f6: 'F6',\n f7: 'F7',\n f8: 'F8',\n f9: 'F9',\n f10: 'F10',\n f11: 'F11',\n f12: 'F12',\n f13: 'F13',\n f14: 'F14',\n f15: 'F15',\n f16: 'F16',\n f17: 'F17',\n f18: 'F18',\n f19: 'F19',\n f20: 'F20',\n f21: 'F21',\n f22: 'F22',\n f23: 'F23',\n f24: 'F24',\n numlock: 'NumLock',\n scrolllock: 'ScrollLock',\n audiovolumemute: 'AudioVolumeMute',\n audiovolumedown: 'AudioVolumeDown',\n audiovolumeup: 'AudioVolumeUp',\n mediatracknext: 'MediaTrackNext',\n mediatrackprevious: 'MediaTrackPrevious',\n mediastop: 'MediaStop',\n mediaplaypause: 'MediaPlayPause',\n semicolon: 'Semicolon',\n equal: 'Equal',\n numpadequal: 'NumpadEqual',\n comma: 'Comma',\n minus: 'Minus',\n period: 'Period',\n slash: 'Slash',\n backquote: 'Backquote',\n bracketleft: 'BracketLeft',\n backslash: 'Backslash',\n bracketright: 'BracketRight',\n quote: 'Quote',\n altgraph: 'AltGraph',\n props: 'Props',\n cancel: 'Cancel',\n clear: 'Clear',\n shift: 'Shift',\n control: 'Control',\n alt: 'Alt',\n accept: 'Accept',\n modechange: 'ModeChange',\n ' ': ' ',\n print: 'Print',\n execute: 'Execute',\n '\\u0000': '\\u0000',\n a: 'A',\n b: 'B',\n c: 'C',\n d: 'D',\n e: 'E',\n f: 'F',\n g: 'G',\n h: 'H',\n i: 'I',\n j: 'J',\n k: 'K',\n l: 'L',\n m: 'M',\n n: 'N',\n o: 'O',\n p: 'P',\n q: 'Q',\n r: 'R',\n s: 'S',\n t: 'T',\n u: 'U',\n v: 'V',\n w: 'W',\n x: 'X',\n y: 'Y',\n z: 'Z',\n meta: 'Meta',\n '*': '*',\n '+': '+',\n '-': '-',\n '/': '/',\n ';': ';',\n '=': '=',\n ',': ',',\n '.': '.',\n '`': '`',\n '[': '[',\n '\\\\': '\\\\',\n ']': ']',\n \"'\": \"'\",\n attn: 'Attn',\n crsel: 'CrSel',\n exsel: 'ExSel',\n eraseeof: 'EraseEof',\n play: 'Play',\n zoomout: 'ZoomOut',\n ')': ')',\n '!': '!',\n '@': '@',\n '#': '#',\n $: '$',\n '%': '%',\n '^': '^',\n '&': '&',\n '(': '(',\n ':': ':',\n '<': '<',\n _: '_',\n '>': '>',\n '?': '?',\n '~': '~',\n '{': '{',\n '|': '|',\n '}': '}',\n '\"': '\"',\n softleft: 'SoftLeft',\n softright: 'SoftRight',\n camera: 'Camera',\n call: 'Call',\n endcall: 'EndCall',\n volumedown: 'VolumeDown',\n volumeup: 'VolumeUp',\n};\n"],"names":["MAC_SYSTEM_HOTKEY_MAP","Map","KEY_ABBR_TO_STANDARD_MAP","KEY_LOW_TO_STANDARD_MAP"],"mappings":"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AAa;IACb,WAAW;IACX,cAAc;IACd,OAAO;IACP,UAAU;IACV,OAAO;IACP,QAAQ;IACR,OAAO;IACP,OAAO;IACP,SAAS;IACT,KAAK;IACL,QAAQ;IACR,YAAY;IACZ,KAAK;IACL,OAAO;IACP,SAAS;IACT,UAAU;IACV,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,MAAM;IACN,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,MAAM;IACN,KAAK;IACL,KAAK;IACL,MAAM;IACN,OAAO;IACP,OAAO;IACP,UAAU;IACV,MAAM;IACN,SAAS;IACT,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,GAAG;IACH,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,GAAG;IACH,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,UAAU;IACV,WAAW;IACX,QAAQ;IACR,MAAM;IACN,SAAS;IACT,YAAY;IACZ,UAAU;AACZ"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { Page } from 'puppeteer-core';
|
|
2
|
+
import type { EnvInfo, KeyboardOptions, KeyOrHotKeyInput, ActionResult } from '../types';
|
|
3
|
+
import type { TabDialog } from '../tabs/dialog';
|
|
4
|
+
export declare class Keyboard {
|
|
5
|
+
#private;
|
|
6
|
+
constructor(page: Page, dialog: TabDialog, env: EnvInfo);
|
|
7
|
+
/**
|
|
8
|
+
* Enhance puppeteer's [keyboard.press()](https://pptr.dev/api/puppeteer.keyboard.press) to support combination hotkeys.
|
|
9
|
+
*/
|
|
10
|
+
press(key: KeyOrHotKeyInput, options?: KeyboardOptions): Promise<ActionResult>;
|
|
11
|
+
/**
|
|
12
|
+
* Enhance puppeteer's [keyboard.down()](https://pptr.dev/api/puppeteer.keyboard.down) to support combination hotkeys.
|
|
13
|
+
*/
|
|
14
|
+
down(key: KeyOrHotKeyInput, options?: KeyboardOptions): Promise<ActionResult>;
|
|
15
|
+
/**
|
|
16
|
+
* Enhance puppeteer's [keyboard.up()](https://pptr.dev/api/puppeteer.keyboard.up) to support combination hotkeys.
|
|
17
|
+
*/
|
|
18
|
+
up(key: KeyOrHotKeyInput): Promise<ActionResult>;
|
|
19
|
+
type(text: string, options?: KeyboardOptions): Promise<ActionResult>;
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=keyboard.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"keyboard.d.ts","sourceRoot":"","sources":["../../src/actions/keyboard.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAY,IAAI,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,KAAK,EACV,OAAO,EAEP,eAAe,EACf,gBAAgB,EAChB,YAAY,EACb,MAAM,UAAU,CAAC;AAClB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAEhD,qBAAa,QAAQ;;gBAKP,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,EAAE,OAAO;IAMvD;;OAEG;IACG,KAAK,CACT,GAAG,EAAE,gBAAgB,EACrB,OAAO,GAAE,eAAoB,GAC5B,OAAO,CAAC,YAAY,CAAC;IA0BxB;;OAEG;IACG,IAAI,CACR,GAAG,EAAE,gBAAgB,EACrB,OAAO,GAAE,eAAoB,GAC5B,OAAO,CAAC,YAAY,CAAC;IAqBxB;;OAEG;IACG,EAAE,CAAC,GAAG,EAAE,gBAAgB,GAAG,OAAO,CAAC,YAAY,CAAC;IAchD,IAAI,CACR,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE,eAAoB,GAC5B,OAAO,CAAC,YAAY,CAAC;CAoFzB"}
|
|
@@ -0,0 +1,196 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) 2025 Bytedance, Inc. and its affiliates.
|
|
3
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
4
|
+
*/
|
|
5
|
+
"use strict";
|
|
6
|
+
var __webpack_require__ = {};
|
|
7
|
+
(()=>{
|
|
8
|
+
__webpack_require__.n = (module)=>{
|
|
9
|
+
var getter = module && module.__esModule ? ()=>module['default'] : ()=>module;
|
|
10
|
+
__webpack_require__.d(getter, {
|
|
11
|
+
a: getter
|
|
12
|
+
});
|
|
13
|
+
return getter;
|
|
14
|
+
};
|
|
15
|
+
})();
|
|
16
|
+
(()=>{
|
|
17
|
+
__webpack_require__.d = (exports1, definition)=>{
|
|
18
|
+
for(var key in definition)if (__webpack_require__.o(definition, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
|
|
19
|
+
enumerable: true,
|
|
20
|
+
get: definition[key]
|
|
21
|
+
});
|
|
22
|
+
};
|
|
23
|
+
})();
|
|
24
|
+
(()=>{
|
|
25
|
+
__webpack_require__.o = (obj, prop)=>Object.prototype.hasOwnProperty.call(obj, prop);
|
|
26
|
+
})();
|
|
27
|
+
(()=>{
|
|
28
|
+
__webpack_require__.r = (exports1)=>{
|
|
29
|
+
if ('undefined' != typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, {
|
|
30
|
+
value: 'Module'
|
|
31
|
+
});
|
|
32
|
+
Object.defineProperty(exports1, '__esModule', {
|
|
33
|
+
value: true
|
|
34
|
+
});
|
|
35
|
+
};
|
|
36
|
+
})();
|
|
37
|
+
var __webpack_exports__ = {};
|
|
38
|
+
__webpack_require__.r(__webpack_exports__);
|
|
39
|
+
__webpack_require__.d(__webpack_exports__, {
|
|
40
|
+
Keyboard: ()=>Keyboard
|
|
41
|
+
});
|
|
42
|
+
const external_delay_namespaceObject = require("delay");
|
|
43
|
+
var external_delay_default = /*#__PURE__*/ __webpack_require__.n(external_delay_namespaceObject);
|
|
44
|
+
const external_key_map_js_namespaceObject = require("./key-map.js");
|
|
45
|
+
function _check_private_redeclaration(obj, privateCollection) {
|
|
46
|
+
if (privateCollection.has(obj)) throw new TypeError("Cannot initialize the same private elements twice on an object");
|
|
47
|
+
}
|
|
48
|
+
function _class_apply_descriptor_get(receiver, descriptor) {
|
|
49
|
+
if (descriptor.get) return descriptor.get.call(receiver);
|
|
50
|
+
return descriptor.value;
|
|
51
|
+
}
|
|
52
|
+
function _class_apply_descriptor_set(receiver, descriptor, value) {
|
|
53
|
+
if (descriptor.set) descriptor.set.call(receiver, value);
|
|
54
|
+
else {
|
|
55
|
+
if (!descriptor.writable) throw new TypeError("attempted to set read only private field");
|
|
56
|
+
descriptor.value = value;
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
function _class_extract_field_descriptor(receiver, privateMap, action) {
|
|
60
|
+
if (!privateMap.has(receiver)) throw new TypeError("attempted to " + action + " private field on non-instance");
|
|
61
|
+
return privateMap.get(receiver);
|
|
62
|
+
}
|
|
63
|
+
function _class_private_field_get(receiver, privateMap) {
|
|
64
|
+
var descriptor = _class_extract_field_descriptor(receiver, privateMap, "get");
|
|
65
|
+
return _class_apply_descriptor_get(receiver, descriptor);
|
|
66
|
+
}
|
|
67
|
+
function _class_private_field_init(obj, privateMap, value) {
|
|
68
|
+
_check_private_redeclaration(obj, privateMap);
|
|
69
|
+
privateMap.set(obj, value);
|
|
70
|
+
}
|
|
71
|
+
function _class_private_field_set(receiver, privateMap, value) {
|
|
72
|
+
var descriptor = _class_extract_field_descriptor(receiver, privateMap, "set");
|
|
73
|
+
_class_apply_descriptor_set(receiver, descriptor, value);
|
|
74
|
+
return value;
|
|
75
|
+
}
|
|
76
|
+
function _class_private_method_get(receiver, privateSet, fn) {
|
|
77
|
+
if (!privateSet.has(receiver)) throw new TypeError("attempted to get private field on non-instance");
|
|
78
|
+
return fn;
|
|
79
|
+
}
|
|
80
|
+
function _class_private_method_init(obj, privateSet) {
|
|
81
|
+
_check_private_redeclaration(obj, privateSet);
|
|
82
|
+
privateSet.add(obj);
|
|
83
|
+
}
|
|
84
|
+
var _page = /*#__PURE__*/ new WeakMap(), _env = /*#__PURE__*/ new WeakMap(), _dialog = /*#__PURE__*/ new WeakMap(), _formatHotkey = /*#__PURE__*/ new WeakSet(), _macOSCDPHotKey = /*#__PURE__*/ new WeakSet(), _buildDialogResponse = /*#__PURE__*/ new WeakSet();
|
|
85
|
+
class Keyboard {
|
|
86
|
+
async press(key, options = {}) {
|
|
87
|
+
if (_class_private_field_get(this, _dialog).isOpen) return _class_private_method_get(this, _buildDialogResponse, buildDialogResponse).call(this, 'press');
|
|
88
|
+
const formattedHotkey = _class_private_method_get(this, _formatHotkey, formatHotkey).call(this, key);
|
|
89
|
+
if ('macOS' === _class_private_field_get(this, _env).osName && 'Chrome' === _class_private_field_get(this, _env).browserName) {
|
|
90
|
+
const success = await _class_private_method_get(this, _macOSCDPHotKey, macOSCDPHotKey).call(this, formattedHotkey, options);
|
|
91
|
+
if (success) return {
|
|
92
|
+
success: true
|
|
93
|
+
};
|
|
94
|
+
}
|
|
95
|
+
for (const key of formattedHotkey)await _class_private_field_get(this, _page).keyboard.down(key);
|
|
96
|
+
await external_delay_default()(options.delay ?? 0);
|
|
97
|
+
for (const key of formattedHotkey.reverse())await _class_private_field_get(this, _page).keyboard.up(key);
|
|
98
|
+
return {
|
|
99
|
+
success: true
|
|
100
|
+
};
|
|
101
|
+
}
|
|
102
|
+
async down(key, options = {}) {
|
|
103
|
+
if (_class_private_field_get(this, _dialog).isOpen) return _class_private_method_get(this, _buildDialogResponse, buildDialogResponse).call(this, 'down');
|
|
104
|
+
const formattedHotkey = _class_private_method_get(this, _formatHotkey, formatHotkey).call(this, key);
|
|
105
|
+
if ('macOS' === _class_private_field_get(this, _env).osName && 'Chrome' === _class_private_field_get(this, _env).browserName) {
|
|
106
|
+
const success = await _class_private_method_get(this, _macOSCDPHotKey, macOSCDPHotKey).call(this, formattedHotkey, options);
|
|
107
|
+
if (success) return {
|
|
108
|
+
success: true
|
|
109
|
+
};
|
|
110
|
+
}
|
|
111
|
+
for (const key of formattedHotkey)await _class_private_field_get(this, _page).keyboard.down(key);
|
|
112
|
+
return {
|
|
113
|
+
success: true
|
|
114
|
+
};
|
|
115
|
+
}
|
|
116
|
+
async up(key) {
|
|
117
|
+
if (_class_private_field_get(this, _dialog).isOpen) return _class_private_method_get(this, _buildDialogResponse, buildDialogResponse).call(this, 'up');
|
|
118
|
+
const formattedHotkey = _class_private_method_get(this, _formatHotkey, formatHotkey).call(this, key);
|
|
119
|
+
for (const key of formattedHotkey.reverse())await _class_private_field_get(this, _page).keyboard.up(key);
|
|
120
|
+
return {
|
|
121
|
+
success: true
|
|
122
|
+
};
|
|
123
|
+
}
|
|
124
|
+
async type(text, options = {}) {
|
|
125
|
+
if (_class_private_field_get(this, _dialog).isOpen) return _class_private_method_get(this, _buildDialogResponse, buildDialogResponse).call(this, 'type');
|
|
126
|
+
if (text.length < 15 && options.delay) await _class_private_field_get(this, _page).keyboard.type(text, options);
|
|
127
|
+
else await _class_private_field_get(this, _page).keyboard.sendCharacter(text);
|
|
128
|
+
return {
|
|
129
|
+
success: true
|
|
130
|
+
};
|
|
131
|
+
}
|
|
132
|
+
constructor(page, dialog, env){
|
|
133
|
+
_class_private_method_init(this, _formatHotkey);
|
|
134
|
+
_class_private_method_init(this, _macOSCDPHotKey);
|
|
135
|
+
_class_private_method_init(this, _buildDialogResponse);
|
|
136
|
+
_class_private_field_init(this, _page, {
|
|
137
|
+
writable: true,
|
|
138
|
+
value: void 0
|
|
139
|
+
});
|
|
140
|
+
_class_private_field_init(this, _env, {
|
|
141
|
+
writable: true,
|
|
142
|
+
value: void 0
|
|
143
|
+
});
|
|
144
|
+
_class_private_field_init(this, _dialog, {
|
|
145
|
+
writable: true,
|
|
146
|
+
value: void 0
|
|
147
|
+
});
|
|
148
|
+
_class_private_field_set(this, _page, page);
|
|
149
|
+
_class_private_field_set(this, _dialog, dialog);
|
|
150
|
+
_class_private_field_set(this, _env, env);
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
function formatHotkey(hotkey) {
|
|
154
|
+
const lowerCaseHotkey = hotkey.toLowerCase();
|
|
155
|
+
const keys = lowerCaseHotkey.split(/[\s+]+/);
|
|
156
|
+
const formattedKeys = keys.map((key)=>{
|
|
157
|
+
if (external_key_map_js_namespaceObject.KEY_ABBR_TO_STANDARD_MAP[key]) return external_key_map_js_namespaceObject.KEY_ABBR_TO_STANDARD_MAP[key];
|
|
158
|
+
if (external_key_map_js_namespaceObject.KEY_LOW_TO_STANDARD_MAP[key]) return external_key_map_js_namespaceObject.KEY_LOW_TO_STANDARD_MAP[key];
|
|
159
|
+
throw new Error('Unsupported key: ' + key);
|
|
160
|
+
});
|
|
161
|
+
return formattedKeys;
|
|
162
|
+
}
|
|
163
|
+
async function macOSCDPHotKey(keys, options) {
|
|
164
|
+
const hotkey = keys.map((key)=>{
|
|
165
|
+
if ('Control' === key || 'Meta' === key) return 'CorM';
|
|
166
|
+
return key;
|
|
167
|
+
}).join('+');
|
|
168
|
+
const command = external_key_map_js_namespaceObject.MAC_SYSTEM_HOTKEY_MAP.get(hotkey);
|
|
169
|
+
if (command) {
|
|
170
|
+
await _class_private_field_get(this, _page).keyboard.down(command.key, {
|
|
171
|
+
commands: [
|
|
172
|
+
command.commands
|
|
173
|
+
]
|
|
174
|
+
});
|
|
175
|
+
await external_delay_default()(options.delay ?? 0);
|
|
176
|
+
await _class_private_field_get(this, _page).keyboard.up(command.key);
|
|
177
|
+
return true;
|
|
178
|
+
}
|
|
179
|
+
return false;
|
|
180
|
+
}
|
|
181
|
+
function buildDialogResponse(type) {
|
|
182
|
+
return {
|
|
183
|
+
success: false,
|
|
184
|
+
message: `Cannot perform keyboard.${type}() operation because there is a dialog on the current page.`,
|
|
185
|
+
detail: _class_private_field_get(this, _dialog).meta
|
|
186
|
+
};
|
|
187
|
+
}
|
|
188
|
+
exports.Keyboard = __webpack_exports__.Keyboard;
|
|
189
|
+
for(var __webpack_i__ in __webpack_exports__)if (-1 === [
|
|
190
|
+
"Keyboard"
|
|
191
|
+
].indexOf(__webpack_i__)) exports[__webpack_i__] = __webpack_exports__[__webpack_i__];
|
|
192
|
+
Object.defineProperty(exports, '__esModule', {
|
|
193
|
+
value: true
|
|
194
|
+
});
|
|
195
|
+
|
|
196
|
+
//# sourceMappingURL=keyboard.js.map
|