"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); const pipeline_context_1 = __importDefault(require("../request-hooks/pipeline-context")); const request_paused_event_based_1 = __importDefault(require("../request-hooks/event-factory/request-paused-event-based")); const cdp_1 = require("../utils/cdp"); const frame_navigated_event_based_1 = __importDefault(require("../request-hooks/event-factory/frame-navigated-event-based")); class ProxylessRequestContextInfo { constructor(testRunBridge) { this._pipelineContexts = {}; this._eventFactories = {}; this._testRunBridge = testRunBridge; } _createPipelineContext(requestId) { const pipelineContext = new pipeline_context_1.default(requestId); this._pipelineContexts[requestId] = pipelineContext; return pipelineContext; } _createEventFactory(event) { const sessionId = this._testRunBridge.getSessionId(); const requestId = (0, cdp_1.getRequestId)(event); const eventFactory = (0, cdp_1.isRequestPausedEvent)(event) ? new request_paused_event_based_1.default(event, sessionId) : new frame_navigated_event_based_1.default(event, sessionId); this._eventFactories[requestId] = eventFactory; return eventFactory; } _getEventFactory(requestId) { return this._eventFactories[requestId]; } init(event) { const requestId = (0, cdp_1.getRequestId)(event); const pipelineContext = this._createPipelineContext(requestId); const eventFactory = this._createEventFactory(event); pipelineContext.setRequestOptions(eventFactory); } dispose(requestId) { if (!requestId) return; delete this._pipelineContexts[requestId]; delete this._eventFactories[requestId]; } getPipelineContext(requestId) { return this._pipelineContexts[requestId]; } getContextData(event) { const requestId = (0, cdp_1.getRequestId)(event); const pipelineContext = this.getPipelineContext(requestId); const eventFactory = this._getEventFactory(requestId); return { pipelineContext, eventFactory }; } } exports.default = ProxylessRequestContextInfo; module.exports = exports.default; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGV4dC1pbmZvLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3Byb3h5bGVzcy9yZXF1ZXN0LXBpcGVsaW5lL2NvbnRleHQtaW5mby50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUNBLHlGQUF5RTtBQUN6RSwySEFBNEc7QUFLNUcsc0NBQWtFO0FBRWxFLDZIQUE4RztBQU85RyxNQUFxQiwyQkFBMkI7SUFLNUMsWUFBb0IsYUFBNEI7UUFDNUMsSUFBSSxDQUFDLGlCQUFpQixHQUFHLEVBQUUsQ0FBQztRQUM1QixJQUFJLENBQUMsZUFBZSxHQUFLLEVBQUUsQ0FBQztRQUM1QixJQUFJLENBQUMsY0FBYyxHQUFNLGFBQWEsQ0FBQztJQUMzQyxDQUFDO0lBRU8sc0JBQXNCLENBQUUsU0FBaUI7UUFDN0MsTUFBTSxlQUFlLEdBQUcsSUFBSSwwQkFBd0IsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUVoRSxJQUFJLENBQUMsaUJBQWlCLENBQUMsU0FBUyxDQUFDLEdBQUcsZUFBZSxDQUFDO1FBRXBELE9BQU8sZUFBZSxDQUFDO0lBQzNCLENBQUM7SUFFTyxtQkFBbUIsQ0FBRSxLQUErQztRQUN4RSxNQUFNLFNBQVMsR0FBTSxJQUFJLENBQUMsY0FBYyxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQ3hELE1BQU0sU0FBUyxHQUFNLElBQUEsa0JBQVksRUFBQyxLQUFLLENBQUMsQ0FBQztRQUN6QyxNQUFNLFlBQVksR0FBRyxJQUFBLDBCQUFvQixFQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLG9DQUFtQyxDQUFDLEtBQUssRUFBRSxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxxQ0FBb0MsQ0FBQyxLQUFLLEVBQUUsU0FBUyxDQUFDLENBQUM7UUFFMUssSUFBSSxDQUFDLGVBQWUsQ0FBQyxTQUFTLENBQUMsR0FBRyxZQUFZLENBQUM7UUFFL0MsT0FBTyxZQUFZLENBQUM7SUFDeEIsQ0FBQztJQUVPLGdCQUFnQixDQUFFLFNBQWlCO1FBQ3ZDLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUMzQyxDQUFDO0lBRU0sSUFBSSxDQUFFLEtBQStDO1FBQ3hELE1BQU0sU0FBUyxHQUFTLElBQUEsa0JBQVksRUFBQyxLQUFLLENBQUMsQ0FBQztRQUM1QyxNQUFNLGVBQWUsR0FBRyxJQUFJLENBQUMsc0JBQXNCLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDL0QsTUFBTSxZQUFZLEdBQU0sSUFBSSxDQUFDLG1CQUFtQixDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRXhELGVBQWUsQ0FBQyxpQkFBaUIsQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUNwRCxDQUFDO0lBQ00sT0FBTyxDQUFFLFNBQWtCO1FBQzlCLElBQUksQ0FBQyxTQUFTO1lBQ1YsT0FBTztRQUVYLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ3pDLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUMzQyxDQUFDO0lBRU0sa0JBQWtCLENBQUUsU0FBaUI7UUFDeEMsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDN0MsQ0FBQztJQUVNLGNBQWMsQ0FBRSxLQUErQztRQUNsRSxNQUFNLFNBQVMsR0FBUyxJQUFBLGtCQUFZLEVBQUMsS0FBSyxDQUFDLENBQUM7UUFDNUMsTUFBTSxlQUFlLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQzNELE1BQU0sWUFBWSxHQUFNLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUV6RCxPQUFPLEVBQUUsZUFBZSxFQUFFLFlBQVksRUFBRSxDQUFDO0lBQzdDLENBQUM7Q0FDSjtBQTNERCw4Q0EyREMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaWN0aW9uYXJ5IH0gZnJvbSAnLi4vLi4vY29uZmlndXJhdGlvbi9pbnRlcmZhY2VzJztcbmltcG9ydCBQcm94eWxlc3NQaXBlbGluZUNvbnRleHQgZnJvbSAnLi4vcmVxdWVzdC1ob29rcy9waXBlbGluZS1jb250ZXh0JztcbmltcG9ydCBSZXF1ZXN0UGF1c2VkRXZlbnRCYXNlZEV2ZW50RmFjdG9yeSBmcm9tICcuLi9yZXF1ZXN0LWhvb2tzL2V2ZW50LWZhY3RvcnkvcmVxdWVzdC1wYXVzZWQtZXZlbnQtYmFzZWQnO1xuaW1wb3J0IFByb3RvY29sIGZyb20gJ2RldnRvb2xzLXByb3RvY29sJztcbmltcG9ydCBSZXF1ZXN0UGF1c2VkRXZlbnQgPSBQcm90b2NvbC5GZXRjaC5SZXF1ZXN0UGF1c2VkRXZlbnQ7XG5pbXBvcnQgRnJhbWVOYXZpZ2F0ZWRFdmVudCA9IFByb3RvY29sLlBhZ2UuRnJhbWVOYXZpZ2F0ZWRFdmVudDtcbmltcG9ydCBUZXN0UnVuQnJpZGdlIGZyb20gJy4vdGVzdC1ydW4tYnJpZGdlJztcbmltcG9ydCB7IGdldFJlcXVlc3RJZCwgaXNSZXF1ZXN0UGF1c2VkRXZlbnQgfSBmcm9tICcuLi91dGlscy9jZHAnO1xuaW1wb3J0IHsgQmFzZVJlcXVlc3RIb29rRXZlbnRGYWN0b3J5IH0gZnJvbSAndGVzdGNhZmUtaGFtbWVyaGVhZCc7XG5pbXBvcnQgRnJhbWVOYXZpZ2F0ZWRFdmVudEJhc2VkRXZlbnRGYWN0b3J5IGZyb20gJy4uL3JlcXVlc3QtaG9va3MvZXZlbnQtZmFjdG9yeS9mcmFtZS1uYXZpZ2F0ZWQtZXZlbnQtYmFzZWQnO1xuXG5leHBvcnQgaW50ZXJmYWNlIENvbnRleHREYXRhIHtcbiAgICBwaXBlbGluZUNvbnRleHQ6IFByb3h5bGVzc1BpcGVsaW5lQ29udGV4dDtcbiAgICBldmVudEZhY3Rvcnk6IEJhc2VSZXF1ZXN0SG9va0V2ZW50RmFjdG9yeTtcbn1cblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgUHJveHlsZXNzUmVxdWVzdENvbnRleHRJbmZvIHtcbiAgICBwcml2YXRlIHJlYWRvbmx5IF9waXBlbGluZUNvbnRleHRzOiBEaWN0aW9uYXJ5PFByb3h5bGVzc1BpcGVsaW5lQ29udGV4dD47XG4gICAgcHJpdmF0ZSByZWFkb25seSBfZXZlbnRGYWN0b3JpZXM6IERpY3Rpb25hcnk8QmFzZVJlcXVlc3RIb29rRXZlbnRGYWN0b3J5PjtcbiAgICBwcml2YXRlIHJlYWRvbmx5IF90ZXN0UnVuQnJpZGdlOiBUZXN0UnVuQnJpZGdlO1xuXG4gICAgcHVibGljIGNvbnN0cnVjdG9yICh0ZXN0UnVuQnJpZGdlOiBUZXN0UnVuQnJpZGdlKSB7XG4gICAgICAgIHRoaXMuX3BpcGVsaW5lQ29udGV4dHMgPSB7fTtcbiAgICAgICAgdGhpcy5fZXZlbnRGYWN0b3JpZXMgICA9IHt9O1xuICAgICAgICB0aGlzLl90ZXN0UnVuQnJpZGdlICAgID0gdGVzdFJ1bkJyaWRnZTtcbiAgICB9XG5cbiAgICBwcml2YXRlIF9jcmVhdGVQaXBlbGluZUNvbnRleHQgKHJlcXVlc3RJZDogc3RyaW5nKTogUHJveHlsZXNzUGlwZWxpbmVDb250ZXh0IHtcbiAgICAgICAgY29uc3QgcGlwZWxpbmVDb250ZXh0ID0gbmV3IFByb3h5bGVzc1BpcGVsaW5lQ29udGV4dChyZXF1ZXN0SWQpO1xuXG4gICAgICAgIHRoaXMuX3BpcGVsaW5lQ29udGV4dHNbcmVxdWVzdElkXSA9IHBpcGVsaW5lQ29udGV4dDtcblxuICAgICAgICByZXR1cm4gcGlwZWxpbmVDb250ZXh0O1xuICAgIH1cblxuICAgIHByaXZhdGUgX2NyZWF0ZUV2ZW50RmFjdG9yeSAoZXZlbnQ6IFJlcXVlc3RQYXVzZWRFdmVudCB8IEZyYW1lTmF2aWdhdGVkRXZlbnQpOiBCYXNlUmVxdWVzdEhvb2tFdmVudEZhY3Rvcnkge1xuICAgICAgICBjb25zdCBzZXNzaW9uSWQgICAgPSB0aGlzLl90ZXN0UnVuQnJpZGdlLmdldFNlc3Npb25JZCgpO1xuICAgICAgICBjb25zdCByZXF1ZXN0SWQgICAgPSBnZXRSZXF1ZXN0SWQoZXZlbnQpO1xuICAgICAgICBjb25zdCBldmVudEZhY3RvcnkgPSBpc1JlcXVlc3RQYXVzZWRFdmVudChldmVudCkgPyBuZXcgUmVxdWVzdFBhdXNlZEV2ZW50QmFzZWRFdmVudEZhY3RvcnkoZXZlbnQsIHNlc3Npb25JZCkgOiBuZXcgRnJhbWVOYXZpZ2F0ZWRFdmVudEJhc2VkRXZlbnRGYWN0b3J5KGV2ZW50LCBzZXNzaW9uSWQpO1xuXG4gICAgICAgIHRoaXMuX2V2ZW50RmFjdG9yaWVzW3JlcXVlc3RJZF0gPSBldmVudEZhY3Rvcnk7XG5cbiAgICAgICAgcmV0dXJuIGV2ZW50RmFjdG9yeTtcbiAgICB9XG5cbiAgICBwcml2YXRlIF9nZXRFdmVudEZhY3RvcnkgKHJlcXVlc3RJZDogc3RyaW5nKTogQmFzZVJlcXVlc3RIb29rRXZlbnRGYWN0b3J5IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2V2ZW50RmFjdG9yaWVzW3JlcXVlc3RJZF07XG4gICAgfVxuXG4gICAgcHVibGljIGluaXQgKGV2ZW50OiBSZXF1ZXN0UGF1c2VkRXZlbnQgfCBGcmFtZU5hdmlnYXRlZEV2ZW50KTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHJlcXVlc3RJZCAgICAgICA9IGdldFJlcXVlc3RJZChldmVudCk7XG4gICAgICAgIGNvbnN0IHBpcGVsaW5lQ29udGV4dCA9IHRoaXMuX2NyZWF0ZVBpcGVsaW5lQ29udGV4dChyZXF1ZXN0SWQpO1xuICAgICAgICBjb25zdCBldmVudEZhY3RvcnkgICAgPSB0aGlzLl9jcmVhdGVFdmVudEZhY3RvcnkoZXZlbnQpO1xuXG4gICAgICAgIHBpcGVsaW5lQ29udGV4dC5zZXRSZXF1ZXN0T3B0aW9ucyhldmVudEZhY3RvcnkpO1xuICAgIH1cbiAgICBwdWJsaWMgZGlzcG9zZSAocmVxdWVzdElkPzogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIGlmICghcmVxdWVzdElkKVxuICAgICAgICAgICAgcmV0dXJuO1xuXG4gICAgICAgIGRlbGV0ZSB0aGlzLl9waXBlbGluZUNvbnRleHRzW3JlcXVlc3RJZF07XG4gICAgICAgIGRlbGV0ZSB0aGlzLl9ldmVudEZhY3Rvcmllc1tyZXF1ZXN0SWRdO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXRQaXBlbGluZUNvbnRleHQgKHJlcXVlc3RJZDogc3RyaW5nKTogUHJveHlsZXNzUGlwZWxpbmVDb250ZXh0IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3BpcGVsaW5lQ29udGV4dHNbcmVxdWVzdElkXTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0Q29udGV4dERhdGEgKGV2ZW50OiBSZXF1ZXN0UGF1c2VkRXZlbnQgfCBGcmFtZU5hdmlnYXRlZEV2ZW50KTogQ29udGV4dERhdGEge1xuICAgICAgICBjb25zdCByZXF1ZXN0SWQgICAgICAgPSBnZXRSZXF1ZXN0SWQoZXZlbnQpO1xuICAgICAgICBjb25zdCBwaXBlbGluZUNvbnRleHQgPSB0aGlzLmdldFBpcGVsaW5lQ29udGV4dChyZXF1ZXN0SWQpO1xuICAgICAgICBjb25zdCBldmVudEZhY3RvcnkgICAgPSB0aGlzLl9nZXRFdmVudEZhY3RvcnkocmVxdWVzdElkKTtcblxuICAgICAgICByZXR1cm4geyBwaXBlbGluZUNvbnRleHQsIGV2ZW50RmFjdG9yeSB9O1xuICAgIH1cbn1cbiJdfQ==