@poe-platform/safe-bash 0.1.680 → 0.1.681

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.
Files changed (169) hide show
  1. package/README.md +1 -1
  2. package/dist/safe-bash/commands/playwright/index.d.ts.map +1 -1
  3. package/dist/safe-bash/commands/playwright/index.js +77 -4
  4. package/dist/safe-bash/commands/playwright/index.js.map +1 -1
  5. package/dist/safe-bash/playwright/abilities.d.ts +24 -5
  6. package/dist/safe-bash/playwright/abilities.d.ts.map +1 -1
  7. package/dist/safe-bash/playwright/abilities.js +9 -4
  8. package/dist/safe-bash/playwright/abilities.js.map +1 -1
  9. package/dist/safe-bash/playwright/ability-execution.d.ts +6 -1
  10. package/dist/safe-bash/playwright/ability-execution.d.ts.map +1 -1
  11. package/dist/safe-bash/playwright/ability-execution.js +77 -5
  12. package/dist/safe-bash/playwright/ability-execution.js.map +1 -1
  13. package/dist/safe-bash/playwright/adapter.d.ts +467 -11
  14. package/dist/safe-bash/playwright/adapter.d.ts.map +1 -1
  15. package/dist/safe-bash/playwright/adapter.js +213 -4
  16. package/dist/safe-bash/playwright/adapter.js.map +1 -1
  17. package/dist/safe-bash/playwright/builtins.d.ts +44 -4
  18. package/dist/safe-bash/playwright/builtins.d.ts.map +1 -1
  19. package/dist/safe-bash/playwright/builtins.js +14 -9
  20. package/dist/safe-bash/playwright/builtins.js.map +1 -1
  21. package/dist/safe-bash/playwright/canonical-locator-parser.d.ts +5 -0
  22. package/dist/safe-bash/playwright/canonical-locator-parser.d.ts.map +1 -0
  23. package/dist/safe-bash/playwright/canonical-locator-parser.js +146 -0
  24. package/dist/safe-bash/playwright/canonical-locator-parser.js.map +1 -0
  25. package/dist/safe-bash/playwright/capability-events.d.ts +15 -0
  26. package/dist/safe-bash/playwright/capability-events.d.ts.map +1 -0
  27. package/dist/safe-bash/playwright/capability-events.js +265 -0
  28. package/dist/safe-bash/playwright/capability-events.js.map +1 -0
  29. package/dist/safe-bash/playwright/capability-result.d.ts +33 -0
  30. package/dist/safe-bash/playwright/capability-result.d.ts.map +1 -0
  31. package/dist/safe-bash/playwright/capability-result.js +72 -0
  32. package/dist/safe-bash/playwright/capability-result.js.map +1 -0
  33. package/dist/safe-bash/playwright/config-ini.d.ts +3 -0
  34. package/dist/safe-bash/playwright/config-ini.d.ts.map +1 -0
  35. package/dist/safe-bash/playwright/config-ini.js +161 -0
  36. package/dist/safe-bash/playwright/config-ini.js.map +1 -0
  37. package/dist/safe-bash/playwright/controller.d.ts +39 -1
  38. package/dist/safe-bash/playwright/controller.d.ts.map +1 -1
  39. package/dist/safe-bash/playwright/controller.js +913 -77
  40. package/dist/safe-bash/playwright/controller.js.map +1 -1
  41. package/dist/safe-bash/playwright/devices.d.ts +229 -0
  42. package/dist/safe-bash/playwright/devices.d.ts.map +1 -0
  43. package/dist/safe-bash/playwright/devices.js +2740 -0
  44. package/dist/safe-bash/playwright/devices.js.map +1 -0
  45. package/dist/safe-bash/playwright/download-capabilities.d.ts +15 -0
  46. package/dist/safe-bash/playwright/download-capabilities.d.ts.map +1 -0
  47. package/dist/safe-bash/playwright/download-capabilities.js +161 -0
  48. package/dist/safe-bash/playwright/download-capabilities.js.map +1 -0
  49. package/dist/safe-bash/playwright/drop-capability.d.ts +3 -0
  50. package/dist/safe-bash/playwright/drop-capability.d.ts.map +1 -0
  51. package/dist/safe-bash/playwright/drop-capability.js +50 -0
  52. package/dist/safe-bash/playwright/drop-capability.js.map +1 -0
  53. package/dist/safe-bash/playwright/find.d.ts +8 -0
  54. package/dist/safe-bash/playwright/find.d.ts.map +1 -0
  55. package/dist/safe-bash/playwright/find.js +68 -0
  56. package/dist/safe-bash/playwright/find.js.map +1 -0
  57. package/dist/safe-bash/playwright/generated-locator.d.ts +4 -0
  58. package/dist/safe-bash/playwright/generated-locator.d.ts.map +1 -0
  59. package/dist/safe-bash/playwright/generated-locator.js +22 -0
  60. package/dist/safe-bash/playwright/generated-locator.js.map +1 -0
  61. package/dist/safe-bash/playwright/help.d.ts +4 -3
  62. package/dist/safe-bash/playwright/help.d.ts.map +1 -1
  63. package/dist/safe-bash/playwright/help.js +7 -52
  64. package/dist/safe-bash/playwright/help.js.map +1 -1
  65. package/dist/safe-bash/playwright/highlight.d.ts +8 -0
  66. package/dist/safe-bash/playwright/highlight.d.ts.map +1 -0
  67. package/dist/safe-bash/playwright/highlight.js +82 -0
  68. package/dist/safe-bash/playwright/highlight.js.map +1 -0
  69. package/dist/safe-bash/playwright/index.d.ts +5 -0
  70. package/dist/safe-bash/playwright/index.d.ts.map +1 -1
  71. package/dist/safe-bash/playwright/index.js +4 -0
  72. package/dist/safe-bash/playwright/index.js.map +1 -1
  73. package/dist/safe-bash/playwright/invocation.d.ts +24 -0
  74. package/dist/safe-bash/playwright/invocation.d.ts.map +1 -1
  75. package/dist/safe-bash/playwright/invocation.js +42 -10
  76. package/dist/safe-bash/playwright/invocation.js.map +1 -1
  77. package/dist/safe-bash/playwright/locator-selector.d.ts +5 -0
  78. package/dist/safe-bash/playwright/locator-selector.d.ts.map +1 -0
  79. package/dist/safe-bash/playwright/locator-selector.js +70 -0
  80. package/dist/safe-bash/playwright/locator-selector.js.map +1 -0
  81. package/dist/safe-bash/playwright/modal-capabilities.d.ts +20 -0
  82. package/dist/safe-bash/playwright/modal-capabilities.d.ts.map +1 -0
  83. package/dist/safe-bash/playwright/modal-capabilities.js +137 -0
  84. package/dist/safe-bash/playwright/modal-capabilities.js.map +1 -0
  85. package/dist/safe-bash/playwright/native-json-snapshot.d.ts +17 -0
  86. package/dist/safe-bash/playwright/native-json-snapshot.d.ts.map +1 -0
  87. package/dist/safe-bash/playwright/native-json-snapshot.js +94 -0
  88. package/dist/safe-bash/playwright/native-json-snapshot.js.map +1 -0
  89. package/dist/safe-bash/playwright/native-snapshot.d.ts +17 -0
  90. package/dist/safe-bash/playwright/native-snapshot.d.ts.map +1 -0
  91. package/dist/safe-bash/playwright/native-snapshot.js +164 -0
  92. package/dist/safe-bash/playwright/native-snapshot.js.map +1 -0
  93. package/dist/safe-bash/playwright/network-policy.d.ts +2 -0
  94. package/dist/safe-bash/playwright/network-policy.d.ts.map +1 -1
  95. package/dist/safe-bash/playwright/network-policy.js +1 -1
  96. package/dist/safe-bash/playwright/network-policy.js.map +1 -1
  97. package/dist/safe-bash/playwright/open-options.d.ts +14 -0
  98. package/dist/safe-bash/playwright/open-options.d.ts.map +1 -0
  99. package/dist/safe-bash/playwright/open-options.js +279 -0
  100. package/dist/safe-bash/playwright/open-options.js.map +1 -0
  101. package/dist/safe-bash/playwright/recording-capabilities.d.ts +6 -0
  102. package/dist/safe-bash/playwright/recording-capabilities.d.ts.map +1 -0
  103. package/dist/safe-bash/playwright/recording-capabilities.js +83 -0
  104. package/dist/safe-bash/playwright/recording-capabilities.js.map +1 -0
  105. package/dist/safe-bash/playwright/resource-limit.d.ts +6 -0
  106. package/dist/safe-bash/playwright/resource-limit.d.ts.map +1 -0
  107. package/dist/safe-bash/playwright/resource-limit.js +8 -0
  108. package/dist/safe-bash/playwright/resource-limit.js.map +1 -0
  109. package/dist/safe-bash/playwright/response.d.ts +22 -0
  110. package/dist/safe-bash/playwright/response.d.ts.map +1 -0
  111. package/dist/safe-bash/playwright/response.js +43 -0
  112. package/dist/safe-bash/playwright/response.js.map +1 -0
  113. package/dist/safe-bash/playwright/route-capabilities.d.ts +25 -0
  114. package/dist/safe-bash/playwright/route-capabilities.d.ts.map +1 -0
  115. package/dist/safe-bash/playwright/route-capabilities.js +138 -0
  116. package/dist/safe-bash/playwright/route-capabilities.js.map +1 -0
  117. package/dist/safe-bash/playwright/screenshot.d.ts +3 -1
  118. package/dist/safe-bash/playwright/screenshot.d.ts.map +1 -1
  119. package/dist/safe-bash/playwright/screenshot.js +15 -12
  120. package/dist/safe-bash/playwright/screenshot.js.map +1 -1
  121. package/dist/safe-bash/playwright/session-configuration.d.ts +35 -0
  122. package/dist/safe-bash/playwright/session-configuration.d.ts.map +1 -0
  123. package/dist/safe-bash/playwright/session-configuration.js +50 -0
  124. package/dist/safe-bash/playwright/session-configuration.js.map +1 -0
  125. package/dist/safe-bash/playwright/session-runtime.d.ts +8 -0
  126. package/dist/safe-bash/playwright/session-runtime.d.ts.map +1 -0
  127. package/dist/safe-bash/playwright/session-runtime.js +96 -0
  128. package/dist/safe-bash/playwright/session-runtime.js.map +1 -0
  129. package/dist/safe-bash/playwright/snapshot.d.ts +15 -2
  130. package/dist/safe-bash/playwright/snapshot.d.ts.map +1 -1
  131. package/dist/safe-bash/playwright/snapshot.js +66 -7
  132. package/dist/safe-bash/playwright/snapshot.js.map +1 -1
  133. package/dist/safe-bash/playwright/standard-capabilities.d.ts +4 -0
  134. package/dist/safe-bash/playwright/standard-capabilities.d.ts.map +1 -0
  135. package/dist/safe-bash/playwright/standard-capabilities.js +248 -0
  136. package/dist/safe-bash/playwright/standard-capabilities.js.map +1 -0
  137. package/dist/safe-bash/playwright/storage-capabilities.d.ts +4 -0
  138. package/dist/safe-bash/playwright/storage-capabilities.d.ts.map +1 -0
  139. package/dist/safe-bash/playwright/storage-capabilities.js +120 -0
  140. package/dist/safe-bash/playwright/storage-capabilities.js.map +1 -0
  141. package/dist/safe-bash/playwright/storage-state.d.ts +8 -0
  142. package/dist/safe-bash/playwright/storage-state.d.ts.map +1 -0
  143. package/dist/safe-bash/playwright/storage-state.js +122 -0
  144. package/dist/safe-bash/playwright/storage-state.js.map +1 -0
  145. package/dist/safe-bash/playwright/target-screenshot.d.ts +9 -0
  146. package/dist/safe-bash/playwright/target-screenshot.d.ts.map +1 -0
  147. package/dist/safe-bash/playwright/target-screenshot.js +28 -0
  148. package/dist/safe-bash/playwright/target-screenshot.js.map +1 -0
  149. package/dist/safe-bash/playwright/targets.d.ts +12 -0
  150. package/dist/safe-bash/playwright/targets.d.ts.map +1 -0
  151. package/dist/safe-bash/playwright/targets.js +36 -0
  152. package/dist/safe-bash/playwright/targets.js.map +1 -0
  153. package/dist/safe-bash/playwright/tracing-capabilities.d.ts +12 -0
  154. package/dist/safe-bash/playwright/tracing-capabilities.d.ts.map +1 -0
  155. package/dist/safe-bash/playwright/tracing-capabilities.js +100 -0
  156. package/dist/safe-bash/playwright/tracing-capabilities.js.map +1 -0
  157. package/dist/safe-bash/playwright/webmcp-capabilities.d.ts +6 -0
  158. package/dist/safe-bash/playwright/webmcp-capabilities.d.ts.map +1 -0
  159. package/dist/safe-bash/playwright/webmcp-capabilities.js +122 -0
  160. package/dist/safe-bash/playwright/webmcp-capabilities.js.map +1 -0
  161. package/dist/safe-bash/playwright/workspace-assets.d.ts +5 -0
  162. package/dist/safe-bash/playwright/workspace-assets.d.ts.map +1 -0
  163. package/dist/safe-bash/playwright/workspace-assets.js +17 -0
  164. package/dist/safe-bash/playwright/workspace-assets.js.map +1 -0
  165. package/dist/safe-bash/playwright/workspace.d.ts +3 -0
  166. package/dist/safe-bash/playwright/workspace.d.ts.map +1 -0
  167. package/dist/safe-bash/playwright/workspace.js +48 -0
  168. package/dist/safe-bash/playwright/workspace.js.map +1 -0
  169. package/package.json +2 -2
@@ -1,4 +1,6 @@
1
1
  import { createFrameSnapshot } from './frame-snapshot.js';
2
+ import { captureNativePlaywrightSnapshot } from './native-snapshot.js';
3
+ import { captureNativePlaywrightJSON } from './native-json-snapshot.js';
2
4
  export function createSnapshotEngine(limits, nextRef) {
3
5
  for (const value of [limits?.maxSnapshotBytes, limits?.maxSnapshotRefs])
4
6
  if (!Number.isSafeInteger(value) || value < 1)
@@ -72,8 +74,24 @@ export function createSnapshotEngine(limits, nextRef) {
72
74
  await retire([]);
73
75
  }
74
76
  };
75
- const capture = async (page, signal) => {
77
+ const capture = async (page, signal, options = {}) => {
76
78
  signal?.throwIfAborted();
79
+ if (!page.ariaSnapshot && !page._snapshotForAI && (options.root || options.depth || options.boxes))
80
+ throw new Error('Native snapshot options unsupported by this browser');
81
+ if (page.ariaSnapshot || page._snapshotForAI) {
82
+ await invalidate();
83
+ const capturedEpoch = epoch;
84
+ const captured = await captureNativePlaywrightSnapshot(page, { maxBytes: maxSnapshotBytes, maxRefs: maxSnapshotRefs,
85
+ nextRef: nextRef ?? (() => `e${++sequence}`), ...(signal ? { signal } : {}),
86
+ ...options,
87
+ });
88
+ signal?.throwIfAborted();
89
+ if (capturedEpoch !== epoch)
90
+ throw new Error('Snapshot stale during capture');
91
+ for (const [issued, ref] of captured.refs)
92
+ refs.set(issued, { kind: 'native', page, ref });
93
+ return captured.text;
94
+ }
77
95
  if (typeof page.frames !== 'function')
78
96
  throw new Error('Snapshot engine unsupported: public frame evaluation required');
79
97
  const frames = page.frames();
@@ -96,26 +114,26 @@ export function createSnapshotEngine(limits, nextRef) {
96
114
  signal?.throwIfAborted();
97
115
  const admission = await capsule.evaluate(value => ({ status: value.status, count: value.count }), undefined);
98
116
  if (admission.status === 'ref-limit' || admission.count > maxSnapshotRefs - pending.size)
99
- throw new Error('Snapshot ref limit exceeded');
117
+ throw new PlaywrightResourceLimitError('Snapshot ref limit exceeded');
100
118
  if (admission.status !== 'ok' || !Number.isSafeInteger(admission.count) || admission.count < 0)
101
119
  throw new Error('Snapshot capture failed');
102
120
  const frameRefs = [];
103
121
  for (let slot = 0; slot < admission.count; slot++) {
104
122
  const ref = nextRef?.() ?? `e${++sequence}`;
105
123
  frameRefs.push(ref);
106
- pending.set(ref, { capsule, slot });
124
+ pending.set(ref, { kind: 'capsule', capsule, slot });
107
125
  }
108
126
  signal?.throwIfAborted();
109
127
  const rendered = await capsule.evaluate((value, frameRefs) => value.render(frameRefs), frameRefs);
110
128
  if (rendered.status === 'byte-limit')
111
- throw new Error('Snapshot byte limit exceeded');
129
+ throw new PlaywrightResourceLimitError('Snapshot byte limit exceeded');
112
130
  if (rendered.status !== 'ok' || typeof rendered.text !== 'string')
113
131
  throw new Error('Snapshot capture failed');
114
132
  if (rendered.text.length > maxSnapshotBytes - bytes)
115
- throw new Error('Snapshot byte limit exceeded');
133
+ throw new PlaywrightResourceLimitError('Snapshot byte limit exceeded');
116
134
  bytes += new TextEncoder().encode(rendered.text).byteLength;
117
135
  if (bytes > maxSnapshotBytes)
118
- throw new Error('Snapshot byte limit exceeded');
136
+ throw new PlaywrightResourceLimitError('Snapshot byte limit exceeded');
119
137
  text += rendered.text;
120
138
  }
121
139
  signal?.throwIfAborted();
@@ -142,6 +160,31 @@ export function createSnapshotEngine(limits, nextRef) {
142
160
  if (!reference)
143
161
  throw new Error(`Unknown or stale snapshot ref: ${ref}; snapshot again`);
144
162
  const capturedEpoch = epoch;
163
+ if (reference.kind === 'native') {
164
+ if (!reference.native) {
165
+ const locator = reference.page.locator(`aria-ref=${reference.ref}`);
166
+ if (!locator.elementHandle)
167
+ throw new Error('Native snapshot target resolution unavailable');
168
+ let handle;
169
+ try {
170
+ handle = await locator.elementHandle({ timeout: 30000 });
171
+ }
172
+ catch {
173
+ throw new Error(`Snapshot ref stale: ${ref}; snapshot again`);
174
+ }
175
+ if (!handle || capturedEpoch !== epoch) {
176
+ if (handle)
177
+ await retire([handle]);
178
+ throw new Error(`Snapshot ref stale: ${ref}; snapshot again`);
179
+ }
180
+ resources.add(handle);
181
+ reference.native = handle;
182
+ }
183
+ const connected = await reference.native.evaluate(node => node.isConnected);
184
+ if (!connected || capturedEpoch !== epoch)
185
+ throw new Error(`Snapshot ref stale: ${ref}; snapshot again`);
186
+ return reference.native;
187
+ }
145
188
  let connected = false;
146
189
  try {
147
190
  connected = await reference.capsule.evaluate((capsule, slot) => {
@@ -166,6 +209,22 @@ export function createSnapshotEngine(limits, nextRef) {
166
209
  }
167
210
  return reference.native;
168
211
  };
169
- return { capture, resolve, invalidate, withReferences };
212
+ const captureJSON = async (page, signal, options = {}) => {
213
+ await invalidate();
214
+ const capturedEpoch = epoch;
215
+ const captured = await captureNativePlaywrightJSON(page, { maxBytes: maxSnapshotBytes, maxRefs: maxSnapshotRefs,
216
+ nextRef: nextRef ?? (() => `e${++sequence}`), ...(signal ? { signal } : {}), ...options });
217
+ signal?.throwIfAborted();
218
+ if (capturedEpoch !== epoch)
219
+ throw new Error('Snapshot stale during capture');
220
+ for (const [issued, ref] of captured.refs)
221
+ refs.set(issued, { kind: 'native', page, ref });
222
+ return captured.tree;
223
+ };
224
+ return { capture, captureJSON, resolve, invalidate, withReferences, nativeSelector(ref) {
225
+ const reference = refs.get(ref);
226
+ return reference?.kind === 'native' ? `aria-ref=${reference.ref}` : undefined;
227
+ } };
170
228
  }
229
+ import { PlaywrightResourceLimitError } from './resource-limit.js';
171
230
  //# sourceMappingURL=snapshot.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"snapshot.js","sourceRoot":"","sources":["../../src/playwright/snapshot.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"snapshot.js","sourceRoot":"","sources":["../../src/playwright/snapshot.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import type { PlaywrightAbility } from './abilities.js';
2
+ import type { PlaywrightCommand } from './catalog.js';
3
+ export declare const playwrightStandardAbilities: Partial<Record<PlaywrightCommand, PlaywrightAbility>>;
4
+ //# sourceMappingURL=standard-capabilities.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"standard-capabilities.d.ts","sourceRoot":"","sources":["../../src/playwright/standard-capabilities.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAExD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AA2ItD,eAAO,MAAM,2BAA2B,EAAE,OAAO,CAAC,MAAM,CAAC,iBAAiB,EAAE,iBAAiB,CAAC,CAgF7F,CAAC"}
@@ -0,0 +1,248 @@
1
+ import { capabilityAction, capabilityActionCode, capabilityArtifact, capabilityLocator, capabilityResult, numeric, requirePage, requireSession, unsupported } from './capability-result.js';
2
+ import { playwrightLocatorSelector } from './locator-selector.js';
3
+ import { playwrightStorageAbilities } from './storage-capabilities.js';
4
+ import { playwrightEventAbilities } from './capability-events.js';
5
+ import { playwrightTracingStart, playwrightTracingStop } from './tracing-capabilities.js';
6
+ import { playwrightModalAbilities } from './modal-capabilities.js';
7
+ import { playwrightDrop } from './drop-capability.js';
8
+ import { playwrightWebMCPAbilities } from './webmcp-capabilities.js';
9
+ import { playwrightRecordingAbilities } from './recording-capabilities.js';
10
+ import { playwrightRouteAbilities } from './route-capabilities.js';
11
+ import { PlaywrightResourceLimitError } from './resource-limit.js';
12
+ function button(value) {
13
+ if (value === undefined)
14
+ return 'left';
15
+ if (value !== 'left' && value !== 'right' && value !== 'middle')
16
+ throw new Error(`Invalid mouse button: ${value}`);
17
+ return value;
18
+ }
19
+ const navigation = { scope: 'session', async execute(request) {
20
+ const page = requirePage(request);
21
+ const method = request.command === 'go-back' ? 'goBack' : request.command === 'go-forward' ? 'goForward' : 'reload';
22
+ if (!page[method])
23
+ unsupported(method);
24
+ await requireSession(request).invalidateTargets?.();
25
+ await capabilityAction(request, async () => { await page[method]({ timeout: request.limits?.navigationTimeoutMs ?? 60000 }); });
26
+ return capabilityResult(`await page.${method}();`);
27
+ } };
28
+ const keyboard = { scope: 'session', options: 'all', async execute(request) {
29
+ const page = requirePage(request);
30
+ const value = request.args[0];
31
+ const method = request.command === 'keydown' ? 'down' : request.command === 'keyup' ? 'up' : 'insertText';
32
+ if (!page.keyboard[method])
33
+ unsupported(`keyboard.${method}`);
34
+ await capabilityAction(request, async () => {
35
+ await page.keyboard[method](value);
36
+ if (request.options.submit)
37
+ await page.keyboard.press('Enter');
38
+ });
39
+ return capabilityResult(`await page.keyboard.${method}(${JSON.stringify(value)});${request.options.submit ? "\nawait page.keyboard.press('Enter');" : ''}`);
40
+ } };
41
+ const mouse = { scope: 'session', async execute(request) {
42
+ const mouse = requirePage(request).mouse;
43
+ if (!mouse)
44
+ unsupported('mouse');
45
+ const method = request.command.slice('mouse'.length);
46
+ if (method === 'down' || method === 'up') {
47
+ const options = { button: button(request.args[0]) };
48
+ await capabilityAction(request, () => mouse[method](options));
49
+ return capabilityResult(`await page.mouse.${method}(${JSON.stringify(options)});`);
50
+ }
51
+ const x = numeric(request.args[0], 'mouse coordinate');
52
+ const y = numeric(request.args[1], 'mouse coordinate');
53
+ await capabilityAction(request, () => method === 'move' ? mouse.move(x, y) : mouse.wheel(x, y));
54
+ return capabilityResult(`await page.mouse.${method}(${x}, ${y});`);
55
+ } };
56
+ const element = { scope: 'session', options: 'all', async execute(request) {
57
+ const session = requireSession(request);
58
+ const target = await session.resolveTarget(request.args[0]);
59
+ const locator = capabilityLocator(request.args[0], request);
60
+ const selector = session.generateActionCode && session.configuration?.codegen !== 'none'
61
+ ? playwrightLocatorSelector(requirePage(request), locator.slice('page.'.length)) : request.args[0];
62
+ const method = request.command;
63
+ if (method === 'select') {
64
+ if (!target.selectOption)
65
+ unsupported('selectOption');
66
+ await capabilityAction(request, async () => { await target.selectOption(request.args[1], { timeout: request.limits?.actionTimeoutMs ?? 30000 }); });
67
+ return capabilityResult(capabilityActionCode(request, { name: 'select', selector, options: [request.args[1]] }, `await ${locator}.selectOption(${JSON.stringify(request.args[1])});`));
68
+ }
69
+ if (!target[method])
70
+ unsupported(method);
71
+ const options = { timeout: request.limits?.actionTimeoutMs ?? 30000 };
72
+ if (method === 'dblclick') {
73
+ options.button = button(request.args[1]);
74
+ if (request.options.modifiers) {
75
+ const modifiers = Array.isArray(request.options.modifiers) ? request.options.modifiers : [request.options.modifiers];
76
+ if (modifiers.some(value => !['Alt', 'Control', 'ControlOrMeta', 'Meta', 'Shift'].includes(value)))
77
+ throw new Error('Invalid click modifier');
78
+ options.modifiers = modifiers;
79
+ }
80
+ }
81
+ await capabilityAction(request, () => target[method](options));
82
+ const fallback = `await ${locator}.${method}(${method === 'dblclick' ? JSON.stringify({ button: options.button, ...(options.modifiers ? { modifiers: options.modifiers } : {}) }) : ''});`;
83
+ if (method !== 'dblclick')
84
+ return capabilityResult(capabilityActionCode(request, { name: method, selector }, fallback));
85
+ const modifiers = options.modifiers ?? [];
86
+ const mask = (modifiers.includes('Alt') ? 1 : 0) | (modifiers.includes('Control') || modifiers.includes('ControlOrMeta') ? 2 : 0) | (modifiers.includes('Meta') ? 4 : 0) | (modifiers.includes('Shift') ? 8 : 0);
87
+ return capabilityResult(capabilityActionCode(request, { name: 'click', selector, button: options.button, modifiers: mask, clickCount: 2 }, fallback));
88
+ } };
89
+ const drag = { scope: 'session', async execute(request) {
90
+ const session = requireSession(request);
91
+ const mouse = requirePage(request).mouse;
92
+ if (!mouse)
93
+ unsupported('mouse');
94
+ const start = await session.resolveTarget(request.args[0]);
95
+ const end = await session.resolveTarget(request.args[1]);
96
+ if (!start.boundingBox || !end.boundingBox)
97
+ unsupported('element boundingBox');
98
+ const first = await start.boundingBox(), last = await end.boundingBox();
99
+ if (!first || !last)
100
+ throw new Error('Drag target is not visible');
101
+ await capabilityAction(request, async () => {
102
+ await mouse.move(first.x + first.width / 2, first.y + first.height / 2);
103
+ await mouse.down();
104
+ try {
105
+ await mouse.move(last.x + last.width / 2, last.y + last.height / 2);
106
+ await mouse.move(last.x + last.width / 2, last.y + last.height / 2);
107
+ }
108
+ finally {
109
+ await mouse.up();
110
+ }
111
+ });
112
+ return capabilityResult(`await ${capabilityLocator(request.args[0], request)}.dragTo(${capabilityLocator(request.args[1], request)});`);
113
+ } };
114
+ const evaluate = { scope: 'session', options: 'all', async execute(request) {
115
+ const page = requirePage(request);
116
+ const expression = request.args[0];
117
+ const maxBytes = request.limits?.maxCommandBytes ?? 1048576;
118
+ const input = { expression, maxBytes };
119
+ let serialized;
120
+ await capabilityAction(request, async () => {
121
+ if (request.args[1] !== undefined) {
122
+ const element = await requireSession(request).resolveTarget(request.args[1]);
123
+ serialized = await element.evaluate(async (element, { expression, maxBytes }) => {
124
+ // This function executes in the isolated page, never in the host runtime.
125
+ const value = eval(`(${expression})`);
126
+ const result = await (typeof value === 'function' ? value(element) : value);
127
+ const text = JSON.stringify(result, null, 2) ?? 'undefined';
128
+ if (text.length > maxBytes || new TextEncoder().encode(text).length > maxBytes)
129
+ return null;
130
+ return text;
131
+ }, input);
132
+ }
133
+ else {
134
+ if (!page.evaluate)
135
+ unsupported('evaluate');
136
+ serialized = await page.evaluate(async ({ expression, maxBytes }) => {
137
+ const value = eval(`(${expression})`);
138
+ const result = await (typeof value === 'function' ? value() : value);
139
+ const text = JSON.stringify(result, null, 2) ?? 'undefined';
140
+ if (text.length > maxBytes || new TextEncoder().encode(text).length > maxBytes)
141
+ return null;
142
+ return text;
143
+ }, input);
144
+ }
145
+ if (serialized === null)
146
+ throw new PlaywrightResourceLimitError('Playwright evaluation result byte limit exceeded');
147
+ });
148
+ const code = `await ${request.args[1] ? capabilityLocator(request.args[1], request) : 'page'}.evaluate(${JSON.stringify(expression)});`;
149
+ if (request.options.filename && typeof serialized === 'string')
150
+ return capabilityArtifact(request, new TextEncoder().encode(serialized), 'result', 'json', 'Evaluation result', () => code, request.options.filename);
151
+ return capabilityResult(code, serialized ?? undefined);
152
+ } };
153
+ export const playwrightStandardAbilities = {
154
+ ...playwrightStorageAbilities,
155
+ ...playwrightEventAbilities,
156
+ ...playwrightModalAbilities,
157
+ ...playwrightWebMCPAbilities,
158
+ ...playwrightRecordingAbilities,
159
+ ...playwrightRouteAbilities,
160
+ drop: playwrightDrop,
161
+ 'tracing-start': playwrightTracingStart, 'tracing-stop': playwrightTracingStop,
162
+ 'go-back': navigation, 'go-forward': navigation, reload: navigation,
163
+ type: keyboard, keydown: keyboard, keyup: keyboard,
164
+ mousemove: mouse, mousedown: mouse, mouseup: mouse, mousewheel: mouse,
165
+ dblclick: element, hover: element, select: element, check: element, uncheck: element, drag,
166
+ eval: evaluate,
167
+ 'video-show-actions': { scope: 'session', options: 'all', async execute(request) {
168
+ const screencast = requirePage(request).screencast;
169
+ if (!screencast?.showActions)
170
+ unsupported('native action annotations');
171
+ const options = {};
172
+ if (request.options.duration !== undefined)
173
+ options.duration = numeric(request.options.duration, 'annotation duration');
174
+ const position = request.options.position;
175
+ if (position !== undefined) {
176
+ if (typeof position !== 'string' || !['top-left', 'top', 'top-right', 'bottom-left', 'bottom', 'bottom-right'].includes(position))
177
+ throw new Error('Invalid annotation position');
178
+ options.position = position;
179
+ }
180
+ const cursor = request.options.cursor;
181
+ if (cursor !== undefined) {
182
+ if (cursor !== 'none' && cursor !== 'pointer')
183
+ throw new Error('Invalid annotation cursor');
184
+ options.cursor = cursor;
185
+ }
186
+ await screencast.showActions(options);
187
+ return capabilityResult('', 'Action annotations enabled.');
188
+ } },
189
+ 'video-hide-actions': { scope: 'session', async execute(request) {
190
+ const screencast = requirePage(request).screencast;
191
+ if (!screencast?.hideActions)
192
+ unsupported('native action annotations');
193
+ await screencast.hideActions();
194
+ return capabilityResult('', 'Action annotations disabled.');
195
+ } },
196
+ 'run-code': { scope: 'session', options: 'all', async execute(request) {
197
+ const source = request.options.filename !== undefined
198
+ ? new TextDecoder('utf-8', { fatal: true }).decode(await request.readFile(request.options.filename))
199
+ : request.args[0];
200
+ if (typeof source !== 'string' || !source.trim())
201
+ throw new Error('Code or --filename is required');
202
+ const maxOutputBytes = request.limits?.maxCommandBytes ?? 1048576;
203
+ if (new TextEncoder().encode(source).byteLength > maxOutputBytes)
204
+ throw new PlaywrightResourceLimitError('Playwright code source byte limit exceeded');
205
+ const session = requireSession(request);
206
+ if (!session.executeCode)
207
+ unsupported('native code execution');
208
+ const page = requirePage(request);
209
+ let output;
210
+ await capabilityAction(request, async () => {
211
+ const result = await session.executeCode({ page, source, signal: request.signal,
212
+ timeoutMs: request.limits?.codeExecutionTimeoutMs ?? 30000, maxOutputBytes, maxPages: request.limits?.maxPages ?? 16 });
213
+ if (result !== undefined) {
214
+ output = JSON.stringify(result);
215
+ if (output !== undefined && new TextEncoder().encode(output).byteLength > maxOutputBytes)
216
+ throw new PlaywrightResourceLimitError('Playwright code result byte limit exceeded');
217
+ }
218
+ });
219
+ return capabilityResult(`await (${source})(page);`, output);
220
+ } },
221
+ resize: { scope: 'session', async execute(request) {
222
+ const page = requirePage(request);
223
+ if (!page.setViewportSize)
224
+ unsupported('setViewportSize');
225
+ const width = numeric(request.args[0], 'viewport width'), height = numeric(request.args[1], 'viewport height');
226
+ if (![width, height].every(value => Number.isSafeInteger(value) && value > 0 && value <= 32768))
227
+ throw new Error('Invalid viewport size');
228
+ await page.setViewportSize({ width, height });
229
+ return capabilityResult(`await page.setViewportSize({ width: ${width}, height: ${height} });`);
230
+ } },
231
+ pdf: { scope: 'session', options: 'all', async execute(request) {
232
+ const page = requirePage(request);
233
+ if (!page.pdf)
234
+ unsupported('pdf');
235
+ return capabilityArtifact(request, await page.pdf(), 'page', 'pdf', 'PDF', filename => `await page.pdf({ path: ${JSON.stringify(filename)} });`, request.options.filename);
236
+ } },
237
+ 'network-state-set': { scope: 'session', async execute(request) {
238
+ const context = requireSession(request).context;
239
+ if (!context.setOffline)
240
+ unsupported('setOffline');
241
+ const state = request.args[0];
242
+ if (state !== 'online' && state !== 'offline')
243
+ throw new Error('Invalid network state');
244
+ await context.setOffline(state === 'offline');
245
+ return capabilityResult(`await page.context().setOffline(${state === 'offline'});`, `Network is now ${state}`);
246
+ } },
247
+ };
248
+ //# sourceMappingURL=standard-capabilities.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"standard-capabilities.js","sourceRoot":"","sources":["../../src/playwright/standard-capabilities.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import type { PlaywrightAbility } from './abilities.js';
2
+ import type { PlaywrightCommand } from './catalog.js';
3
+ export declare const playwrightStorageAbilities: Partial<Record<PlaywrightCommand, PlaywrightAbility>>;
4
+ //# sourceMappingURL=storage-capabilities.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"storage-capabilities.d.ts","sourceRoot":"","sources":["../../src/playwright/storage-capabilities.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAA4B,MAAM,gBAAgB,CAAC;AAGlF,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AA4FtD,eAAO,MAAM,0BAA0B,EAAE,OAAO,CAAC,MAAM,CAAC,iBAAiB,EAAE,iBAAiB,CAAC,CAI5F,CAAC"}
@@ -0,0 +1,120 @@
1
+ import { PlaywrightResourceLimitError } from './resource-limit.js';
2
+ import { capabilityArtifact, capabilityResult, numeric, requirePage, requireSession, unsupported } from './capability-result.js';
3
+ import { parsePlaywrightStorageState } from './storage-state.js';
4
+ const stateSave = { scope: 'session', options: 'all', async execute(request) {
5
+ const context = requireSession(request).context;
6
+ if (!context.storageState)
7
+ unsupported('storageState');
8
+ // CLI 0.1.20 does not request IndexedDB. Its state-load accepts explicitly
9
+ // supplied state and passes all supported state fields to the native browser.
10
+ const state = await context.storageState();
11
+ request.signal.throwIfAborted();
12
+ return capabilityArtifact(request, new TextEncoder().encode(JSON.stringify(state, null, 2)), 'storage-state', 'json', 'Storage state', filename => `await page.context().storageState({ path: ${JSON.stringify(filename)} });`, request.args[0]);
13
+ } };
14
+ const stateLoad = { scope: 'session', async execute(request) {
15
+ const session = requireSession(request);
16
+ const bytes = await request.readFile(request.args[0]);
17
+ const state = parsePlaywrightStorageState(JSON.parse(new TextDecoder('utf-8', { fatal: true }).decode(bytes)), { maxBytes: request.limits?.maxCommandBytes ?? 1048576 });
18
+ request.signal.throwIfAborted();
19
+ if (session.context.setStorageState)
20
+ await session.context.setStorageState(state);
21
+ else if (session.replaceContext)
22
+ await session.replaceContext(state);
23
+ else
24
+ unsupported('storage state replacement');
25
+ return capabilityResult(`await page.context().setStorageState(${JSON.stringify(request.args[0])});`, `Storage state restored from ${request.args[0]}`);
26
+ } };
27
+ const cookies = { scope: 'session', options: 'all', async execute(request) {
28
+ const context = requireSession(request).context;
29
+ const name = request.args[0];
30
+ if (request.command === 'cookie-list' || request.command === 'cookie-get') {
31
+ if (!context.cookies)
32
+ unsupported('cookies');
33
+ let values = await context.cookies();
34
+ if (request.options.domain)
35
+ values = values.filter(cookie => cookie.domain.includes(request.options.domain));
36
+ if (request.options.path)
37
+ values = values.filter(cookie => cookie.path.startsWith(request.options.path));
38
+ const cookie = values.find(item => item.name === name);
39
+ const text = request.command === 'cookie-get'
40
+ ? cookie ? `${cookie.name}=${cookie.value} (domain: ${cookie.domain}, path: ${cookie.path}, httpOnly: ${cookie.httpOnly}, secure: ${cookie.secure}, sameSite: ${cookie.sameSite})` : `Cookie '${name}' not found`
41
+ : values.length ? values.map(cookie => `${cookie.name}=${cookie.value} (domain: ${cookie.domain}, path: ${cookie.path})`).join('\n') : 'No cookies found';
42
+ return capabilityResult('await page.context().cookies();', text);
43
+ }
44
+ if (request.command === 'cookie-set') {
45
+ if (!context.addCookies)
46
+ unsupported('addCookies');
47
+ const cookie = { name, value: request.args[1], domain: request.options.domain || new URL(requirePage(request).url()).hostname, path: request.options.path || '/' };
48
+ if (request.options.expires !== undefined)
49
+ cookie.expires = numeric(request.options.expires, 'cookie expires');
50
+ if (request.options.httpOnly !== undefined)
51
+ cookie.httpOnly = request.options.httpOnly === true;
52
+ if (request.options.secure !== undefined)
53
+ cookie.secure = request.options.secure === true;
54
+ if (request.options.sameSite !== undefined) {
55
+ const value = request.options.sameSite;
56
+ if (value !== 'Strict' && value !== 'Lax' && value !== 'None')
57
+ throw new Error('Invalid cookie sameSite');
58
+ cookie.sameSite = value;
59
+ }
60
+ await context.addCookies([cookie]);
61
+ return capabilityResult(`await page.context().addCookies([${JSON.stringify(cookie)}]);`);
62
+ }
63
+ if (!context.clearCookies)
64
+ unsupported('clearCookies');
65
+ const filter = request.command === 'cookie-delete' ? { name } : undefined;
66
+ await context.clearCookies(filter);
67
+ return capabilityResult(`await page.context().clearCookies(${filter ? `{ name: ${JSON.stringify(name)} }` : ''});`);
68
+ } };
69
+ async function webStorage(request) {
70
+ const page = requirePage(request);
71
+ if (!page.evaluate)
72
+ unsupported('evaluate');
73
+ const storage = request.command.startsWith('local') ? 'localStorage' : 'sessionStorage';
74
+ const operation = request.command.slice(request.command.indexOf('-') + 1);
75
+ const key = request.args[0] ?? '';
76
+ const value = request.args[1] ?? '';
77
+ const result = await page.evaluate(({ storage, operation, key, value, maxBytes }) => {
78
+ const browser = globalThis;
79
+ const target = browser[storage];
80
+ if (operation === 'set') {
81
+ target.setItem(key, value);
82
+ return null;
83
+ }
84
+ if (operation === 'delete') {
85
+ target.removeItem(key);
86
+ return null;
87
+ }
88
+ if (operation === 'clear') {
89
+ target.clear();
90
+ return null;
91
+ }
92
+ const values = [];
93
+ let bytes = 0;
94
+ for (let index = 0; index < (operation === 'get' ? 1 : target.length); index++) {
95
+ const name = operation === 'get' ? key : target.key(index);
96
+ if (name === null)
97
+ continue;
98
+ const value = target.getItem(name);
99
+ if (value === null)
100
+ continue;
101
+ bytes += new TextEncoder().encode(name).length + new TextEncoder().encode(value).length + 2;
102
+ if (bytes > maxBytes)
103
+ return false;
104
+ values.push({ name, value });
105
+ }
106
+ return values;
107
+ }, { storage, operation, key, value, maxBytes: request.limits?.maxCommandBytes ?? 1048576 });
108
+ if (result === false)
109
+ throw new PlaywrightResourceLimitError('Playwright storage result byte limit exceeded');
110
+ const method = { list: 'items', get: 'getItem', set: 'setItem', delete: 'removeItem', clear: 'clear' }[operation];
111
+ const args = ['get', 'set', 'delete'].includes(operation) ? [key, ...(operation === 'set' ? [value] : [])].map(item => JSON.stringify(item)).join(', ') : '';
112
+ const text = result === null ? undefined : result.length ? result.map(item => `${item.name}=${item.value}`).join('\n') : operation === 'get' ? `${storage} key '${key}' not found` : `No ${storage} items found`;
113
+ return capabilityResult(`await page.${storage}.${method}(${args});`, text);
114
+ }
115
+ export const playwrightStorageAbilities = {
116
+ 'state-save': stateSave, 'state-load': stateLoad,
117
+ ...Object.fromEntries(['cookie-list', 'cookie-get', 'cookie-set', 'cookie-delete', 'cookie-clear'].map(command => [command, cookies])),
118
+ ...Object.fromEntries(['localstorage', 'sessionstorage'].flatMap(prefix => ['list', 'get', 'set', 'delete', 'clear'].map(operation => [`${prefix}-${operation}`, { scope: 'session', execute: webStorage }]))),
119
+ };
120
+ //# sourceMappingURL=storage-capabilities.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"storage-capabilities.js","sourceRoot":"","sources":["../../src/playwright/storage-capabilities.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ import type { PlaywrightStorageState } from './adapter.js';
2
+ /** Validate the portable native storage-state format before handing it to a browser. */
3
+ export declare function parsePlaywrightStorageState(value: unknown, options?: {
4
+ maxBytes?: number;
5
+ maxNodes?: number;
6
+ maxDepth?: number;
7
+ }): PlaywrightStorageState;
8
+ //# sourceMappingURL=storage-state.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"storage-state.d.ts","sourceRoot":"","sources":["../../src/playwright/storage-state.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AAE3D,wFAAwF;AACxF,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,GAAE;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAO,GAAG,sBAAsB,CAiF7J"}