@playwright-repl/runner 0.21.5 → 0.21.7

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.
@@ -88,7 +88,19 @@ function needsNode(filePath) {
88
88
  * Uses esbuild with an alias plugin to replace @playwright/test with the bridge shim.
89
89
  */
90
90
  async function compile(testFilePath) {
91
- const esbuild = require('esbuild');
91
+ // Use native esbuild when available (fast), fall back to esbuild-wasm (cross-platform)
92
+ let esbuild;
93
+ if (process.env.PW_USE_ESBUILD_WASM) {
94
+ esbuild = require('esbuild-wasm');
95
+ }
96
+ else {
97
+ try {
98
+ esbuild = require('esbuild');
99
+ }
100
+ catch {
101
+ esbuild = require('esbuild-wasm');
102
+ }
103
+ }
92
104
  const testDir = path.dirname(testFilePath);
93
105
  const testFileName = path.basename(testFilePath);
94
106
  const shimPath = path.resolve(__dirname, 'shim', 'alias.ts');
@@ -1 +1 @@
1
- {"version":3,"file":"bridge-utils.cjs","sourceRoot":"","sources":["../src/bridge-utils.cts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bridge-utils.cjs","sourceRoot":"","sources":["../src/bridge-utils.cts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"bridge-utils.d.cts","sourceRoot":"","sources":["../src/bridge-utils.cts"],"names":[],"mappings":"AAAA;;;;GAIG;AAsCH;;;GAGG;AACH,wBAAgB,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAgCnD;AAID;;;GAGG;AACH,wBAAsB,OAAO,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAiCnE;AAID,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;CAC/B;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,eAAe,EAAE,CA0B/D;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,MAAM,GAAG,eAAe,CAoBnF;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,MAAM,GAAG,eAAe,CAyB/E"}
1
+ {"version":3,"file":"bridge-utils.d.cts","sourceRoot":"","sources":["../src/bridge-utils.cts"],"names":[],"mappings":"AAAA;;;;GAIG;AAsCH;;;GAGG;AACH,wBAAgB,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAgCnD;AAID;;;GAGG;AACH,wBAAsB,OAAO,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAuCnE;AAID,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;CAC/B;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,eAAe,EAAE,CA0B/D;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,MAAM,GAAG,eAAe,CAoBnF;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,MAAM,GAAG,eAAe,CAyB/E"}
@@ -1,17 +1,33 @@
1
1
  import "../modulepreload-polyfill.js";
2
2
  import { c as clientExports, j as jsxRuntimeExports, r as reactExports } from "../index.js";
3
- import { aa as panelReducer, ab as initialState, g as attachToTab, ac as onConsoleEvent, a5 as Console } from "../index2.js";
3
+ import { aa as panelReducer, ab as initialState, ac as onConsoleEvent, a5 as Console, g as attachToTab } from "../index2.js";
4
4
  import "../sw-debugger-core.js";
5
5
  function DevToolsConsole() {
6
6
  const [state, dispatch] = reactExports.useReducer(panelReducer, initialState);
7
7
  reactExports.useEffect(() => {
8
- if (chrome.devtools?.inspectedWindow) {
9
- const tabId = chrome.devtools.inspectedWindow.tabId;
10
- attachToTab(tabId).then((res) => {
11
- if (res.ok && res.url)
12
- dispatch({ type: "ATTACH_SUCCESS", url: res.url, tabId });
13
- }).catch((e) => console.warn("[pw-repl] auto-attach failed:", e));
8
+ const inspectedTabId = chrome.devtools?.inspectedWindow?.tabId;
9
+ async function doAttach(tabId) {
10
+ const [res, tab] = await Promise.all([
11
+ attachToTab(tabId),
12
+ chrome.tabs.get(tabId).catch(() => null)
13
+ ]);
14
+ if (res.ok && res.url) {
15
+ const idx = (tab?.index ?? 0) + 1;
16
+ dispatch({ type: "ATTACH_SUCCESS", url: res.url, tabId });
17
+ dispatch({ type: "ADD_LINE", line: { text: `Attached to tab ${idx}: ${res.url}`, type: "info" } });
18
+ }
19
+ }
20
+ if (inspectedTabId) {
21
+ doAttach(inspectedTabId).catch((e) => console.warn("[pw-repl] auto-attach failed:", e));
14
22
  }
23
+ const onActivated = (info) => {
24
+ if (!inspectedTabId || info.tabId !== inspectedTabId) return;
25
+ doAttach(inspectedTabId).catch((e) => console.warn("[pw-repl] re-attach failed:", e));
26
+ };
27
+ chrome.tabs.onActivated.addListener(onActivated);
28
+ return () => {
29
+ chrome.tabs.onActivated.removeListener(onActivated);
30
+ };
15
31
  }, []);
16
32
  reactExports.useEffect(() => {
17
33
  onConsoleEvent((level, args) => {
@@ -1 +1 @@
1
- {"version":3,"file":"console.js","sources":["../../src/devtools/console.tsx"],"sourcesContent":["/**\r\n * DevTools REPL Console — mounts the Console component in a DevTools panel.\r\n */\r\nimport '../panel/panel.css';\r\nimport { createRoot } from 'react-dom/client';\r\nimport { useReducer, useEffect } from 'react';\r\nimport { panelReducer, initialState } from '../panel/reducer';\r\nimport { attachToTab } from '../panel/lib/bridge';\r\nimport { Console } from '../panel/components/Console';\r\nimport { onConsoleEvent } from '../panel/lib/sw-debugger';\r\n\r\nfunction DevToolsConsole() {\r\n const [state, dispatch] = useReducer(panelReducer, initialState);\r\n\r\n // Auto-attach to the inspected tab\r\n useEffect(() => {\r\n if (chrome.devtools?.inspectedWindow) {\r\n const tabId = chrome.devtools.inspectedWindow.tabId;\r\n attachToTab(tabId).then(res => {\r\n if (res.ok && res.url)\r\n dispatch({ type: 'ATTACH_SUCCESS', url: res.url, tabId });\r\n }).catch(e => console.warn('[pw-repl] auto-attach failed:', e));\r\n }\r\n }, []);\r\n\r\n // Forward console.log/error from the page\r\n useEffect(() => {\r\n onConsoleEvent((level, args) => {\r\n for (const arg of args) {\r\n const type = level === 'error' ? 'error' : level === 'warn' ? 'info' : 'success';\r\n dispatch({ type: 'ADD_LINE', line: { text: '', type, value: arg } });\r\n }\r\n });\r\n return () => onConsoleEvent(null);\r\n }, [dispatch]);\r\n\r\n return <Console outputLines={state.outputLines} dispatch={dispatch} />;\r\n}\r\n\r\ncreateRoot(document.getElementById('root')!).render(<DevToolsConsole />);\r\n"],"names":["useReducer","useEffect","jsx","createRoot"],"mappings":";;;;AAWA,SAAS,kBAAkB;AACzB,QAAM,CAAC,OAAO,QAAQ,IAAIA,aAAAA,WAAW,cAAc,YAAY;AAG/DC,eAAAA,UAAU,MAAM;AACd,QAAI,OAAO,UAAU,iBAAiB;AACpC,YAAM,QAAQ,OAAO,SAAS,gBAAgB;AAC9C,kBAAY,KAAK,EAAE,KAAK,CAAA,QAAO;AAC7B,YAAI,IAAI,MAAM,IAAI;AAChB,mBAAS,EAAE,MAAM,kBAAkB,KAAK,IAAI,KAAK,OAAO;AAAA,MAC5D,CAAC,EAAE,MAAM,CAAA,MAAK,QAAQ,KAAK,iCAAiC,CAAC,CAAC;AAAA,IAChE;AAAA,EACF,GAAG,CAAA,CAAE;AAGLA,eAAAA,UAAU,MAAM;AACd,mBAAe,CAAC,OAAO,SAAS;AAC9B,iBAAW,OAAO,MAAM;AACtB,cAAM,OAAO,UAAU,UAAU,UAAU,UAAU,SAAS,SAAS;AACvE,iBAAS,EAAE,MAAM,YAAY,MAAM,EAAE,MAAM,IAAI,MAAM,OAAO,IAAA,EAAI,CAAG;AAAA,MACrE;AAAA,IACF,CAAC;AACD,WAAO,MAAM,eAAe,IAAI;AAAA,EAClC,GAAG,CAAC,QAAQ,CAAC;AAEb,SAAOC,kCAAAA,IAAC,SAAA,EAAQ,aAAa,MAAM,aAAa,UAAoB;AACtE;AAEAC,cAAAA,WAAW,SAAS,eAAe,MAAM,CAAE,EAAE,OAAOD,kCAAAA,IAAC,mBAAgB,CAAE;"}
1
+ {"version":3,"file":"console.js","sources":["../../src/devtools/console.tsx"],"sourcesContent":["/**\r\n * DevTools REPL Console — mounts the Console component in a DevTools panel.\r\n */\r\nimport '../panel/panel.css';\r\nimport { createRoot } from 'react-dom/client';\r\nimport { useReducer, useEffect } from 'react';\r\nimport { panelReducer, initialState } from '../panel/reducer';\r\nimport { attachToTab } from '../panel/lib/bridge';\r\nimport { Console } from '../panel/components/Console';\r\nimport { onConsoleEvent } from '../panel/lib/sw-debugger';\r\n\r\nfunction DevToolsConsole() {\r\n const [state, dispatch] = useReducer(panelReducer, initialState);\r\n // Auto-attach to the inspected tab, re-attach when user switches back\r\n useEffect(() => {\r\n const inspectedTabId = chrome.devtools?.inspectedWindow?.tabId;\r\n\r\n async function doAttach(tabId: number) {\r\n const [res, tab] = await Promise.all([\r\n attachToTab(tabId),\r\n chrome.tabs.get(tabId).catch(() => null),\r\n ]);\r\n if (res.ok && res.url) {\r\n const idx = (tab?.index ?? 0) + 1;\r\n dispatch({ type: 'ATTACH_SUCCESS', url: res.url, tabId });\r\n dispatch({ type: 'ADD_LINE', line: { text: `Attached to tab ${idx}: ${res.url}`, type: 'info' } });\r\n }\r\n }\r\n\r\n if (inspectedTabId) {\r\n doAttach(inspectedTabId).catch(e => console.warn('[pw-repl] auto-attach failed:', e));\r\n }\r\n\r\n const onActivated = (info: chrome.tabs.TabActiveInfo) => {\r\n if (!inspectedTabId || info.tabId !== inspectedTabId) return;\r\n doAttach(inspectedTabId).catch(e => console.warn('[pw-repl] re-attach failed:', e));\r\n };\r\n chrome.tabs.onActivated.addListener(onActivated);\r\n\r\n return () => {\r\n chrome.tabs.onActivated.removeListener(onActivated);\r\n };\r\n }, []);\r\n\r\n // Forward console.log/error from the page\r\n useEffect(() => {\r\n onConsoleEvent((level, args) => {\r\n for (const arg of args) {\r\n const type = level === 'error' ? 'error' : level === 'warn' ? 'info' : 'success';\r\n dispatch({ type: 'ADD_LINE', line: { text: '', type, value: arg } });\r\n }\r\n });\r\n return () => onConsoleEvent(null);\r\n }, [dispatch]);\r\n\r\n return <Console outputLines={state.outputLines} dispatch={dispatch} />;\r\n}\r\n\r\ncreateRoot(document.getElementById('root')!).render(<DevToolsConsole />);\r\n"],"names":["useReducer","useEffect","jsx","createRoot"],"mappings":";;;;AAWA,SAAS,kBAAkB;AACzB,QAAM,CAAC,OAAO,QAAQ,IAAIA,aAAAA,WAAW,cAAc,YAAY;AAE/DC,eAAAA,UAAU,MAAM;AACd,UAAM,iBAAiB,OAAO,UAAU,iBAAiB;AAEzD,mBAAe,SAAS,OAAe;AACrC,YAAM,CAAC,KAAK,GAAG,IAAI,MAAM,QAAQ,IAAI;AAAA,QACnC,YAAY,KAAK;AAAA,QACjB,OAAO,KAAK,IAAI,KAAK,EAAE,MAAM,MAAM,IAAI;AAAA,MAAA,CACxC;AACD,UAAI,IAAI,MAAM,IAAI,KAAK;AACrB,cAAM,OAAO,KAAK,SAAS,KAAK;AAChC,iBAAS,EAAE,MAAM,kBAAkB,KAAK,IAAI,KAAK,OAAO;AACxD,iBAAS,EAAE,MAAM,YAAY,MAAM,EAAE,MAAM,mBAAmB,GAAG,KAAK,IAAI,GAAG,IAAI,MAAM,OAAA,GAAU;AAAA,MACnG;AAAA,IACF;AAEA,QAAI,gBAAgB;AAClB,eAAS,cAAc,EAAE,MAAM,CAAA,MAAK,QAAQ,KAAK,iCAAiC,CAAC,CAAC;AAAA,IACtF;AAEA,UAAM,cAAc,CAAC,SAAoC;AACvD,UAAI,CAAC,kBAAkB,KAAK,UAAU,eAAgB;AACtD,eAAS,cAAc,EAAE,MAAM,CAAA,MAAK,QAAQ,KAAK,+BAA+B,CAAC,CAAC;AAAA,IACpF;AACA,WAAO,KAAK,YAAY,YAAY,WAAW;AAE/C,WAAO,MAAM;AACX,aAAO,KAAK,YAAY,eAAe,WAAW;AAAA,IACpD;AAAA,EACF,GAAG,CAAA,CAAE;AAGLA,eAAAA,UAAU,MAAM;AACd,mBAAe,CAAC,OAAO,SAAS;AAC9B,iBAAW,OAAO,MAAM;AACtB,cAAM,OAAO,UAAU,UAAU,UAAU,UAAU,SAAS,SAAS;AACvE,iBAAS,EAAE,MAAM,YAAY,MAAM,EAAE,MAAM,IAAI,MAAM,OAAO,IAAA,EAAI,CAAG;AAAA,MACrE;AAAA,IACF,CAAC;AACD,WAAO,MAAM,eAAe,IAAI;AAAA,EAClC,GAAG,CAAC,QAAQ,CAAC;AAEb,SAAOC,kCAAAA,IAAC,SAAA,EAAQ,aAAa,MAAM,aAAa,UAAoB;AACtE;AAEAC,cAAAA,WAAW,SAAS,eAAe,MAAM,CAAE,EAAE,OAAOD,kCAAAA,IAAC,mBAAgB,CAAE;"}
@@ -1,6 +1,6 @@
1
1
  import "../modulepreload-polyfill.js";
2
2
  chrome.devtools.panels.create(
3
- "REPL",
3
+ "Playwright",
4
4
  "icons/dramaturg_icon_16.png",
5
5
  "devtools/console.html"
6
6
  );
@@ -1 +1 @@
1
- {"version":3,"file":"devtools.js","sources":["../../src/devtools/devtools.ts"],"sourcesContent":["/**\r\n * DevTools entry point — creates a \"REPL\" panel in Chrome DevTools.\r\n */\r\nchrome.devtools.panels.create(\r\n 'REPL',\r\n 'icons/dramaturg_icon_16.png',\r\n 'devtools/console.html',\r\n);\r\n"],"names":[],"mappings":";AAGA,OAAO,SAAS,OAAO;AAAA,EACrB;AAAA,EACA;AAAA,EACA;AACF;"}
1
+ {"version":3,"file":"devtools.js","sources":["../../src/devtools/devtools.ts"],"sourcesContent":["/**\r\n * DevTools entry point — creates a \"REPL\" panel in Chrome DevTools.\r\n */\r\nchrome.devtools.panels.create(\r\n 'Playwright',\r\n 'icons/dramaturg_icon_16.png',\r\n 'devtools/console.html',\r\n);\r\n"],"names":[],"mappings":";AAGA,OAAO,SAAS,OAAO;AAAA,EACrB;AAAA,EACA;AAAA,EACA;AACF;"}
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "manifest_version": 3,
3
3
  "name": "Dramaturg",
4
- "version": "0.20.0",
4
+ "version": "0.21.6",
5
5
  "description": "Playwright engineer's companion — console, editor, runner, debugger, and recorder in a Chrome side panel.",
6
6
  "permissions": [
7
7
  "activeTab",
@@ -118,10 +118,11 @@ function Toolbar({ editorContent, editorMode, stepLine, attachedUrl, attachedTab
118
118
  const lines = reactExports.useMemo(() => editorContent.split("\n"), [editorContent]);
119
119
  function isInternalUrl(url) {
120
120
  if (!url) return true;
121
- return url.startsWith("chrome://") || url.startsWith("chrome-extension://") || url.startsWith("about:");
121
+ return url.startsWith("chrome://") || url.startsWith("chrome-extension://");
122
122
  }
123
123
  function getTabLabel(tab) {
124
124
  try {
125
+ if (tab.url?.startsWith("about:")) return tab.url;
125
126
  const url = new URL(tab.url);
126
127
  if (url.protocol === "chrome:") return `chrome://${url.hostname}`;
127
128
  return url.hostname;
@@ -134,7 +135,7 @@ function Toolbar({ editorContent, editorMode, stepLine, attachedUrl, attachedTab
134
135
  const tabs = await chrome.tabs.query({});
135
136
  const ownOrigin = `chrome-extension://${chrome.runtime.id}/`;
136
137
  const panelUrl = `${ownOrigin}panel/panel.html`;
137
- setAvailableTabs(tabs.filter((t) => t?.url && !t.url.startsWith("about:") && !t.url.startsWith(panelUrl) && (!t.url.startsWith("chrome-extension://") || t.url.startsWith(ownOrigin))));
138
+ setAvailableTabs(tabs.filter((t) => t?.url && !t.url.startsWith(panelUrl) && (!t.url.startsWith("chrome-extension://") || t.url.startsWith(ownOrigin))));
138
139
  }
139
140
  async function checkActiveTab() {
140
141
  if (!chrome.tabs?.query) return;
@@ -2126,14 +2127,13 @@ function App() {
2126
2127
  const tab = tabs[0];
2127
2128
  const url = tab?.url ?? "";
2128
2129
  const ownOrigin = `chrome-extension://${chrome.runtime.id}/`;
2129
- if (tab?.id && !url.startsWith("chrome://") && !url.startsWith("about:") && (!url.startsWith("chrome-extension://") || url.startsWith(ownOrigin))) {
2130
+ if (tab?.id && !url.startsWith("chrome://") && (!url.startsWith("chrome-extension://") || url.startsWith(ownOrigin))) {
2130
2131
  doAttach(tab.id);
2131
2132
  }
2132
2133
  });
2133
2134
  const onActivated = async (info) => {
2134
2135
  const tab = await chrome.tabs.get(info.tabId).catch(() => null);
2135
2136
  const url = tab?.url ?? "";
2136
- if (url.startsWith("about:")) return;
2137
2137
  if (url.startsWith("chrome-extension://") && !url.startsWith(`chrome-extension://${chrome.runtime.id}/`)) return;
2138
2138
  if (url.startsWith("chrome://")) {
2139
2139
  attachedTabRef.current = null;
@@ -2148,7 +2148,7 @@ function App() {
2148
2148
  if (changeInfo.url) dispatch({ type: "UPDATE_URL", url: changeInfo.url });
2149
2149
  return;
2150
2150
  }
2151
- if (changeInfo.url && !changeInfo.url.startsWith("chrome://") && !changeInfo.url.startsWith("about:") && (!changeInfo.url.startsWith("chrome-extension://") || changeInfo.url.startsWith(`chrome-extension://${chrome.runtime.id}/`))) {
2151
+ if (changeInfo.url && !changeInfo.url.startsWith("chrome://") && (!changeInfo.url.startsWith("chrome-extension://") || changeInfo.url.startsWith(`chrome-extension://${chrome.runtime.id}/`))) {
2152
2152
  chrome.tabs.query({ active: true, currentWindow: true }, (tabs) => {
2153
2153
  if (tabs[0]?.id === tabId) doAttach(tabId);
2154
2154
  });