@remotion/renderer 4.0.266 → 4.0.268
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/bundle.ts +27 -0
- package/dist/assets/download-map.js +7 -2
- package/dist/browser/Browser.d.ts +7 -3
- package/dist/browser/Browser.js +12 -4
- package/dist/browser/BrowserPage.d.ts +7 -3
- package/dist/browser/BrowserPage.js +68 -57
- package/dist/browser/Target.d.ts +3 -1
- package/dist/browser/Target.js +2 -1
- package/dist/esm/client.mjs +3095 -0
- package/dist/esm/error-handling.mjs +341 -0
- package/dist/esm/index.mjs +22662 -0
- package/dist/esm/pure.mjs +528 -0
- package/dist/get-browser-instance.d.ts +3 -1
- package/dist/get-browser-instance.js +3 -1
- package/dist/get-compositions.js +4 -12
- package/dist/make-page.d.ts +1 -1
- package/dist/make-page.js +4 -13
- package/dist/options/offthreadvideo-threads.d.ts +1 -1
- package/dist/options/offthreadvideo-threads.js +1 -1
- package/dist/render-frame-and-retry-target-close.js +1 -0
- package/dist/render-still.js +4 -12
- package/dist/select-composition.js +4 -12
- package/dist/test-gpu.js +1 -0
- package/package.json +53 -13
- package/dist/compositor/compose.d.ts +0 -4
- package/dist/compositor/compose.js +0 -79
package/bundle.ts
ADDED
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import {buildPackage} from '../.monorepo/builder';
|
|
2
|
+
|
|
3
|
+
await buildPackage({
|
|
4
|
+
formats: {
|
|
5
|
+
cjs: 'use-tsc',
|
|
6
|
+
esm: 'build',
|
|
7
|
+
},
|
|
8
|
+
external: 'dependencies',
|
|
9
|
+
entrypoints: [
|
|
10
|
+
{
|
|
11
|
+
path: 'src/index.ts',
|
|
12
|
+
target: 'node',
|
|
13
|
+
},
|
|
14
|
+
{
|
|
15
|
+
path: 'src/client.ts',
|
|
16
|
+
target: 'node',
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
path: 'src/pure.ts',
|
|
20
|
+
target: 'browser',
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
path: 'src/error-handling.ts',
|
|
24
|
+
target: 'node',
|
|
25
|
+
},
|
|
26
|
+
],
|
|
27
|
+
});
|
|
@@ -37,8 +37,13 @@ const makeAndReturn = (dir, name) => {
|
|
|
37
37
|
(0, node_fs_1.mkdirSync)(p);
|
|
38
38
|
return p;
|
|
39
39
|
};
|
|
40
|
-
const
|
|
41
|
-
|
|
40
|
+
const dontInlineThis = 'package.json';
|
|
41
|
+
let packageJsonPath = null;
|
|
42
|
+
try {
|
|
43
|
+
packageJsonPath = require.resolve('../../' + dontInlineThis);
|
|
44
|
+
}
|
|
45
|
+
catch (_a) { }
|
|
46
|
+
const packageJson = packageJsonPath && node_fs_1.default.existsSync(packageJsonPath)
|
|
42
47
|
? JSON.parse(node_fs_1.default.readFileSync(packageJsonPath, 'utf-8'))
|
|
43
48
|
: null;
|
|
44
49
|
const makeDownloadMap = () => {
|
|
@@ -13,6 +13,7 @@
|
|
|
13
13
|
* See the License for the specific language governing permissions and
|
|
14
14
|
* limitations under the License.
|
|
15
15
|
*/
|
|
16
|
+
import { BrowserLog } from '../browser-log';
|
|
16
17
|
import type { LogLevel } from '../log-level';
|
|
17
18
|
import type { Page } from './BrowserPage';
|
|
18
19
|
import type { BrowserRunner } from './BrowserRunner';
|
|
@@ -50,17 +51,19 @@ export declare class HeadlessBrowser extends EventEmitter {
|
|
|
50
51
|
runner: BrowserRunner;
|
|
51
52
|
});
|
|
52
53
|
browserContexts(): BrowserContext[];
|
|
53
|
-
newPage({ context, logLevel, indent, pageIndex, }: {
|
|
54
|
+
newPage({ context, logLevel, indent, pageIndex, onBrowserLog, }: {
|
|
54
55
|
context: SourceMapGetter;
|
|
55
56
|
logLevel: LogLevel;
|
|
56
57
|
indent: boolean;
|
|
57
58
|
pageIndex: number;
|
|
59
|
+
onBrowserLog: null | ((log: BrowserLog) => void);
|
|
58
60
|
}): Promise<Page>;
|
|
59
|
-
_createPageInContext({ context, logLevel, indent, pageIndex, }: {
|
|
61
|
+
_createPageInContext({ context, logLevel, indent, pageIndex, onBrowserLog, }: {
|
|
60
62
|
context: SourceMapGetter;
|
|
61
63
|
logLevel: LogLevel;
|
|
62
64
|
indent: boolean;
|
|
63
65
|
pageIndex: number;
|
|
66
|
+
onBrowserLog: null | ((log: BrowserLog) => void);
|
|
64
67
|
}): Promise<Page>;
|
|
65
68
|
targets(): Target[];
|
|
66
69
|
waitForTarget(predicate: (x: Target) => boolean | Promise<boolean>, options?: WaitForTargetOptions): Promise<Target>;
|
|
@@ -78,11 +81,12 @@ export declare class BrowserContext extends EventEmitter {
|
|
|
78
81
|
timeout?: number;
|
|
79
82
|
}): Promise<Target>;
|
|
80
83
|
pages(): Promise<Page[]>;
|
|
81
|
-
newPage({ context, logLevel, indent, pageIndex, }: {
|
|
84
|
+
newPage({ context, logLevel, indent, pageIndex, onBrowserLog, }: {
|
|
82
85
|
context: SourceMapGetter;
|
|
83
86
|
logLevel: LogLevel;
|
|
84
87
|
indent: boolean;
|
|
85
88
|
pageIndex: number;
|
|
89
|
+
onBrowserLog: null | ((log: BrowserLog) => void);
|
|
86
90
|
}): Promise<Page>;
|
|
87
91
|
browser(): HeadlessBrowser;
|
|
88
92
|
}
|
package/dist/browser/Browser.js
CHANGED
|
@@ -74,10 +74,16 @@ class HeadlessBrowser extends EventEmitter_1.EventEmitter {
|
|
|
74
74
|
browserContexts() {
|
|
75
75
|
return [__classPrivateFieldGet(this, _HeadlessBrowser_defaultContext, "f"), ...Array.from(__classPrivateFieldGet(this, _HeadlessBrowser_contexts, "f").values())];
|
|
76
76
|
}
|
|
77
|
-
newPage({ context, logLevel, indent, pageIndex, }) {
|
|
78
|
-
return __classPrivateFieldGet(this, _HeadlessBrowser_defaultContext, "f").newPage({
|
|
77
|
+
newPage({ context, logLevel, indent, pageIndex, onBrowserLog, }) {
|
|
78
|
+
return __classPrivateFieldGet(this, _HeadlessBrowser_defaultContext, "f").newPage({
|
|
79
|
+
context,
|
|
80
|
+
logLevel,
|
|
81
|
+
indent,
|
|
82
|
+
pageIndex,
|
|
83
|
+
onBrowserLog,
|
|
84
|
+
});
|
|
79
85
|
}
|
|
80
|
-
async _createPageInContext({ context, logLevel, indent, pageIndex, }) {
|
|
86
|
+
async _createPageInContext({ context, logLevel, indent, pageIndex, onBrowserLog, }) {
|
|
81
87
|
const { value: { targetId }, } = await this.connection.send('Target.createTarget', {
|
|
82
88
|
url: 'about:blank',
|
|
83
89
|
browserContextId: undefined,
|
|
@@ -95,6 +101,7 @@ class HeadlessBrowser extends EventEmitter_1.EventEmitter {
|
|
|
95
101
|
logLevel,
|
|
96
102
|
indent,
|
|
97
103
|
pageIndex,
|
|
104
|
+
onBrowserLog,
|
|
98
105
|
});
|
|
99
106
|
if (!page) {
|
|
100
107
|
throw new Error(`Failed to create a page for context`);
|
|
@@ -218,12 +225,13 @@ class BrowserContext extends EventEmitter_1.EventEmitter {
|
|
|
218
225
|
return Boolean(page);
|
|
219
226
|
});
|
|
220
227
|
}
|
|
221
|
-
newPage({ context, logLevel, indent, pageIndex, }) {
|
|
228
|
+
newPage({ context, logLevel, indent, pageIndex, onBrowserLog, }) {
|
|
222
229
|
return __classPrivateFieldGet(this, _BrowserContext_browser, "f")._createPageInContext({
|
|
223
230
|
context,
|
|
224
231
|
logLevel,
|
|
225
232
|
indent,
|
|
226
233
|
pageIndex,
|
|
234
|
+
onBrowserLog,
|
|
227
235
|
});
|
|
228
236
|
}
|
|
229
237
|
browser() {
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { BrowserLog } from '../browser-log';
|
|
1
2
|
import type { LogLevel } from '../log-level';
|
|
2
3
|
import type { HeadlessBrowser } from './Browser';
|
|
3
4
|
import type { CDPSession } from './Connection';
|
|
@@ -15,7 +16,6 @@ interface WaitForOptions {
|
|
|
15
16
|
timeout?: number;
|
|
16
17
|
}
|
|
17
18
|
export declare const enum PageEmittedEvents {
|
|
18
|
-
Console = "console",
|
|
19
19
|
Error = "error",
|
|
20
20
|
Disposed = "disposed"
|
|
21
21
|
}
|
|
@@ -27,7 +27,7 @@ interface PageEventObject {
|
|
|
27
27
|
export declare class Page extends EventEmitter {
|
|
28
28
|
#private;
|
|
29
29
|
id: string;
|
|
30
|
-
static _create({ client, target, defaultViewport, browser, sourceMapGetter, logLevel, indent, pageIndex, }: {
|
|
30
|
+
static _create({ client, target, defaultViewport, browser, sourceMapGetter, logLevel, indent, pageIndex, onBrowserLog, }: {
|
|
31
31
|
client: CDPSession;
|
|
32
32
|
target: Target;
|
|
33
33
|
defaultViewport: Viewport;
|
|
@@ -36,14 +36,17 @@ export declare class Page extends EventEmitter {
|
|
|
36
36
|
logLevel: LogLevel;
|
|
37
37
|
indent: boolean;
|
|
38
38
|
pageIndex: number;
|
|
39
|
+
onBrowserLog: null | ((log: BrowserLog) => void);
|
|
39
40
|
}): Promise<Page>;
|
|
40
41
|
closed: boolean;
|
|
41
42
|
browser: HeadlessBrowser;
|
|
42
43
|
screenshotTaskQueue: TaskQueue;
|
|
43
44
|
sourceMapGetter: SourceMapGetter;
|
|
44
45
|
logLevel: LogLevel;
|
|
46
|
+
indent: boolean;
|
|
45
47
|
pageIndex: number;
|
|
46
|
-
|
|
48
|
+
onBrowserLog: null | ((log: BrowserLog) => void);
|
|
49
|
+
constructor({ client, target, browser, sourceMapGetter, logLevel, indent, pageIndex, onBrowserLog, }: {
|
|
47
50
|
client: CDPSession;
|
|
48
51
|
target: Target;
|
|
49
52
|
browser: HeadlessBrowser;
|
|
@@ -51,6 +54,7 @@ export declare class Page extends EventEmitter {
|
|
|
51
54
|
logLevel: LogLevel;
|
|
52
55
|
indent: boolean;
|
|
53
56
|
pageIndex: number;
|
|
57
|
+
onBrowserLog: null | ((log: BrowserLog) => void);
|
|
54
58
|
});
|
|
55
59
|
/**
|
|
56
60
|
* Listen to page events.
|
|
@@ -10,7 +10,7 @@ var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (
|
|
|
10
10
|
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
|
|
11
11
|
return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
|
|
12
12
|
};
|
|
13
|
-
var _Page_instances, _Page_client, _Page_target, _Page_timeoutSettings, _Page_frameManager, _Page_pageBindings, _Page_initialize, _Page_onTargetCrashed, _Page_onLogEntryAdded, _Page_onConsoleAPI, _Page_onBindingCalled, _Page_addConsoleMessage;
|
|
13
|
+
var _Page_instances, _Page_client, _Page_target, _Page_timeoutSettings, _Page_frameManager, _Page_pageBindings, _Page_onConsole, _Page_initialize, _Page_onTargetCrashed, _Page_onLogEntryAdded, _Page_onConsoleAPI, _Page_onBindingCalled, _Page_addConsoleMessage;
|
|
14
14
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
15
|
exports.Page = void 0;
|
|
16
16
|
/**
|
|
@@ -49,7 +49,7 @@ const shouldHideWarning = (log) => {
|
|
|
49
49
|
return false;
|
|
50
50
|
};
|
|
51
51
|
class Page extends EventEmitter_1.EventEmitter {
|
|
52
|
-
static async _create({ client, target, defaultViewport, browser, sourceMapGetter, logLevel, indent, pageIndex, }) {
|
|
52
|
+
static async _create({ client, target, defaultViewport, browser, sourceMapGetter, logLevel, indent, pageIndex, onBrowserLog, }) {
|
|
53
53
|
const page = new Page({
|
|
54
54
|
client,
|
|
55
55
|
target,
|
|
@@ -58,12 +58,13 @@ class Page extends EventEmitter_1.EventEmitter {
|
|
|
58
58
|
logLevel,
|
|
59
59
|
indent,
|
|
60
60
|
pageIndex,
|
|
61
|
+
onBrowserLog,
|
|
61
62
|
});
|
|
62
63
|
await __classPrivateFieldGet(page, _Page_instances, "m", _Page_initialize).call(page);
|
|
63
64
|
await page.setViewport(defaultViewport);
|
|
64
65
|
return page;
|
|
65
66
|
}
|
|
66
|
-
constructor({ client, target, browser, sourceMapGetter, logLevel, indent, pageIndex, }) {
|
|
67
|
+
constructor({ client, target, browser, sourceMapGetter, logLevel, indent, pageIndex, onBrowserLog, }) {
|
|
67
68
|
super();
|
|
68
69
|
_Page_instances.add(this);
|
|
69
70
|
this.closed = false;
|
|
@@ -72,57 +73,23 @@ class Page extends EventEmitter_1.EventEmitter {
|
|
|
72
73
|
_Page_timeoutSettings.set(this, new TimeoutSettings_1.TimeoutSettings());
|
|
73
74
|
_Page_frameManager.set(this, void 0);
|
|
74
75
|
_Page_pageBindings.set(this, new Map());
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
__classPrivateFieldSet(this, _Page_frameManager, new FrameManager_1.FrameManager(client, this, indent, logLevel), "f");
|
|
78
|
-
this.screenshotTaskQueue = new TaskQueue_1.TaskQueue();
|
|
79
|
-
this.browser = browser;
|
|
80
|
-
this.id = String(Math.random());
|
|
81
|
-
this.sourceMapGetter = sourceMapGetter;
|
|
82
|
-
this.logLevel = logLevel;
|
|
83
|
-
this.pageIndex = pageIndex;
|
|
84
|
-
client.on('Target.attachedToTarget', (event) => {
|
|
85
|
-
switch (event.targetInfo.type) {
|
|
86
|
-
case 'iframe':
|
|
87
|
-
break;
|
|
88
|
-
case 'worker':
|
|
89
|
-
break;
|
|
90
|
-
default:
|
|
91
|
-
// If we don't detach from service workers, they will never die.
|
|
92
|
-
// We still want to attach to workers for emitting events.
|
|
93
|
-
// We still want to attach to iframes so sessions may interact with them.
|
|
94
|
-
// We detach from all other types out of an abundance of caution.
|
|
95
|
-
// See https://source.chromium.org/chromium/chromium/src/+/main:content/browser/devtools/devtools_agent_host_impl.cc?ss=chromium&q=f:devtools%20-f:out%20%22::kTypePage%5B%5D%22
|
|
96
|
-
// for the complete list of available types.
|
|
97
|
-
client
|
|
98
|
-
.send('Target.detachFromTarget', {
|
|
99
|
-
sessionId: event.sessionId,
|
|
100
|
-
})
|
|
101
|
-
.catch((err) => logger_1.Log.error({ indent, logLevel }, err));
|
|
102
|
-
}
|
|
103
|
-
});
|
|
104
|
-
client.on('Runtime.consoleAPICalled', (event) => {
|
|
105
|
-
return __classPrivateFieldGet(this, _Page_instances, "m", _Page_onConsoleAPI).call(this, event);
|
|
106
|
-
});
|
|
107
|
-
client.on('Runtime.bindingCalled', (event) => {
|
|
108
|
-
return __classPrivateFieldGet(this, _Page_instances, "m", _Page_onBindingCalled).call(this, event);
|
|
109
|
-
});
|
|
110
|
-
client.on('Inspector.targetCrashed', () => {
|
|
111
|
-
return __classPrivateFieldGet(this, _Page_instances, "m", _Page_onTargetCrashed).call(this);
|
|
112
|
-
});
|
|
113
|
-
client.on('Log.entryAdded', (event) => {
|
|
114
|
-
return __classPrivateFieldGet(this, _Page_instances, "m", _Page_onLogEntryAdded).call(this, event);
|
|
115
|
-
});
|
|
116
|
-
this.on('console', (log) => {
|
|
117
|
-
var _a;
|
|
76
|
+
_Page_onConsole.set(this, (log) => {
|
|
77
|
+
var _a, _b;
|
|
118
78
|
const { url, columnNumber, lineNumber } = log.location();
|
|
79
|
+
const logLevel = this.logLevel;
|
|
80
|
+
const indent = this.indent;
|
|
119
81
|
if (shouldHideWarning(log)) {
|
|
120
82
|
return;
|
|
121
83
|
}
|
|
84
|
+
(_a = this.onBrowserLog) === null || _a === void 0 ? void 0 : _a.call(this, {
|
|
85
|
+
stackTrace: log.stackTrace(),
|
|
86
|
+
text: log.text,
|
|
87
|
+
type: log.type,
|
|
88
|
+
});
|
|
122
89
|
if ((url === null || url === void 0 ? void 0 : url.endsWith(no_react_1.NoReactInternals.bundleName)) &&
|
|
123
90
|
lineNumber &&
|
|
124
91
|
this.sourceMapGetter()) {
|
|
125
|
-
const origPosition = (
|
|
92
|
+
const origPosition = (_b = this.sourceMapGetter()) === null || _b === void 0 ? void 0 : _b.originalPositionFor({
|
|
126
93
|
column: columnNumber !== null && columnNumber !== void 0 ? columnNumber : 0,
|
|
127
94
|
line: lineNumber,
|
|
128
95
|
});
|
|
@@ -161,6 +128,49 @@ class Page extends EventEmitter_1.EventEmitter {
|
|
|
161
128
|
logger_1.Log.verbose({ logLevel, tag: `console.${log.type}`, indent }, log.text);
|
|
162
129
|
}
|
|
163
130
|
});
|
|
131
|
+
__classPrivateFieldSet(this, _Page_client, client, "f");
|
|
132
|
+
__classPrivateFieldSet(this, _Page_target, target, "f");
|
|
133
|
+
__classPrivateFieldSet(this, _Page_frameManager, new FrameManager_1.FrameManager(client, this, indent, logLevel), "f");
|
|
134
|
+
this.screenshotTaskQueue = new TaskQueue_1.TaskQueue();
|
|
135
|
+
this.browser = browser;
|
|
136
|
+
this.id = String(Math.random());
|
|
137
|
+
this.sourceMapGetter = sourceMapGetter;
|
|
138
|
+
this.logLevel = logLevel;
|
|
139
|
+
this.indent = indent;
|
|
140
|
+
this.pageIndex = pageIndex;
|
|
141
|
+
this.onBrowserLog = onBrowserLog;
|
|
142
|
+
client.on('Target.attachedToTarget', (event) => {
|
|
143
|
+
switch (event.targetInfo.type) {
|
|
144
|
+
case 'iframe':
|
|
145
|
+
break;
|
|
146
|
+
case 'worker':
|
|
147
|
+
break;
|
|
148
|
+
default:
|
|
149
|
+
// If we don't detach from service workers, they will never die.
|
|
150
|
+
// We still want to attach to workers for emitting events.
|
|
151
|
+
// We still want to attach to iframes so sessions may interact with them.
|
|
152
|
+
// We detach from all other types out of an abundance of caution.
|
|
153
|
+
// See https://source.chromium.org/chromium/chromium/src/+/main:content/browser/devtools/devtools_agent_host_impl.cc?ss=chromium&q=f:devtools%20-f:out%20%22::kTypePage%5B%5D%22
|
|
154
|
+
// for the complete list of available types.
|
|
155
|
+
client
|
|
156
|
+
.send('Target.detachFromTarget', {
|
|
157
|
+
sessionId: event.sessionId,
|
|
158
|
+
})
|
|
159
|
+
.catch((err) => logger_1.Log.error({ indent, logLevel }, err));
|
|
160
|
+
}
|
|
161
|
+
});
|
|
162
|
+
client.on('Runtime.consoleAPICalled', (event) => {
|
|
163
|
+
return __classPrivateFieldGet(this, _Page_instances, "m", _Page_onConsoleAPI).call(this, event);
|
|
164
|
+
});
|
|
165
|
+
client.on('Runtime.bindingCalled', (event) => {
|
|
166
|
+
return __classPrivateFieldGet(this, _Page_instances, "m", _Page_onBindingCalled).call(this, event);
|
|
167
|
+
});
|
|
168
|
+
client.on('Inspector.targetCrashed', () => {
|
|
169
|
+
return __classPrivateFieldGet(this, _Page_instances, "m", _Page_onTargetCrashed).call(this);
|
|
170
|
+
});
|
|
171
|
+
client.on('Log.entryAdded', (event) => {
|
|
172
|
+
return __classPrivateFieldGet(this, _Page_instances, "m", _Page_onLogEntryAdded).call(this, event);
|
|
173
|
+
});
|
|
164
174
|
}
|
|
165
175
|
/**
|
|
166
176
|
* Listen to page events.
|
|
@@ -277,7 +287,7 @@ class Page extends EventEmitter_1.EventEmitter {
|
|
|
277
287
|
}
|
|
278
288
|
}
|
|
279
289
|
exports.Page = Page;
|
|
280
|
-
_Page_client = new WeakMap(), _Page_target = new WeakMap(), _Page_timeoutSettings = new WeakMap(), _Page_frameManager = new WeakMap(), _Page_pageBindings = new WeakMap(), _Page_instances = new WeakSet(), _Page_initialize = async function _Page_initialize() {
|
|
290
|
+
_Page_client = new WeakMap(), _Page_target = new WeakMap(), _Page_timeoutSettings = new WeakMap(), _Page_frameManager = new WeakMap(), _Page_pageBindings = new WeakMap(), _Page_onConsole = new WeakMap(), _Page_instances = new WeakSet(), _Page_initialize = async function _Page_initialize() {
|
|
281
291
|
await Promise.all([
|
|
282
292
|
__classPrivateFieldGet(this, _Page_frameManager, "f").initialize(),
|
|
283
293
|
__classPrivateFieldGet(this, _Page_client, "f").send('Target.setAutoAttach', {
|
|
@@ -291,6 +301,7 @@ _Page_client = new WeakMap(), _Page_target = new WeakMap(), _Page_timeoutSetting
|
|
|
291
301
|
}, _Page_onTargetCrashed = function _Page_onTargetCrashed() {
|
|
292
302
|
this.emit('error', new Error('Page crashed!'));
|
|
293
303
|
}, _Page_onLogEntryAdded = function _Page_onLogEntryAdded(event) {
|
|
304
|
+
var _a;
|
|
294
305
|
const { level, text, args, source, url, lineNumber } = event.entry;
|
|
295
306
|
if (args) {
|
|
296
307
|
args.map((arg) => {
|
|
@@ -305,13 +316,19 @@ _Page_client = new WeakMap(), _Page_target = new WeakMap(), _Page_timeoutSetting
|
|
|
305
316
|
.join(', ')
|
|
306
317
|
: '';
|
|
307
318
|
if (source !== 'worker') {
|
|
308
|
-
|
|
319
|
+
const message = new ConsoleMessage_1.ConsoleMessage({
|
|
309
320
|
type: level,
|
|
310
321
|
text,
|
|
311
322
|
args: [],
|
|
312
323
|
stackTraceLocations: [{ url, lineNumber }],
|
|
313
324
|
previewString,
|
|
314
|
-
})
|
|
325
|
+
});
|
|
326
|
+
(_a = this.onBrowserLog) === null || _a === void 0 ? void 0 : _a.call(this, {
|
|
327
|
+
stackTrace: message.stackTrace(),
|
|
328
|
+
text: message.text,
|
|
329
|
+
type: message.type,
|
|
330
|
+
});
|
|
331
|
+
__classPrivateFieldGet(this, _Page_onConsole, "f").call(this, message);
|
|
315
332
|
}
|
|
316
333
|
}, _Page_onConsoleAPI = function _Page_onConsoleAPI(event) {
|
|
317
334
|
if (event.executionContextId === 0) {
|
|
@@ -356,12 +373,6 @@ _Page_client = new WeakMap(), _Page_target = new WeakMap(), _Page_timeoutSetting
|
|
|
356
373
|
contextId: event.executionContextId,
|
|
357
374
|
});
|
|
358
375
|
}, _Page_addConsoleMessage = function _Page_addConsoleMessage(eventType, args, stackTrace) {
|
|
359
|
-
if (!this.listenerCount("console" /* PageEmittedEvents.Console */)) {
|
|
360
|
-
args.forEach((arg) => {
|
|
361
|
-
return arg.dispose();
|
|
362
|
-
});
|
|
363
|
-
return;
|
|
364
|
-
}
|
|
365
376
|
const textTokens = [];
|
|
366
377
|
for (const arg of args) {
|
|
367
378
|
const remoteObject = arg._remoteObject;
|
|
@@ -393,5 +404,5 @@ _Page_client = new WeakMap(), _Page_target = new WeakMap(), _Page_timeoutSetting
|
|
|
393
404
|
stackTraceLocations,
|
|
394
405
|
previewString,
|
|
395
406
|
});
|
|
396
|
-
this
|
|
407
|
+
__classPrivateFieldGet(this, _Page_onConsole, "f").call(this, message);
|
|
397
408
|
};
|
package/dist/browser/Target.d.ts
CHANGED
|
@@ -13,6 +13,7 @@
|
|
|
13
13
|
* See the License for the specific language governing permissions and
|
|
14
14
|
* limitations under the License.
|
|
15
15
|
*/
|
|
16
|
+
import { BrowserLog } from '../browser-log';
|
|
16
17
|
import type { LogLevel } from '../log-level';
|
|
17
18
|
import type { BrowserContext, HeadlessBrowser } from './Browser';
|
|
18
19
|
import { Page } from './BrowserPage';
|
|
@@ -37,11 +38,12 @@ export declare class Target {
|
|
|
37
38
|
/**
|
|
38
39
|
* If the target is not of type `"page"` or `"background_page"`, returns `null`.
|
|
39
40
|
*/
|
|
40
|
-
page({ sourceMapGetter, logLevel, indent, pageIndex, }: {
|
|
41
|
+
page({ sourceMapGetter, logLevel, indent, pageIndex, onBrowserLog, }: {
|
|
41
42
|
sourceMapGetter: SourceMapGetter;
|
|
42
43
|
logLevel: LogLevel;
|
|
43
44
|
indent: boolean;
|
|
44
45
|
pageIndex: number;
|
|
46
|
+
onBrowserLog: null | ((log: BrowserLog) => void);
|
|
45
47
|
}): Promise<Page | null>;
|
|
46
48
|
expectPage(): Promise<Page | null>;
|
|
47
49
|
url(): string;
|
package/dist/browser/Target.js
CHANGED
|
@@ -79,7 +79,7 @@ class Target {
|
|
|
79
79
|
/**
|
|
80
80
|
* If the target is not of type `"page"` or `"background_page"`, returns `null`.
|
|
81
81
|
*/
|
|
82
|
-
async page({ sourceMapGetter, logLevel, indent, pageIndex, }) {
|
|
82
|
+
async page({ sourceMapGetter, logLevel, indent, pageIndex, onBrowserLog, }) {
|
|
83
83
|
var _a;
|
|
84
84
|
if (isPagetTarget(__classPrivateFieldGet(this, _Target_targetInfo, "f")) && !__classPrivateFieldGet(this, _Target_pagePromise, "f")) {
|
|
85
85
|
__classPrivateFieldSet(this, _Target_pagePromise, __classPrivateFieldGet(this, _Target_sessionFactory, "f").call(this).then((client) => {
|
|
@@ -93,6 +93,7 @@ class Target {
|
|
|
93
93
|
logLevel,
|
|
94
94
|
indent,
|
|
95
95
|
pageIndex,
|
|
96
|
+
onBrowserLog,
|
|
96
97
|
});
|
|
97
98
|
}), "f");
|
|
98
99
|
}
|