@remotion/renderer 4.0.404 → 4.0.406
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/dist/assets/apply-tone-frequency.d.ts +1 -2
- package/dist/assets/convert-assets-to-file-urls.d.ts +1 -2
- package/dist/assets/download-and-map-assets-to-file.d.ts +2 -3
- package/dist/assets/download-and-map-assets-to-file.js +1 -0
- package/dist/assets/download-file.d.ts +1 -0
- package/dist/assets/download-file.js +17 -1
- package/dist/assets/download-map.d.ts +1 -0
- package/dist/assets/download-map.js +2 -0
- package/dist/assets/get-audio-channels.d.ts +2 -3
- package/dist/assets/inline-audio-mixing.d.ts +1 -2
- package/dist/browser/Browser.d.ts +5 -5
- package/dist/browser/Browser.js +65 -74
- package/dist/browser/BrowserFetcher.d.ts +3 -5
- package/dist/browser/BrowserFetcher.js +1 -0
- package/dist/browser/BrowserPage.d.ts +4 -4
- package/dist/browser/BrowserPage.js +223 -218
- package/dist/browser/BrowserRunner.d.ts +1 -2
- package/dist/browser/Connection.js +99 -112
- package/dist/browser/ConsoleMessage.d.ts +1 -1
- package/dist/browser/ConsoleMessage.js +9 -16
- package/dist/browser/DOMWorld.d.ts +1 -1
- package/dist/browser/DOMWorld.js +75 -89
- package/dist/browser/Errors.js +2 -4
- package/dist/browser/EventEmitter.js +2 -1
- package/dist/browser/ExecutionContext.js +117 -120
- package/dist/browser/FrameManager.js +249 -244
- package/dist/browser/HTTPRequest.js +11 -22
- package/dist/browser/HTTPResponse.js +3 -16
- package/dist/browser/JSHandle.js +17 -30
- package/dist/browser/LifecycleWatcher.js +122 -128
- package/dist/browser/NetworkEventManager.js +31 -40
- package/dist/browser/NetworkManager.js +210 -203
- package/dist/browser/NodeWebSocketTransport.js +3 -0
- package/dist/browser/Target.d.ts +1 -1
- package/dist/browser/Target.js +32 -39
- package/dist/browser/TaskQueue.js +5 -18
- package/dist/browser/TimeoutSettings.js +12 -25
- package/dist/browser/browser-download-progress-bar.d.ts +1 -2
- package/dist/browser/handle-failed-resource.d.ts +1 -2
- package/dist/browser/handle-failed-resource.js +4 -3
- package/dist/call-ffmpeg.d.ts +4 -5
- package/dist/can-concat-seamlessly.d.ts +2 -4
- package/dist/can-use-parallel-encoding.d.ts +1 -2
- package/dist/check-version-requirements.d.ts +1 -2
- package/dist/client.d.ts +181 -181
- package/dist/codec-supports-media.d.ts +3 -4
- package/dist/collect-assets.d.ts +1 -1
- package/dist/combine-audio.d.ts +2 -4
- package/dist/combine-chunks.d.ts +1 -2
- package/dist/combine-video-streams.d.ts +2 -4
- package/dist/compositor/compositor.d.ts +3 -3
- package/dist/compositor/compositor.js +51 -32
- package/dist/compositor/get-executable-path.d.ts +3 -3
- package/dist/compress-audio.d.ts +2 -4
- package/dist/create-audio.d.ts +2 -4
- package/dist/create-silent-audio.d.ts +1 -2
- package/dist/crf.d.ts +4 -6
- package/dist/cycle-browser-tabs.d.ts +1 -2
- package/dist/ensure-browser.d.ts +44 -1
- package/dist/error-handling/handle-javascript-exception.d.ts +1 -1
- package/dist/error-handling/handle-javascript-exception.js +7 -1
- package/dist/error-handling/symbolicateable-error.d.ts +1 -1
- package/dist/error-handling/symbolicateable-error.js +4 -0
- package/dist/error-handling.js +1 -1
- package/dist/esm/client.mjs +7 -2
- package/dist/esm/index.mjs +81 -40
- package/dist/extract-audio.d.ts +2 -3
- package/dist/ffmpeg-args.d.ts +6 -12
- package/dist/get-browser-instance.d.ts +4 -6
- package/dist/get-codec-name.d.ts +3 -6
- package/dist/get-compositions.d.ts +1 -1
- package/dist/get-concurrency.d.ts +1 -1
- package/dist/get-extension-from-codec.d.ts +2 -3
- package/dist/get-frame-padded-index.d.ts +1 -2
- package/dist/get-local-browser-executable.d.ts +2 -4
- package/dist/get-prores-profile-name.d.ts +1 -3
- package/dist/get-silent-parts.d.ts +4 -5
- package/dist/get-video-metadata.d.ts +3 -4
- package/dist/get-video-threads-flag.d.ts +1 -2
- package/dist/goto-page-or-throw.d.ts +1 -1
- package/dist/guess-extension-for-media.d.ts +2 -3
- package/dist/image-format.d.ts +2 -3
- package/dist/index.d.ts +173 -172
- package/dist/index.js +16 -16
- package/dist/is-audio-codec.d.ts +1 -2
- package/dist/log-level.d.ts +1 -1
- package/dist/logger.d.ts +6 -6
- package/dist/make-page.d.ts +2 -4
- package/dist/memory/from-proc-meminfo.d.ts +1 -2
- package/dist/memory/get-available-memory.d.ts +1 -2
- package/dist/mime-types.js +2 -1
- package/dist/mux-video-and-audio.d.ts +2 -3
- package/dist/offthread-video-server.d.ts +1 -2
- package/dist/offthread-video-server.js +6 -18
- package/dist/open-browser.d.ts +1 -1
- package/dist/open-browser.js +6 -5
- package/dist/options/api-key.js +3 -1
- package/dist/options/audio-bitrate.js +9 -1
- package/dist/options/audio-codec.d.ts +10 -13
- package/dist/options/beep-on-finish.js +1 -1
- package/dist/options/binaries-directory.js +9 -1
- package/dist/options/chrome-mode.d.ts +3 -3
- package/dist/options/chrome-mode.js +6 -1
- package/dist/options/color-space.d.ts +5 -9
- package/dist/options/color-space.js +7 -1
- package/dist/options/crf.js +1 -1
- package/dist/options/cross-site-isolation.js +2 -1
- package/dist/options/dark-mode.js +2 -1
- package/dist/options/delete-after.js +11 -1
- package/dist/options/disallow-parallel-encoding.js +1 -1
- package/dist/options/enable-lambda-insights.js +2 -1
- package/dist/options/enable-multiprocess-on-linux.js +13 -1
- package/dist/options/encoding-buffer-size.js +3 -1
- package/dist/options/encoding-max-rate.js +3 -1
- package/dist/options/enforce-audio.js +1 -1
- package/dist/options/folder-expiry.js +4 -1
- package/dist/options/for-seamless-aac-concatenation.js +3 -1
- package/dist/options/gl.d.ts +6 -6
- package/dist/options/gl.js +28 -2
- package/dist/options/hardware-acceleration.d.ts +2 -2
- package/dist/options/headless.js +4 -1
- package/dist/options/image-sequence-pattern.js +5 -1
- package/dist/options/index.d.ts +25 -25
- package/dist/options/jpeg-quality.js +1 -1
- package/dist/options/latency-hint.js +10 -1
- package/dist/options/license-key.js +2 -1
- package/dist/options/log-level.d.ts +3 -4
- package/dist/options/log-level.js +16 -1
- package/dist/options/metadata.js +7 -2
- package/dist/options/mute.js +1 -1
- package/dist/options/number-of-gif-loops.js +13 -1
- package/dist/options/offthreadvideo-cache-size.js +11 -1
- package/dist/options/offthreadvideo-threads.js +2 -1
- package/dist/options/on-browser-download.js +2 -1
- package/dist/options/options-map.d.ts +93 -93
- package/dist/options/overwrite.js +5 -1
- package/dist/options/prefer-lossless.js +4 -1
- package/dist/options/public-dir.js +2 -1
- package/dist/options/public-license-key.js +3 -1
- package/dist/options/public-path.js +7 -1
- package/dist/options/repro.js +1 -1
- package/dist/options/scale.js +5 -1
- package/dist/options/timeout.js +4 -1
- package/dist/options/video-bitrate.js +7 -1
- package/dist/options/video-cache-size.js +8 -1
- package/dist/options/video-codec.d.ts +6 -6
- package/dist/options/video-codec.js +1 -1
- package/dist/options/webhook-custom-data.js +1 -1
- package/dist/options/x264-preset.d.ts +5 -6
- package/dist/options/x264-preset.js +23 -1
- package/dist/p-limit.d.ts +1 -1
- package/dist/pixel-format.d.ts +2 -3
- package/dist/pool.js +2 -0
- package/dist/port-config.d.ts +5 -6
- package/dist/prespawn-ffmpeg.js +5 -4
- package/dist/prestitcher-memory-usage.d.ts +1 -2
- package/dist/print-useful-error-message.d.ts +1 -2
- package/dist/prores-profile.d.ts +2 -4
- package/dist/puppeteer-evaluate.d.ts +2 -2
- package/dist/puppeteer-screenshot.d.ts +3 -4
- package/dist/pure.d.ts +5 -5
- package/dist/render-frame-and-retry-target-close.d.ts +8 -8
- package/dist/render-frame-with-option-to-reject.d.ts +4 -6
- package/dist/render-frame.d.ts +8 -8
- package/dist/render-has-audio.d.ts +2 -3
- package/dist/render-media.js +2 -1
- package/dist/replace-browser.d.ts +1 -2
- package/dist/repro.d.ts +1 -1
- package/dist/screenshot-task.d.ts +3 -4
- package/dist/seek-to-frame.d.ts +2 -3
- package/dist/serve-handler/index.d.ts +1 -1
- package/dist/serve-handler/range-parser.d.ts +2 -2
- package/dist/serve-static.d.ts +1 -2
- package/dist/set-props-and-env.js +3 -1
- package/dist/stringify-ffmpeg-filter.d.ts +1 -2
- package/dist/take-frame.d.ts +1 -2
- package/dist/test-gpu.d.ts +2 -4
- package/dist/validate-even-dimensions-with-codec.d.ts +2 -4
- package/dist/validate-ffmpeg-override.d.ts +1 -1
- package/dist/validate-number-of-gif-loops.d.ts +1 -2
- package/dist/validate-output-filename.d.ts +2 -4
- package/package.json +16 -14
|
@@ -1,39 +1,28 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
|
|
3
|
-
if (kind === "m") throw new TypeError("Private method is not writable");
|
|
4
|
-
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
|
|
5
|
-
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");
|
|
6
|
-
return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
|
|
7
|
-
};
|
|
8
|
-
var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
|
|
9
|
-
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
|
|
10
|
-
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
11
|
-
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
12
|
-
};
|
|
13
|
-
var _HTTPRequest_isNavigationRequest, _HTTPRequest_frame;
|
|
14
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
3
|
exports.HTTPRequest = void 0;
|
|
16
4
|
class HTTPRequest {
|
|
5
|
+
_requestId;
|
|
6
|
+
_response = null;
|
|
7
|
+
_url = null;
|
|
8
|
+
_fromMemoryCache = false;
|
|
9
|
+
#isNavigationRequest;
|
|
10
|
+
#frame;
|
|
17
11
|
constructor(frame, event) {
|
|
18
|
-
this._response = null;
|
|
19
|
-
this._url = null;
|
|
20
|
-
this._fromMemoryCache = false;
|
|
21
|
-
_HTTPRequest_isNavigationRequest.set(this, void 0);
|
|
22
|
-
_HTTPRequest_frame.set(this, void 0);
|
|
23
12
|
this._requestId = event.requestId;
|
|
24
|
-
|
|
25
|
-
|
|
13
|
+
this.#isNavigationRequest =
|
|
14
|
+
event.requestId === event.loaderId && event.type === 'Document';
|
|
15
|
+
this.#frame = frame;
|
|
26
16
|
this._url = event.request.url;
|
|
27
17
|
}
|
|
28
18
|
response() {
|
|
29
19
|
return this._response;
|
|
30
20
|
}
|
|
31
21
|
frame() {
|
|
32
|
-
return
|
|
22
|
+
return this.#frame;
|
|
33
23
|
}
|
|
34
24
|
isNavigationRequest() {
|
|
35
|
-
return
|
|
25
|
+
return this.#isNavigationRequest;
|
|
36
26
|
}
|
|
37
27
|
}
|
|
38
28
|
exports.HTTPRequest = HTTPRequest;
|
|
39
|
-
_HTTPRequest_isNavigationRequest = new WeakMap(), _HTTPRequest_frame = new WeakMap();
|
|
@@ -14,28 +14,15 @@
|
|
|
14
14
|
* See the License for the specific language governing permissions and
|
|
15
15
|
* limitations under the License.
|
|
16
16
|
*/
|
|
17
|
-
var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
|
|
18
|
-
if (kind === "m") throw new TypeError("Private method is not writable");
|
|
19
|
-
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
|
|
20
|
-
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");
|
|
21
|
-
return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
|
|
22
|
-
};
|
|
23
|
-
var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
|
|
24
|
-
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
|
|
25
|
-
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
26
|
-
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
27
|
-
};
|
|
28
|
-
var _HTTPResponse_status;
|
|
29
17
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
30
18
|
exports.HTTPResponse = void 0;
|
|
31
19
|
class HTTPResponse {
|
|
20
|
+
#status;
|
|
32
21
|
constructor(responsePayload, extraInfo) {
|
|
33
|
-
|
|
34
|
-
__classPrivateFieldSet(this, _HTTPResponse_status, extraInfo ? extraInfo.statusCode : responsePayload.status, "f");
|
|
22
|
+
this.#status = extraInfo ? extraInfo.statusCode : responsePayload.status;
|
|
35
23
|
}
|
|
36
24
|
status() {
|
|
37
|
-
return
|
|
25
|
+
return this.#status;
|
|
38
26
|
}
|
|
39
27
|
}
|
|
40
28
|
exports.HTTPResponse = HTTPResponse;
|
|
41
|
-
_HTTPResponse_status = new WeakMap();
|
package/dist/browser/JSHandle.js
CHANGED
|
@@ -14,18 +14,6 @@
|
|
|
14
14
|
* See the License for the specific language governing permissions and
|
|
15
15
|
* limitations under the License.
|
|
16
16
|
*/
|
|
17
|
-
var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
|
|
18
|
-
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
|
|
19
|
-
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
20
|
-
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
21
|
-
};
|
|
22
|
-
var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
|
|
23
|
-
if (kind === "m") throw new TypeError("Private method is not writable");
|
|
24
|
-
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
|
|
25
|
-
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");
|
|
26
|
-
return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
|
|
27
|
-
};
|
|
28
|
-
var _JSHandle_client, _JSHandle_disposed, _JSHandle_context, _JSHandle_remoteObject;
|
|
29
17
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
30
18
|
exports.ElementHandle = exports.JSHandle = void 0;
|
|
31
19
|
exports._createJSHandle = _createJSHandle;
|
|
@@ -38,26 +26,26 @@ function _createJSHandle(context, remoteObject) {
|
|
|
38
26
|
return new JSHandle(context, context._client, remoteObject);
|
|
39
27
|
}
|
|
40
28
|
class JSHandle {
|
|
29
|
+
#client;
|
|
30
|
+
#disposed = false;
|
|
31
|
+
#context;
|
|
32
|
+
#remoteObject;
|
|
41
33
|
get _disposed() {
|
|
42
|
-
return
|
|
34
|
+
return this.#disposed;
|
|
43
35
|
}
|
|
44
36
|
get _remoteObject() {
|
|
45
|
-
return
|
|
37
|
+
return this.#remoteObject;
|
|
46
38
|
}
|
|
47
39
|
get _context() {
|
|
48
|
-
return
|
|
40
|
+
return this.#context;
|
|
49
41
|
}
|
|
50
42
|
constructor(context, client, remoteObject) {
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
_JSHandle_remoteObject.set(this, void 0);
|
|
55
|
-
__classPrivateFieldSet(this, _JSHandle_context, context, "f");
|
|
56
|
-
__classPrivateFieldSet(this, _JSHandle_client, client, "f");
|
|
57
|
-
__classPrivateFieldSet(this, _JSHandle_remoteObject, remoteObject, "f");
|
|
43
|
+
this.#context = context;
|
|
44
|
+
this.#client = client;
|
|
45
|
+
this.#remoteObject = remoteObject;
|
|
58
46
|
}
|
|
59
47
|
executionContext() {
|
|
60
|
-
return
|
|
48
|
+
return this.#context;
|
|
61
49
|
}
|
|
62
50
|
evaluateHandle(pageFunction, ...args) {
|
|
63
51
|
return this.executionContext().evaluateHandle(pageFunction, this, ...args);
|
|
@@ -66,22 +54,21 @@ class JSHandle {
|
|
|
66
54
|
return null;
|
|
67
55
|
}
|
|
68
56
|
async dispose() {
|
|
69
|
-
if (
|
|
57
|
+
if (this.#disposed) {
|
|
70
58
|
return;
|
|
71
59
|
}
|
|
72
|
-
|
|
73
|
-
await (0, util_1.releaseObject)(
|
|
60
|
+
this.#disposed = true;
|
|
61
|
+
await (0, util_1.releaseObject)(this.#client, this.#remoteObject);
|
|
74
62
|
}
|
|
75
63
|
toString() {
|
|
76
|
-
if (
|
|
77
|
-
const type =
|
|
64
|
+
if (this.#remoteObject.objectId) {
|
|
65
|
+
const type = this.#remoteObject.subtype || this.#remoteObject.type;
|
|
78
66
|
return 'JSHandle@' + type;
|
|
79
67
|
}
|
|
80
|
-
return (0, util_1.valueFromRemoteObject)(
|
|
68
|
+
return (0, util_1.valueFromRemoteObject)(this.#remoteObject);
|
|
81
69
|
}
|
|
82
70
|
}
|
|
83
71
|
exports.JSHandle = JSHandle;
|
|
84
|
-
_JSHandle_client = new WeakMap(), _JSHandle_disposed = new WeakMap(), _JSHandle_context = new WeakMap(), _JSHandle_remoteObject = new WeakMap();
|
|
85
72
|
class ElementHandle extends JSHandle {
|
|
86
73
|
asElement() {
|
|
87
74
|
return this;
|
|
@@ -14,18 +14,6 @@
|
|
|
14
14
|
* See the License for the specific language governing permissions and
|
|
15
15
|
* limitations under the License.
|
|
16
16
|
*/
|
|
17
|
-
var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
|
|
18
|
-
if (kind === "m") throw new TypeError("Private method is not writable");
|
|
19
|
-
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
|
|
20
|
-
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");
|
|
21
|
-
return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
|
|
22
|
-
};
|
|
23
|
-
var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
|
|
24
|
-
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
|
|
25
|
-
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
26
|
-
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
27
|
-
};
|
|
28
|
-
var _LifecycleWatcher_instances, _LifecycleWatcher_expectedLifecycle, _LifecycleWatcher_frameManager, _LifecycleWatcher_frame, _LifecycleWatcher_timeout, _LifecycleWatcher_navigationRequest, _LifecycleWatcher_eventListeners, _LifecycleWatcher_sameDocumentNavigationCompleteCallback, _LifecycleWatcher_sameDocumentNavigationPromise, _LifecycleWatcher_lifecycleCallback, _LifecycleWatcher_lifecyclePromise, _LifecycleWatcher_newDocumentNavigationCompleteCallback, _LifecycleWatcher_newDocumentNavigationPromise, _LifecycleWatcher_terminationCallback, _LifecycleWatcher_terminationPromise, _LifecycleWatcher_timeoutPromise, _LifecycleWatcher_maximumTimer, _LifecycleWatcher_hasSameDocumentNavigation, _LifecycleWatcher_newDocumentNavigation, _LifecycleWatcher_swapped, _LifecycleWatcher_onRequest, _LifecycleWatcher_onFrameDetached, _LifecycleWatcher_terminate, _LifecycleWatcher_createTimeoutPromise, _LifecycleWatcher_navigatedWithinDocument, _LifecycleWatcher_navigated, _LifecycleWatcher_frameSwapped, _LifecycleWatcher_checkLifecycleComplete;
|
|
29
17
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
30
18
|
exports.LifecycleWatcher = void 0;
|
|
31
19
|
const assert_1 = require("./assert");
|
|
@@ -37,144 +25,150 @@ const util_1 = require("./util");
|
|
|
37
25
|
const puppeteerToProtocolLifecycle = new Map([['load', 'load']]);
|
|
38
26
|
const noop = () => undefined;
|
|
39
27
|
class LifecycleWatcher {
|
|
28
|
+
#expectedLifecycle;
|
|
29
|
+
#frameManager;
|
|
30
|
+
#frame;
|
|
31
|
+
#timeout;
|
|
32
|
+
#navigationRequest = null;
|
|
33
|
+
#eventListeners;
|
|
34
|
+
#sameDocumentNavigationCompleteCallback = noop;
|
|
35
|
+
#sameDocumentNavigationPromise = new Promise((fulfill) => {
|
|
36
|
+
this.#sameDocumentNavigationCompleteCallback = fulfill;
|
|
37
|
+
});
|
|
38
|
+
#lifecycleCallback = noop;
|
|
39
|
+
#lifecyclePromise = new Promise((fulfill) => {
|
|
40
|
+
this.#lifecycleCallback = fulfill;
|
|
41
|
+
});
|
|
42
|
+
#newDocumentNavigationCompleteCallback = noop;
|
|
43
|
+
#newDocumentNavigationPromise = new Promise((fulfill) => {
|
|
44
|
+
this.#newDocumentNavigationCompleteCallback = fulfill;
|
|
45
|
+
});
|
|
46
|
+
#terminationCallback = noop;
|
|
47
|
+
#terminationPromise = new Promise((fulfill) => {
|
|
48
|
+
this.#terminationCallback = fulfill;
|
|
49
|
+
});
|
|
50
|
+
#timeoutPromise;
|
|
51
|
+
#maximumTimer;
|
|
52
|
+
#hasSameDocumentNavigation;
|
|
53
|
+
#newDocumentNavigation;
|
|
54
|
+
#swapped;
|
|
40
55
|
constructor(frameManager, frame, waitUntil, timeout) {
|
|
41
|
-
_LifecycleWatcher_instances.add(this);
|
|
42
|
-
_LifecycleWatcher_expectedLifecycle.set(this, void 0);
|
|
43
|
-
_LifecycleWatcher_frameManager.set(this, void 0);
|
|
44
|
-
_LifecycleWatcher_frame.set(this, void 0);
|
|
45
|
-
_LifecycleWatcher_timeout.set(this, void 0);
|
|
46
|
-
_LifecycleWatcher_navigationRequest.set(this, null);
|
|
47
|
-
_LifecycleWatcher_eventListeners.set(this, void 0);
|
|
48
|
-
_LifecycleWatcher_sameDocumentNavigationCompleteCallback.set(this, noop);
|
|
49
|
-
_LifecycleWatcher_sameDocumentNavigationPromise.set(this, new Promise((fulfill) => {
|
|
50
|
-
__classPrivateFieldSet(this, _LifecycleWatcher_sameDocumentNavigationCompleteCallback, fulfill, "f");
|
|
51
|
-
}));
|
|
52
|
-
_LifecycleWatcher_lifecycleCallback.set(this, noop);
|
|
53
|
-
_LifecycleWatcher_lifecyclePromise.set(this, new Promise((fulfill) => {
|
|
54
|
-
__classPrivateFieldSet(this, _LifecycleWatcher_lifecycleCallback, fulfill, "f");
|
|
55
|
-
}));
|
|
56
|
-
_LifecycleWatcher_newDocumentNavigationCompleteCallback.set(this, noop);
|
|
57
|
-
_LifecycleWatcher_newDocumentNavigationPromise.set(this, new Promise((fulfill) => {
|
|
58
|
-
__classPrivateFieldSet(this, _LifecycleWatcher_newDocumentNavigationCompleteCallback, fulfill, "f");
|
|
59
|
-
}));
|
|
60
|
-
_LifecycleWatcher_terminationCallback.set(this, noop);
|
|
61
|
-
_LifecycleWatcher_terminationPromise.set(this, new Promise((fulfill) => {
|
|
62
|
-
__classPrivateFieldSet(this, _LifecycleWatcher_terminationCallback, fulfill, "f");
|
|
63
|
-
}));
|
|
64
|
-
_LifecycleWatcher_timeoutPromise.set(this, void 0);
|
|
65
|
-
_LifecycleWatcher_maximumTimer.set(this, void 0);
|
|
66
|
-
_LifecycleWatcher_hasSameDocumentNavigation.set(this, void 0);
|
|
67
|
-
_LifecycleWatcher_newDocumentNavigation.set(this, void 0);
|
|
68
|
-
_LifecycleWatcher_swapped.set(this, void 0);
|
|
69
56
|
const protocolEvent = puppeteerToProtocolLifecycle.get(waitUntil);
|
|
70
57
|
(0, assert_1.assert)(protocolEvent, 'Unknown value for options.waitUntil: ' + waitUntil);
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
(0, util_1.addEventListener)(frameManager._client, Connection_1.CDPSessionEmittedEvents.Disconnected,
|
|
77
|
-
(0, util_1.addEventListener)(
|
|
78
|
-
(0, util_1.addEventListener)(
|
|
79
|
-
(0, util_1.addEventListener)(
|
|
80
|
-
(0, util_1.addEventListener)(
|
|
81
|
-
(0, util_1.addEventListener)(
|
|
82
|
-
(0, util_1.addEventListener)(
|
|
83
|
-
]
|
|
84
|
-
|
|
85
|
-
|
|
58
|
+
this.#expectedLifecycle = [waitUntil];
|
|
59
|
+
this.#frameManager = frameManager;
|
|
60
|
+
this.#frame = frame;
|
|
61
|
+
this.#timeout = timeout;
|
|
62
|
+
this.#eventListeners = [
|
|
63
|
+
(0, util_1.addEventListener)(frameManager._client, Connection_1.CDPSessionEmittedEvents.Disconnected, this.#terminate.bind(this, new Error('Navigation failed because browser has disconnected!'))),
|
|
64
|
+
(0, util_1.addEventListener)(this.#frameManager, FrameManager_1.FrameManagerEmittedEvents.LifecycleEvent, this.#checkLifecycleComplete.bind(this)),
|
|
65
|
+
(0, util_1.addEventListener)(this.#frameManager, FrameManager_1.FrameManagerEmittedEvents.FrameNavigatedWithinDocument, this.#navigatedWithinDocument.bind(this)),
|
|
66
|
+
(0, util_1.addEventListener)(this.#frameManager, FrameManager_1.FrameManagerEmittedEvents.FrameNavigated, this.#navigated.bind(this)),
|
|
67
|
+
(0, util_1.addEventListener)(this.#frameManager, FrameManager_1.FrameManagerEmittedEvents.FrameSwapped, this.#frameSwapped.bind(this)),
|
|
68
|
+
(0, util_1.addEventListener)(this.#frameManager, FrameManager_1.FrameManagerEmittedEvents.FrameDetached, this.#onFrameDetached.bind(this)),
|
|
69
|
+
(0, util_1.addEventListener)(this.#frameManager.networkManager(), NetworkManager_1.NetworkManagerEmittedEvents.Request, this.#onRequest.bind(this)),
|
|
70
|
+
];
|
|
71
|
+
this.#timeoutPromise = this.#createTimeoutPromise();
|
|
72
|
+
this.#checkLifecycleComplete();
|
|
73
|
+
}
|
|
74
|
+
#onRequest(request) {
|
|
75
|
+
if (request.frame() !== this.#frame || !request.isNavigationRequest()) {
|
|
76
|
+
return;
|
|
77
|
+
}
|
|
78
|
+
this.#navigationRequest = request;
|
|
79
|
+
}
|
|
80
|
+
#onFrameDetached(frame) {
|
|
81
|
+
if (this.#frame === frame) {
|
|
82
|
+
this.#terminationCallback.call(null, new Error('Navigating frame was detached'));
|
|
83
|
+
return;
|
|
84
|
+
}
|
|
85
|
+
this.#checkLifecycleComplete();
|
|
86
86
|
}
|
|
87
87
|
navigationResponse() {
|
|
88
|
-
if (!
|
|
88
|
+
if (!this.#navigationRequest) {
|
|
89
89
|
return null;
|
|
90
90
|
}
|
|
91
|
-
const res =
|
|
91
|
+
const res = this.#navigationRequest.response();
|
|
92
92
|
return res;
|
|
93
93
|
}
|
|
94
|
+
#terminate(error) {
|
|
95
|
+
this.#terminationCallback.call(null, error);
|
|
96
|
+
}
|
|
94
97
|
sameDocumentNavigationPromise() {
|
|
95
|
-
return
|
|
98
|
+
return this.#sameDocumentNavigationPromise;
|
|
96
99
|
}
|
|
97
100
|
newDocumentNavigationPromise() {
|
|
98
|
-
return
|
|
101
|
+
return this.#newDocumentNavigationPromise;
|
|
99
102
|
}
|
|
100
103
|
lifecyclePromise() {
|
|
101
|
-
return
|
|
104
|
+
return this.#lifecyclePromise;
|
|
102
105
|
}
|
|
103
106
|
timeoutOrTerminationPromise() {
|
|
104
|
-
return Promise.race([
|
|
107
|
+
return Promise.race([this.#timeoutPromise, this.#terminationPromise]);
|
|
105
108
|
}
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
clearTimeout(__classPrivateFieldGet(this, _LifecycleWatcher_maximumTimer, "f"));
|
|
109
|
+
async #createTimeoutPromise() {
|
|
110
|
+
if (!this.#timeout) {
|
|
111
|
+
return new Promise(noop);
|
|
110
112
|
}
|
|
113
|
+
const errorMessage = 'Navigation timeout of ' + this.#timeout + ' ms exceeded';
|
|
114
|
+
await new Promise((fulfill) => {
|
|
115
|
+
this.#maximumTimer = setTimeout(fulfill, this.#timeout);
|
|
116
|
+
});
|
|
117
|
+
return new Errors_1.TimeoutError(errorMessage);
|
|
118
|
+
}
|
|
119
|
+
#navigatedWithinDocument(frame) {
|
|
120
|
+
if (frame !== this.#frame) {
|
|
121
|
+
return;
|
|
122
|
+
}
|
|
123
|
+
this.#hasSameDocumentNavigation = true;
|
|
124
|
+
this.#checkLifecycleComplete();
|
|
111
125
|
}
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
__classPrivateFieldSet(this, _LifecycleWatcher_navigationRequest, request, "f");
|
|
119
|
-
}, _LifecycleWatcher_onFrameDetached = function _LifecycleWatcher_onFrameDetached(frame) {
|
|
120
|
-
if (__classPrivateFieldGet(this, _LifecycleWatcher_frame, "f") === frame) {
|
|
121
|
-
__classPrivateFieldGet(this, _LifecycleWatcher_terminationCallback, "f").call(null, new Error('Navigating frame was detached'));
|
|
122
|
-
return;
|
|
123
|
-
}
|
|
124
|
-
__classPrivateFieldGet(this, _LifecycleWatcher_instances, "m", _LifecycleWatcher_checkLifecycleComplete).call(this);
|
|
125
|
-
}, _LifecycleWatcher_terminate = function _LifecycleWatcher_terminate(error) {
|
|
126
|
-
__classPrivateFieldGet(this, _LifecycleWatcher_terminationCallback, "f").call(null, error);
|
|
127
|
-
}, _LifecycleWatcher_createTimeoutPromise = async function _LifecycleWatcher_createTimeoutPromise() {
|
|
128
|
-
if (!__classPrivateFieldGet(this, _LifecycleWatcher_timeout, "f")) {
|
|
129
|
-
return new Promise(noop);
|
|
130
|
-
}
|
|
131
|
-
const errorMessage = 'Navigation timeout of ' + __classPrivateFieldGet(this, _LifecycleWatcher_timeout, "f") + ' ms exceeded';
|
|
132
|
-
await new Promise((fulfill) => {
|
|
133
|
-
__classPrivateFieldSet(this, _LifecycleWatcher_maximumTimer, setTimeout(fulfill, __classPrivateFieldGet(this, _LifecycleWatcher_timeout, "f")), "f");
|
|
134
|
-
});
|
|
135
|
-
return new Errors_1.TimeoutError(errorMessage);
|
|
136
|
-
}, _LifecycleWatcher_navigatedWithinDocument = function _LifecycleWatcher_navigatedWithinDocument(frame) {
|
|
137
|
-
if (frame !== __classPrivateFieldGet(this, _LifecycleWatcher_frame, "f")) {
|
|
138
|
-
return;
|
|
139
|
-
}
|
|
140
|
-
__classPrivateFieldSet(this, _LifecycleWatcher_hasSameDocumentNavigation, true, "f");
|
|
141
|
-
__classPrivateFieldGet(this, _LifecycleWatcher_instances, "m", _LifecycleWatcher_checkLifecycleComplete).call(this);
|
|
142
|
-
}, _LifecycleWatcher_navigated = function _LifecycleWatcher_navigated(frame) {
|
|
143
|
-
if (frame !== __classPrivateFieldGet(this, _LifecycleWatcher_frame, "f")) {
|
|
144
|
-
return;
|
|
145
|
-
}
|
|
146
|
-
__classPrivateFieldSet(this, _LifecycleWatcher_newDocumentNavigation, true, "f");
|
|
147
|
-
__classPrivateFieldGet(this, _LifecycleWatcher_instances, "m", _LifecycleWatcher_checkLifecycleComplete).call(this);
|
|
148
|
-
}, _LifecycleWatcher_frameSwapped = function _LifecycleWatcher_frameSwapped(frame) {
|
|
149
|
-
if (frame !== __classPrivateFieldGet(this, _LifecycleWatcher_frame, "f")) {
|
|
150
|
-
return;
|
|
151
|
-
}
|
|
152
|
-
__classPrivateFieldSet(this, _LifecycleWatcher_swapped, true, "f");
|
|
153
|
-
__classPrivateFieldGet(this, _LifecycleWatcher_instances, "m", _LifecycleWatcher_checkLifecycleComplete).call(this);
|
|
154
|
-
}, _LifecycleWatcher_checkLifecycleComplete = function _LifecycleWatcher_checkLifecycleComplete() {
|
|
155
|
-
// We expect navigation to commit.
|
|
156
|
-
if (!checkLifecycle(__classPrivateFieldGet(this, _LifecycleWatcher_frame, "f"), __classPrivateFieldGet(this, _LifecycleWatcher_expectedLifecycle, "f"))) {
|
|
157
|
-
return;
|
|
158
|
-
}
|
|
159
|
-
__classPrivateFieldGet(this, _LifecycleWatcher_lifecycleCallback, "f").call(this);
|
|
160
|
-
if (__classPrivateFieldGet(this, _LifecycleWatcher_hasSameDocumentNavigation, "f")) {
|
|
161
|
-
__classPrivateFieldGet(this, _LifecycleWatcher_sameDocumentNavigationCompleteCallback, "f").call(this);
|
|
126
|
+
#navigated(frame) {
|
|
127
|
+
if (frame !== this.#frame) {
|
|
128
|
+
return;
|
|
129
|
+
}
|
|
130
|
+
this.#newDocumentNavigation = true;
|
|
131
|
+
this.#checkLifecycleComplete();
|
|
162
132
|
}
|
|
163
|
-
|
|
164
|
-
|
|
133
|
+
#frameSwapped(frame) {
|
|
134
|
+
if (frame !== this.#frame) {
|
|
135
|
+
return;
|
|
136
|
+
}
|
|
137
|
+
this.#swapped = true;
|
|
138
|
+
this.#checkLifecycleComplete();
|
|
165
139
|
}
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
140
|
+
#checkLifecycleComplete() {
|
|
141
|
+
// We expect navigation to commit.
|
|
142
|
+
if (!checkLifecycle(this.#frame, this.#expectedLifecycle)) {
|
|
143
|
+
return;
|
|
144
|
+
}
|
|
145
|
+
this.#lifecycleCallback();
|
|
146
|
+
if (this.#hasSameDocumentNavigation) {
|
|
147
|
+
this.#sameDocumentNavigationCompleteCallback();
|
|
171
148
|
}
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
149
|
+
if (this.#swapped || this.#newDocumentNavigation) {
|
|
150
|
+
this.#newDocumentNavigationCompleteCallback();
|
|
151
|
+
}
|
|
152
|
+
function checkLifecycle(frame, expectedLifecycle) {
|
|
153
|
+
for (const event of expectedLifecycle) {
|
|
154
|
+
if (!frame._lifecycleEvents.has(event)) {
|
|
155
|
+
return false;
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
for (const child of frame.childFrames()) {
|
|
159
|
+
if (child._hasStartedLoading &&
|
|
160
|
+
!checkLifecycle(child, expectedLifecycle)) {
|
|
161
|
+
return false;
|
|
162
|
+
}
|
|
176
163
|
}
|
|
164
|
+
return true;
|
|
177
165
|
}
|
|
178
|
-
return true;
|
|
179
166
|
}
|
|
180
|
-
|
|
167
|
+
dispose() {
|
|
168
|
+
(0, util_1.removeEventListeners)(this.#eventListeners);
|
|
169
|
+
if (this.#maximumTimer !== undefined) {
|
|
170
|
+
clearTimeout(this.#maximumTimer);
|
|
171
|
+
}
|
|
172
|
+
}
|
|
173
|
+
}
|
|
174
|
+
exports.LifecycleWatcher = LifecycleWatcher;
|
|
@@ -1,48 +1,40 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
|
|
3
|
-
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
|
|
4
|
-
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
5
|
-
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
6
|
-
};
|
|
7
|
-
var _NetworkEventManager_requestWillBeSentMap, _NetworkEventManager_requestPausedMap, _NetworkEventManager_httpRequestsMap, _NetworkEventManager_responseReceivedExtraInfoMap, _NetworkEventManager_queuedRedirectInfoMap, _NetworkEventManager_queuedEventGroupMap, _NetworkEventManager_failedLoadInfoMap;
|
|
8
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
3
|
exports.NetworkEventManager = void 0;
|
|
10
4
|
class NetworkEventManager {
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
_NetworkEventManager_failedLoadInfoMap.set(this, new Map());
|
|
19
|
-
}
|
|
5
|
+
#requestWillBeSentMap = new Map();
|
|
6
|
+
#requestPausedMap = new Map();
|
|
7
|
+
#httpRequestsMap = new Map();
|
|
8
|
+
#responseReceivedExtraInfoMap = new Map();
|
|
9
|
+
#queuedRedirectInfoMap = new Map();
|
|
10
|
+
#queuedEventGroupMap = new Map();
|
|
11
|
+
#failedLoadInfoMap = new Map();
|
|
20
12
|
forget(networkRequestId) {
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
13
|
+
this.#requestWillBeSentMap.delete(networkRequestId);
|
|
14
|
+
this.#requestPausedMap.delete(networkRequestId);
|
|
15
|
+
this.#queuedEventGroupMap.delete(networkRequestId);
|
|
16
|
+
this.#queuedRedirectInfoMap.delete(networkRequestId);
|
|
17
|
+
this.#responseReceivedExtraInfoMap.delete(networkRequestId);
|
|
18
|
+
this.#failedLoadInfoMap.delete(networkRequestId);
|
|
27
19
|
}
|
|
28
20
|
queueFailedLoadInfo(networkRequestId, event) {
|
|
29
|
-
|
|
21
|
+
this.#failedLoadInfoMap.set(networkRequestId, { event });
|
|
30
22
|
}
|
|
31
23
|
getFailedLoadInfo(networkRequestId) {
|
|
32
24
|
var _a;
|
|
33
|
-
return (_a =
|
|
25
|
+
return (_a = this.#failedLoadInfoMap.get(networkRequestId)) === null || _a === void 0 ? void 0 : _a.event;
|
|
34
26
|
}
|
|
35
27
|
getResponseExtraInfo(networkRequestId) {
|
|
36
|
-
if (!
|
|
37
|
-
|
|
28
|
+
if (!this.#responseReceivedExtraInfoMap.has(networkRequestId)) {
|
|
29
|
+
this.#responseReceivedExtraInfoMap.set(networkRequestId, []);
|
|
38
30
|
}
|
|
39
|
-
return
|
|
31
|
+
return this.#responseReceivedExtraInfoMap.get(networkRequestId);
|
|
40
32
|
}
|
|
41
33
|
queuedRedirectInfo(fetchRequestId) {
|
|
42
|
-
if (!
|
|
43
|
-
|
|
34
|
+
if (!this.#queuedRedirectInfoMap.has(fetchRequestId)) {
|
|
35
|
+
this.#queuedRedirectInfoMap.set(fetchRequestId, []);
|
|
44
36
|
}
|
|
45
|
-
return
|
|
37
|
+
return this.#queuedRedirectInfoMap.get(fetchRequestId);
|
|
46
38
|
}
|
|
47
39
|
queueRedirectInfo(fetchRequestId, redirectInfo) {
|
|
48
40
|
this.queuedRedirectInfo(fetchRequestId).push(redirectInfo);
|
|
@@ -51,35 +43,34 @@ class NetworkEventManager {
|
|
|
51
43
|
return this.queuedRedirectInfo(fetchRequestId).shift();
|
|
52
44
|
}
|
|
53
45
|
storeRequestWillBeSent(networkRequestId, event) {
|
|
54
|
-
|
|
46
|
+
this.#requestWillBeSentMap.set(networkRequestId, event);
|
|
55
47
|
}
|
|
56
48
|
getRequestWillBeSent(networkRequestId) {
|
|
57
|
-
return
|
|
49
|
+
return this.#requestWillBeSentMap.get(networkRequestId);
|
|
58
50
|
}
|
|
59
51
|
forgetRequestWillBeSent(networkRequestId) {
|
|
60
|
-
|
|
52
|
+
this.#requestWillBeSentMap.delete(networkRequestId);
|
|
61
53
|
}
|
|
62
54
|
storeRequestPaused(networkRequestId, event) {
|
|
63
|
-
|
|
55
|
+
this.#requestPausedMap.set(networkRequestId, event);
|
|
64
56
|
}
|
|
65
57
|
getRequest(networkRequestId) {
|
|
66
|
-
return
|
|
58
|
+
return this.#httpRequestsMap.get(networkRequestId);
|
|
67
59
|
}
|
|
68
60
|
storeRequest(networkRequestId, request) {
|
|
69
|
-
|
|
61
|
+
this.#httpRequestsMap.set(networkRequestId, request);
|
|
70
62
|
}
|
|
71
63
|
forgetRequest(networkRequestId) {
|
|
72
|
-
|
|
64
|
+
this.#httpRequestsMap.delete(networkRequestId);
|
|
73
65
|
}
|
|
74
66
|
getQueuedEventGroup(networkRequestId) {
|
|
75
|
-
return
|
|
67
|
+
return this.#queuedEventGroupMap.get(networkRequestId);
|
|
76
68
|
}
|
|
77
69
|
queueEventGroup(networkRequestId, event) {
|
|
78
|
-
|
|
70
|
+
this.#queuedEventGroupMap.set(networkRequestId, event);
|
|
79
71
|
}
|
|
80
72
|
forgetQueuedEventGroup(networkRequestId) {
|
|
81
|
-
|
|
73
|
+
this.#queuedEventGroupMap.delete(networkRequestId);
|
|
82
74
|
}
|
|
83
75
|
}
|
|
84
76
|
exports.NetworkEventManager = NetworkEventManager;
|
|
85
|
-
_NetworkEventManager_requestWillBeSentMap = new WeakMap(), _NetworkEventManager_requestPausedMap = new WeakMap(), _NetworkEventManager_httpRequestsMap = new WeakMap(), _NetworkEventManager_responseReceivedExtraInfoMap = new WeakMap(), _NetworkEventManager_queuedRedirectInfoMap = new WeakMap(), _NetworkEventManager_queuedEventGroupMap = new WeakMap(), _NetworkEventManager_failedLoadInfoMap = new WeakMap();
|