appium-remote-debugger 9.1.12 → 9.1.13
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/CHANGELOG.md +7 -0
- package/build/index.js +1 -1
- package/build/lib/atoms.js +1 -1
- package/build/lib/atoms.js.map +1 -1
- package/build/lib/logger.js +1 -1
- package/build/lib/logger.js.map +1 -1
- package/build/lib/mixins/connect.js +1 -1
- package/build/lib/mixins/connect.js.map +1 -1
- package/build/lib/mixins/events.js +1 -1
- package/build/lib/mixins/events.js.map +1 -1
- package/build/lib/mixins/execute.js +1 -1
- package/build/lib/mixins/execute.js.map +1 -1
- package/build/lib/mixins/index.js +1 -1
- package/build/lib/mixins/index.js.map +1 -1
- package/build/lib/mixins/message-handlers.js +1 -1
- package/build/lib/mixins/message-handlers.js.map +1 -1
- package/build/lib/mixins/navigate.js +1 -1
- package/build/lib/mixins/navigate.js.map +1 -1
- package/build/lib/protocol/index.js +16 -3
- package/build/lib/protocol/index.js.map +1 -1
- package/build/lib/remote-debugger-real-device.js +1 -1
- package/build/lib/remote-debugger-real-device.js.map +1 -1
- package/build/lib/remote-debugger.js +18 -3
- package/build/lib/remote-debugger.js.map +1 -1
- package/build/lib/rpc/index.js +1 -1
- package/build/lib/rpc/index.js.map +1 -1
- package/build/lib/rpc/remote-messages.js +1 -1
- package/build/lib/rpc/remote-messages.js.map +1 -1
- package/build/lib/rpc/rpc-client-real-device.js +1 -1
- package/build/lib/rpc/rpc-client-real-device.js.map +1 -1
- package/build/lib/rpc/rpc-client-simulator.js +1 -1
- package/build/lib/rpc/rpc-client-simulator.js.map +1 -1
- package/build/lib/rpc/rpc-client.js +1 -1
- package/build/lib/rpc/rpc-client.js.map +1 -1
- package/build/lib/rpc/rpc-message-handler.js +1 -1
- package/build/lib/rpc/rpc-message-handler.js.map +1 -1
- package/build/lib/utils.js +1 -1
- package/build/lib/utils.js.map +1 -1
- package/lib/protocol/index.js +16 -2
- package/lib/remote-debugger.js +20 -2
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"message-handlers.js","names":["onPageChange","err","appIdKey","pageDict","_","isEmpty","pageArray","pageArrayFromDict","useAppDictLock","done","appDict","resolve","isEqual","log","debug","_navigatingToPage","simpleStringify","emit","events","EVENT_PAGE_CHANGE","replace","onAppConnect","dict","WIRApplicationIdentifierKey","updateAppsWithDict","onAppDisconnect","getDebuggerAppKey","bundleId","connected","EVENT_DISCONNECT","onAppUpdate","onConnectedDriverList","drivers","connectedDrivers","WIRDriverDictionaryKey","JSON","stringify","onCurrentState","state","currentState","WIRAutomationAvailabilityKey","onConnectedApplicationList","apps","keys","join","newDict","values","id","entry","appInfoFromDict","skippedApps","includes","name","defaults","messageHandlers"],"sources":["../../../lib/mixins/message-handlers.js"],"sourcesContent":["import log from '../logger';\nimport events from './events';\nimport { pageArrayFromDict, getDebuggerAppKey, simpleStringify, appInfoFromDict } from '../utils';\nimport _ from 'lodash';\n\n\n/*\n * Generic callbacks used throughout the lifecycle of the Remote Debugger.\n * These will be added to the prototype.\n */\n\nasync function onPageChange (err, appIdKey, pageDict) {\n if (_.isEmpty(pageDict)) {\n return;\n }\n\n const pageArray = pageArrayFromDict(pageDict);\n\n await this.useAppDictLock((done) => {\n try {\n // save the page dict for this app\n if (this.appDict[appIdKey]) {\n if (this.appDict[appIdKey].pageArray) {\n if (this.appDict[appIdKey].pageArray.resolve) {\n // pageDict is a pending promise, so resolve\n this.appDict[appIdKey].pageArray.resolve();\n } else {\n // we have a pre-existing pageDict\n if (_.isEqual(this.appDict[appIdKey].pageArray, pageArray)) {\n log.debug(`Received page change notice for app '${appIdKey}' ` +\n `but the listing has not changed. Ignoring.`);\n return done();\n }\n }\n }\n // keep track of the page dictionary\n this.appDict[appIdKey].pageArray = pageArray;\n }\n } finally {\n done();\n }\n });\n\n if (this._navigatingToPage) {\n // in the middle of navigating, so reporting a page change will cause problems\n return;\n }\n\n log.debug(`Page changed: ${simpleStringify(pageDict, true)}`);\n\n this.emit(events.EVENT_PAGE_CHANGE, {\n appIdKey: appIdKey.replace('PID:', ''),\n pageArray,\n });\n}\n\nasync function onAppConnect (err, dict) {\n const appIdKey = dict.WIRApplicationIdentifierKey;\n log.debug(`Notified that new application '${appIdKey}' has connected`);\n await this.useAppDictLock((done) => {\n try {\n this.updateAppsWithDict(dict);\n } finally {\n done();\n }\n });\n}\n\nfunction onAppDisconnect (err, dict) {\n const appIdKey = dict.WIRApplicationIdentifierKey;\n log.debug(`Application '${appIdKey}' disconnected. Removing from app dictionary.`);\n log.debug(`Current app is '${this.appIdKey}'`);\n\n // get rid of the entry in our app dictionary,\n // since it is no longer available\n delete this.appDict[appIdKey];\n\n // if the disconnected app is the one we are connected to, try to find another\n if (this.appIdKey === appIdKey) {\n log.debug(`No longer have app id. Attempting to find new one.`);\n this.appIdKey = getDebuggerAppKey(this.bundleId, this.appDict);\n }\n\n if (!this.appDict) {\n // this means we no longer have any apps. what the what?\n log.debug('Main app disconnected. Disconnecting altogether.');\n this.connected = false;\n this.emit(events.EVENT_DISCONNECT, true);\n }\n}\n\nasync function onAppUpdate (err, dict) {\n await this.useAppDictLock((done) => {\n try {\n this.updateAppsWithDict(dict);\n } finally {\n done();\n }\n });\n}\n\nfunction onConnectedDriverList (err, drivers) {\n this.connectedDrivers = drivers.WIRDriverDictionaryKey;\n log.debug(`Received connected driver list: ${JSON.stringify(this.connectedDrivers)}`);\n}\n\nfunction onCurrentState (err, state) {\n this.currentState = state.WIRAutomationAvailabilityKey;\n // This state changes when 'Remote Automation' in 'Settings app' > 'Safari' > 'Advanced' > 'Remote Automation' changes\n // WIRAutomationAvailabilityAvailable or WIRAutomationAvailabilityNotAvailable\n log.debug(`Received connected automation availability state: ${JSON.stringify(this.currentState)}`);\n}\n\nasync function onConnectedApplicationList (err, apps) {\n log.debug(`Received connected applications list: ${_.keys(apps).join(', ')}`);\n\n // translate the received information into an easier-to-manage\n // hash with app id as key, and app info as value\n let newDict = {};\n for (const dict of _.values(apps)) {\n const [id, entry] = appInfoFromDict(dict);\n if (this.skippedApps.includes(entry.name)) {\n continue;\n }\n newDict[id] = entry;\n }\n // update the object's list of apps\n await this.useAppDictLock((done) => {\n try {\n _.defaults(this.appDict, newDict);\n } finally {\n done();\n }\n });\n}\n\nconst messageHandlers = {\n onPageChange,\n onAppConnect,\n onAppDisconnect,\n onAppUpdate,\n onConnectedDriverList,\n onCurrentState,\n onConnectedApplicationList,\n};\n\nexport default messageHandlers;\n"],"mappings":";;;;;;;;AAAA;AACA;AACA;AACA;AAQA,
|
|
1
|
+
{"version":3,"file":"message-handlers.js","names":["_logger","_interopRequireDefault","require","_events","_utils","_lodash","onPageChange","err","appIdKey","pageDict","_","isEmpty","pageArray","pageArrayFromDict","useAppDictLock","done","appDict","resolve","isEqual","log","debug","_navigatingToPage","simpleStringify","emit","events","EVENT_PAGE_CHANGE","replace","onAppConnect","dict","WIRApplicationIdentifierKey","updateAppsWithDict","onAppDisconnect","getDebuggerAppKey","bundleId","connected","EVENT_DISCONNECT","onAppUpdate","onConnectedDriverList","drivers","connectedDrivers","WIRDriverDictionaryKey","JSON","stringify","onCurrentState","state","currentState","WIRAutomationAvailabilityKey","onConnectedApplicationList","apps","keys","join","newDict","values","id","entry","appInfoFromDict","skippedApps","includes","name","defaults","messageHandlers","_default","exports","default"],"sources":["../../../lib/mixins/message-handlers.js"],"sourcesContent":["import log from '../logger';\nimport events from './events';\nimport { pageArrayFromDict, getDebuggerAppKey, simpleStringify, appInfoFromDict } from '../utils';\nimport _ from 'lodash';\n\n\n/*\n * Generic callbacks used throughout the lifecycle of the Remote Debugger.\n * These will be added to the prototype.\n */\n\nasync function onPageChange (err, appIdKey, pageDict) {\n if (_.isEmpty(pageDict)) {\n return;\n }\n\n const pageArray = pageArrayFromDict(pageDict);\n\n await this.useAppDictLock((done) => {\n try {\n // save the page dict for this app\n if (this.appDict[appIdKey]) {\n if (this.appDict[appIdKey].pageArray) {\n if (this.appDict[appIdKey].pageArray.resolve) {\n // pageDict is a pending promise, so resolve\n this.appDict[appIdKey].pageArray.resolve();\n } else {\n // we have a pre-existing pageDict\n if (_.isEqual(this.appDict[appIdKey].pageArray, pageArray)) {\n log.debug(`Received page change notice for app '${appIdKey}' ` +\n `but the listing has not changed. Ignoring.`);\n return done();\n }\n }\n }\n // keep track of the page dictionary\n this.appDict[appIdKey].pageArray = pageArray;\n }\n } finally {\n done();\n }\n });\n\n if (this._navigatingToPage) {\n // in the middle of navigating, so reporting a page change will cause problems\n return;\n }\n\n log.debug(`Page changed: ${simpleStringify(pageDict, true)}`);\n\n this.emit(events.EVENT_PAGE_CHANGE, {\n appIdKey: appIdKey.replace('PID:', ''),\n pageArray,\n });\n}\n\nasync function onAppConnect (err, dict) {\n const appIdKey = dict.WIRApplicationIdentifierKey;\n log.debug(`Notified that new application '${appIdKey}' has connected`);\n await this.useAppDictLock((done) => {\n try {\n this.updateAppsWithDict(dict);\n } finally {\n done();\n }\n });\n}\n\nfunction onAppDisconnect (err, dict) {\n const appIdKey = dict.WIRApplicationIdentifierKey;\n log.debug(`Application '${appIdKey}' disconnected. Removing from app dictionary.`);\n log.debug(`Current app is '${this.appIdKey}'`);\n\n // get rid of the entry in our app dictionary,\n // since it is no longer available\n delete this.appDict[appIdKey];\n\n // if the disconnected app is the one we are connected to, try to find another\n if (this.appIdKey === appIdKey) {\n log.debug(`No longer have app id. Attempting to find new one.`);\n this.appIdKey = getDebuggerAppKey(this.bundleId, this.appDict);\n }\n\n if (!this.appDict) {\n // this means we no longer have any apps. what the what?\n log.debug('Main app disconnected. Disconnecting altogether.');\n this.connected = false;\n this.emit(events.EVENT_DISCONNECT, true);\n }\n}\n\nasync function onAppUpdate (err, dict) {\n await this.useAppDictLock((done) => {\n try {\n this.updateAppsWithDict(dict);\n } finally {\n done();\n }\n });\n}\n\nfunction onConnectedDriverList (err, drivers) {\n this.connectedDrivers = drivers.WIRDriverDictionaryKey;\n log.debug(`Received connected driver list: ${JSON.stringify(this.connectedDrivers)}`);\n}\n\nfunction onCurrentState (err, state) {\n this.currentState = state.WIRAutomationAvailabilityKey;\n // This state changes when 'Remote Automation' in 'Settings app' > 'Safari' > 'Advanced' > 'Remote Automation' changes\n // WIRAutomationAvailabilityAvailable or WIRAutomationAvailabilityNotAvailable\n log.debug(`Received connected automation availability state: ${JSON.stringify(this.currentState)}`);\n}\n\nasync function onConnectedApplicationList (err, apps) {\n log.debug(`Received connected applications list: ${_.keys(apps).join(', ')}`);\n\n // translate the received information into an easier-to-manage\n // hash with app id as key, and app info as value\n let newDict = {};\n for (const dict of _.values(apps)) {\n const [id, entry] = appInfoFromDict(dict);\n if (this.skippedApps.includes(entry.name)) {\n continue;\n }\n newDict[id] = entry;\n }\n // update the object's list of apps\n await this.useAppDictLock((done) => {\n try {\n _.defaults(this.appDict, newDict);\n } finally {\n done();\n }\n });\n}\n\nconst messageHandlers = {\n onPageChange,\n onAppConnect,\n onAppDisconnect,\n onAppUpdate,\n onConnectedDriverList,\n onCurrentState,\n onConnectedApplicationList,\n};\n\nexport default messageHandlers;\n"],"mappings":"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"}
|
|
@@ -160,4 +160,4 @@ var _default = {
|
|
|
160
160
|
waitForFrameNavigated
|
|
161
161
|
};
|
|
162
162
|
exports.default = _default;
|
|
163
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJmcmFtZURldGFjaGVkIiwiZW1pdCIsImV2ZW50cyIsIkVWRU5UX0ZSQU1FU19ERVRBQ0hFRCIsInBhZ2VMb2FkIiwic3RhcnRQYWdlTG9hZFRpbWVyIiwicGFnZUxvYWRWZXJpZnlIb29rIiwiXyIsIm5vb3AiLCJ0aW1lb3V0TXMiLCJpc0Z1bmN0aW9uIiwiZ2V0RHVyYXRpb24iLCJsb2ciLCJkZWJ1ZyIsInRpbWluZyIsIlRpbWVyIiwic3RhcnQiLCJwYWdlTG9hZGluZyIsInZlcmlmeSIsInBhZ2VMb2FkRGVsYXkiLCJ1dGlsIiwiY2FuY2VsbGFibGVEZWxheSIsImVyciIsIkIiLCJDYW5jZWxsYXRpb25FcnJvciIsImFwcElkS2V5IiwiZWxhcHNlZE1zIiwiYXNNaWxsaVNlY29uZHMiLCJjaGVja1BhZ2VJc1JlYWR5IiwicGFnZUxvYWRNcyIsInRvRml4ZWQiLCJjYW5jZWxQYWdlTG9hZCIsImNhbmNlbCIsInBhZ2VVbmxvYWQiLCJ3YWl0Rm9yRG9tIiwiY2hlY2tQYXJhbXMiLCJyZWFkeUNtZCIsInJlYWR5U3RhdGUiLCJyZXNvbHZlIiwiZXhlY3V0ZSIsInRpbWVvdXQiLCJwYWdlUmVhZHlUaW1lb3V0IiwiVGltZW91dEVycm9yIiwibmF2VG9VcmwiLCJ1cmwiLCJwYWdlSWRLZXkiLCJfbmF2aWdhdGluZ1RvUGFnZSIsIndhaXRGb3JGcmFtZVByb21pc2UiLCJ3YWl0Rm9yRnJhbWVOYXZpZ2F0ZWQiLCJycGNDbGllbnQiLCJzZW5kIiwidXNlTmV3U2FmYXJpIiwiZGVsYXkiLCJuYXZFdmVudExpc3RlbmVyIiwidmFsdWUiLCJhbGxvd05hdmlnYXRpb25XaXRob3V0UmVsb2FkIiwibmF2aWdhdGlvbkRlbGF5Iiwib25jZSIsImZpbmFsbHkiLCJvZmYiXSwic291cmNlcyI6WyIuLi8uLi8uLi9saWIvbWl4aW5zL25hdmlnYXRlLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBsb2cgZnJvbSAnLi4vbG9nZ2VyJztcbmltcG9ydCB7IGNoZWNrUGFyYW1zIH0gZnJvbSAnLi4vdXRpbHMnO1xuaW1wb3J0IGV2ZW50cyBmcm9tICcuL2V2ZW50cyc7XG5pbXBvcnQgeyB0aW1pbmcsIHV0aWwgfSBmcm9tICdAYXBwaXVtL3N1cHBvcnQnO1xuaW1wb3J0IF8gZnJvbSAnbG9kYXNoJztcbmltcG9ydCBCIGZyb20gJ2JsdWViaXJkJztcblxuXG5mdW5jdGlvbiBmcmFtZURldGFjaGVkICgpIHtcbiAgdGhpcy5lbWl0KGV2ZW50cy5FVkVOVF9GUkFNRVNfREVUQUNIRUQpO1xufVxuXG5hc3luYyBmdW5jdGlvbiBwYWdlTG9hZCAoc3RhcnRQYWdlTG9hZFRpbWVyLCBwYWdlTG9hZFZlcmlmeUhvb2sgPSBfLm5vb3ApIHtcbiAgY29uc3QgdGltZW91dE1zID0gNTAwO1xuICBpZiAoIV8uaXNGdW5jdGlvbihzdGFydFBhZ2VMb2FkVGltZXI/LmdldER1cmF0aW9uKSkge1xuICAgIGxvZy5kZWJ1ZyhgUGFnZSBsb2FkIHRpbWVyIG5vdCBhIHRpbWVyLiBDcmVhdGluZyBuZXcgdGltZXJgKTtcbiAgICBzdGFydFBhZ2VMb2FkVGltZXIgPSBuZXcgdGltaW5nLlRpbWVyKCkuc3RhcnQoKTtcbiAgfVxuXG4gIGxvZy5kZWJ1ZygnUGFnZSBsb2FkZWQsIHZlcmlmeWluZyB3aGV0aGVyIHJlYWR5Jyk7XG4gIHRoaXMucGFnZUxvYWRpbmcgPSB0cnVlO1xuXG4gIGNvbnN0IHZlcmlmeSA9IGFzeW5jICgpID0+IHtcbiAgICB0aGlzLnBhZ2VMb2FkRGVsYXkgPSB1dGlsLmNhbmNlbGxhYmxlRGVsYXkodGltZW91dE1zKTtcbiAgICB0cnkge1xuICAgICAgYXdhaXQgdGhpcy5wYWdlTG9hZERlbGF5O1xuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgaWYgKGVyciBpbnN0YW5jZW9mIEIuQ2FuY2VsbGF0aW9uRXJyb3IpIHtcbiAgICAgICAgLy8gaWYgdGhlIHByb21pc2UgaGFzIGJlZW4gY2FuY2VsbGVkXG4gICAgICAgIC8vIHdlIHdhbnQgdG8gc2tpcCBjaGVja2luZyB0aGUgcmVhZGluZXNzXG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyB3ZSBjYW4gZ2V0IHRoaXMgY2FsbGVkIGluIHRoZSBtaWRkbGUgb2YgdHJ5aW5nIHRvIGZpbmQgYSBuZXcgYXBwXG4gICAgaWYgKCF0aGlzLmFwcElkS2V5KSB7XG4gICAgICBsb2cuZGVidWcoJ05vdCBjb25uZWN0ZWQgdG8gYW4gYXBwbGljYXRpb24uIElnbm9yaW5nIHBhZ2UgbG9hZCcpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmIChfLmlzRnVuY3Rpb24ocGFnZUxvYWRWZXJpZnlIb29rKSkge1xuICAgICAgYXdhaXQgcGFnZUxvYWRWZXJpZnlIb29rKCk7XG4gICAgfVxuXG4gICAgLy8gaWYgd2UgYXJlIHJlYWR5LCBvciB3ZSd2ZSBzcGVuZCB0b28gbXVjaCB0aW1lIG9uIHRoaXNcbiAgICBjb25zdCBlbGFwc2VkTXMgPSBzdGFydFBhZ2VMb2FkVGltZXIuZ2V0RHVyYXRpb24oKS5hc01pbGxpU2Vjb25kcztcbiAgICBpZiAoYXdhaXQgdGhpcy5jaGVja1BhZ2VJc1JlYWR5KCkgfHwgKHRoaXMucGFnZUxvYWRNcyA+IDAgJiYgZWxhcHNlZE1zID4gdGhpcy5wYWdlTG9hZE1zKSkge1xuICAgICAgbG9nLmRlYnVnKCdQYWdlIGlzIHJlYWR5Jyk7XG4gICAgICB0aGlzLnBhZ2VMb2FkaW5nID0gZmFsc2U7XG4gICAgfSBlbHNlIHtcbiAgICAgIGxvZy5kZWJ1ZygnUGFnZSB3YXMgbm90IHJlYWR5LCByZXRyeWluZycpO1xuICAgICAgYXdhaXQgdmVyaWZ5KCk7XG4gICAgfVxuICB9O1xuICB0cnkge1xuICAgIGF3YWl0IHZlcmlmeSgpO1xuICB9IGZpbmFsbHkge1xuICAgIGxvZy5kZWJ1ZyhgUGFnZSBsb2FkIGNvbXBsZXRlZCBpbiAke3N0YXJ0UGFnZUxvYWRUaW1lci5nZXREdXJhdGlvbigpLmFzTWlsbGlTZWNvbmRzLnRvRml4ZWQoMCl9bXNgKTtcbiAgICB0aGlzLnBhZ2VMb2FkaW5nID0gZmFsc2U7XG4gIH1cbn1cblxuZnVuY3Rpb24gY2FuY2VsUGFnZUxvYWQgKCkge1xuICBsb2cuZGVidWcoJ1VucmVnaXN0ZXJpbmcgZnJvbSBwYWdlIHJlYWRpbmVzcyBub3RpZmljYXRpb25zJyk7XG4gIHRoaXMucGFnZUxvYWRpbmcgPSBmYWxzZTtcbiAgaWYgKHRoaXMucGFnZUxvYWREZWxheSkge1xuICAgIHRoaXMucGFnZUxvYWREZWxheS5jYW5jZWwoKTtcbiAgfVxufVxuXG5hc3luYyBmdW5jdGlvbiBwYWdlVW5sb2FkICgpIHtcbiAgbG9nLmRlYnVnKCdQYWdlIHVubG9hZGluZycpO1xuICBhd2FpdCB0aGlzLndhaXRGb3JEb20oKTtcbn1cblxuYXN5bmMgZnVuY3Rpb24gd2FpdEZvckRvbSAoc3RhcnRQYWdlTG9hZFRpbWVyLCBwYWdlTG9hZFZlcmlmeUhvb2spIHtcbiAgbG9nLmRlYnVnKCdXYWl0aW5nIGZvciBkb20uLi4nKTtcbiAgYXdhaXQgdGhpcy5wYWdlTG9hZChzdGFydFBhZ2VMb2FkVGltZXIsIHBhZ2VMb2FkVmVyaWZ5SG9vayk7XG59XG5cbmFzeW5jIGZ1bmN0aW9uIGNoZWNrUGFnZUlzUmVhZHkgKCkge1xuICBjaGVja1BhcmFtcyh7YXBwSWRLZXk6IHRoaXMuYXBwSWRLZXl9KTtcblxuICBsb2cuZGVidWcoJ0NoZWNraW5nIGRvY3VtZW50IHJlYWR5U3RhdGUnKTtcbiAgY29uc3QgcmVhZHlDbWQgPSAnZG9jdW1lbnQucmVhZHlTdGF0ZTsnO1xuICBsZXQgcmVhZHlTdGF0ZSA9ICdsb2FkaW5nJztcbiAgdHJ5IHtcbiAgICByZWFkeVN0YXRlID0gYXdhaXQgQi5yZXNvbHZlKHRoaXMuZXhlY3V0ZShyZWFkeUNtZCwgdHJ1ZSkpLnRpbWVvdXQodGhpcy5wYWdlUmVhZHlUaW1lb3V0KTtcbiAgfSBjYXRjaCAoZXJyKSB7XG4gICAgaWYgKCEoZXJyIGluc3RhbmNlb2YgQi5UaW1lb3V0RXJyb3IpKSB7XG4gICAgICB0aHJvdyBlcnI7XG4gICAgfVxuICAgIGxvZy5kZWJ1ZyhgUGFnZSByZWFkaW5lc3MgY2hlY2sgdGltZWQgb3V0IGFmdGVyICR7dGhpcy5wYWdlUmVhZHlUaW1lb3V0fW1zYCk7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG4gIGxvZy5kZWJ1ZyhgRG9jdW1lbnQgcmVhZHlTdGF0ZSBpcyAnJHtyZWFkeVN0YXRlfSdgKTtcblxuICByZXR1cm4gcmVhZHlTdGF0ZSA9PT0gJ2NvbXBsZXRlJztcbn1cblxuYXN5bmMgZnVuY3Rpb24gbmF2VG9VcmwgKHVybCwgcGFnZUxvYWRWZXJpZnlIb29rKSB7XG4gIGNoZWNrUGFyYW1zKHthcHBJZEtleTogdGhpcy5hcHBJZEtleSwgcGFnZUlkS2V5OiB0aGlzLnBhZ2VJZEtleX0pO1xuXG4gIHRoaXMuX25hdmlnYXRpbmdUb1BhZ2UgPSB0cnVlO1xuXG4gIHRyeSB7XG4gICAgbG9nLmRlYnVnKGBOYXZpZ2F0aW5nIHRvIG5ldyBVUkw6ICcke3VybH0nYCk7XG5cbiAgICAvLyBiZWdpbiBsaXN0ZW5pbmcgZm9yIGZyYW1lIG5hdmlnYXRpb24gZXZlbnQsIHdoaWNoIHdpbGwgYmUgd2FpdGVkIGZvciBsYXRlclxuICAgIGNvbnN0IHdhaXRGb3JGcmFtZVByb21pc2UgPSB0aGlzLndhaXRGb3JGcmFtZU5hdmlnYXRlZCgpO1xuXG4gICAgYXdhaXQgdGhpcy5ycGNDbGllbnQuc2VuZCgnUGFnZS5uYXZpZ2F0ZScsIHtcbiAgICAgIHVybCxcbiAgICAgIGFwcElkS2V5OiB0aGlzLmFwcElkS2V5LFxuICAgICAgcGFnZUlkS2V5OiB0aGlzLnBhZ2VJZEtleSxcbiAgICB9KTtcblxuICAgIGlmICghdGhpcy51c2VOZXdTYWZhcmkpIHtcbiAgICAgIC8vIGEgc21hbGwgcGF1c2UgZm9yIHRoZSBicm93c2VyIHRvIGNhdGNoIHVwXG4gICAgICBhd2FpdCBCLmRlbGF5KDEwMDApO1xuICAgIH1cblxuICAgIC8vIHdhaXQgdW50aWwgdGhlIHBhZ2UgaGFzIGJlZW4gbmF2aWdhdGVkXG4gICAgYXdhaXQgd2FpdEZvckZyYW1lUHJvbWlzZTtcblxuICAgIGF3YWl0IHRoaXMud2FpdEZvckRvbShuZXcgdGltaW5nLlRpbWVyKCkuc3RhcnQoKSwgcGFnZUxvYWRWZXJpZnlIb29rKTtcblxuICAgIC8vIGVuYWJsZSBjb25zb2xlIGxvZ2dpbmcsIHNvIHdlIGdldCB0aGUgZXZlbnRzIChvdGhlcndpc2Ugd2Ugb25seVxuICAgIC8vIGdldCBub3RpZmllZCB3aGVuIG5hdmlnYXRpbmcgdG8gYSBsb2NhbCBwYWdlXG4gICAgYXdhaXQgdGhpcy5ycGNDbGllbnQuc2VuZCgnQ29uc29sZS5lbmFibGUnLCB7XG4gICAgICBhcHBJZEtleTogdGhpcy5hcHBJZEtleSxcbiAgICAgIHBhZ2VJZEtleTogdGhpcy5wYWdlSWRLZXksXG4gICAgfSk7XG4gIH0gZmluYWxseSB7XG4gICAgdGhpcy5fbmF2aWdhdGluZ1RvUGFnZSA9IGZhbHNlO1xuICB9XG59XG5cbmFzeW5jIGZ1bmN0aW9uIHdhaXRGb3JGcmFtZU5hdmlnYXRlZCAoKSB7XG4gIGxldCBuYXZFdmVudExpc3RlbmVyO1xuICByZXR1cm4gYXdhaXQgbmV3IEIoYXN5bmMgKHJlc29sdmUpID0+IHtcbiAgICBsb2cuZGVidWcoJ1dhaXRpbmcgZm9yIGZyYW1lIG5hdmlnYXRlZCBtZXNzYWdlLi4uJyk7XG4gICAgY29uc3Qgc3RhcnQgPSBuZXcgdGltaW5nLlRpbWVyKCkuc3RhcnQoKTtcblxuICAgIC8vIGFkZCBhIGhhbmRsZXIgZm9yIHRoZSBgUGFnZS5mcmFtZU5hdmlnYXRlZGAgbWVzc2FnZVxuICAgIC8vIGZyb20gdGhlIHJlbW90ZSBkZWJ1Z2dlclxuICAgIG5hdkV2ZW50TGlzdGVuZXIgPSAoZXJyLCB2YWx1ZSkgPT4ge1xuICAgICAgbG9nLmRlYnVnKGBGcmFtZSBuYXZpZ2F0ZWQgaW4gJHtzdGFydC5nZXREdXJhdGlvbigpLmFzTWlsbGlTZWNvbmRzLnRvRml4ZWQoMCl9bXMgZnJvbTogJHt2YWx1ZX1gKTtcbiAgICAgIGlmICghdGhpcy5hbGxvd05hdmlnYXRpb25XaXRob3V0UmVsb2FkICYmICF0aGlzLnBhZ2VMb2FkaW5nKSB7XG4gICAgICAgIHJlc29sdmUodmFsdWUpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgbG9nLmRlYnVnKCdGcmFtZSBuYXZpZ2F0ZWQgYnV0IHdlIHdlcmUgd2FybmVkIGFib3V0IGl0LCBub3QgJyArXG4gICAgICAgICAgICAgICAgICAnY29uc2lkZXJpbmcgcGFnZSBzdGF0ZSB1bmxvYWRlZCcpO1xuICAgICAgICB0aGlzLmFsbG93TmF2aWdhdGlvbldpdGhvdXRSZWxvYWQgPSBmYWxzZTtcbiAgICAgIH1cbiAgICAgIGlmICh0aGlzLm5hdmlnYXRpb25EZWxheSkge1xuICAgICAgICB0aGlzLm5hdmlnYXRpb25EZWxheS5jYW5jZWwoKTtcbiAgICAgIH1cbiAgICB9O1xuXG4gICAgdGhpcy5ycGNDbGllbnQub25jZSgnUGFnZS5mcmFtZU5hdmlnYXRlZCcsIG5hdkV2ZW50TGlzdGVuZXIpO1xuXG4gICAgLy8gdGltZW91dCwgaW4gY2FzZSByZW1vdGUgZGVidWdnZXIgZG9lc24ndCByZXNwb25kLFxuICAgIC8vIG9yIHRha2VzIGEgbG9uZyB0aW1lXG4gICAgaWYgKCF0aGlzLnVzZU5ld1NhZmFyaSB8fCB0aGlzLnBhZ2VMb2FkTXMgPj0gMCkge1xuICAgICAgLy8gdXNlIHBhZ2VMb2FkTXMsIG9yIGEgc21hbGwgYW1vdW50IG9mIHRpbWVcbiAgICAgIGNvbnN0IHRpbWVvdXQgPSB0aGlzLnVzZU5ld1NhZmFyaSA/IHRoaXMucGFnZUxvYWRNcyA6IDUwMDtcbiAgICAgIHRoaXMubmF2aWdhdGlvbkRlbGF5ID0gdXRpbC5jYW5jZWxsYWJsZURlbGF5KHRpbWVvdXQpO1xuICAgICAgdHJ5IHtcbiAgICAgICAgYXdhaXQgdGhpcy5uYXZpZ2F0aW9uRGVsYXk7XG4gICAgICAgIG5hdkV2ZW50TGlzdGVuZXIobnVsbCwgYCR7dGltZW91dH1tcyB0aW1lb3V0YCk7XG4gICAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgICAgLy8gbm90aGluZyB0byBkbzogd2Ugb25seSBnZXQgaGVyZSBpZiB0aGUgcmVtb3RlIGRlYnVnZ2VyXG4gICAgICAgIC8vIGFscmVhZHkgbm90aWZpZWQgb2YgZnJhbWUgbmF2aWdhdGlvbiwgYW5kIHRoZSBkZWxheVxuICAgICAgICAvLyB3YXMgY2FuY2VsbGVkXG4gICAgICB9XG4gICAgfVxuICB9KS5maW5hbGx5KCgpID0+IHtcbiAgICBpZiAobmF2RXZlbnRMaXN0ZW5lcikge1xuICAgICAgdGhpcy5ycGNDbGllbnQub2ZmKCdQYWdlLmZyYW1lTmF2aWdhdGVkJywgbmF2RXZlbnRMaXN0ZW5lcik7XG4gICAgfVxuICB9KTtcbn1cblxuXG5leHBvcnQgZGVmYXVsdCB7IGZyYW1lRGV0YWNoZWQsIHBhZ2VMb2FkLCBjYW5jZWxQYWdlTG9hZCwgcGFnZVVubG9hZCwgd2FpdEZvckRvbSwgY2hlY2tQYWdlSXNSZWFkeSwgbmF2VG9VcmwsIHdhaXRGb3JGcmFtZU5hdmlnYXRlZCB9O1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUdBLFNBQVNBLGFBQWEsR0FBSTtFQUN4QixJQUFJLENBQUNDLElBQUksQ0FBQ0MsZUFBTSxDQUFDQyxxQkFBcUIsQ0FBQztBQUN6QztBQUVBLGVBQWVDLFFBQVEsQ0FBRUMsa0JBQWtCLEVBQUVDLGtCQUFrQixHQUFHQyxlQUFDLENBQUNDLElBQUksRUFBRTtFQUFBO0VBQ3hFLE1BQU1DLFNBQVMsR0FBRyxHQUFHO0VBQ3JCLElBQUksQ0FBQ0YsZUFBQyxDQUFDRyxVQUFVLHdCQUFDTCxrQkFBa0Isd0RBQWxCLG9CQUFvQk0sV0FBVyxDQUFDLEVBQUU7SUFDbERDLGVBQUcsQ0FBQ0MsS0FBSyxDQUFFLGlEQUFnRCxDQUFDO0lBQzVEUixrQkFBa0IsR0FBRyxJQUFJUyxlQUFNLENBQUNDLEtBQUssRUFBRSxDQUFDQyxLQUFLLEVBQUU7RUFDakQ7RUFFQUosZUFBRyxDQUFDQyxLQUFLLENBQUMsc0NBQXNDLENBQUM7RUFDakQsSUFBSSxDQUFDSSxX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
|
|
163
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfbG9nZ2VyIiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsInJlcXVpcmUiLCJfdXRpbHMiLCJfZXZlbnRzIiwiX3N1cHBvcnQiLCJfbG9kYXNoIiwiX2JsdWViaXJkIiwiZnJhbWVEZXRhY2hlZCIsImVtaXQiLCJldmVudHMiLCJFVkVOVF9GUkFNRVNfREVUQUNIRUQiLCJwYWdlTG9hZCIsInN0YXJ0UGFnZUxvYWRUaW1lciIsInBhZ2VMb2FkVmVyaWZ5SG9vayIsIl8iLCJub29wIiwiX3N0YXJ0UGFnZUxvYWRUaW1lciIsInRpbWVvdXRNcyIsImlzRnVuY3Rpb24iLCJnZXREdXJhdGlvbiIsImxvZyIsImRlYnVnIiwidGltaW5nIiwiVGltZXIiLCJzdGFydCIsInBhZ2VMb2FkaW5nIiwidmVyaWZ5IiwicGFnZUxvYWREZWxheSIsInV0aWwiLCJjYW5jZWxsYWJsZURlbGF5IiwiZXJyIiwiQiIsIkNhbmNlbGxhdGlvbkVycm9yIiwiYXBwSWRLZXkiLCJlbGFwc2VkTXMiLCJhc01pbGxpU2Vjb25kcyIsImNoZWNrUGFnZUlzUmVhZHkiLCJwYWdlTG9hZE1zIiwidG9GaXhlZCIsImNhbmNlbFBhZ2VMb2FkIiwiY2FuY2VsIiwicGFnZVVubG9hZCIsIndhaXRGb3JEb20iLCJjaGVja1BhcmFtcyIsInJlYWR5Q21kIiwicmVhZHlTdGF0ZSIsInJlc29sdmUiLCJleGVjdXRlIiwidGltZW91dCIsInBhZ2VSZWFkeVRpbWVvdXQiLCJUaW1lb3V0RXJyb3IiLCJuYXZUb1VybCIsInVybCIsInBhZ2VJZEtleSIsIl9uYXZpZ2F0aW5nVG9QYWdlIiwid2FpdEZvckZyYW1lUHJvbWlzZSIsIndhaXRGb3JGcmFtZU5hdmlnYXRlZCIsInJwY0NsaWVudCIsInNlbmQiLCJ1c2VOZXdTYWZhcmkiLCJkZWxheSIsIm5hdkV2ZW50TGlzdGVuZXIiLCJ2YWx1ZSIsImFsbG93TmF2aWdhdGlvbldpdGhvdXRSZWxvYWQiLCJuYXZpZ2F0aW9uRGVsYXkiLCJvbmNlIiwiZmluYWxseSIsIm9mZiIsIl9kZWZhdWx0IiwiZXhwb3J0cyIsImRlZmF1bHQiXSwic291cmNlcyI6WyIuLi8uLi8uLi9saWIvbWl4aW5zL25hdmlnYXRlLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBsb2cgZnJvbSAnLi4vbG9nZ2VyJztcbmltcG9ydCB7IGNoZWNrUGFyYW1zIH0gZnJvbSAnLi4vdXRpbHMnO1xuaW1wb3J0IGV2ZW50cyBmcm9tICcuL2V2ZW50cyc7XG5pbXBvcnQgeyB0aW1pbmcsIHV0aWwgfSBmcm9tICdAYXBwaXVtL3N1cHBvcnQnO1xuaW1wb3J0IF8gZnJvbSAnbG9kYXNoJztcbmltcG9ydCBCIGZyb20gJ2JsdWViaXJkJztcblxuXG5mdW5jdGlvbiBmcmFtZURldGFjaGVkICgpIHtcbiAgdGhpcy5lbWl0KGV2ZW50cy5FVkVOVF9GUkFNRVNfREVUQUNIRUQpO1xufVxuXG5hc3luYyBmdW5jdGlvbiBwYWdlTG9hZCAoc3RhcnRQYWdlTG9hZFRpbWVyLCBwYWdlTG9hZFZlcmlmeUhvb2sgPSBfLm5vb3ApIHtcbiAgY29uc3QgdGltZW91dE1zID0gNTAwO1xuICBpZiAoIV8uaXNGdW5jdGlvbihzdGFydFBhZ2VMb2FkVGltZXI/LmdldER1cmF0aW9uKSkge1xuICAgIGxvZy5kZWJ1ZyhgUGFnZSBsb2FkIHRpbWVyIG5vdCBhIHRpbWVyLiBDcmVhdGluZyBuZXcgdGltZXJgKTtcbiAgICBzdGFydFBhZ2VMb2FkVGltZXIgPSBuZXcgdGltaW5nLlRpbWVyKCkuc3RhcnQoKTtcbiAgfVxuXG4gIGxvZy5kZWJ1ZygnUGFnZSBsb2FkZWQsIHZlcmlmeWluZyB3aGV0aGVyIHJlYWR5Jyk7XG4gIHRoaXMucGFnZUxvYWRpbmcgPSB0cnVlO1xuXG4gIGNvbnN0IHZlcmlmeSA9IGFzeW5jICgpID0+IHtcbiAgICB0aGlzLnBhZ2VMb2FkRGVsYXkgPSB1dGlsLmNhbmNlbGxhYmxlRGVsYXkodGltZW91dE1zKTtcbiAgICB0cnkge1xuICAgICAgYXdhaXQgdGhpcy5wYWdlTG9hZERlbGF5O1xuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgaWYgKGVyciBpbnN0YW5jZW9mIEIuQ2FuY2VsbGF0aW9uRXJyb3IpIHtcbiAgICAgICAgLy8gaWYgdGhlIHByb21pc2UgaGFzIGJlZW4gY2FuY2VsbGVkXG4gICAgICAgIC8vIHdlIHdhbnQgdG8gc2tpcCBjaGVja2luZyB0aGUgcmVhZGluZXNzXG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyB3ZSBjYW4gZ2V0IHRoaXMgY2FsbGVkIGluIHRoZSBtaWRkbGUgb2YgdHJ5aW5nIHRvIGZpbmQgYSBuZXcgYXBwXG4gICAgaWYgKCF0aGlzLmFwcElkS2V5KSB7XG4gICAgICBsb2cuZGVidWcoJ05vdCBjb25uZWN0ZWQgdG8gYW4gYXBwbGljYXRpb24uIElnbm9yaW5nIHBhZ2UgbG9hZCcpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmIChfLmlzRnVuY3Rpb24ocGFnZUxvYWRWZXJpZnlIb29rKSkge1xuICAgICAgYXdhaXQgcGFnZUxvYWRWZXJpZnlIb29rKCk7XG4gICAgfVxuXG4gICAgLy8gaWYgd2UgYXJlIHJlYWR5LCBvciB3ZSd2ZSBzcGVuZCB0b28gbXVjaCB0aW1lIG9uIHRoaXNcbiAgICBjb25zdCBlbGFwc2VkTXMgPSBzdGFydFBhZ2VMb2FkVGltZXIuZ2V0RHVyYXRpb24oKS5hc01pbGxpU2Vjb25kcztcbiAgICBpZiAoYXdhaXQgdGhpcy5jaGVja1BhZ2VJc1JlYWR5KCkgfHwgKHRoaXMucGFnZUxvYWRNcyA+IDAgJiYgZWxhcHNlZE1zID4gdGhpcy5wYWdlTG9hZE1zKSkge1xuICAgICAgbG9nLmRlYnVnKCdQYWdlIGlzIHJlYWR5Jyk7XG4gICAgICB0aGlzLnBhZ2VMb2FkaW5nID0gZmFsc2U7XG4gICAgfSBlbHNlIHtcbiAgICAgIGxvZy5kZWJ1ZygnUGFnZSB3YXMgbm90IHJlYWR5LCByZXRyeWluZycpO1xuICAgICAgYXdhaXQgdmVyaWZ5KCk7XG4gICAgfVxuICB9O1xuICB0cnkge1xuICAgIGF3YWl0IHZlcmlmeSgpO1xuICB9IGZpbmFsbHkge1xuICAgIGxvZy5kZWJ1ZyhgUGFnZSBsb2FkIGNvbXBsZXRlZCBpbiAke3N0YXJ0UGFnZUxvYWRUaW1lci5nZXREdXJhdGlvbigpLmFzTWlsbGlTZWNvbmRzLnRvRml4ZWQoMCl9bXNgKTtcbiAgICB0aGlzLnBhZ2VMb2FkaW5nID0gZmFsc2U7XG4gIH1cbn1cblxuZnVuY3Rpb24gY2FuY2VsUGFnZUxvYWQgKCkge1xuICBsb2cuZGVidWcoJ1VucmVnaXN0ZXJpbmcgZnJvbSBwYWdlIHJlYWRpbmVzcyBub3RpZmljYXRpb25zJyk7XG4gIHRoaXMucGFnZUxvYWRpbmcgPSBmYWxzZTtcbiAgaWYgKHRoaXMucGFnZUxvYWREZWxheSkge1xuICAgIHRoaXMucGFnZUxvYWREZWxheS5jYW5jZWwoKTtcbiAgfVxufVxuXG5hc3luYyBmdW5jdGlvbiBwYWdlVW5sb2FkICgpIHtcbiAgbG9nLmRlYnVnKCdQYWdlIHVubG9hZGluZycpO1xuICBhd2FpdCB0aGlzLndhaXRGb3JEb20oKTtcbn1cblxuYXN5bmMgZnVuY3Rpb24gd2FpdEZvckRvbSAoc3RhcnRQYWdlTG9hZFRpbWVyLCBwYWdlTG9hZFZlcmlmeUhvb2spIHtcbiAgbG9nLmRlYnVnKCdXYWl0aW5nIGZvciBkb20uLi4nKTtcbiAgYXdhaXQgdGhpcy5wYWdlTG9hZChzdGFydFBhZ2VMb2FkVGltZXIsIHBhZ2VMb2FkVmVyaWZ5SG9vayk7XG59XG5cbmFzeW5jIGZ1bmN0aW9uIGNoZWNrUGFnZUlzUmVhZHkgKCkge1xuICBjaGVja1BhcmFtcyh7YXBwSWRLZXk6IHRoaXMuYXBwSWRLZXl9KTtcblxuICBsb2cuZGVidWcoJ0NoZWNraW5nIGRvY3VtZW50IHJlYWR5U3RhdGUnKTtcbiAgY29uc3QgcmVhZHlDbWQgPSAnZG9jdW1lbnQucmVhZHlTdGF0ZTsnO1xuICBsZXQgcmVhZHlTdGF0ZSA9ICdsb2FkaW5nJztcbiAgdHJ5IHtcbiAgICByZWFkeVN0YXRlID0gYXdhaXQgQi5yZXNvbHZlKHRoaXMuZXhlY3V0ZShyZWFkeUNtZCwgdHJ1ZSkpLnRpbWVvdXQodGhpcy5wYWdlUmVhZHlUaW1lb3V0KTtcbiAgfSBjYXRjaCAoZXJyKSB7XG4gICAgaWYgKCEoZXJyIGluc3RhbmNlb2YgQi5UaW1lb3V0RXJyb3IpKSB7XG4gICAgICB0aHJvdyBlcnI7XG4gICAgfVxuICAgIGxvZy5kZWJ1ZyhgUGFnZSByZWFkaW5lc3MgY2hlY2sgdGltZWQgb3V0IGFmdGVyICR7dGhpcy5wYWdlUmVhZHlUaW1lb3V0fW1zYCk7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG4gIGxvZy5kZWJ1ZyhgRG9jdW1lbnQgcmVhZHlTdGF0ZSBpcyAnJHtyZWFkeVN0YXRlfSdgKTtcblxuICByZXR1cm4gcmVhZHlTdGF0ZSA9PT0gJ2NvbXBsZXRlJztcbn1cblxuYXN5bmMgZnVuY3Rpb24gbmF2VG9VcmwgKHVybCwgcGFnZUxvYWRWZXJpZnlIb29rKSB7XG4gIGNoZWNrUGFyYW1zKHthcHBJZEtleTogdGhpcy5hcHBJZEtleSwgcGFnZUlkS2V5OiB0aGlzLnBhZ2VJZEtleX0pO1xuXG4gIHRoaXMuX25hdmlnYXRpbmdUb1BhZ2UgPSB0cnVlO1xuXG4gIHRyeSB7XG4gICAgbG9nLmRlYnVnKGBOYXZpZ2F0aW5nIHRvIG5ldyBVUkw6ICcke3VybH0nYCk7XG5cbiAgICAvLyBiZWdpbiBsaXN0ZW5pbmcgZm9yIGZyYW1lIG5hdmlnYXRpb24gZXZlbnQsIHdoaWNoIHdpbGwgYmUgd2FpdGVkIGZvciBsYXRlclxuICAgIGNvbnN0IHdhaXRGb3JGcmFtZVByb21pc2UgPSB0aGlzLndhaXRGb3JGcmFtZU5hdmlnYXRlZCgpO1xuXG4gICAgYXdhaXQgdGhpcy5ycGNDbGllbnQuc2VuZCgnUGFnZS5uYXZpZ2F0ZScsIHtcbiAgICAgIHVybCxcbiAgICAgIGFwcElkS2V5OiB0aGlzLmFwcElkS2V5LFxuICAgICAgcGFnZUlkS2V5OiB0aGlzLnBhZ2VJZEtleSxcbiAgICB9KTtcblxuICAgIGlmICghdGhpcy51c2VOZXdTYWZhcmkpIHtcbiAgICAgIC8vIGEgc21hbGwgcGF1c2UgZm9yIHRoZSBicm93c2VyIHRvIGNhdGNoIHVwXG4gICAgICBhd2FpdCBCLmRlbGF5KDEwMDApO1xuICAgIH1cblxuICAgIC8vIHdhaXQgdW50aWwgdGhlIHBhZ2UgaGFzIGJlZW4gbmF2aWdhdGVkXG4gICAgYXdhaXQgd2FpdEZvckZyYW1lUHJvbWlzZTtcblxuICAgIGF3YWl0IHRoaXMud2FpdEZvckRvbShuZXcgdGltaW5nLlRpbWVyKCkuc3RhcnQoKSwgcGFnZUxvYWRWZXJpZnlIb29rKTtcblxuICAgIC8vIGVuYWJsZSBjb25zb2xlIGxvZ2dpbmcsIHNvIHdlIGdldCB0aGUgZXZlbnRzIChvdGhlcndpc2Ugd2Ugb25seVxuICAgIC8vIGdldCBub3RpZmllZCB3aGVuIG5hdmlnYXRpbmcgdG8gYSBsb2NhbCBwYWdlXG4gICAgYXdhaXQgdGhpcy5ycGNDbGllbnQuc2VuZCgnQ29uc29sZS5lbmFibGUnLCB7XG4gICAgICBhcHBJZEtleTogdGhpcy5hcHBJZEtleSxcbiAgICAgIHBhZ2VJZEtleTogdGhpcy5wYWdlSWRLZXksXG4gICAgfSk7XG4gIH0gZmluYWxseSB7XG4gICAgdGhpcy5fbmF2aWdhdGluZ1RvUGFnZSA9IGZhbHNlO1xuICB9XG59XG5cbmFzeW5jIGZ1bmN0aW9uIHdhaXRGb3JGcmFtZU5hdmlnYXRlZCAoKSB7XG4gIGxldCBuYXZFdmVudExpc3RlbmVyO1xuICByZXR1cm4gYXdhaXQgbmV3IEIoYXN5bmMgKHJlc29sdmUpID0+IHtcbiAgICBsb2cuZGVidWcoJ1dhaXRpbmcgZm9yIGZyYW1lIG5hdmlnYXRlZCBtZXNzYWdlLi4uJyk7XG4gICAgY29uc3Qgc3RhcnQgPSBuZXcgdGltaW5nLlRpbWVyKCkuc3RhcnQoKTtcblxuICAgIC8vIGFkZCBhIGhhbmRsZXIgZm9yIHRoZSBgUGFnZS5mcmFtZU5hdmlnYXRlZGAgbWVzc2FnZVxuICAgIC8vIGZyb20gdGhlIHJlbW90ZSBkZWJ1Z2dlclxuICAgIG5hdkV2ZW50TGlzdGVuZXIgPSAoZXJyLCB2YWx1ZSkgPT4ge1xuICAgICAgbG9nLmRlYnVnKGBGcmFtZSBuYXZpZ2F0ZWQgaW4gJHtzdGFydC5nZXREdXJhdGlvbigpLmFzTWlsbGlTZWNvbmRzLnRvRml4ZWQoMCl9bXMgZnJvbTogJHt2YWx1ZX1gKTtcbiAgICAgIGlmICghdGhpcy5hbGxvd05hdmlnYXRpb25XaXRob3V0UmVsb2FkICYmICF0aGlzLnBhZ2VMb2FkaW5nKSB7XG4gICAgICAgIHJlc29sdmUodmFsdWUpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgbG9nLmRlYnVnKCdGcmFtZSBuYXZpZ2F0ZWQgYnV0IHdlIHdlcmUgd2FybmVkIGFib3V0IGl0LCBub3QgJyArXG4gICAgICAgICAgICAgICAgICAnY29uc2lkZXJpbmcgcGFnZSBzdGF0ZSB1bmxvYWRlZCcpO1xuICAgICAgICB0aGlzLmFsbG93TmF2aWdhdGlvbldpdGhvdXRSZWxvYWQgPSBmYWxzZTtcbiAgICAgIH1cbiAgICAgIGlmICh0aGlzLm5hdmlnYXRpb25EZWxheSkge1xuICAgICAgICB0aGlzLm5hdmlnYXRpb25EZWxheS5jYW5jZWwoKTtcbiAgICAgIH1cbiAgICB9O1xuXG4gICAgdGhpcy5ycGNDbGllbnQub25jZSgnUGFnZS5mcmFtZU5hdmlnYXRlZCcsIG5hdkV2ZW50TGlzdGVuZXIpO1xuXG4gICAgLy8gdGltZW91dCwgaW4gY2FzZSByZW1vdGUgZGVidWdnZXIgZG9lc24ndCByZXNwb25kLFxuICAgIC8vIG9yIHRha2VzIGEgbG9uZyB0aW1lXG4gICAgaWYgKCF0aGlzLnVzZU5ld1NhZmFyaSB8fCB0aGlzLnBhZ2VMb2FkTXMgPj0gMCkge1xuICAgICAgLy8gdXNlIHBhZ2VMb2FkTXMsIG9yIGEgc21hbGwgYW1vdW50IG9mIHRpbWVcbiAgICAgIGNvbnN0IHRpbWVvdXQgPSB0aGlzLnVzZU5ld1NhZmFyaSA/IHRoaXMucGFnZUxvYWRNcyA6IDUwMDtcbiAgICAgIHRoaXMubmF2aWdhdGlvbkRlbGF5ID0gdXRpbC5jYW5jZWxsYWJsZURlbGF5KHRpbWVvdXQpO1xuICAgICAgdHJ5IHtcbiAgICAgICAgYXdhaXQgdGhpcy5uYXZpZ2F0aW9uRGVsYXk7XG4gICAgICAgIG5hdkV2ZW50TGlzdGVuZXIobnVsbCwgYCR7dGltZW91dH1tcyB0aW1lb3V0YCk7XG4gICAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgICAgLy8gbm90aGluZyB0byBkbzogd2Ugb25seSBnZXQgaGVyZSBpZiB0aGUgcmVtb3RlIGRlYnVnZ2VyXG4gICAgICAgIC8vIGFscmVhZHkgbm90aWZpZWQgb2YgZnJhbWUgbmF2aWdhdGlvbiwgYW5kIHRoZSBkZWxheVxuICAgICAgICAvLyB3YXMgY2FuY2VsbGVkXG4gICAgICB9XG4gICAgfVxuICB9KS5maW5hbGx5KCgpID0+IHtcbiAgICBpZiAobmF2RXZlbnRMaXN0ZW5lcikge1xuICAgICAgdGhpcy5ycGNDbGllbnQub2ZmKCdQYWdlLmZyYW1lTmF2aWdhdGVkJywgbmF2RXZlbnRMaXN0ZW5lcik7XG4gICAgfVxuICB9KTtcbn1cblxuXG5leHBvcnQgZGVmYXVsdCB7IGZyYW1lRGV0YWNoZWQsIHBhZ2VMb2FkLCBjYW5jZWxQYWdlTG9hZCwgcGFnZVVubG9hZCwgd2FpdEZvckRvbSwgY2hlY2tQYWdlSXNSZWFkeSwgbmF2VG9VcmwsIHdhaXRGb3JGcmFtZU5hdmlnYXRlZCB9O1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUFBLElBQUFBLE9BQUEsR0FBQUMsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFDLE1BQUEsR0FBQUQsT0FBQTtBQUNBLElBQUFFLE9BQUEsR0FBQUgsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFHLFFBQUEsR0FBQUgsT0FBQTtBQUNBLElBQUFJLE9BQUEsR0FBQUwsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFLLFNBQUEsR0FBQU4sc0JBQUEsQ0FBQUMsT0FBQTtBQUdBLFNBQVNNLGFBQWFBLENBQUEsRUFBSTtFQUN4QixJQUFJLENBQUNDLElBQUksQ0FBQ0MsZUFBTSxDQUFDQyxxQkFBcUIsQ0FBQztBQUN6QztBQUVBLGVB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
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"navigate.js","names":["frameDetached","emit","events","EVENT_FRAMES_DETACHED","pageLoad","startPageLoadTimer","pageLoadVerifyHook","_","noop","timeoutMs","isFunction","getDuration","log","debug","timing","Timer","start","pageLoading","verify","pageLoadDelay","util","cancellableDelay","err","B","CancellationError","appIdKey","elapsedMs","asMilliSeconds","checkPageIsReady","pageLoadMs","toFixed","cancelPageLoad","cancel","pageUnload","waitForDom","checkParams","readyCmd","readyState","resolve","execute","timeout","pageReadyTimeout","TimeoutError","navToUrl","url","pageIdKey","_navigatingToPage","waitForFramePromise","waitForFrameNavigated","rpcClient","send","useNewSafari","delay","navEventListener","value","allowNavigationWithoutReload","navigationDelay","once","finally","off"],"sources":["../../../lib/mixins/navigate.js"],"sourcesContent":["import log from '../logger';\nimport { checkParams } from '../utils';\nimport events from './events';\nimport { timing, util } from '@appium/support';\nimport _ from 'lodash';\nimport B from 'bluebird';\n\n\nfunction frameDetached () {\n this.emit(events.EVENT_FRAMES_DETACHED);\n}\n\nasync function pageLoad (startPageLoadTimer, pageLoadVerifyHook = _.noop) {\n const timeoutMs = 500;\n if (!_.isFunction(startPageLoadTimer?.getDuration)) {\n log.debug(`Page load timer not a timer. Creating new timer`);\n startPageLoadTimer = new timing.Timer().start();\n }\n\n log.debug('Page loaded, verifying whether ready');\n this.pageLoading = true;\n\n const verify = async () => {\n this.pageLoadDelay = util.cancellableDelay(timeoutMs);\n try {\n await this.pageLoadDelay;\n } catch (err) {\n if (err instanceof B.CancellationError) {\n // if the promise has been cancelled\n // we want to skip checking the readiness\n return;\n }\n }\n\n // we can get this called in the middle of trying to find a new app\n if (!this.appIdKey) {\n log.debug('Not connected to an application. Ignoring page load');\n return;\n }\n\n if (_.isFunction(pageLoadVerifyHook)) {\n await pageLoadVerifyHook();\n }\n\n // if we are ready, or we've spend too much time on this\n const elapsedMs = startPageLoadTimer.getDuration().asMilliSeconds;\n if (await this.checkPageIsReady() || (this.pageLoadMs > 0 && elapsedMs > this.pageLoadMs)) {\n log.debug('Page is ready');\n this.pageLoading = false;\n } else {\n log.debug('Page was not ready, retrying');\n await verify();\n }\n };\n try {\n await verify();\n } finally {\n log.debug(`Page load completed in ${startPageLoadTimer.getDuration().asMilliSeconds.toFixed(0)}ms`);\n this.pageLoading = false;\n }\n}\n\nfunction cancelPageLoad () {\n log.debug('Unregistering from page readiness notifications');\n this.pageLoading = false;\n if (this.pageLoadDelay) {\n this.pageLoadDelay.cancel();\n }\n}\n\nasync function pageUnload () {\n log.debug('Page unloading');\n await this.waitForDom();\n}\n\nasync function waitForDom (startPageLoadTimer, pageLoadVerifyHook) {\n log.debug('Waiting for dom...');\n await this.pageLoad(startPageLoadTimer, pageLoadVerifyHook);\n}\n\nasync function checkPageIsReady () {\n checkParams({appIdKey: this.appIdKey});\n\n log.debug('Checking document readyState');\n const readyCmd = 'document.readyState;';\n let readyState = 'loading';\n try {\n readyState = await B.resolve(this.execute(readyCmd, true)).timeout(this.pageReadyTimeout);\n } catch (err) {\n if (!(err instanceof B.TimeoutError)) {\n throw err;\n }\n log.debug(`Page readiness check timed out after ${this.pageReadyTimeout}ms`);\n return false;\n }\n log.debug(`Document readyState is '${readyState}'`);\n\n return readyState === 'complete';\n}\n\nasync function navToUrl (url, pageLoadVerifyHook) {\n checkParams({appIdKey: this.appIdKey, pageIdKey: this.pageIdKey});\n\n this._navigatingToPage = true;\n\n try {\n log.debug(`Navigating to new URL: '${url}'`);\n\n // begin listening for frame navigation event, which will be waited for later\n const waitForFramePromise = this.waitForFrameNavigated();\n\n await this.rpcClient.send('Page.navigate', {\n url,\n appIdKey: this.appIdKey,\n pageIdKey: this.pageIdKey,\n });\n\n if (!this.useNewSafari) {\n // a small pause for the browser to catch up\n await B.delay(1000);\n }\n\n // wait until the page has been navigated\n await waitForFramePromise;\n\n await this.waitForDom(new timing.Timer().start(), pageLoadVerifyHook);\n\n // enable console logging, so we get the events (otherwise we only\n // get notified when navigating to a local page\n await this.rpcClient.send('Console.enable', {\n appIdKey: this.appIdKey,\n pageIdKey: this.pageIdKey,\n });\n } finally {\n this._navigatingToPage = false;\n }\n}\n\nasync function waitForFrameNavigated () {\n let navEventListener;\n return await new B(async (resolve) => {\n log.debug('Waiting for frame navigated message...');\n const start = new timing.Timer().start();\n\n // add a handler for the `Page.frameNavigated` message\n // from the remote debugger\n navEventListener = (err, value) => {\n log.debug(`Frame navigated in ${start.getDuration().asMilliSeconds.toFixed(0)}ms from: ${value}`);\n if (!this.allowNavigationWithoutReload && !this.pageLoading) {\n resolve(value);\n } else {\n log.debug('Frame navigated but we were warned about it, not ' +\n 'considering page state unloaded');\n this.allowNavigationWithoutReload = false;\n }\n if (this.navigationDelay) {\n this.navigationDelay.cancel();\n }\n };\n\n this.rpcClient.once('Page.frameNavigated', navEventListener);\n\n // timeout, in case remote debugger doesn't respond,\n // or takes a long time\n if (!this.useNewSafari || this.pageLoadMs >= 0) {\n // use pageLoadMs, or a small amount of time\n const timeout = this.useNewSafari ? this.pageLoadMs : 500;\n this.navigationDelay = util.cancellableDelay(timeout);\n try {\n await this.navigationDelay;\n navEventListener(null, `${timeout}ms timeout`);\n } catch (err) {\n // nothing to do: we only get here if the remote debugger\n // already notified of frame navigation, and the delay\n // was cancelled\n }\n }\n }).finally(() => {\n if (navEventListener) {\n this.rpcClient.off('Page.frameNavigated', navEventListener);\n }\n });\n}\n\n\nexport default { frameDetached, pageLoad, cancelPageLoad, pageUnload, waitForDom, checkPageIsReady, navToUrl, waitForFrameNavigated };\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"navigate.js","names":["_logger","_interopRequireDefault","require","_utils","_events","_support","_lodash","_bluebird","frameDetached","emit","events","EVENT_FRAMES_DETACHED","pageLoad","startPageLoadTimer","pageLoadVerifyHook","_","noop","_startPageLoadTimer","timeoutMs","isFunction","getDuration","log","debug","timing","Timer","start","pageLoading","verify","pageLoadDelay","util","cancellableDelay","err","B","CancellationError","appIdKey","elapsedMs","asMilliSeconds","checkPageIsReady","pageLoadMs","toFixed","cancelPageLoad","cancel","pageUnload","waitForDom","checkParams","readyCmd","readyState","resolve","execute","timeout","pageReadyTimeout","TimeoutError","navToUrl","url","pageIdKey","_navigatingToPage","waitForFramePromise","waitForFrameNavigated","rpcClient","send","useNewSafari","delay","navEventListener","value","allowNavigationWithoutReload","navigationDelay","once","finally","off","_default","exports","default"],"sources":["../../../lib/mixins/navigate.js"],"sourcesContent":["import log from '../logger';\nimport { checkParams } from '../utils';\nimport events from './events';\nimport { timing, util } from '@appium/support';\nimport _ from 'lodash';\nimport B from 'bluebird';\n\n\nfunction frameDetached () {\n this.emit(events.EVENT_FRAMES_DETACHED);\n}\n\nasync function pageLoad (startPageLoadTimer, pageLoadVerifyHook = _.noop) {\n const timeoutMs = 500;\n if (!_.isFunction(startPageLoadTimer?.getDuration)) {\n log.debug(`Page load timer not a timer. Creating new timer`);\n startPageLoadTimer = new timing.Timer().start();\n }\n\n log.debug('Page loaded, verifying whether ready');\n this.pageLoading = true;\n\n const verify = async () => {\n this.pageLoadDelay = util.cancellableDelay(timeoutMs);\n try {\n await this.pageLoadDelay;\n } catch (err) {\n if (err instanceof B.CancellationError) {\n // if the promise has been cancelled\n // we want to skip checking the readiness\n return;\n }\n }\n\n // we can get this called in the middle of trying to find a new app\n if (!this.appIdKey) {\n log.debug('Not connected to an application. Ignoring page load');\n return;\n }\n\n if (_.isFunction(pageLoadVerifyHook)) {\n await pageLoadVerifyHook();\n }\n\n // if we are ready, or we've spend too much time on this\n const elapsedMs = startPageLoadTimer.getDuration().asMilliSeconds;\n if (await this.checkPageIsReady() || (this.pageLoadMs > 0 && elapsedMs > this.pageLoadMs)) {\n log.debug('Page is ready');\n this.pageLoading = false;\n } else {\n log.debug('Page was not ready, retrying');\n await verify();\n }\n };\n try {\n await verify();\n } finally {\n log.debug(`Page load completed in ${startPageLoadTimer.getDuration().asMilliSeconds.toFixed(0)}ms`);\n this.pageLoading = false;\n }\n}\n\nfunction cancelPageLoad () {\n log.debug('Unregistering from page readiness notifications');\n this.pageLoading = false;\n if (this.pageLoadDelay) {\n this.pageLoadDelay.cancel();\n }\n}\n\nasync function pageUnload () {\n log.debug('Page unloading');\n await this.waitForDom();\n}\n\nasync function waitForDom (startPageLoadTimer, pageLoadVerifyHook) {\n log.debug('Waiting for dom...');\n await this.pageLoad(startPageLoadTimer, pageLoadVerifyHook);\n}\n\nasync function checkPageIsReady () {\n checkParams({appIdKey: this.appIdKey});\n\n log.debug('Checking document readyState');\n const readyCmd = 'document.readyState;';\n let readyState = 'loading';\n try {\n readyState = await B.resolve(this.execute(readyCmd, true)).timeout(this.pageReadyTimeout);\n } catch (err) {\n if (!(err instanceof B.TimeoutError)) {\n throw err;\n }\n log.debug(`Page readiness check timed out after ${this.pageReadyTimeout}ms`);\n return false;\n }\n log.debug(`Document readyState is '${readyState}'`);\n\n return readyState === 'complete';\n}\n\nasync function navToUrl (url, pageLoadVerifyHook) {\n checkParams({appIdKey: this.appIdKey, pageIdKey: this.pageIdKey});\n\n this._navigatingToPage = true;\n\n try {\n log.debug(`Navigating to new URL: '${url}'`);\n\n // begin listening for frame navigation event, which will be waited for later\n const waitForFramePromise = this.waitForFrameNavigated();\n\n await this.rpcClient.send('Page.navigate', {\n url,\n appIdKey: this.appIdKey,\n pageIdKey: this.pageIdKey,\n });\n\n if (!this.useNewSafari) {\n // a small pause for the browser to catch up\n await B.delay(1000);\n }\n\n // wait until the page has been navigated\n await waitForFramePromise;\n\n await this.waitForDom(new timing.Timer().start(), pageLoadVerifyHook);\n\n // enable console logging, so we get the events (otherwise we only\n // get notified when navigating to a local page\n await this.rpcClient.send('Console.enable', {\n appIdKey: this.appIdKey,\n pageIdKey: this.pageIdKey,\n });\n } finally {\n this._navigatingToPage = false;\n }\n}\n\nasync function waitForFrameNavigated () {\n let navEventListener;\n return await new B(async (resolve) => {\n log.debug('Waiting for frame navigated message...');\n const start = new timing.Timer().start();\n\n // add a handler for the `Page.frameNavigated` message\n // from the remote debugger\n navEventListener = (err, value) => {\n log.debug(`Frame navigated in ${start.getDuration().asMilliSeconds.toFixed(0)}ms from: ${value}`);\n if (!this.allowNavigationWithoutReload && !this.pageLoading) {\n resolve(value);\n } else {\n log.debug('Frame navigated but we were warned about it, not ' +\n 'considering page state unloaded');\n this.allowNavigationWithoutReload = false;\n }\n if (this.navigationDelay) {\n this.navigationDelay.cancel();\n }\n };\n\n this.rpcClient.once('Page.frameNavigated', navEventListener);\n\n // timeout, in case remote debugger doesn't respond,\n // or takes a long time\n if (!this.useNewSafari || this.pageLoadMs >= 0) {\n // use pageLoadMs, or a small amount of time\n const timeout = this.useNewSafari ? this.pageLoadMs : 500;\n this.navigationDelay = util.cancellableDelay(timeout);\n try {\n await this.navigationDelay;\n navEventListener(null, `${timeout}ms timeout`);\n } catch (err) {\n // nothing to do: we only get here if the remote debugger\n // already notified of frame navigation, and the delay\n // was cancelled\n }\n }\n }).finally(() => {\n if (navEventListener) {\n this.rpcClient.off('Page.frameNavigated', navEventListener);\n }\n });\n}\n\n\nexport default { frameDetached, pageLoad, cancelPageLoad, pageUnload, waitForDom, checkPageIsReady, navToUrl, waitForFrameNavigated };\n"],"mappings":"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"}
|
|
@@ -59,12 +59,25 @@ const COMMANDS = {
|
|
|
59
59
|
'Network.setEmulatedConditions': ['bytesPerSecondLimit'],
|
|
60
60
|
'Page.enable': [],
|
|
61
61
|
'Page.disable': [],
|
|
62
|
-
'Page.reload': [],
|
|
62
|
+
'Page.reload': ['ignoreCache', 'revalidateAllResources'],
|
|
63
63
|
'Page.navigate': ['url'],
|
|
64
64
|
'Page.overrideUserAgent': ['value'],
|
|
65
|
-
'Page.
|
|
65
|
+
'Page.overrideSetting': ['setting', 'value'],
|
|
66
|
+
'Page.overrideUserPreference': ['name', 'value'],
|
|
67
|
+
'Page.getCookies': [],
|
|
68
|
+
'Page.setCookie': ['cookie'],
|
|
66
69
|
'Page.deleteCookie': ['cookieName', 'url'],
|
|
67
70
|
'Page.getResourceTree': [],
|
|
71
|
+
'Page.getResourceContent': ['frameId', 'url'],
|
|
72
|
+
'Page.searchInResource': ['frameId', 'url', 'query', 'caseSensitive', 'isRegex', 'requestId'],
|
|
73
|
+
'Page.searchInResources': ['text', 'caseSensitive', 'isRegex'],
|
|
74
|
+
'Page.setShowRulers': ['result'],
|
|
75
|
+
'Page.setShowPaintRects': ['result'],
|
|
76
|
+
'Page.setEmulatedMedia': ['media'],
|
|
77
|
+
'Page.snapshotNode': ['nodeId'],
|
|
78
|
+
'Page.snapshotRect': ['x', 'y', 'with', 'height', 'coordinateSystem'],
|
|
79
|
+
'Page.archive': ['data'],
|
|
80
|
+
'Page.setScreenSizeOverride': ['width', 'height'],
|
|
68
81
|
'Runtime.awaitPromise': ['promiseObjectId', 'returnByValue', 'generatePreview', 'saveResult'],
|
|
69
82
|
'Runtime.callFunctionOn': ['objectId', 'functionDeclaration', 'arguments', 'returnByValue'],
|
|
70
83
|
'Runtime.evaluate': ['expression', 'returnByValue', 'contextId'],
|
|
@@ -110,4 +123,4 @@ function getProtocolCommand(id, method, opts = {}) {
|
|
|
110
123
|
}
|
|
111
124
|
var _default = getProtocolCommand;
|
|
112
125
|
exports.default = _default;
|
|
113
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJPQkpFQ1RfR1JPVVAiLCJDT01NQU5EUyIsImdldENvbW1hbmQiLCJpZCIsIm1ldGhvZCIsInBhcmFtcyIsIk9iamVjdCIsImFzc2lnbiIsIm9iamVjdEdyb3VwIiwiaW5jbHVkZUNvbW1hbmRMaW5lQVBJIiwiZG9Ob3RQYXVzZU9uRXhjZXB0aW9uc0FuZE11dGVDb25zb2xlIiwiZW11bGF0ZVVzZXJHZXN0dXJlIiwiZ2VuZXJhdGVQcmV2aWV3Iiwic2F2ZVJlc3VsdCIsImdldFByb3RvY29sQ29tbWFuZCIsIm9wdHMiLCJwYXJhbU5hbWVzIiwiRXJyb3IiLCJyZWR1Y2UiLCJuYW1lIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vbGliL3Byb3RvY29sL2luZGV4LmpzIl0sInNvdXJjZXNDb250ZW50IjpbImNvbnN0IE9CSkVDVF9HUk9VUCA9ICdjb25zb2xlJztcblxuLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9XZWJLaXQvd2Via2l0L3RyZWUvbWFzdGVyL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvcHJvdG9jb2xcbmNvbnN0IENPTU1BTkRTID0ge1xuICAvLyBodHRwczovL2dpdGh1Yi5jb20vV2ViS2l0L1dlYktpdC9ibG9iL21haW4vU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9wcm90b2NvbC9BbmltYXRpb24uanNvblxuICAvLyNyZWdpb24gQU5JTUFUSU9OIERPTUFJTlxuICAnQW5pbWF0aW9uLmVuYWJsZSc6IFtdLCAvLyBFbmFibGVzIENhbnZhcyBkb21haW4gZXZlbnRzXG4gICdBbmltYXRpb24uZGlzYWJsZSc6IFtdLCAvLyBEaXNhYmxlcyBDYW52YXMgZG9tYWluIGV2ZW50c1xuICAvLyNlbmRyZWdpb25cblxuICAvLyBodHRwczovL2dpdGh1Yi5jb20vV2ViS2l0L1dlYktpdC9ibG9iL21haW4vU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9wcm90b2NvbC9BcHBsaWNhdGlvbkNhY2hlLmpzb25cbiAgLy8jcmVnaW9uIEFQUExJQ0FUSU9OQ0FDSEUgRE9NQUlOXG4gICdBcHBsaWNhdGlvbkNhY2hlLmVuYWJsZSc6IFtdLFxuICAnQXBwbGljYXRpb25DYWNoZS5kaXNhYmxlJzogW10sXG4gICdBcHBsaWNhdGlvbkNhY2hlLmdldEZyYW1lc1dpdGhNYW5pZmVzdHMnOiBbXSxcbiAgLy8jZW5kcmVnaW9uXG5cbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL1dlYktpdC9XZWJLaXQvYmxvYi9tYWluL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvcHJvdG9jb2wvQXVkaXQuanNvblxuICAvLyNyZWdpb24gQVVESVQgRE9NQUlOXG4gIC8vI2VuZHJlZ2lvblxuXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9XZWJLaXQvV2ViS2l0L2Jsb2IvbWFpbi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL3Byb3RvY29sL0Jyb3dzZXIuanNvblxuICAvLyNyZWdpb24gQlJPV1NFUiBET01BSU5cbiAgJ0Jyb3dzZXIuZW5hYmxlJzogW10sIC8vIEVuYWJsZXMgQnJvd3NlciBkb21haW4gZXZlbnRzLiBlLmcuIGV4dGVudGlvbnNFbmFibGVkXG4gICdCcm93c2VyLmRpc2FibGUnOiBbXSwgLy8gRGlzYWJsZXMgQnJvd3NlciBkb21haW4gZXZlbnRzXG4gIC8vI2VuZHJlZ2lvblxuXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9XZWJLaXQvV2ViS2l0L2Jsb2IvbWFpbi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL3Byb3RvY29sL0NhbnZhcy5qc29uXG4gIC8vI3JlZ2lvbiBDQU5WQVMgRE9NQUlOXG4gICdDYW52YXMuZW5hYmxlJzogW10sXG4gICdDYW52YXMuZGlzYWJsZSc6IFtdLFxuICAvLyNlbmRyZWdpb25cblxuICAvLyBodHRwczovL2dpdGh1Yi5jb20vV2ViS2l0L1dlYktpdC9ibG9iL21haW4vU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9wcm90b2NvbC9DUFVQcm9maWxlci5qc29uXG4gIC8vI3JlZ2lvbiBDUFVQUk9GSUxFUiBET01BSU5cbiAgJ0NQVVByb2ZpbGVyLnN0YXJ0VHJhY2tpbmcnOiBbXSxcbiAgJ0NQVVByb2ZpbGVyLnN0b3BUcmFja2luZyc6IFtdLFxuICAvLyNlbmRyZWdpb25cblxuICAvLyBodHRwczovL2dpdGh1Yi5jb20vV2ViS2l0L1dlYktpdC9ibG9iL21haW4vU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9wcm90b2NvbC9Db25zb2xlLmpzb25cbiAgLy8jcmVnaW9uIENPTlNPTEUgRE9NQUlOXG4gICdDb25zb2xlLmRpc2FibGUnOiBbXSxcbiAgJ0NvbnNvbGUuZW5hYmxlJzogW10sXG4gICdDb25zb2xlLmNsZWFyTWVzc2FnZXMnOiBbXSxcbiAgJ0NvbnNvbGUuZ2V0TG9nZ2luZ0NoYW5uZWxzJzogW10sXG4gICdDb25zb2xlLnNldExvZ2dpbmdDaGFubmVsTGV2ZWwnOiBbJ3NvdXJjZScsICdsZXZlbCddLFxuICAvLyNlbmRyZWdpb25cblxuICAvLyBodHRwczovL2dpdGh1Yi5jb20vV2ViS2l0L1dlYktpdC9ibG9iL21haW4vU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9wcm90b2NvbC9DU1MuanNvblxuICAvLyNyZWdpb24gQ1NTIERPTUFJTlxuICAnQ1NTLmVuYWJsZSc6IFtdLFxuICAnQ1NTLmRpc2FibGUnOiBbXSxcbiAgLy8jZW5kcmVnaW9uXG5cbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL1dlYktpdC9XZWJLaXQvYmxvYi9tYWluL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvcHJvdG9jb2wvRGF0YWJhc2UuanNvblxuICAvLyNyZWdpb24gREFUQUJBU0UgRE9NQUlOXG4gICdEYXRhYmFzZS5lbmFibGUnOiBbXSxcbiAgJ0RhdGFiYXNlLmRpc2FibGUnOiBbXSxcbiAgLy8jZW5kcmVnaW9uXG5cbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL1dlYktpdC9XZWJLaXQvYmxvYi9tYWluL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvcHJvdG9jb2wvRGVidWdnZXIuanNvblxuICAvLyNyZWdpb24gREVCVUdHRVIgRE9NQUlOXG4gICdEZWJ1Z2dlci5lbmFibGUnOiBbXSxcbiAgJ0RlYnVnZ2VyLmRpc2FibGUnOiBbXSxcbiAgJ0RlYnVnZ2VyLnNldEFzeW5jU3RhY2tUcmFjZURlcHRoJzogWydkZXB0aCddLFxuICAnRGVidWdnZXIuc2V0QnJlYWtwb2ludHNBY3RpdmUnOiBbJ2FjdGl2ZSddLFxuICAnRGVidWdnZXIuc2V0UGF1c2VGb3JJbnRlcm5hbFNjcmlwdHMnOiBbJ3Nob3VsZFBhdXNlJ10sXG4gICdEZWJ1Z2dlci5zZXRQYXVzZU9uQXNzZXJ0aW9ucyc6IFsnZW5hYmxlZCddLFxuICAnRGVidWdnZXIuc2V0UGF1c2VPbkV4Y2VwdGlvbnMnOiBbJ3N0YXRlJ10sXG4gIC8vI2VuZHJlZ2lvblxuXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9XZWJLaXQvV2ViS2l0L2Jsb2IvbWFpbi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL3Byb3RvY29sL0RPTS5qc29uXG4gIC8vI3JlZ2lvbiBET00gRE9NQUlOXG4gICdET00uZ2V0RG9jdW1lbnQnOiBbXSxcbiAgLy8jZW5kcmVnaW9uXG5cbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL1dlYktpdC9XZWJLaXQvYmxvYi9tYWluL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvcHJvdG9jb2wvRE9NRGVidWdnZXIuanNvblxuICAvLyNyZWdpb24gRE9NREVCVUdHRVIgRE9NQUlOXG4gIC8vI2VuZHJlZ2lvblxuXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9XZWJLaXQvV2ViS2l0L2Jsb2IvbWFpbi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL3Byb3RvY29sL0RPTVN0b3JhZ2UuanNvblxuICAvLyNyZWdpb24gRE9NU1RPUkFHRSBET01BSU5cbiAgJ0RPTVN0b3JhZ2UuZW5hYmxlJzogW10sXG4gICdET01TdG9yYWdlLmRpc2FibGUnOiBbXSxcbiAgJ0RPTVN0b3JhZ2UuZ2V0RE9NU3RvcmFnZUl0ZW1zJzogWydzdG9yYWdlSWQnXSxcbiAgJ0RPTVN0b3JhZ2UuY2xlYXJET01TdG9yYWdlSXRlbXMnOiBbJ3N0b3JhZ2VJZCddLFxuXG4gIC8vI2VuZHJlZ2lvblxuXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9XZWJLaXQvV2ViS2l0L2Jsb2IvbWFpbi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL3Byb3RvY29sL0hlYXAuanNvblxuICAvLyNyZWdpb24gSEVBUCBET01BSU5cbiAgJ0hlYXAuZW5hYmxlJzogW10sXG4gICdIZWFwLmRpc2FibGUnOiBbXSxcbiAgJ0hlYXAuZ2MnOiBbXSxcbiAgLy8jZW5kcmVnaW9uXG5cbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL1dlYktpdC9XZWJLaXQvYmxvYi9tYWluL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvcHJvdG9jb2wvSW5kZXhlZERCLmpzb25cbiAgLy8jcmVnaW9uIElOREVYRUREQiBET01BSU5cbiAgJ0luZGV4ZWREQi5lbmFibGUnOiBbXSxcbiAgJ0luZGV4ZWREQi5kaXNhYmxlJzogW10sXG4gIC8vI2VuZHJlZ2lvblxuXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9XZWJLaXQvV2ViS2l0L2Jsb2IvbWFpbi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL3Byb3RvY29sL0luc3BlY3Rvci5qc29uXG4gIC8vI3JlZ2lvbiBJTlNQRUNUT1IgRE9NQUlOXG4gICdJbnNwZWN0b3IuZW5hYmxlJzogW10sXG4gICdJbnNwZWN0b3IuZGlzYWJsZSc6IFtdLFxuICAnSW5zcGVjdG9yLmluaXRpYWxpemVkJzogW10sXG4gIC8vI2VuZHJlZ2lvblxuXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9XZWJLaXQvV2ViS2l0L2Jsb2IvbWFpbi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL3Byb3RvY29sL0xheWVyVHJlZS5qc29uXG4gIC8vI3JlZ2lvbiBMQVlFUlRSRUUgRE9NQUlOXG4gICdMYXllclRyZWUuZW5hYmxlJzogW10sXG4gICdMYXllclRyZWUuZGlzYWJsZSc6IFtdLFxuICAvLyNlbmRyZWdpb25cblxuICAvLyBodHRwczovL2dpdGh1Yi5jb20vV2ViS2l0L1dlYktpdC9ibG9iL21haW4vU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9wcm90b2NvbC9NZW1vcnkuanNvblxuICAvLyNyZWdpb24gTUVNT1JZIERPTUFJTlxuICAnTWVtb3J5LmVuYWJsZSc6IFtdLFxuICAnTWVtb3J5LmRpc2FibGUnOiBbXSxcbiAgLy8jZW5kcmVnaW9uXG5cbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL1dlYktpdC9XZWJLaXQvYmxvYi9tYWluL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvcHJvdG9jb2wvTmV0d29yay5qc29uXG4gIC8vI3JlZ2lvbiBORVRXT1JLIERPTUFJTlxuICAnTmV0d29yay5kaXNhYmxlJzogW10sXG4gICdOZXR3b3JrLmVuYWJsZSc6IFtdLFxuICAnTmV0d29yay5zZXRFeHRyYUhUVFBIZWFkZXJzJzogWydoZWFkZXJzJ10sXG4gICdOZXR3b3JrLnNldFJlc291cmNlQ2FjaGluZ0Rpc2FibGVkJzogWydkaXNhYmxlZCddLFxuICAnTmV0d29yay5zZXRFbXVsYXRlZENvbmRpdGlvbnMnOiBbJ2J5dGVzUGVyU2Vjb25kTGltaXQnXSxcbiAgLy8jZW5kcmVnaW9uXG5cbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL1dlYktpdC9XZWJLaXQvYmxvYi9tYWluL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvcHJvdG9jb2wvUGFnZS5qc29uXG4gIC8vI3JlZ2lvbiBQQUdFIERPTUFJTlxuICAnUGFnZS5lbmFibGUnOiBbXSxcbiAgJ1BhZ2UuZGlzYWJsZSc6IFtdLFxuICAnUGFnZS5yZWxvYWQnOiBbXSxcbiAgJ1BhZ2UubmF2aWdhdGUnOiBbJ3VybCddLFxuICAnUGFnZS5vdmVycmlkZVVzZXJBZ2VudCc6IFsndmFsdWUnXSxcbiAgJ1BhZ2UuZ2V0Q29va2llcyc6IFsndXJscyddLFxuICAnUGFnZS5kZWxldGVDb29raWUnOiBbJ2Nvb2tpZU5hbWUnLCAndXJsJ10sXG4gICdQYWdlLmdldFJlc291cmNlVHJlZSc6IFtdLFxuICAvLyNlbmRyZWdpb25cblxuICAvLyBodHRwczovL2dpdGh1Yi5jb20vV2ViS2l0L1dlYktpdC9ibG9iL21haW4vU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9wcm90b2NvbC9SdW50aW1lLmpzb25cbiAgLy8jcmVnaW9uIFJVTlRJTUUgRE9NQUlOXG4gICdSdW50aW1lLmF3YWl0UHJvbWlzZSc6IFsncHJvbWlzZU9iamVjdElkJywgJ3JldHVybkJ5VmFsdWUnLCAnZ2VuZXJhdGVQcmV2aWV3JywgJ3NhdmVSZXN1bHQnXSxcbiAgJ1J1bnRpbWUuY2FsbEZ1bmN0aW9uT24nOiBbJ29iamVjdElkJywgJ2Z1bmN0aW9uRGVjbGFyYXRpb24nLCAnYXJndW1lbnRzJywgJ3JldHVybkJ5VmFsdWUnXSxcbiAgJ1J1bnRpbWUuZXZhbHVhdGUnOiBbJ2V4cHJlc3Npb24nLCAncmV0dXJuQnlWYWx1ZScsICdjb250ZXh0SWQnXSxcbiAgJ1J1bnRpbWUuZW5hYmxlJzogW10sXG4gICdSdW50aW1lLmRpc2FibGUnOiBbXSxcbiAgLy8jZW5kcmVnaW9uXG5cbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL1dlYktpdC9XZWJLaXQvYmxvYi9tYWluL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvcHJvdG9jb2wvU2NyaXB0UHJvZmlsZXIuanNvblxuICAvLyNyZWdpb24gU0NSSVBUUFJPRklMRVIgRE9NQUlOXG4gIC8vI2VuZHJlZ2lvblxuXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9XZWJLaXQvV2ViS2l0L2Jsb2IvbWFpbi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL3Byb3RvY29sL1NlcnZpY2VXb3JrZXIuanNvblxuICAvLyNyZWdpb24gU0VSVklDRVdPUktFUiBET01BSU5cbiAgJ1NlcnZpY2VXb3JrZXIuZ2V0SW5pdGlhbGl6YXRpb25JbmZvJzogW10sIC8vIHJldHVybnMgJ3sgXCJuYW1lXCI6IFwiaW5mb1wiLCBcIiRyZWZcIjogXCJDb25maWd1cmF0aW9uXCIgfSdcbiAgLy8jZW5kcmVnaW9uXG5cbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL1dlYktpdC9XZWJLaXQvYmxvYi9tYWluL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvcHJvdG9jb2wvVGFyZ2V0Lmpzb25cbiAgLy8jcmVnaW9uIFRBUkdFVCBET01BSU5cbiAgJ1RhcmdldC5leGlzdHMnOiBbXSwgLy8gcmVtb3ZlZCBzaW5jZSBXZWJLaXQgaW4gMTMuNFxuICAvLyNlbmRyZWdpb25cblxuICAvLyBodHRwczovL2dpdGh1Yi5jb20vV2ViS2l0L1dlYktpdC9ibG9iL21haW4vU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9wcm90b2NvbC9UaW1lbGluZS5qc29uXG4gIC8vI3JlZ2lvbiBUSU1FTElORSBET01BSU5cbiAgJ1RpbWVsaW5lLmVuYWJsZSc6IFtdLFxuICAnVGltZWxpbmUuZGlzYWJsZSc6IFtdLFxuICAnVGltZWxpbmUuc3RhcnQnOiBbXSxcbiAgJ1RpbWVsaW5lLnN0b3AnOiBbXSxcbiAgJ1RpbWVsaW5lLnNldEF1dG9DYXB0dXJlRW5hYmxlZCc6IFsnZW5hYmxlZCddLFxuICAnVGltZWxpbmUuc2V0SW5zdHJ1bWVudHMnOiBbJ2luc3RydW1lbnRzJ10sXG4gIC8vI2VuZHJlZ2lvblxuXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9XZWJLaXQvV2ViS2l0L2Jsb2IvbWFpbi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL3Byb3RvY29sL1dvcmtlci5qc29uXG4gIC8vI3JlZ2lvbiBXT1JLRVIgRE9NQUlOXG4gICdXb3JrZXIuZW5hYmxlJzogW10sXG4gICdXb3JrZXIuZGlzYWJsZSc6IFtdLFxuICAnV29ya2VyLmluaXRpYWxpemVkJzogWyd3b3JrZXJJZCddLFxuICAnV29ya2VyLnNlbmRNZXNzYWdlVG9Xb3JrZXInOiBbJ3dvcmtlcklkJywgJ21lc3NhZ2UnXVxuICAvLyNlbmRyZWdpb25cbn07XG5cbmZ1bmN0aW9uIGdldENvbW1hbmQgKGlkLCBtZXRob2QsIHBhcmFtcyA9IHt9KSB7XG4gIHJldHVybiB7XG4gICAgaWQsXG4gICAgbWV0aG9kLFxuICAgIHBhcmFtczogT2JqZWN0LmFzc2lnbih7XG4gICAgICBvYmplY3RHcm91cDogT0JKRUNUX0dST1VQLFxuICAgICAgaW5jbHVkZUNvbW1hbmRMaW5lQVBJOiB0cnVlLFxuICAgICAgZG9Ob3RQYXVzZU9uRXhjZXB0aW9uc0FuZE11dGVDb25zb2xlOiBmYWxzZSxcbiAgICAgIGVtdWxhdGVVc2VyR2VzdHVyZTogZmFsc2UsXG4gICAgICBnZW5lcmF0ZVByZXZpZXc6IGZhbHNlLFxuICAgICAgc2F2ZVJlc3VsdDogZmFsc2UsXG4gICAgfSwgcGFyYW1zKSxcbiAgfTtcbn1cblxuZnVuY3Rpb24gZ2V0UHJvdG9jb2xDb21tYW5kIChpZCwgbWV0aG9kLCBvcHRzID0ge30pIHtcbiAgY29uc3QgcGFyYW1OYW1lcyA9IENPTU1BTkRTW21ldGhvZF07XG4gIGlmICghcGFyYW1OYW1lcykge1xuICAgIHRocm93IG5ldyBFcnJvcihgVW5rbm93biBjb21tYW5kOiAnJHttZXRob2R9J2ApO1xuICB9XG5cbiAgY29uc3QgcGFyYW1zID0gcGFyYW1OYW1lcy5yZWR1Y2UoZnVuY3Rpb24gKHBhcmFtcywgbmFtZSkge1xuICAgIHBhcmFtc1tuYW1lXSA9IG9wdHNbbmFtZV07XG4gICAgcmV0dXJuIHBhcmFtcztcbiAgfSwge30pO1xuICByZXR1cm4gZ2V0Q29tbWFuZChpZCwgbWV0aG9kLCBwYXJhbXMpO1xufVxuXG5leHBvcnQgeyBnZXRQcm90b2NvbENvbW1hbmQgfTtcbmV4cG9ydCBkZWZhdWx0IGdldFByb3RvY29sQ29tbWFuZDtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFBQSxN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
|
|
126
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJPQkpFQ1RfR1JPVVAiLCJDT01NQU5EUyIsImdldENvbW1hbmQiLCJpZCIsIm1ldGhvZCIsInBhcmFtcyIsIk9iamVjdCIsImFzc2lnbiIsIm9iamVjdEdyb3VwIiwiaW5jbHVkZUNvbW1hbmRMaW5lQVBJIiwiZG9Ob3RQYXVzZU9uRXhjZXB0aW9uc0FuZE11dGVDb25zb2xlIiwiZW11bGF0ZVVzZXJHZXN0dXJlIiwiZ2VuZXJhdGVQcmV2aWV3Iiwic2F2ZVJlc3VsdCIsImdldFByb3RvY29sQ29tbWFuZCIsIm9wdHMiLCJwYXJhbU5hbWVzIiwiRXJyb3IiLCJyZWR1Y2UiLCJuYW1lIiwiX2RlZmF1bHQiLCJleHBvcnRzIiwiZGVmYXVsdCJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL2xpYi9wcm90b2NvbC9pbmRleC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJjb25zdCBPQkpFQ1RfR1JPVVAgPSAnY29uc29sZSc7XG5cbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vV2ViS2l0L3dlYmtpdC90cmVlL21hc3Rlci9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL3Byb3RvY29sXG5jb25zdCBDT01NQU5EUyA9IHtcbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL1dlYktpdC9XZWJLaXQvYmxvYi9tYWluL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvcHJvdG9jb2wvQW5pbWF0aW9uLmpzb25cbiAgLy8jcmVnaW9uIEFOSU1BVElPTiBET01BSU5cbiAgJ0FuaW1hdGlvbi5lbmFibGUnOiBbXSwgLy8gRW5hYmxlcyBDYW52YXMgZG9tYWluIGV2ZW50c1xuICAnQW5pbWF0aW9uLmRpc2FibGUnOiBbXSwgLy8gRGlzYWJsZXMgQ2FudmFzIGRvbWFpbiBldmVudHNcbiAgLy8jZW5kcmVnaW9uXG5cbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL1dlYktpdC9XZWJLaXQvYmxvYi9tYWluL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvcHJvdG9jb2wvQXBwbGljYXRpb25DYWNoZS5qc29uXG4gIC8vI3JlZ2lvbiBBUFBMSUNBVElPTkNBQ0hFIERPTUFJTlxuICAnQXBwbGljYXRpb25DYWNoZS5lbmFibGUnOiBbXSxcbiAgJ0FwcGxpY2F0aW9uQ2FjaGUuZGlzYWJsZSc6IFtdLFxuICAnQXBwbGljYXRpb25DYWNoZS5nZXRGcmFtZXNXaXRoTWFuaWZlc3RzJzogW10sXG4gIC8vI2VuZHJlZ2lvblxuXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9XZWJLaXQvV2ViS2l0L2Jsb2IvbWFpbi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL3Byb3RvY29sL0F1ZGl0Lmpzb25cbiAgLy8jcmVnaW9uIEFVRElUIERPTUFJTlxuICAvLyNlbmRyZWdpb25cblxuICAvLyBodHRwczovL2dpdGh1Yi5jb20vV2ViS2l0L1dlYktpdC9ibG9iL21haW4vU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9wcm90b2NvbC9Ccm93c2VyLmpzb25cbiAgLy8jcmVnaW9uIEJST1dTRVIgRE9NQUlOXG4gICdCcm93c2VyLmVuYWJsZSc6IFtdLCAvLyBFbmFibGVzIEJyb3dzZXIgZG9tYWluIGV2ZW50cy4gZS5nLiBleHRlbnRpb25zRW5hYmxlZFxuICAnQnJvd3Nlci5kaXNhYmxlJzogW10sIC8vIERpc2FibGVzIEJyb3dzZXIgZG9tYWluIGV2ZW50c1xuICAvLyNlbmRyZWdpb25cblxuICAvLyBodHRwczovL2dpdGh1Yi5jb20vV2ViS2l0L1dlYktpdC9ibG9iL21haW4vU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9wcm90b2NvbC9DYW52YXMuanNvblxuICAvLyNyZWdpb24gQ0FOVkFTIERPTUFJTlxuICAnQ2FudmFzLmVuYWJsZSc6IFtdLFxuICAnQ2FudmFzLmRpc2FibGUnOiBbXSxcbiAgLy8jZW5kcmVnaW9uXG5cbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL1dlYktpdC9XZWJLaXQvYmxvYi9tYWluL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvcHJvdG9jb2wvQ1BVUHJvZmlsZXIuanNvblxuICAvLyNyZWdpb24gQ1BVUFJPRklMRVIgRE9NQUlOXG4gICdDUFVQcm9maWxlci5zdGFydFRyYWNraW5nJzogW10sXG4gICdDUFVQcm9maWxlci5zdG9wVHJhY2tpbmcnOiBbXSxcbiAgLy8jZW5kcmVnaW9uXG5cbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL1dlYktpdC9XZWJLaXQvYmxvYi9tYWluL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvcHJvdG9jb2wvQ29uc29sZS5qc29uXG4gIC8vI3JlZ2lvbiBDT05TT0xFIERPTUFJTlxuICAnQ29uc29sZS5kaXNhYmxlJzogW10sXG4gICdDb25zb2xlLmVuYWJsZSc6IFtdLFxuICAnQ29uc29sZS5jbGVhck1lc3NhZ2VzJzogW10sXG4gICdDb25zb2xlLmdldExvZ2dpbmdDaGFubmVscyc6IFtdLFxuICAnQ29uc29sZS5zZXRMb2dnaW5nQ2hhbm5lbExldmVsJzogWydzb3VyY2UnLCAnbGV2ZWwnXSxcbiAgLy8jZW5kcmVnaW9uXG5cbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL1dlYktpdC9XZWJLaXQvYmxvYi9tYWluL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvcHJvdG9jb2wvQ1NTLmpzb25cbiAgLy8jcmVnaW9uIENTUyBET01BSU5cbiAgJ0NTUy5lbmFibGUnOiBbXSxcbiAgJ0NTUy5kaXNhYmxlJzogW10sXG4gIC8vI2VuZHJlZ2lvblxuXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9XZWJLaXQvV2ViS2l0L2Jsb2IvbWFpbi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL3Byb3RvY29sL0RhdGFiYXNlLmpzb25cbiAgLy8jcmVnaW9uIERBVEFCQVNFIERPTUFJTlxuICAnRGF0YWJhc2UuZW5hYmxlJzogW10sXG4gICdEYXRhYmFzZS5kaXNhYmxlJzogW10sXG4gIC8vI2VuZHJlZ2lvblxuXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9XZWJLaXQvV2ViS2l0L2Jsb2IvbWFpbi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL3Byb3RvY29sL0RlYnVnZ2VyLmpzb25cbiAgLy8jcmVnaW9uIERFQlVHR0VSIERPTUFJTlxuICAnRGVidWdnZXIuZW5hYmxlJzogW10sXG4gICdEZWJ1Z2dlci5kaXNhYmxlJzogW10sXG4gICdEZWJ1Z2dlci5zZXRBc3luY1N0YWNrVHJhY2VEZXB0aCc6IFsnZGVwdGgnXSxcbiAgJ0RlYnVnZ2VyLnNldEJyZWFrcG9pbnRzQWN0aXZlJzogWydhY3RpdmUnXSxcbiAgJ0RlYnVnZ2VyLnNldFBhdXNlRm9ySW50ZXJuYWxTY3JpcHRzJzogWydzaG91bGRQYXVzZSddLFxuICAnRGVidWdnZXIuc2V0UGF1c2VPbkFzc2VydGlvbnMnOiBbJ2VuYWJsZWQnXSxcbiAgJ0RlYnVnZ2VyLnNldFBhdXNlT25FeGNlcHRpb25zJzogWydzdGF0ZSddLFxuICAvLyNlbmRyZWdpb25cblxuICAvLyBodHRwczovL2dpdGh1Yi5jb20vV2ViS2l0L1dlYktpdC9ibG9iL21haW4vU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9wcm90b2NvbC9ET00uanNvblxuICAvLyNyZWdpb24gRE9NIERPTUFJTlxuICAnRE9NLmdldERvY3VtZW50JzogW10sXG4gIC8vI2VuZHJlZ2lvblxuXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9XZWJLaXQvV2ViS2l0L2Jsb2IvbWFpbi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL3Byb3RvY29sL0RPTURlYnVnZ2VyLmpzb25cbiAgLy8jcmVnaW9uIERPTURFQlVHR0VSIERPTUFJTlxuICAvLyNlbmRyZWdpb25cblxuICAvLyBodHRwczovL2dpdGh1Yi5jb20vV2ViS2l0L1dlYktpdC9ibG9iL21haW4vU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9wcm90b2NvbC9ET01TdG9yYWdlLmpzb25cbiAgLy8jcmVnaW9uIERPTVNUT1JBR0UgRE9NQUlOXG4gICdET01TdG9yYWdlLmVuYWJsZSc6IFtdLFxuICAnRE9NU3RvcmFnZS5kaXNhYmxlJzogW10sXG4gICdET01TdG9yYWdlLmdldERPTVN0b3JhZ2VJdGVtcyc6IFsnc3RvcmFnZUlkJ10sXG4gICdET01TdG9yYWdlLmNsZWFyRE9NU3RvcmFnZUl0ZW1zJzogWydzdG9yYWdlSWQnXSxcblxuICAvLyNlbmRyZWdpb25cblxuICAvLyBodHRwczovL2dpdGh1Yi5jb20vV2ViS2l0L1dlYktpdC9ibG9iL21haW4vU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9wcm90b2NvbC9IZWFwLmpzb25cbiAgLy8jcmVnaW9uIEhFQVAgRE9NQUlOXG4gICdIZWFwLmVuYWJsZSc6IFtdLFxuICAnSGVhcC5kaXNhYmxlJzogW10sXG4gICdIZWFwLmdjJzogW10sXG4gIC8vI2VuZHJlZ2lvblxuXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9XZWJLaXQvV2ViS2l0L2Jsb2IvbWFpbi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL3Byb3RvY29sL0luZGV4ZWREQi5qc29uXG4gIC8vI3JlZ2lvbiBJTkRFWEVEREIgRE9NQUlOXG4gICdJbmRleGVkREIuZW5hYmxlJzogW10sXG4gICdJbmRleGVkREIuZGlzYWJsZSc6IFtdLFxuICAvLyNlbmRyZWdpb25cblxuICAvLyBodHRwczovL2dpdGh1Yi5jb20vV2ViS2l0L1dlYktpdC9ibG9iL21haW4vU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9wcm90b2NvbC9JbnNwZWN0b3IuanNvblxuICAvLyNyZWdpb24gSU5TUEVDVE9SIERPTUFJTlxuICAnSW5zcGVjdG9yLmVuYWJsZSc6IFtdLFxuICAnSW5zcGVjdG9yLmRpc2FibGUnOiBbXSxcbiAgJ0luc3BlY3Rvci5pbml0aWFsaXplZCc6IFtdLFxuICAvLyNlbmRyZWdpb25cblxuICAvLyBodHRwczovL2dpdGh1Yi5jb20vV2ViS2l0L1dlYktpdC9ibG9iL21haW4vU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9wcm90b2NvbC9MYXllclRyZWUuanNvblxuICAvLyNyZWdpb24gTEFZRVJUUkVFIERPTUFJTlxuICAnTGF5ZXJUcmVlLmVuYWJsZSc6IFtdLFxuICAnTGF5ZXJUcmVlLmRpc2FibGUnOiBbXSxcbiAgLy8jZW5kcmVnaW9uXG5cbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL1dlYktpdC9XZWJLaXQvYmxvYi9tYWluL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvcHJvdG9jb2wvTWVtb3J5Lmpzb25cbiAgLy8jcmVnaW9uIE1FTU9SWSBET01BSU5cbiAgJ01lbW9yeS5lbmFibGUnOiBbXSxcbiAgJ01lbW9yeS5kaXNhYmxlJzogW10sXG4gIC8vI2VuZHJlZ2lvblxuXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9XZWJLaXQvV2ViS2l0L2Jsb2IvbWFpbi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL3Byb3RvY29sL05ldHdvcmsuanNvblxuICAvLyNyZWdpb24gTkVUV09SSyBET01BSU5cbiAgJ05ldHdvcmsuZGlzYWJsZSc6IFtdLFxuICAnTmV0d29yay5lbmFibGUnOiBbXSxcbiAgJ05ldHdvcmsuc2V0RXh0cmFIVFRQSGVhZGVycyc6IFsnaGVhZGVycyddLFxuICAnTmV0d29yay5zZXRSZXNvdXJjZUNhY2hpbmdEaXNhYmxlZCc6IFsnZGlzYWJsZWQnXSxcbiAgJ05ldHdvcmsuc2V0RW11bGF0ZWRDb25kaXRpb25zJzogWydieXRlc1BlclNlY29uZExpbWl0J10sXG4gIC8vI2VuZHJlZ2lvblxuXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9XZWJLaXQvV2ViS2l0L2Jsb2IvbWFpbi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL3Byb3RvY29sL1BhZ2UuanNvblxuICAvLyNyZWdpb24gUEFHRSBET01BSU5cbiAgJ1BhZ2UuZW5hYmxlJzogW10sXG4gICdQYWdlLmRpc2FibGUnOiBbXSxcbiAgJ1BhZ2UucmVsb2FkJzogWydpZ25vcmVDYWNoZScsICdyZXZhbGlkYXRlQWxsUmVzb3VyY2VzJ10sXG4gICdQYWdlLm5hdmlnYXRlJzogWyd1cmwnXSxcbiAgJ1BhZ2Uub3ZlcnJpZGVVc2VyQWdlbnQnOiBbJ3ZhbHVlJ10sXG4gICdQYWdlLm92ZXJyaWRlU2V0dGluZyc6IFsnc2V0dGluZycsICd2YWx1ZSddLFxuICAnUGFnZS5vdmVycmlkZVVzZXJQcmVmZXJlbmNlJzogWyduYW1lJywgJ3ZhbHVlJ10sXG4gICdQYWdlLmdldENvb2tpZXMnOiBbXSxcbiAgJ1BhZ2Uuc2V0Q29va2llJzogWydjb29raWUnXSxcbiAgJ1BhZ2UuZGVsZXRlQ29va2llJzogWydjb29raWVOYW1lJywgJ3VybCddLFxuICAnUGFnZS5nZXRSZXNvdXJjZVRyZWUnOiBbXSxcbiAgJ1BhZ2UuZ2V0UmVzb3VyY2VDb250ZW50JzogWydmcmFtZUlkJywgJ3VybCddLFxuICAnUGFnZS5zZWFyY2hJblJlc291cmNlJzogWydmcmFtZUlkJywgJ3VybCcsICdxdWVyeScsICdjYXNlU2Vuc2l0aXZlJywgJ2lzUmVnZXgnLCAncmVxdWVzdElkJ10sXG4gICdQYWdlLnNlYXJjaEluUmVzb3VyY2VzJzogWyd0ZXh0JywgJ2Nhc2VTZW5zaXRpdmUnLCAnaXNSZWdleCddLFxuICAnUGFnZS5zZXRTaG93UnVsZXJzJzogWydyZXN1bHQnXSxcbiAgJ1BhZ2Uuc2V0U2hvd1BhaW50UmVjdHMnOiBbJ3Jlc3VsdCddLFxuICAnUGFnZS5zZXRFbXVsYXRlZE1lZGlhJzogWydtZWRpYSddLFxuICAnUGFnZS5zbmFwc2hvdE5vZGUnOiBbJ25vZGVJZCddLFxuICAnUGFnZS5zbmFwc2hvdFJlY3QnOiBbJ3gnLCAneScsICd3aXRoJywgJ2hlaWdodCcsICdjb29yZGluYXRlU3lzdGVtJ10sXG4gICdQYWdlLmFyY2hpdmUnOiBbJ2RhdGEnXSxcbiAgJ1BhZ2Uuc2V0U2NyZWVuU2l6ZU92ZXJyaWRlJzogWyd3aWR0aCcsICdoZWlnaHQnXSxcblxuICAvLyNlbmRyZWdpb25cblxuICAvLyBodHRwczovL2dpdGh1Yi5jb20vV2ViS2l0L1dlYktpdC9ibG9iL21haW4vU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9wcm90b2NvbC9SdW50aW1lLmpzb25cbiAgLy8jcmVnaW9uIFJVTlRJTUUgRE9NQUlOXG4gICdSdW50aW1lLmF3YWl0UHJvbWlzZSc6IFsncHJvbWlzZU9iamVjdElkJywgJ3JldHVybkJ5VmFsdWUnLCAnZ2VuZXJhdGVQcmV2aWV3JywgJ3NhdmVSZXN1bHQnXSxcbiAgJ1J1bnRpbWUuY2FsbEZ1bmN0aW9uT24nOiBbJ29iamVjdElkJywgJ2Z1bmN0aW9uRGVjbGFyYXRpb24nLCAnYXJndW1lbnRzJywgJ3JldHVybkJ5VmFsdWUnXSxcbiAgJ1J1bnRpbWUuZXZhbHVhdGUnOiBbJ2V4cHJlc3Npb24nLCAncmV0dXJuQnlWYWx1ZScsICdjb250ZXh0SWQnXSxcbiAgJ1J1bnRpbWUuZW5hYmxlJzogW10sXG4gICdSdW50aW1lLmRpc2FibGUnOiBbXSxcbiAgLy8jZW5kcmVnaW9uXG5cbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL1dlYktpdC9XZWJLaXQvYmxvYi9tYWluL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvcHJvdG9jb2wvU2NyaXB0UHJvZmlsZXIuanNvblxuICAvLyNyZWdpb24gU0NSSVBUUFJPRklMRVIgRE9NQUlOXG4gIC8vI2VuZHJlZ2lvblxuXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9XZWJLaXQvV2ViS2l0L2Jsb2IvbWFpbi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL3Byb3RvY29sL1NlcnZpY2VXb3JrZXIuanNvblxuICAvLyNyZWdpb24gU0VSVklDRVdPUktFUiBET01BSU5cbiAgJ1NlcnZpY2VXb3JrZXIuZ2V0SW5pdGlhbGl6YXRpb25JbmZvJzogW10sIC8vIHJldHVybnMgJ3sgXCJuYW1lXCI6IFwiaW5mb1wiLCBcIiRyZWZcIjogXCJDb25maWd1cmF0aW9uXCIgfSdcbiAgLy8jZW5kcmVnaW9uXG5cbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL1dlYktpdC9XZWJLaXQvYmxvYi9tYWluL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvcHJvdG9jb2wvVGFyZ2V0Lmpzb25cbiAgLy8jcmVnaW9uIFRBUkdFVCBET01BSU5cbiAgJ1RhcmdldC5leGlzdHMnOiBbXSwgLy8gcmVtb3ZlZCBzaW5jZSBXZWJLaXQgaW4gMTMuNFxuICAvLyNlbmRyZWdpb25cblxuICAvLyBodHRwczovL2dpdGh1Yi5jb20vV2ViS2l0L1dlYktpdC9ibG9iL21haW4vU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9wcm90b2NvbC9UaW1lbGluZS5qc29uXG4gIC8vI3JlZ2lvbiBUSU1FTElORSBET01BSU5cbiAgJ1RpbWVsaW5lLmVuYWJsZSc6IFtdLFxuICAnVGltZWxpbmUuZGlzYWJsZSc6IFtdLFxuICAnVGltZWxpbmUuc3RhcnQnOiBbXSxcbiAgJ1RpbWVsaW5lLnN0b3AnOiBbXSxcbiAgJ1RpbWVsaW5lLnNldEF1dG9DYXB0dXJlRW5hYmxlZCc6IFsnZW5hYmxlZCddLFxuICAnVGltZWxpbmUuc2V0SW5zdHJ1bWVudHMnOiBbJ2luc3RydW1lbnRzJ10sXG4gIC8vI2VuZHJlZ2lvblxuXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9XZWJLaXQvV2ViS2l0L2Jsb2IvbWFpbi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL3Byb3RvY29sL1dvcmtlci5qc29uXG4gIC8vI3JlZ2lvbiBXT1JLRVIgRE9NQUlOXG4gICdXb3JrZXIuZW5hYmxlJzogW10sXG4gICdXb3JrZXIuZGlzYWJsZSc6IFtdLFxuICAnV29ya2VyLmluaXRpYWxpemVkJzogWyd3b3JrZXJJZCddLFxuICAnV29ya2VyLnNlbmRNZXNzYWdlVG9Xb3JrZXInOiBbJ3dvcmtlcklkJywgJ21lc3NhZ2UnXVxuICAvLyNlbmRyZWdpb25cbn07XG5cbmZ1bmN0aW9uIGdldENvbW1hbmQgKGlkLCBtZXRob2QsIHBhcmFtcyA9IHt9KSB7XG4gIHJldHVybiB7XG4gICAgaWQsXG4gICAgbWV0aG9kLFxuICAgIHBhcmFtczogT2JqZWN0LmFzc2lnbih7XG4gICAgICBvYmplY3RHcm91cDogT0JKRUNUX0dST1VQLFxuICAgICAgaW5jbHVkZUNvbW1hbmRMaW5lQVBJOiB0cnVlLFxuICAgICAgZG9Ob3RQYXVzZU9uRXhjZXB0aW9uc0FuZE11dGVDb25zb2xlOiBmYWxzZSxcbiAgICAgIGVtdWxhdGVVc2VyR2VzdHVyZTogZmFsc2UsXG4gICAgICBnZW5lcmF0ZVByZXZpZXc6IGZhbHNlLFxuICAgICAgc2F2ZVJlc3VsdDogZmFsc2UsXG4gICAgfSwgcGFyYW1zKSxcbiAgfTtcbn1cblxuZnVuY3Rpb24gZ2V0UHJvdG9jb2xDb21tYW5kIChpZCwgbWV0aG9kLCBvcHRzID0ge30pIHtcbiAgY29uc3QgcGFyYW1OYW1lcyA9IENPTU1BTkRTW21ldGhvZF07XG4gIGlmICghcGFyYW1OYW1lcykge1xuICAgIHRocm93IG5ldyBFcnJvcihgVW5rbm93biBjb21tYW5kOiAnJHttZXRob2R9J2ApO1xuICB9XG5cbiAgY29uc3QgcGFyYW1zID0gcGFyYW1OYW1lcy5yZWR1Y2UoZnVuY3Rpb24gKHBhcmFtcywgbmFtZSkge1xuICAgIHBhcmFtc1tuYW1lXSA9IG9wdHNbbmFtZV07XG4gICAgcmV0dXJuIHBhcmFtcztcbiAgfSwge30pO1xuICByZXR1cm4gZ2V0Q29tbWFuZChpZCwgbWV0aG9kLCBwYXJhbXMpO1xufVxuXG5leHBvcnQgeyBnZXRQcm90b2NvbENvbW1hbmQgfTtcbmV4cG9ydCBkZWZhdWx0IGdldFByb3RvY29sQ29tbWFuZDtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFBQSxNQUFNQSxZQUFZLEdBQUcsU0FBUztBQUc5QixNQUFNQyxRQUFRLEdBQUc7RUFHZixrQkFBa0IsRUFBRSxFQUFFO0VBQ3RCLG1CQUFtQixFQUFFLEVBQUU7RUFLdkIseUJBQXlCLEVBQUUsRUFBRTtFQUM3QiwwQkFBMEIsRUFBRSxFQUFFO0VBQzlCLHlDQUF5QyxFQUFFLEVBQUU7RUFTN0MsZ0JBQWdCLEVBQUUs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
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["OBJECT_GROUP","COMMANDS","getCommand","id","method","params","Object","assign","objectGroup","includeCommandLineAPI","doNotPauseOnExceptionsAndMuteConsole","emulateUserGesture","generatePreview","saveResult","getProtocolCommand","opts","paramNames","Error","reduce","name"],"sources":["../../../lib/protocol/index.js"],"sourcesContent":["const OBJECT_GROUP = 'console';\n\n// See https://github.com/WebKit/webkit/tree/master/Source/JavaScriptCore/inspector/protocol\nconst COMMANDS = {\n // https://github.com/WebKit/WebKit/blob/main/Source/JavaScriptCore/inspector/protocol/Animation.json\n //#region ANIMATION DOMAIN\n 'Animation.enable': [], // Enables Canvas domain events\n 'Animation.disable': [], // Disables Canvas domain events\n //#endregion\n\n // https://github.com/WebKit/WebKit/blob/main/Source/JavaScriptCore/inspector/protocol/ApplicationCache.json\n //#region APPLICATIONCACHE DOMAIN\n 'ApplicationCache.enable': [],\n 'ApplicationCache.disable': [],\n 'ApplicationCache.getFramesWithManifests': [],\n //#endregion\n\n // https://github.com/WebKit/WebKit/blob/main/Source/JavaScriptCore/inspector/protocol/Audit.json\n //#region AUDIT DOMAIN\n //#endregion\n\n // https://github.com/WebKit/WebKit/blob/main/Source/JavaScriptCore/inspector/protocol/Browser.json\n //#region BROWSER DOMAIN\n 'Browser.enable': [], // Enables Browser domain events. e.g. extentionsEnabled\n 'Browser.disable': [], // Disables Browser domain events\n //#endregion\n\n // https://github.com/WebKit/WebKit/blob/main/Source/JavaScriptCore/inspector/protocol/Canvas.json\n //#region CANVAS DOMAIN\n 'Canvas.enable': [],\n 'Canvas.disable': [],\n //#endregion\n\n // https://github.com/WebKit/WebKit/blob/main/Source/JavaScriptCore/inspector/protocol/CPUProfiler.json\n //#region CPUPROFILER DOMAIN\n 'CPUProfiler.startTracking': [],\n 'CPUProfiler.stopTracking': [],\n //#endregion\n\n // https://github.com/WebKit/WebKit/blob/main/Source/JavaScriptCore/inspector/protocol/Console.json\n //#region CONSOLE DOMAIN\n 'Console.disable': [],\n 'Console.enable': [],\n 'Console.clearMessages': [],\n 'Console.getLoggingChannels': [],\n 'Console.setLoggingChannelLevel': ['source', 'level'],\n //#endregion\n\n // https://github.com/WebKit/WebKit/blob/main/Source/JavaScriptCore/inspector/protocol/CSS.json\n //#region CSS DOMAIN\n 'CSS.enable': [],\n 'CSS.disable': [],\n //#endregion\n\n // https://github.com/WebKit/WebKit/blob/main/Source/JavaScriptCore/inspector/protocol/Database.json\n //#region DATABASE DOMAIN\n 'Database.enable': [],\n 'Database.disable': [],\n //#endregion\n\n // https://github.com/WebKit/WebKit/blob/main/Source/JavaScriptCore/inspector/protocol/Debugger.json\n //#region DEBUGGER DOMAIN\n 'Debugger.enable': [],\n 'Debugger.disable': [],\n 'Debugger.setAsyncStackTraceDepth': ['depth'],\n 'Debugger.setBreakpointsActive': ['active'],\n 'Debugger.setPauseForInternalScripts': ['shouldPause'],\n 'Debugger.setPauseOnAssertions': ['enabled'],\n 'Debugger.setPauseOnExceptions': ['state'],\n //#endregion\n\n // https://github.com/WebKit/WebKit/blob/main/Source/JavaScriptCore/inspector/protocol/DOM.json\n //#region DOM DOMAIN\n 'DOM.getDocument': [],\n //#endregion\n\n // https://github.com/WebKit/WebKit/blob/main/Source/JavaScriptCore/inspector/protocol/DOMDebugger.json\n //#region DOMDEBUGGER DOMAIN\n //#endregion\n\n // https://github.com/WebKit/WebKit/blob/main/Source/JavaScriptCore/inspector/protocol/DOMStorage.json\n //#region DOMSTORAGE DOMAIN\n 'DOMStorage.enable': [],\n 'DOMStorage.disable': [],\n 'DOMStorage.getDOMStorageItems': ['storageId'],\n 'DOMStorage.clearDOMStorageItems': ['storageId'],\n\n //#endregion\n\n // https://github.com/WebKit/WebKit/blob/main/Source/JavaScriptCore/inspector/protocol/Heap.json\n //#region HEAP DOMAIN\n 'Heap.enable': [],\n 'Heap.disable': [],\n 'Heap.gc': [],\n //#endregion\n\n // https://github.com/WebKit/WebKit/blob/main/Source/JavaScriptCore/inspector/protocol/IndexedDB.json\n //#region INDEXEDDB DOMAIN\n 'IndexedDB.enable': [],\n 'IndexedDB.disable': [],\n //#endregion\n\n // https://github.com/WebKit/WebKit/blob/main/Source/JavaScriptCore/inspector/protocol/Inspector.json\n //#region INSPECTOR DOMAIN\n 'Inspector.enable': [],\n 'Inspector.disable': [],\n 'Inspector.initialized': [],\n //#endregion\n\n // https://github.com/WebKit/WebKit/blob/main/Source/JavaScriptCore/inspector/protocol/LayerTree.json\n //#region LAYERTREE DOMAIN\n 'LayerTree.enable': [],\n 'LayerTree.disable': [],\n //#endregion\n\n // https://github.com/WebKit/WebKit/blob/main/Source/JavaScriptCore/inspector/protocol/Memory.json\n //#region MEMORY DOMAIN\n 'Memory.enable': [],\n 'Memory.disable': [],\n //#endregion\n\n // https://github.com/WebKit/WebKit/blob/main/Source/JavaScriptCore/inspector/protocol/Network.json\n //#region NETWORK DOMAIN\n 'Network.disable': [],\n 'Network.enable': [],\n 'Network.setExtraHTTPHeaders': ['headers'],\n 'Network.setResourceCachingDisabled': ['disabled'],\n 'Network.setEmulatedConditions': ['bytesPerSecondLimit'],\n //#endregion\n\n // https://github.com/WebKit/WebKit/blob/main/Source/JavaScriptCore/inspector/protocol/Page.json\n //#region PAGE DOMAIN\n 'Page.enable': [],\n 'Page.disable': [],\n 'Page.reload': [],\n 'Page.navigate': ['url'],\n 'Page.overrideUserAgent': ['value'],\n 'Page.getCookies': ['urls'],\n 'Page.deleteCookie': ['cookieName', 'url'],\n 'Page.getResourceTree': [],\n //#endregion\n\n // https://github.com/WebKit/WebKit/blob/main/Source/JavaScriptCore/inspector/protocol/Runtime.json\n //#region RUNTIME DOMAIN\n 'Runtime.awaitPromise': ['promiseObjectId', 'returnByValue', 'generatePreview', 'saveResult'],\n 'Runtime.callFunctionOn': ['objectId', 'functionDeclaration', 'arguments', 'returnByValue'],\n 'Runtime.evaluate': ['expression', 'returnByValue', 'contextId'],\n 'Runtime.enable': [],\n 'Runtime.disable': [],\n //#endregion\n\n // https://github.com/WebKit/WebKit/blob/main/Source/JavaScriptCore/inspector/protocol/ScriptProfiler.json\n //#region SCRIPTPROFILER DOMAIN\n //#endregion\n\n // https://github.com/WebKit/WebKit/blob/main/Source/JavaScriptCore/inspector/protocol/ServiceWorker.json\n //#region SERVICEWORKER DOMAIN\n 'ServiceWorker.getInitializationInfo': [], // returns '{ \"name\": \"info\", \"$ref\": \"Configuration\" }'\n //#endregion\n\n // https://github.com/WebKit/WebKit/blob/main/Source/JavaScriptCore/inspector/protocol/Target.json\n //#region TARGET DOMAIN\n 'Target.exists': [], // removed since WebKit in 13.4\n //#endregion\n\n // https://github.com/WebKit/WebKit/blob/main/Source/JavaScriptCore/inspector/protocol/Timeline.json\n //#region TIMELINE DOMAIN\n 'Timeline.enable': [],\n 'Timeline.disable': [],\n 'Timeline.start': [],\n 'Timeline.stop': [],\n 'Timeline.setAutoCaptureEnabled': ['enabled'],\n 'Timeline.setInstruments': ['instruments'],\n //#endregion\n\n // https://github.com/WebKit/WebKit/blob/main/Source/JavaScriptCore/inspector/protocol/Worker.json\n //#region WORKER DOMAIN\n 'Worker.enable': [],\n 'Worker.disable': [],\n 'Worker.initialized': ['workerId'],\n 'Worker.sendMessageToWorker': ['workerId', 'message']\n //#endregion\n};\n\nfunction getCommand (id, method, params = {}) {\n return {\n id,\n method,\n params: Object.assign({\n objectGroup: OBJECT_GROUP,\n includeCommandLineAPI: true,\n doNotPauseOnExceptionsAndMuteConsole: false,\n emulateUserGesture: false,\n generatePreview: false,\n saveResult: false,\n }, params),\n };\n}\n\nfunction getProtocolCommand (id, method, opts = {}) {\n const paramNames = COMMANDS[method];\n if (!paramNames) {\n throw new Error(`Unknown command: '${method}'`);\n }\n\n const params = paramNames.reduce(function (params, name) {\n params[name] = opts[name];\n return params;\n }, {});\n return getCommand(id, method, params);\n}\n\nexport { getProtocolCommand };\nexport default getProtocolCommand;\n"],"mappings":";;;;;;;;AAAA,MAAMA,YAAY,GAAG,SAAS;AAG9B,MAAMC,QAAQ,GAAG;EAGf,kBAAkB,EAAE,EAAE;EACtB,mBAAmB,EAAE,EAAE;EAKvB,yBAAyB,EAAE,EAAE;EAC7B,0BAA0B,EAAE,EAAE;EAC9B,yCAAyC,EAAE,EAAE;EAS7C,gBAAgB,EAAE,EAAE;EACpB,iBAAiB,EAAE,EAAE;EAKrB,eAAe,EAAE,EAAE;EACnB,gBAAgB,EAAE,EAAE;EAKpB,2BAA2B,EAAE,EAAE;EAC/B,0BAA0B,EAAE,EAAE;EAK9B,iBAAiB,EAAE,EAAE;EACrB,gBAAgB,EAAE,EAAE;EACpB,uBAAuB,EAAE,EAAE;EAC3B,4BAA4B,EAAE,EAAE;EAChC,gCAAgC,EAAE,CAAC,QAAQ,EAAE,OAAO,CAAC;EAKrD,YAAY,EAAE,EAAE;EAChB,aAAa,EAAE,EAAE;EAKjB,iBAAiB,EAAE,EAAE;EACrB,kBAAkB,EAAE,EAAE;EAKtB,iBAAiB,EAAE,EAAE;EACrB,kBAAkB,EAAE,EAAE;EACtB,kCAAkC,EAAE,CAAC,OAAO,CAAC;EAC7C,+BAA+B,EAAE,CAAC,QAAQ,CAAC;EAC3C,qCAAqC,EAAE,CAAC,aAAa,CAAC;EACtD,+BAA+B,EAAE,CAAC,SAAS,CAAC;EAC5C,+BAA+B,EAAE,CAAC,OAAO,CAAC;EAK1C,iBAAiB,EAAE,EAAE;EASrB,mBAAmB,EAAE,EAAE;EACvB,oBAAoB,EAAE,EAAE;EACxB,+BAA+B,EAAE,CAAC,WAAW,CAAC;EAC9C,iCAAiC,EAAE,CAAC,WAAW,CAAC;EAMhD,aAAa,EAAE,EAAE;EACjB,cAAc,EAAE,EAAE;EAClB,SAAS,EAAE,EAAE;EAKb,kBAAkB,EAAE,EAAE;EACtB,mBAAmB,EAAE,EAAE;EAKvB,kBAAkB,EAAE,EAAE;EACtB,mBAAmB,EAAE,EAAE;EACvB,uBAAuB,EAAE,EAAE;EAK3B,kBAAkB,EAAE,EAAE;EACtB,mBAAmB,EAAE,EAAE;EAKvB,eAAe,EAAE,EAAE;EACnB,gBAAgB,EAAE,EAAE;EAKpB,iBAAiB,EAAE,EAAE;EACrB,gBAAgB,EAAE,EAAE;EACpB,6BAA6B,EAAE,CAAC,SAAS,CAAC;EAC1C,oCAAoC,EAAE,CAAC,UAAU,CAAC;EAClD,+BAA+B,EAAE,CAAC,qBAAqB,CAAC;EAKxD,aAAa,EAAE,EAAE;EACjB,cAAc,EAAE,EAAE;EAClB,aAAa,EAAE,EAAE;EACjB,eAAe,EAAE,CAAC,KAAK,CAAC;EACxB,wBAAwB,EAAE,CAAC,OAAO,CAAC;EACnC,iBAAiB,EAAE,CAAC,MAAM,CAAC;EAC3B,mBAAmB,EAAE,CAAC,YAAY,EAAE,KAAK,CAAC;EAC1C,sBAAsB,EAAE,EAAE;EAK1B,sBAAsB,EAAE,CAAC,iBAAiB,EAAE,eAAe,EAAE,iBAAiB,EAAE,YAAY,CAAC;EAC7F,wBAAwB,EAAE,CAAC,UAAU,EAAE,qBAAqB,EAAE,WAAW,EAAE,eAAe,CAAC;EAC3F,kBAAkB,EAAE,CAAC,YAAY,EAAE,eAAe,EAAE,WAAW,CAAC;EAChE,gBAAgB,EAAE,EAAE;EACpB,iBAAiB,EAAE,EAAE;EASrB,qCAAqC,EAAE,EAAE;EAKzC,eAAe,EAAE,EAAE;EAKnB,iBAAiB,EAAE,EAAE;EACrB,kBAAkB,EAAE,EAAE;EACtB,gBAAgB,EAAE,EAAE;EACpB,eAAe,EAAE,EAAE;EACnB,gCAAgC,EAAE,CAAC,SAAS,CAAC;EAC7C,yBAAyB,EAAE,CAAC,aAAa,CAAC;EAK1C,eAAe,EAAE,EAAE;EACnB,gBAAgB,EAAE,EAAE;EACpB,oBAAoB,EAAE,CAAC,UAAU,CAAC;EAClC,4BAA4B,EAAE,CAAC,UAAU,EAAE,SAAS;AAEtD,CAAC;AAED,SAASC,UAAU,CAAEC,EAAE,EAAEC,MAAM,EAAEC,MAAM,GAAG,CAAC,CAAC,EAAE;EAC5C,OAAO;IACLF,EAAE;IACFC,MAAM;IACNC,MAAM,EAAEC,MAAM,CAACC,MAAM,CAAC;MACpBC,WAAW,EAAER,YAAY;MACzBS,qBAAqB,EAAE,IAAI;MAC3BC,oCAAoC,EAAE,KAAK;MAC3CC,kBAAkB,EAAE,KAAK;MACzBC,eAAe,EAAE,KAAK;MACtBC,UAAU,EAAE;IACd,CAAC,EAAER,MAAM;EACX,CAAC;AACH;AAEA,SAASS,kBAAkB,CAAEX,EAAE,EAAEC,MAAM,EAAEW,IAAI,GAAG,CAAC,CAAC,EAAE;EAClD,MAAMC,UAAU,GAAGf,QAAQ,CAACG,MAAM,CAAC;EACnC,IAAI,CAACY,UAAU,EAAE;IACf,MAAM,IAAIC,KAAK,CAAE,qBAAoBb,MAAO,GAAE,CAAC;EACjD;EAEA,MAAMC,MAAM,GAAGW,UAAU,CAACE,MAAM,CAAC,UAAUb,MAAM,EAAEc,IAAI,EAAE;IACvDd,MAAM,CAACc,IAAI,CAAC,GAAGJ,IAAI,CAACI,IAAI,CAAC;IACzB,OAAOd,MAAM;EACf,CAAC,EAAE,CAAC,CAAC,CAAC;EACN,OAAOH,UAAU,CAACC,EAAE,EAAEC,MAAM,EAAEC,MAAM,CAAC;AACvC;AAAC,eAGcS,kBAAkB;AAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","names":["OBJECT_GROUP","COMMANDS","getCommand","id","method","params","Object","assign","objectGroup","includeCommandLineAPI","doNotPauseOnExceptionsAndMuteConsole","emulateUserGesture","generatePreview","saveResult","getProtocolCommand","opts","paramNames","Error","reduce","name","_default","exports","default"],"sources":["../../../lib/protocol/index.js"],"sourcesContent":["const OBJECT_GROUP = 'console';\n\n// See https://github.com/WebKit/webkit/tree/master/Source/JavaScriptCore/inspector/protocol\nconst COMMANDS = {\n // https://github.com/WebKit/WebKit/blob/main/Source/JavaScriptCore/inspector/protocol/Animation.json\n //#region ANIMATION DOMAIN\n 'Animation.enable': [], // Enables Canvas domain events\n 'Animation.disable': [], // Disables Canvas domain events\n //#endregion\n\n // https://github.com/WebKit/WebKit/blob/main/Source/JavaScriptCore/inspector/protocol/ApplicationCache.json\n //#region APPLICATIONCACHE DOMAIN\n 'ApplicationCache.enable': [],\n 'ApplicationCache.disable': [],\n 'ApplicationCache.getFramesWithManifests': [],\n //#endregion\n\n // https://github.com/WebKit/WebKit/blob/main/Source/JavaScriptCore/inspector/protocol/Audit.json\n //#region AUDIT DOMAIN\n //#endregion\n\n // https://github.com/WebKit/WebKit/blob/main/Source/JavaScriptCore/inspector/protocol/Browser.json\n //#region BROWSER DOMAIN\n 'Browser.enable': [], // Enables Browser domain events. e.g. extentionsEnabled\n 'Browser.disable': [], // Disables Browser domain events\n //#endregion\n\n // https://github.com/WebKit/WebKit/blob/main/Source/JavaScriptCore/inspector/protocol/Canvas.json\n //#region CANVAS DOMAIN\n 'Canvas.enable': [],\n 'Canvas.disable': [],\n //#endregion\n\n // https://github.com/WebKit/WebKit/blob/main/Source/JavaScriptCore/inspector/protocol/CPUProfiler.json\n //#region CPUPROFILER DOMAIN\n 'CPUProfiler.startTracking': [],\n 'CPUProfiler.stopTracking': [],\n //#endregion\n\n // https://github.com/WebKit/WebKit/blob/main/Source/JavaScriptCore/inspector/protocol/Console.json\n //#region CONSOLE DOMAIN\n 'Console.disable': [],\n 'Console.enable': [],\n 'Console.clearMessages': [],\n 'Console.getLoggingChannels': [],\n 'Console.setLoggingChannelLevel': ['source', 'level'],\n //#endregion\n\n // https://github.com/WebKit/WebKit/blob/main/Source/JavaScriptCore/inspector/protocol/CSS.json\n //#region CSS DOMAIN\n 'CSS.enable': [],\n 'CSS.disable': [],\n //#endregion\n\n // https://github.com/WebKit/WebKit/blob/main/Source/JavaScriptCore/inspector/protocol/Database.json\n //#region DATABASE DOMAIN\n 'Database.enable': [],\n 'Database.disable': [],\n //#endregion\n\n // https://github.com/WebKit/WebKit/blob/main/Source/JavaScriptCore/inspector/protocol/Debugger.json\n //#region DEBUGGER DOMAIN\n 'Debugger.enable': [],\n 'Debugger.disable': [],\n 'Debugger.setAsyncStackTraceDepth': ['depth'],\n 'Debugger.setBreakpointsActive': ['active'],\n 'Debugger.setPauseForInternalScripts': ['shouldPause'],\n 'Debugger.setPauseOnAssertions': ['enabled'],\n 'Debugger.setPauseOnExceptions': ['state'],\n //#endregion\n\n // https://github.com/WebKit/WebKit/blob/main/Source/JavaScriptCore/inspector/protocol/DOM.json\n //#region DOM DOMAIN\n 'DOM.getDocument': [],\n //#endregion\n\n // https://github.com/WebKit/WebKit/blob/main/Source/JavaScriptCore/inspector/protocol/DOMDebugger.json\n //#region DOMDEBUGGER DOMAIN\n //#endregion\n\n // https://github.com/WebKit/WebKit/blob/main/Source/JavaScriptCore/inspector/protocol/DOMStorage.json\n //#region DOMSTORAGE DOMAIN\n 'DOMStorage.enable': [],\n 'DOMStorage.disable': [],\n 'DOMStorage.getDOMStorageItems': ['storageId'],\n 'DOMStorage.clearDOMStorageItems': ['storageId'],\n\n //#endregion\n\n // https://github.com/WebKit/WebKit/blob/main/Source/JavaScriptCore/inspector/protocol/Heap.json\n //#region HEAP DOMAIN\n 'Heap.enable': [],\n 'Heap.disable': [],\n 'Heap.gc': [],\n //#endregion\n\n // https://github.com/WebKit/WebKit/blob/main/Source/JavaScriptCore/inspector/protocol/IndexedDB.json\n //#region INDEXEDDB DOMAIN\n 'IndexedDB.enable': [],\n 'IndexedDB.disable': [],\n //#endregion\n\n // https://github.com/WebKit/WebKit/blob/main/Source/JavaScriptCore/inspector/protocol/Inspector.json\n //#region INSPECTOR DOMAIN\n 'Inspector.enable': [],\n 'Inspector.disable': [],\n 'Inspector.initialized': [],\n //#endregion\n\n // https://github.com/WebKit/WebKit/blob/main/Source/JavaScriptCore/inspector/protocol/LayerTree.json\n //#region LAYERTREE DOMAIN\n 'LayerTree.enable': [],\n 'LayerTree.disable': [],\n //#endregion\n\n // https://github.com/WebKit/WebKit/blob/main/Source/JavaScriptCore/inspector/protocol/Memory.json\n //#region MEMORY DOMAIN\n 'Memory.enable': [],\n 'Memory.disable': [],\n //#endregion\n\n // https://github.com/WebKit/WebKit/blob/main/Source/JavaScriptCore/inspector/protocol/Network.json\n //#region NETWORK DOMAIN\n 'Network.disable': [],\n 'Network.enable': [],\n 'Network.setExtraHTTPHeaders': ['headers'],\n 'Network.setResourceCachingDisabled': ['disabled'],\n 'Network.setEmulatedConditions': ['bytesPerSecondLimit'],\n //#endregion\n\n // https://github.com/WebKit/WebKit/blob/main/Source/JavaScriptCore/inspector/protocol/Page.json\n //#region PAGE DOMAIN\n 'Page.enable': [],\n 'Page.disable': [],\n 'Page.reload': ['ignoreCache', 'revalidateAllResources'],\n 'Page.navigate': ['url'],\n 'Page.overrideUserAgent': ['value'],\n 'Page.overrideSetting': ['setting', 'value'],\n 'Page.overrideUserPreference': ['name', 'value'],\n 'Page.getCookies': [],\n 'Page.setCookie': ['cookie'],\n 'Page.deleteCookie': ['cookieName', 'url'],\n 'Page.getResourceTree': [],\n 'Page.getResourceContent': ['frameId', 'url'],\n 'Page.searchInResource': ['frameId', 'url', 'query', 'caseSensitive', 'isRegex', 'requestId'],\n 'Page.searchInResources': ['text', 'caseSensitive', 'isRegex'],\n 'Page.setShowRulers': ['result'],\n 'Page.setShowPaintRects': ['result'],\n 'Page.setEmulatedMedia': ['media'],\n 'Page.snapshotNode': ['nodeId'],\n 'Page.snapshotRect': ['x', 'y', 'with', 'height', 'coordinateSystem'],\n 'Page.archive': ['data'],\n 'Page.setScreenSizeOverride': ['width', 'height'],\n\n //#endregion\n\n // https://github.com/WebKit/WebKit/blob/main/Source/JavaScriptCore/inspector/protocol/Runtime.json\n //#region RUNTIME DOMAIN\n 'Runtime.awaitPromise': ['promiseObjectId', 'returnByValue', 'generatePreview', 'saveResult'],\n 'Runtime.callFunctionOn': ['objectId', 'functionDeclaration', 'arguments', 'returnByValue'],\n 'Runtime.evaluate': ['expression', 'returnByValue', 'contextId'],\n 'Runtime.enable': [],\n 'Runtime.disable': [],\n //#endregion\n\n // https://github.com/WebKit/WebKit/blob/main/Source/JavaScriptCore/inspector/protocol/ScriptProfiler.json\n //#region SCRIPTPROFILER DOMAIN\n //#endregion\n\n // https://github.com/WebKit/WebKit/blob/main/Source/JavaScriptCore/inspector/protocol/ServiceWorker.json\n //#region SERVICEWORKER DOMAIN\n 'ServiceWorker.getInitializationInfo': [], // returns '{ \"name\": \"info\", \"$ref\": \"Configuration\" }'\n //#endregion\n\n // https://github.com/WebKit/WebKit/blob/main/Source/JavaScriptCore/inspector/protocol/Target.json\n //#region TARGET DOMAIN\n 'Target.exists': [], // removed since WebKit in 13.4\n //#endregion\n\n // https://github.com/WebKit/WebKit/blob/main/Source/JavaScriptCore/inspector/protocol/Timeline.json\n //#region TIMELINE DOMAIN\n 'Timeline.enable': [],\n 'Timeline.disable': [],\n 'Timeline.start': [],\n 'Timeline.stop': [],\n 'Timeline.setAutoCaptureEnabled': ['enabled'],\n 'Timeline.setInstruments': ['instruments'],\n //#endregion\n\n // https://github.com/WebKit/WebKit/blob/main/Source/JavaScriptCore/inspector/protocol/Worker.json\n //#region WORKER DOMAIN\n 'Worker.enable': [],\n 'Worker.disable': [],\n 'Worker.initialized': ['workerId'],\n 'Worker.sendMessageToWorker': ['workerId', 'message']\n //#endregion\n};\n\nfunction getCommand (id, method, params = {}) {\n return {\n id,\n method,\n params: Object.assign({\n objectGroup: OBJECT_GROUP,\n includeCommandLineAPI: true,\n doNotPauseOnExceptionsAndMuteConsole: false,\n emulateUserGesture: false,\n generatePreview: false,\n saveResult: false,\n }, params),\n };\n}\n\nfunction getProtocolCommand (id, method, opts = {}) {\n const paramNames = COMMANDS[method];\n if (!paramNames) {\n throw new Error(`Unknown command: '${method}'`);\n }\n\n const params = paramNames.reduce(function (params, name) {\n params[name] = opts[name];\n return params;\n }, {});\n return getCommand(id, method, params);\n}\n\nexport { getProtocolCommand };\nexport default getProtocolCommand;\n"],"mappings":"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"}
|
|
@@ -32,4 +32,4 @@ class RemoteDebuggerRealDevice extends _remoteDebugger.default {
|
|
|
32
32
|
}
|
|
33
33
|
}
|
|
34
34
|
exports.default = RemoteDebuggerRealDevice;
|
|
35
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
35
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVtb3RlRGVidWdnZXIiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9ycGMiLCJSZW1vdGVEZWJ1Z2dlclJlYWxEZXZpY2UiLCJSZW1vdGVEZWJ1Z2dlciIsImNvbnN0cnVjdG9yIiwib3B0cyIsInVkaWQiLCJfc2tpcHBlZEFwcHMiLCJpbml0UnBjQ2xpZW50IiwicnBjQ2xpZW50IiwiUnBjQ2xpZW50UmVhbERldmljZSIsImJ1bmRsZUlkIiwicGxhdGZvcm1WZXJzaW9uIiwiaXNTYWZhcmkiLCJob3N0IiwicG9ydCIsInNvY2tldFBhdGgiLCJtZXNzYWdlUHJveHkiLCJyZW1vdGVEZWJ1Z1Byb3h5IiwibG9nQWxsQ29tbXVuaWNhdGlvbiIsImxvZ0FsbENvbW11bmljYXRpb25IZXhEdW1wIiwic29ja2V0Q2h1bmtTaXplIiwid2ViSW5zcGVjdG9yTWF4RnJhbWVMZW5ndGgiLCJleHBvcnRzIiwiZGVmYXVsdCJdLCJzb3VyY2VzIjpbIi4uLy4uL2xpYi9yZW1vdGUtZGVidWdnZXItcmVhbC1kZXZpY2UuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlbW90ZURlYnVnZ2VyIGZyb20gJy4vcmVtb3RlLWRlYnVnZ2VyJztcbmltcG9ydCB7IFJwY0NsaWVudFJlYWxEZXZpY2UgfSBmcm9tICcuL3JwYyc7XG5cblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgUmVtb3RlRGVidWdnZXJSZWFsRGV2aWNlIGV4dGVuZHMgUmVtb3RlRGVidWdnZXIge1xuICBjb25zdHJ1Y3RvciAob3B0cyA9IHt9KSB7XG4gICAgc3VwZXIob3B0cyk7XG5cbiAgICB0aGlzLnVkaWQgPSBvcHRzLnVkaWQ7XG5cbiAgICB0aGlzLl9za2lwcGVkQXBwcyA9IFsnbG9ja2Rvd25kJ107XG4gIH1cblxuICBpbml0UnBjQ2xpZW50ICgpIHtcbiAgICB0aGlzLnJwY0NsaWVudCA9IG5ldyBScGNDbGllbnRSZWFsRGV2aWNlKHtcbiAgICAgIGJ1bmRsZUlkOiB0aGlzLmJ1bmRsZUlkLFxuICAgICAgcGxhdGZvcm1WZXJzaW9uOiB0aGlzLnBsYXRmb3JtVmVyc2lvbixcbiAgICAgIGlzU2FmYXJpOiB0aGlzLmlzU2FmYXJpLFxuICAgICAgaG9zdDogdGhpcy5ob3N0LFxuICAgICAgcG9ydDogdGhpcy5wb3J0LFxuICAgICAgc29ja2V0UGF0aDogdGhpcy5zb2NrZXRQYXRoLFxuICAgICAgbWVzc2FnZVByb3h5OiB0aGlzLnJlbW90ZURlYnVnUHJveHksXG4gICAgICBsb2dBbGxDb21tdW5pY2F0aW9uOiB0aGlzLmxvZ0FsbENvbW11bmljYXRpb24sXG4gICAgICBsb2dBbGxDb21tdW5pY2F0aW9uSGV4RHVtcDogdGhpcy5sb2dBbGxDb21tdW5pY2F0aW9uSGV4RHVtcCxcbiAgICAgIHNvY2tldENodW5rU2l6ZTogdGhpcy5zb2NrZXRDaHVua1NpemUsXG4gICAgICB3ZWJJbnNwZWN0b3JNYXhGcmFtZUxlbmd0aDogdGhpcy53ZWJJbnNwZWN0b3JNYXhGcmFtZUxlbmd0aCxcbiAgICAgIHVkaWQ6IHRoaXMudWRpZFxuICAgIH0pO1xuICB9XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQUEsSUFBQUEsZUFBQSxHQUFBQyxzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUMsSUFBQSxHQUFBRCxPQUFBO0FBR2UsTUFBTUUsd0JBQXdCLFNBQVNDLHVCQUFjLENBQUM7RUFDbkVDLFdBQVdBLENBQUVDLElBQUksR0FBRyxDQUFDLENBQUMsRUFBRTtJQUN0QixLQUFLLENBQUNBLElBQUksQ0FBQztJQUVYLElBQUksQ0FBQ0MsSUFBSSxHQUFHRCxJQUFJLENBQUNDLElBQUk7SUFFckIsSUFBSSxDQUFDQyxZQUFZLEdBQUcsQ0FBQyxXQUFXLENBQUM7RUFDbkM7RUFFQUMsYUFBYUEsQ0FBQSxFQUFJO0lBQ2YsSUFBSSxDQUFDQyxTQUFTLEdBQUcsSUFBSUMsd0JBQW1CLENBQUM7TUFDdkNDLFFBQVEsRUFBRSxJQUFJLENBQUNBLFFBQVE7TUFDdkJDLGVBQWUsRUFBRSxJQUFJLENBQUNBLGVBQWU7TUFDckNDLFFBQVEsRUFBRSxJQUFJLENBQUNBLFFBQVE7TUFDdkJDLElBQUksRUFBRSxJQUFJLENBQUNBLElBQUk7TUFDZkMsSUFBSSxFQUFFLElBQUksQ0FBQ0EsSUFBSTtNQUNmQyxVQUFVLEVBQUUsSUFBSSxDQUFDQSxVQUFVO01BQzNCQyxZQUFZLEVBQUUsSUFBSSxDQUFDQyxnQkFBZ0I7TUFDbkNDLG1CQUFtQixFQUFFLElBQUksQ0FBQ0EsbUJBQW1CO01BQzdDQywwQkFBMEIsRUFBRSxJQUFJLENBQUNBLDBCQUEwQjtNQUMzREMsZUFBZSxFQUFFLElBQUksQ0FBQ0EsZUFBZTtNQUNyQ0MsMEJBQTBCLEVBQUUsSUFBSSxDQUFDQSwwQkFBMEI7TUFDM0RoQixJQUFJLEVBQUUsSUFBSSxDQUFDQTtJQUNiLENBQUMsQ0FBQztFQUNKO0FBQ0Y7QUFBQ2lCLE9BQUEsQ0FBQUMsT0FBQSxHQUFBdEIsd0JBQUEifQ==
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"remote-debugger-real-device.js","names":["RemoteDebuggerRealDevice","RemoteDebugger","constructor","opts","udid","_skippedApps","initRpcClient","rpcClient","RpcClientRealDevice","bundleId","platformVersion","isSafari","host","port","socketPath","messageProxy","remoteDebugProxy","logAllCommunication","logAllCommunicationHexDump","socketChunkSize","webInspectorMaxFrameLength"],"sources":["../../lib/remote-debugger-real-device.js"],"sourcesContent":["import RemoteDebugger from './remote-debugger';\nimport { RpcClientRealDevice } from './rpc';\n\n\nexport default class RemoteDebuggerRealDevice extends RemoteDebugger {\n constructor (opts = {}) {\n super(opts);\n\n this.udid = opts.udid;\n\n this._skippedApps = ['lockdownd'];\n }\n\n initRpcClient () {\n this.rpcClient = new RpcClientRealDevice({\n bundleId: this.bundleId,\n platformVersion: this.platformVersion,\n isSafari: this.isSafari,\n host: this.host,\n port: this.port,\n socketPath: this.socketPath,\n messageProxy: this.remoteDebugProxy,\n logAllCommunication: this.logAllCommunication,\n logAllCommunicationHexDump: this.logAllCommunicationHexDump,\n socketChunkSize: this.socketChunkSize,\n webInspectorMaxFrameLength: this.webInspectorMaxFrameLength,\n udid: this.udid\n });\n }\n}\n"],"mappings":";;;;;;;;AAAA;AACA;AAGe,
|
|
1
|
+
{"version":3,"file":"remote-debugger-real-device.js","names":["_remoteDebugger","_interopRequireDefault","require","_rpc","RemoteDebuggerRealDevice","RemoteDebugger","constructor","opts","udid","_skippedApps","initRpcClient","rpcClient","RpcClientRealDevice","bundleId","platformVersion","isSafari","host","port","socketPath","messageProxy","remoteDebugProxy","logAllCommunication","logAllCommunicationHexDump","socketChunkSize","webInspectorMaxFrameLength","exports","default"],"sources":["../../lib/remote-debugger-real-device.js"],"sourcesContent":["import RemoteDebugger from './remote-debugger';\nimport { RpcClientRealDevice } from './rpc';\n\n\nexport default class RemoteDebuggerRealDevice extends RemoteDebugger {\n constructor (opts = {}) {\n super(opts);\n\n this.udid = opts.udid;\n\n this._skippedApps = ['lockdownd'];\n }\n\n initRpcClient () {\n this.rpcClient = new RpcClientRealDevice({\n bundleId: this.bundleId,\n platformVersion: this.platformVersion,\n isSafari: this.isSafari,\n host: this.host,\n port: this.port,\n socketPath: this.socketPath,\n messageProxy: this.remoteDebugProxy,\n logAllCommunication: this.logAllCommunication,\n logAllCommunicationHexDump: this.logAllCommunicationHexDump,\n socketChunkSize: this.socketChunkSize,\n webInspectorMaxFrameLength: this.webInspectorMaxFrameLength,\n udid: this.udid\n });\n }\n}\n"],"mappings":";;;;;;;;AAAA,IAAAA,eAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,IAAA,GAAAD,OAAA;AAGe,MAAME,wBAAwB,SAASC,uBAAc,CAAC;EACnEC,WAAWA,CAAEC,IAAI,GAAG,CAAC,CAAC,EAAE;IACtB,KAAK,CAACA,IAAI,CAAC;IAEX,IAAI,CAACC,IAAI,GAAGD,IAAI,CAACC,IAAI;IAErB,IAAI,CAACC,YAAY,GAAG,CAAC,WAAW,CAAC;EACnC;EAEAC,aAAaA,CAAA,EAAI;IACf,IAAI,CAACC,SAAS,GAAG,IAAIC,wBAAmB,CAAC;MACvCC,QAAQ,EAAE,IAAI,CAACA,QAAQ;MACvBC,eAAe,EAAE,IAAI,CAACA,eAAe;MACrCC,QAAQ,EAAE,IAAI,CAACA,QAAQ;MACvBC,IAAI,EAAE,IAAI,CAACA,IAAI;MACfC,IAAI,EAAE,IAAI,CAACA,IAAI;MACfC,UAAU,EAAE,IAAI,CAACA,UAAU;MAC3BC,YAAY,EAAE,IAAI,CAACC,gBAAgB;MACnCC,mBAAmB,EAAE,IAAI,CAACA,mBAAmB;MAC7CC,0BAA0B,EAAE,IAAI,CAACA,0BAA0B;MAC3DC,eAAe,EAAE,IAAI,CAACA,eAAe;MACrCC,0BAA0B,EAAE,IAAI,CAACA,0BAA0B;MAC3DhB,IAAI,EAAE,IAAI,CAACA;IACb,CAAC,CAAC;EACJ;AACF;AAACiB,OAAA,CAAAC,OAAA,GAAAtB,wBAAA"}
|
|
@@ -163,12 +163,27 @@ class RemoteDebugger extends _events.EventEmitter {
|
|
|
163
163
|
get allowNavigationWithoutReload() {
|
|
164
164
|
return this._allowNavigationWithoutReload;
|
|
165
165
|
}
|
|
166
|
-
async
|
|
166
|
+
async overrideUserAgent(value) {
|
|
167
|
+
_logger.default.debug('Setting overrideUserAgent');
|
|
168
|
+
return await this.rpcClient.send('Page.overrideUserAgent', {
|
|
169
|
+
appIdKey: this.appIdKey,
|
|
170
|
+
pageIdKey: this.pageIdKey,
|
|
171
|
+
value
|
|
172
|
+
});
|
|
173
|
+
}
|
|
174
|
+
async getCookies() {
|
|
167
175
|
_logger.default.debug('Getting cookies');
|
|
168
176
|
return await this.rpcClient.send('Page.getCookies', {
|
|
177
|
+
appIdKey: this.appIdKey,
|
|
178
|
+
pageIdKey: this.pageIdKey
|
|
179
|
+
});
|
|
180
|
+
}
|
|
181
|
+
async setCookie(cookie) {
|
|
182
|
+
_logger.default.debug('Setting cookie');
|
|
183
|
+
return await this.rpcClient.send('Page.setCookie', {
|
|
169
184
|
appIdKey: this.appIdKey,
|
|
170
185
|
pageIdKey: this.pageIdKey,
|
|
171
|
-
|
|
186
|
+
cookie
|
|
172
187
|
});
|
|
173
188
|
}
|
|
174
189
|
async deleteCookie(cookieName, url) {
|
|
@@ -220,4 +235,4 @@ for (const [name, event] of _lodash.default.toPairs(_mixins.events)) {
|
|
|
220
235
|
}
|
|
221
236
|
var _default = RemoteDebugger;
|
|
222
237
|
exports.default = _default;
|
|
223
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJSRU1PVEVfREVCVUdHRVJfUE9SVCIsIlNBRkFSSV9CVU5ETEVfSUQiLCJSUENfUkVTUE9OU0VfVElNRU9VVF9NUyIsIlBBR0VfUkVBRFlfVElNRU9VVCIsIkdBUkJBR0VfQ09MTEVDVF9USU1FT1VUIiwiUmVtb3RlRGVidWdnZXIiLCJFdmVudEVtaXR0ZXIiLCJjb25zdHJ1Y3RvciIsIm9wdHMiLCJsb2ciLCJpbmZvIiwicmVxdWlyZSIsInBhdGgiLCJyZXNvbHZlIiwiZ2V0TW9kdWxlUm9vdCIsInZlcnNpb24iLCJidW5kbGVJZCIsImFkZGl0aW9uYWxCdW5kbGVJZHMiLCJwbGF0Zm9ybVZlcnNpb24iLCJpc1NhZmFyaSIsImluY2x1ZGVTYWZhcmkiLCJ1c2VOZXdTYWZhcmkiLCJwYWdlTG9hZE1zIiwiaG9zdCIsInBvcnQiLCJzb2NrZXRQYXRoIiwicGFnZVJlYWR5VGltZW91dCIsInJlbW90ZURlYnVnUHJveHkiLCJnYXJiYWdlQ29sbGVjdE9uRXhlY3V0ZSIsImxvZ0Z1bGxSZXNwb25zZSIsImxvZ0FsbENvbW11bmljYXRpb24iLCJsb2dBbGxDb21tdW5pY2F0aW9uSGV4RHVtcCIsIndlYkluc3BlY3Rvck1heEZyYW1lTGVuZ3RoIiwic29ja2V0Q2h1bmtTaXplIiwiZnVsbFBhZ2VJbml0aWFsaXphdGlvbiIsImRlYnVnIiwiXyIsImlzTmlsIiwiaXNJbnRlZ2VyIiwiX2xvY2siLCJBc3luY0xvY2siLCJzZXR1cCIsImFwcERpY3QiLCJhcHBJZEtleSIsInBhZ2VJZEtleSIsInBhZ2VMb2FkaW5nIiwiX25hdmlnYXRpbmdUb1BhZ2UiLCJhbGxvd05hdmlnYXRpb25XaXRob3V0UmVsb2FkIiwicnBjQ2xpZW50IiwiX2NsaWVudEV2ZW50TGlzdGVuZXJzIiwidGVhcmRvd24iLCJyZW1vdmVBbGxMaXN0ZW5lcnMiLCJFVkVOVF9QQUdFX0NIQU5HRSIsIkVWRU5UX0RJU0NPTk5FQ1QiLCJpbml0UnBjQ2xpZW50IiwiUnBjQ2xpZW50U2ltdWxhdG9yIiwibWVzc2FnZVByb3h5IiwiaXNDb25uZWN0ZWQiLCJsYXVuY2hTYWZhcmkiLCJzZW5kIiwic3RhcnRUaW1lbGluZSIsImZuIiwib24iLCJzdG9wVGltZWxpbmUiLCJhZGRDbGllbnRFdmVudExpc3RlbmVyIiwiZXZlbnROYW1lIiwibGlzdGVuZXIiLCJwdXNoIiwicmVtb3ZlQ2xpZW50RXZlbnRMaXN0ZW5lciIsIm9mZiIsInN0YXJ0Q29uc29sZSIsInN0b3BDb25zb2xlIiwic3RhcnROZXR3b3JrIiwic3RvcE5ldHdvcmsiLCJhbGxvdyIsIl9hbGxvd05hdmlnYXRpb25XaXRob3V0UmVsb2FkIiwiZ2V0Q29va2llcyIsInVybHMiLCJkZWxldGVDb29raWUiLCJjb29raWVOYW1lIiwidXJsIiwiZ2FyYmFnZUNvbGxlY3QiLCJ0aW1lb3V0TXMiLCJjaGVja1BhcmFtcyIsImVyciIsIkIiLCJ0aW1lb3V0IiwidGhlbiIsImdjU3VjY2VzcyIsImNhdGNoIiwiZ2NFcnJvciIsIlRpbWVvdXRFcnJvciIsIm1lc3NhZ2UiLCJ1c2VBcHBEaWN0TG9jayIsImFjcXVpcmUiLCJza2lwcGVkQXBwcyIsIl9za2lwcGVkQXBwcyIsIm5hbWUiLCJ0b1BhaXJzIiwibWl4aW5zIiwicHJvdG90eXBlIiwiZXZlbnQiLCJldmVudHMiXSwic291cmNlcyI6WyIuLi8uLi9saWIvcmVtb3RlLWRlYnVnZ2VyLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEV2ZW50RW1pdHRlciB9IGZyb20gJ2V2ZW50cyc7XG5pbXBvcnQgbG9nIGZyb20gJy4vbG9nZ2VyJztcbmltcG9ydCB7IFJwY0NsaWVudFNpbXVsYXRvciB9IGZyb20gJy4vcnBjJztcbmltcG9ydCB7IGNoZWNrUGFyYW1zLCBnZXRNb2R1bGVSb290IH0gZnJvbSAnLi91dGlscyc7XG5pbXBvcnQgeyBtaXhpbnMsIGV2ZW50cyB9IGZyb20gJy4vbWl4aW5zJztcbmltcG9ydCBfIGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQgQiBmcm9tICdibHVlYmlyZCc7XG5pbXBvcnQgcGF0aCBmcm9tICdwYXRoJztcbmltcG9ydCBBc3luY0xvY2sgZnJvbSAnYXN5bmMtbG9jayc7XG5cbmNvbnN0IFJFTU9URV9ERUJVR0dFUl9QT1JUID0gMjc3NTM7XG5jb25zdCBTQUZBUklfQlVORExFX0lEID0gJ2NvbS5hcHBsZS5tb2JpbGVzYWZhcmknO1xuXG4vKiBIb3cgbWFueSBtaWxsaXNlY29uZHMgdG8gd2FpdCBmb3Igd2Via2l0IHRvIHJldHVybiBhIHJlc3BvbnNlIGJlZm9yZSB0aW1pbmcgb3V0ICovXG5jb25zdCBSUENfUkVTUE9OU0VfVElNRU9VVF9NUyA9IDUwMDA7XG5cbmNvbnN0IFBBR0VfUkVBRFlfVElNRU9VVCA9IDUwMDA7XG5cbmNvbnN0IEdBUkJBR0VfQ09MTEVDVF9USU1FT1VUID0gNTAwMDtcblxuXG5jbGFzcyBSZW1vdGVEZWJ1Z2dlciBleHRlbmRzIEV2ZW50RW1pdHRlciB7XG4gIC8qXG4gICAqIFRoZSBjb25zdHJ1Y3RvciB0YWtlcyBhbiBvcHRzIGhhc2ggd2l0aCB0aGUgZm9sbG93aW5nIHByb3BlcnRpZXM6XG4gICAqICAgLSBidW5kbGVJZCAtIGlkIG9mIHRoZSBhcHAgYmVpbmcgY29ubmVjdGVkIHRvXG4gICAqICAgLSBhZGRpdGlvbmFsQnVuZGxlSWRzIC0gYXJyYXkgb2YgcG9zc2libGUgYnVuZGxlIGlkcyB0aGF0IHRoZSBpbnNwZWN0b3JcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICBjb3VsZCByZXR1cm5cbiAgICogICAtIHBsYXRmb3JtVmVyc2lvbiAtIHZlcnNpb24gb2YgaU9TXG4gICAqICAgLSB1c2VOZXdTYWZhcmkgLSBmb3Igd2ViIGluc3BlY3Rvciwgd2hldGhlciB0aGlzIGlzIGEgbmV3IFNhZmFyaSBpbnN0YW5jZVxuICAgKiAgIC0gcGFnZUxvYWRNcyAtIHRoZSB0aW1lLCBpbiBtcywgdGhhdCBzaG91bGQgYmUgd2FpdGVkIGZvciBwYWdlIGxvYWRpbmdcbiAgICogICAtIGhvc3QgLSB0aGUgcmVtb3RlIGRlYnVnZ2VyJ3MgaG9zdCBhZGRyZXNzXG4gICAqICAgLSBwb3J0IC0gdGhlIHJlbW90ZSBkZWJ1Z2dlciBwb3J0IHRocm91Z2ggd2hpY2ggdG8gY29tbXVuaWNhdGVcbiAgICogICAtIGxvZ0FsbENvbW11bmljYXRpb24gLSBsb2cgcGxpc3RzIHNlbnQgYW5kIHJlY2VpdmVkIGZyb20gV2ViIEluc3BlY3RvclxuICAgKiAgIC0gbG9nQWxsQ29tbXVuaWNhdGlvbkhleER1bXAgLSBsb2cgY29tbXVuaWNhdGlvbiBmcm9tIFdlYiBJbnNwZWN0b3IgYXMgaGV4IGR1bXBcbiAgICogICAtIHNvY2tldENodW5rU2l6ZSAtIHNpemUsIGluIGJ5dGVzLCBvZiBjaHVua3Mgb2YgZGF0YSBzZW50IHRvIFdlYiBJbnNwZWN0b3IgKHJlYWwgZGV2aWNlIG9ubHkpXG4gICAqICAgLSB3ZWJJbnNwZWN0b3JNYXhGcmFtZUxlbmd0aCAtIFRoZSBtYXhpbXVtIHNpemUgaW4gYnl0ZXMgb2YgYSBzaW5nbGUgZGF0YSBmcmFtZVxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbiB0aGUgZGV2aWNlIGNvbW11bmljYXRpb24gcHJvdG9jb2xcbiAgICovXG4gIGNvbnN0cnVjdG9yIChvcHRzID0ge30pIHtcbiAgICBzdXBlcigpO1xuXG4gICAgbG9nLmluZm8oYFJlbW90ZSBEZWJ1Z2dlciB2ZXJzaW9uICR7cmVxdWlyZShwYXRoLnJlc29sdmUoZ2V0TW9kdWxlUm9vdCgpLCAncGFja2FnZS5qc29uJykpLnZlcnNpb259YCk7XG5cbiAgICBjb25zdCB7XG4gICAgICBidW5kbGVJZCxcbiAgICAgIGFkZGl0aW9uYWxCdW5kbGVJZHMgPSBbXSxcbiAgICAgIHBsYXRmb3JtVmVyc2lvbixcbiAgICAgIGlzU2FmYXJpID0gdHJ1ZSxcbiAgICAgIGluY2x1ZGVTYWZhcmkgPSBmYWxzZSxcbiAgICAgIHVzZU5ld1NhZmFyaSA9IGZhbHNlLFxuICAgICAgcGFnZUxvYWRNcyxcbiAgICAgIGhvc3QsXG4gICAgICBwb3J0ID0gUkVNT1RFX0RFQlVHR0VSX1BPUlQsXG4gICAgICBzb2NrZXRQYXRoLFxuICAgICAgcGFnZVJlYWR5VGltZW91dCA9IFBBR0VfUkVBRFlfVElNRU9VVCxcbiAgICAgIHJlbW90ZURlYnVnUHJveHksXG4gICAgICBnYXJiYWdlQ29sbGVjdE9uRXhlY3V0ZSA9IGZhbHNlLFxuICAgICAgbG9nRnVsbFJlc3BvbnNlID0gZmFsc2UsXG4gICAgICBsb2dBbGxDb21tdW5pY2F0aW9uID0gZmFsc2UsXG4gICAgICBsb2dBbGxDb21tdW5pY2F0aW9uSGV4RHVtcCA9IGZhbHNlLFxuICAgICAgd2ViSW5zcGVjdG9yTWF4RnJhbWVMZW5ndGgsXG4gICAgICBzb2NrZXRDaHVua1NpemUsXG4gICAgICBmdWxsUGFnZUluaXRpYWxpemF0aW9uLFxuICAgIH0gPSBvcHRzO1xuXG4gICAgdGhpcy5idW5kbGVJZCA9IGJ1bmRsZUlkO1xuICAgIHRoaXMuYWRkaXRpb25hbEJ1bmRsZUlkcyA9IGFkZGl0aW9uYWxCdW5kbGVJZHM7XG4gICAgdGhpcy5wbGF0Zm9ybVZlcnNpb24gPSBwbGF0Zm9ybVZlcnNpb247XG4gICAgdGhpcy5pc1NhZmFyaSA9IGlzU2FmYXJpO1xuICAgIHRoaXMuaW5jbHVkZVNhZmFyaSA9IGluY2x1ZGVTYWZhcmk7XG4gICAgdGhpcy51c2VOZXdTYWZhcmkgPSB1c2VOZXdTYWZhcmk7XG4gICAgdGhpcy5wYWdlTG9hZE1zID0gcGFnZUxvYWRNcztcbiAgICBsb2cuZGVidWcoYHVzZU5ld1NhZmFyaSAtLT4gJHt0aGlzLnVzZU5ld1NhZmFyaX1gKTtcblxuICAgIHRoaXMuZ2FyYmFnZUNvbGxlY3RPbkV4ZWN1dGUgPSBnYXJiYWdlQ29sbGVjdE9uRXhlY3V0ZTtcblxuICAgIHRoaXMuaG9zdCA9IGhvc3Q7XG4gICAgdGhpcy5wb3J0ID0gcG9ydDtcbiAgICB0aGlzLnNvY2tldFBhdGggPSBzb2NrZXRQYXRoO1xuICAgIHRoaXMucmVtb3RlRGVidWdQcm94eSA9IHJlbW90ZURlYnVnUHJveHk7XG4gICAgdGhpcy5wYWdlUmVhZHlUaW1lb3V0ID0gcGFnZVJlYWR5VGltZW91dDtcblxuICAgIHRoaXMubG9nQWxsQ29tbXVuaWNhdGlvbiA9IF8uaXNOaWwobG9nQWxsQ29tbXVuaWNhdGlvbikgPyAhIWxvZ0Z1bGxSZXNwb25zZSA6ICEhbG9nQWxsQ29tbXVuaWNhdGlvbjtcbiAgICB0aGlzLmxvZ0FsbENvbW11bmljYXRpb25IZXhEdW1wID0gbG9nQWxsQ29tbXVuaWNhdGlvbkhleER1bXA7XG4gICAgdGhpcy5zb2NrZXRDaHVua1NpemUgPSBzb2NrZXRDaHVua1NpemU7XG5cbiAgICBpZiAoXy5pc0ludGVnZXIod2ViSW5zcGVjdG9yTWF4RnJhbWVMZW5ndGgpKSB7XG4gICAgICB0aGlzLndlYkluc3BlY3Rvck1heEZyYW1lTGVuZ3RoID0gd2ViSW5zcGVjdG9yTWF4RnJhbWVMZW5ndGg7XG4gICAgfVxuXG4gICAgdGhpcy5mdWxsUGFnZUluaXRpYWxpemF0aW9uID0gZnVsbFBhZ2VJbml0aWFsaXphdGlvbjtcblxuICAgIHRoaXMuX2xvY2sgPSBuZXcgQXN5bmNMb2NrKCk7XG4gIH1cblxuICBzZXR1cCAoKSB7XG4gICAgLy8gYXBwIGhhbmRsaW5nIGNvbmZpZ3VyYXRpb25cbiAgICB0aGlzLmFwcERpY3QgPSB7fTtcbiAgICB0aGlzLmFwcElkS2V5ID0gbnVsbDtcbiAgICB0aGlzLnBhZ2VJZEtleSA9IG51bGw7XG4gICAgdGhpcy5wYWdlTG9hZGluZyA9IGZhbHNlO1xuICAgIHRoaXMuX25hdmlnYXRpbmdUb1BhZ2UgPSBmYWxzZTtcbiAgICB0aGlzLmFsbG93TmF2aWdhdGlvbldpdGhvdXRSZWxvYWQgPSBmYWxzZTtcblxuICAgIHRoaXMucnBjQ2xpZW50ID0gbnVsbDtcbiAgICB0aGlzLl9jbGllbnRFdmVudExpc3RlbmVycyA9IHt9O1xuICB9XG5cbiAgdGVhcmRvd24gKCkge1xuICAgIGxvZy5kZWJ1ZygnQ2xlYW5pbmcgdXAgbGlzdGVuZXJzJyk7XG5cbiAgICB0aGlzLmFwcERpY3QgPSB7fTtcbiAgICB0aGlzLmFwcElkS2V5ID0gbnVsbDtcbiAgICB0aGlzLnBhZ2VJZEtleSA9IG51bGw7XG4gICAgdGhpcy5wYWdlTG9hZGluZyA9IGZhbHNlO1xuXG4gICAgdGhpcy5ycGNDbGllbnQgPSBudWxsO1xuXG4gICAgdGhpcy5yZW1vdmVBbGxMaXN0ZW5lcnMoUmVtb3RlRGVidWdnZXIuRVZFTlRfUEFHRV9DSEFOR0UpO1xuICAgIHRoaXMucmVtb3ZlQWxsTGlzdGVuZXJzKFJlbW90ZURlYnVnZ2VyLkVWRU5UX0RJU0NPTk5FQ1QpO1xuICB9XG5cbiAgaW5pdFJwY0NsaWVudCAoKSB7XG4gICAgdGhpcy5ycGNDbGllbnQgPSBuZXcgUnBjQ2xpZW50U2ltdWxhdG9yKHtcbiAgICAgIGJ1bmRsZUlkOiB0aGlzLmJ1bmRsZUlkLFxuICAgICAgcGxhdGZvcm1WZXJzaW9uOiB0aGlzLnBsYXRmb3JtVmVyc2lvbixcbiAgICAgIGlzU2FmYXJpOiB0aGlzLmlzU2FmYXJpLFxuICAgICAgaG9zdDogdGhpcy5ob3N0LFxuICAgICAgcG9ydDogdGhpcy5wb3J0LFxuICAgICAgc29ja2V0UGF0aDogdGhpcy5zb2NrZXRQYXRoLFxuICAgICAgbWVzc2FnZVByb3h5OiB0aGlzLnJlbW90ZURlYnVnUHJveHksXG4gICAgICBsb2dBbGxDb21tdW5pY2F0aW9uOiB0aGlzLmxvZ0FsbENvbW11bmljYXRpb24sXG4gICAgICBsb2dBbGxDb21tdW5pY2F0aW9uSGV4RHVtcDogdGhpcy5sb2dBbGxDb21tdW5pY2F0aW9uSGV4RHVtcCxcbiAgICAgIGZ1bGxQYWdlSW5pdGlhbGl6YXRpb246IHRoaXMuZnVsbFBhZ2VJbml0aWFsaXphdGlvbixcbiAgICAgIHdlYkluc3BlY3Rvck1heEZyYW1lTGVuZ3RoOiB0aGlzLndlYkluc3BlY3Rvck1heEZyYW1lTGVuZ3RoLFxuICAgIH0pO1xuICB9XG5cbiAgZ2V0IGlzQ29ubmVjdGVkICgpIHtcbiAgICByZXR1cm4gISF0aGlzLnJwY0NsaWVudD8uaXNDb25uZWN0ZWQ7XG4gIH1cblxuICBhc3luYyBsYXVuY2hTYWZhcmkgKCkge1xuICAgIGF3YWl0IHRoaXMucnBjQ2xpZW50LnNlbmQoJ2xhdW5jaEFwcGxpY2F0aW9uJywge1xuICAgICAgYnVuZGxlSWQ6IFNBRkFSSV9CVU5ETEVfSURcbiAgICB9KTtcbiAgfVxuXG4gIGFzeW5jIHN0YXJ0VGltZWxpbmUgKGZuKSB7XG4gICAgbG9nLmRlYnVnKCdTdGFydGluZyB0byByZWNvcmQgdGhlIHRpbWVsaW5lJyk7XG4gICAgdGhpcy5ycGNDbGllbnQub24oJ1RpbWVsaW5lLmV2ZW50UmVjb3JkZWQnLCBmbik7XG4gICAgcmV0dXJuIGF3YWl0IHRoaXMucnBjQ2xpZW50LnNlbmQoJ3N0YXJ0VGltZWxpbmUnLCB7XG4gICAgICBhcHBJZEtleTogdGhpcy5hcHBJZEtleSxcbiAgICAgIHBhZ2VJZEtleTogdGhpcy5wYWdlSWRLZXksXG4gICAgfSk7XG4gIH1cblxuICBhc3luYyBzdG9wVGltZWxpbmUgKCkge1xuICAgIGxvZy5kZWJ1ZygnU3RvcHBpbmcgdG8gcmVjb3JkIHRoZSB0aW1lbGluZScpO1xuICAgIGF3YWl0IHRoaXMucnBjQ2xpZW50LnNlbmQoJ1RpbWVsaW5lLnN0b3AnLCB7XG4gICAgICBhcHBJZEtleTogdGhpcy5hcHBJZEtleSxcbiAgICAgIHBhZ2VJZEtleTogdGhpcy5wYWdlSWRLZXksXG4gICAgfSk7XG4gIH1cblxuICAvKlxuICAgKiBLZWVwIHRyYWNrIG9mIHRoZSBjbGllbnQgZXZlbnQgbGlzdGVuZXJzIHNvIHRoZXkgY2FuIGJlIHJlbW92ZWRcbiAgICovXG4gIGFkZENsaWVudEV2ZW50TGlzdGVuZXIgKGV2ZW50TmFtZSwgbGlzdGVuZXIpIHtcbiAgICB0aGlzLl9jbGllbnRFdmVudExpc3RlbmVyc1tldmVudE5hbWVdID0gdGhpcy5fY2xpZW50RXZlbnRMaXN0ZW5lcnNbZXZlbnROYW1lXSB8fCBbXTtcbiAgICB0aGlzLl9jbGllbnRFdmVudExpc3RlbmVyc1tldmVudE5hbWVdLnB1c2gobGlzdGVuZXIpO1xuICAgIHRoaXMucnBjQ2xpZW50Lm9uKGV2ZW50TmFtZSwgbGlzdGVuZXIpO1xuICB9XG5cbiAgcmVtb3ZlQ2xpZW50RXZlbnRMaXN0ZW5lciAoZXZlbnROYW1lKSB7XG4gICAgZm9yIChjb25zdCBsaXN0ZW5lciBvZiAodGhpcy5fY2xpZW50RXZlbnRMaXN0ZW5lcnNbZXZlbnROYW1lXSB8fCBbXSkpIHtcbiAgICAgIHRoaXMucnBjQ2xpZW50Lm9mZihldmVudE5hbWUsIGxpc3RlbmVyKTtcbiAgICB9XG4gIH1cblxuICBzdGFydENvbnNvbGUgKGxpc3RlbmVyKSB7XG4gICAgbG9nLmRlYnVnKCdTdGFydGluZyB0byBsaXN0ZW4gZm9yIEphdmFTY3JpcHQgY29uc29sZScpO1xuICAgIHRoaXMuYWRkQ2xpZW50RXZlbnRMaXN0ZW5lcignQ29uc29sZS5tZXNzYWdlQWRkZWQnLCBsaXN0ZW5lcik7XG4gICAgdGhpcy5hZGRDbGllbnRFdmVudExpc3RlbmVyKCdDb25zb2xlLm1lc3NhZ2VSZXBlYXRDb3VudFVwZGF0ZWQnLCBsaXN0ZW5lcik7XG4gIH1cblxuICBzdG9wQ29uc29sZSAoKSB7XG4gICAgbG9nLmRlYnVnKCdTdG9wcGluZyB0byBsaXN0ZW4gZm9yIEphdmFTY3JpcHQgY29uc29sZScpO1xuICAgIHRoaXMucmVtb3ZlQ2xpZW50RXZlbnRMaXN0ZW5lcignQ29uc29sZS5tZXNzYWdlQWRkZWQnKTtcbiAgICB0aGlzLnJlbW92ZUNsaWVudEV2ZW50TGlzdGVuZXIoJ0NvbnNvbGUubWVzc2FnZVJlcGVhdENvdW50VXBkYXRlZCcpO1xuICB9XG5cbiAgc3RhcnROZXR3b3JrIChsaXN0ZW5lcikge1xuICAgIGxvZy5kZWJ1ZygnU3RhcnRpbmcgdG8gbGlzdGVuIGZvciBuZXR3b3JrIGV2ZW50cycpO1xuICAgIHRoaXMuYWRkQ2xpZW50RXZlbnRMaXN0ZW5lcignTmV0d29ya0V2ZW50JywgbGlzdGVuZXIpO1xuICB9XG5cbiAgc3RvcE5ldHdvcmsgKCkge1xuICAgIGxvZy5kZWJ1ZygnU3RvcHBpbmcgdG8gbGlzdGVuIGZvciBuZXR3b3JrIGV2ZW50cycpO1xuICAgIHRoaXMucmVtb3ZlQ2xpZW50RXZlbnRMaXN0ZW5lcignTmV0d29ya0V2ZW50Jyk7XG4gIH1cblxuICBzZXQgYWxsb3dOYXZpZ2F0aW9uV2l0aG91dFJlbG9hZCAoYWxsb3cpIHtcbiAgICB0aGlzLl9hbGxvd05hdmlnYXRpb25XaXRob3V0UmVsb2FkID0gYWxsb3c7XG4gIH1cblxuICBnZXQgYWxsb3dOYXZpZ2F0aW9uV2l0aG91dFJlbG9hZCAoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2FsbG93TmF2aWdhdGlvbldpdGhvdXRSZWxvYWQ7XG4gIH1cblxuICBhc3luYyBnZXRDb29raWVzICh1cmxzKSB7XG4gICAgbG9nLmRlYnVnKCdHZXR0aW5nIGNvb2tpZXMnKTtcbiAgICByZXR1cm4gYXdhaXQgdGhpcy5ycGNDbGllbnQuc2VuZCgnUGFnZS5nZXRDb29raWVzJywge1xuICAgICAgYXBwSWRLZXk6IHRoaXMuYXBwSWRLZXksXG4gICAgICBwYWdlSWRLZXk6IHRoaXMucGFnZUlkS2V5LFxuICAgICAgdXJscyxcbiAgICB9KTtcbiAgfVxuXG4gIGFzeW5jIGRlbGV0ZUNvb2tpZSAoY29va2llTmFtZSwgdXJsKSB7XG4gICAgbG9nLmRlYnVnKGBEZWxldGluZyBjb29raWUgJyR7Y29va2llTmFtZX0nIG9uICcke3VybH0nYCk7XG4gICAgcmV0dXJuIGF3YWl0IHRoaXMucnBjQ2xpZW50LnNlbmQoJ1BhZ2UuZGVsZXRlQ29va2llJywge1xuICAgICAgYXBwSWRLZXk6IHRoaXMuYXBwSWRLZXksXG4gICAgICBwYWdlSWRLZXk6IHRoaXMucGFnZUlkS2V5LFxuICAgICAgY29va2llTmFtZSxcbiAgICAgIHVybCxcbiAgICB9KTtcbiAgfVxuXG4gIGFzeW5jIGdhcmJhZ2VDb2xsZWN0ICh0aW1lb3V0TXMgPSBHQVJCQUdFX0NPTExFQ1RfVElNRU9VVCkge1xuICAgIGxvZy5kZWJ1ZyhgR2FyYmFnZSBjb2xsZWN0aW5nIHdpdGggJHt0aW1lb3V0TXN9bXMgdGltZW91dGApO1xuICAgIHRyeSB7XG4gICAgICBjaGVja1BhcmFtcyh7YXBwSWRLZXk6IHRoaXMuYXBwSWRLZXksIHBhZ2VJZEtleTogdGhpcy5wYWdlSWRLZXl9KTtcbiAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgIGxvZy5kZWJ1ZyhgVW5hYmxlIHRvIGNvbGxlY3QgZ2FyYmFnZSBhdCB0aGlzIHRpbWVgKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBhd2FpdCBCLnJlc29sdmUodGhpcy5ycGNDbGllbnQuc2VuZCgnSGVhcC5nYycsIHtcbiAgICAgIGFwcElkS2V5OiB0aGlzLmFwcElkS2V5LFxuICAgICAgcGFnZUlkS2V5OiB0aGlzLnBhZ2VJZEtleSxcbiAgICB9KSkudGltZW91dCh0aW1lb3V0TXMpXG4gICAgLnRoZW4oZnVuY3Rpb24gZ2NTdWNjZXNzICgpIHsgLy8gZXNsaW50LWRpc2FibGUtbGluZSBwcm9taXNlL3ByZWZlci1hd2FpdC10by10aGVuXG4gICAgICBsb2cuZGVidWcoYEdhcmJhZ2UgY29sbGVjdGlvbiBzdWNjZXNzZnVsYCk7XG4gICAgfSkuY2F0Y2goZnVuY3Rpb24gZ2NFcnJvciAoZXJyKSB7IC8vIGVzbGludC1kaXNhYmxlLWxpbmUgcHJvbWlzZS9wcmVmZXItYXdhaXQtdG8tY2FsbGJhY2tzXG4gICAgICBpZiAoZXJyIGluc3RhbmNlb2YgQi5UaW1lb3V0RXJyb3IpIHtcbiAgICAgICAgbG9nLmRlYnVnKGBHYXJiYWdlIGNvbGxlY3Rpb24gdGltZWQgb3V0IGFmdGVyICR7dGltZW91dE1zfW1zYCk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBsb2cuZGVidWcoYFVuYWJsZSB0byBjb2xsZWN0IGdhcmJhZ2U6ICR7ZXJyLm1lc3NhZ2V9YCk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBhc3luYyB1c2VBcHBEaWN0TG9jayAoZm4pIHtcbiAgICByZXR1cm4gYXdhaXQgdGhpcy5fbG9jay5hY3F1aXJlKCdhcHBEaWN0JywgZm4pO1xuICB9XG5cbiAgZ2V0IHNraXBwZWRBcHBzICgpIHtcbiAgICByZXR1cm4gdGhpcy5fc2tpcHBlZEFwcHMgfHwgW107XG4gIH1cbn1cblxuZm9yIChjb25zdCBbbmFtZSwgZm5dIG9mIF8udG9QYWlycyhtaXhpbnMpKSB7XG4gIFJlbW90ZURlYnVnZ2VyLnByb3RvdHlwZVtuYW1lXSA9IGZuO1xufVxuXG5mb3IgKGNvbnN0IFtuYW1lLCBldmVudF0gb2YgXy50b1BhaXJzKGV2ZW50cykpIHtcbiAgUmVtb3RlRGVidWdnZXJbbmFtZV0gPSBldmVudDtcbn1cblxuZXhwb3J0IGRlZmF1bHQgUmVtb3RlRGVidWdnZXI7XG5leHBvcnQge1xuICBSZW1vdGVEZWJ1Z2dlciwgUkVNT1RFX0RFQlVHR0VSX1BPUlQsIFJQQ19SRVNQT05TRV9USU1FT1VUX01TLFxufTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFFQSxNQUFNQSxvQkFBb0IsR0FBRyxLQUFLO0FBQUM7QUFDbkMsTUFBTUMsZ0JBQWdCLEdBQUcsd0JBQXdCO0FBR2pELE1BQU1DLHVCQUF1QixHQUFHLElBQUk7QUFBQztBQUVyQyxNQUFNQyxrQkFBa0IsR0FBRyxJQUFJO0FBRS9CLE1BQU1DLHVCQUF1QixHQUFHLElBQUk7QUFHcEMsTUFBTUMsY0FBYyxTQUFTQyxvQkFBWSxDQUFDO0VBaUJ4Q0MsV0FBVyxDQUFFQyxJQUFJLEdBQUcsQ0FBQyxDQUFDLEVBQUU7SUFDdEIsS0FBSyxFQUFFO0lBRVBDLGVBQUcsQ0FBQ0MsSUFBSSxDQUFFLDJCQUEwQkMsT0FBTyxDQUFDQyxhQUFJLENBQUNDLE9BQU8sQ0FBQyxJQUFBQyxvQkFBYSxHQUFFLEVBQUUsY0FBYyxDQUFDLENBQUMsQ0FBQ0MsT0FBUSxFQUFDLENBQUM7SUFFckcsTUFBTTtNQUNKQyxRQUFRO01BQ1JDLG1CQUFtQixHQUFHLEVBQUU7TUFDeEJDLGVBQWU7TUFDZkMsUUFBUSxHQUFHLElBQUk7TUFDZkMsYUFBYSxHQUFHLEtB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
|
|
238
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfZXZlbnRzIiwicmVxdWlyZSIsIl9sb2dnZXIiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX3JwYyIsIl91dGlscyIsIl9taXhpbnMiLCJfbG9kYXNoIiwiX2JsdWViaXJkIiwiX3BhdGgiLCJfYXN5bmNMb2NrIiwiUkVNT1RFX0RFQlVHR0VSX1BPUlQiLCJleHBvcnRzIiwiU0FGQVJJX0JVTkRMRV9JRCIsIlJQQ19SRVNQT05TRV9USU1FT1VUX01TIiwiUEFHRV9SRUFEWV9USU1FT1VUIiwiR0FSQkFHRV9DT0xMRUNUX1RJTUVPVVQiLCJSZW1vdGVEZWJ1Z2dlciIsIkV2ZW50RW1pdHRlciIsImNvbnN0cnVjdG9yIiwib3B0cyIsImxvZyIsImluZm8iLCJwYXRoIiwicmVzb2x2ZSIsImdldE1vZHVsZVJvb3QiLCJ2ZXJzaW9uIiwiYnVuZGxlSWQiLCJhZGRpdGlvbmFsQnVuZGxlSWRzIiwicGxhdGZvcm1WZXJzaW9uIiwiaXNTYWZhcmkiLCJpbmNsdWRlU2FmYXJpIiwidXNlTmV3U2FmYXJpIiwicGFnZUxvYWRNcyIsImhvc3QiLCJwb3J0Iiwic29ja2V0UGF0aCIsInBhZ2VSZWFkeVRpbWVvdXQiLCJyZW1vdGVEZWJ1Z1Byb3h5IiwiZ2FyYmFnZUNvbGxlY3RPbkV4ZWN1dGUiLCJsb2dGdWxsUmVzcG9uc2UiLCJsb2dBbGxDb21tdW5pY2F0aW9uIiwibG9nQWxsQ29tbXVuaWNhdGlvbkhleER1bXAiLCJ3ZWJJbnNwZWN0b3JNYXhGcmFtZUxlbmd0aCIsInNvY2tldENodW5rU2l6ZSIsImZ1bGxQYWdlSW5pdGlhbGl6YXRpb24iLCJkZWJ1ZyIsIl8iLCJpc05pbCIsImlzSW50ZWdlciIsIl9sb2NrIiwiQXN5bmNMb2NrIiwic2V0dXAiLCJhcHBEaWN0IiwiYXBwSWRLZXkiLCJwYWdlSWRLZXkiLCJwYWdlTG9hZGluZyIsIl9uYXZpZ2F0aW5nVG9QYWdlIiwiYWxsb3dOYXZpZ2F0aW9uV2l0aG91dFJlbG9hZCIsInJwY0NsaWVudCIsIl9jbGllbnRFdmVudExpc3RlbmVycyIsInRlYXJkb3duIiwicmVtb3ZlQWxsTGlzdGVuZXJzIiwiRVZFTlRfUEFHRV9DSEFOR0UiLCJFVkVOVF9ESVNDT05ORUNUIiwiaW5pdFJwY0NsaWVudCIsIlJwY0NsaWVudFNpbXVsYXRvciIsIm1lc3NhZ2VQcm94eSIsImlzQ29ubmVjdGVkIiwiX3RoaXMkcnBjQ2xpZW50IiwibGF1bmNoU2FmYXJpIiwic2VuZCIsInN0YXJ0VGltZWxpbmUiLCJmbiIsIm9uIiwic3RvcFRpbWVsaW5lIiwiYWRkQ2xpZW50RXZlbnRMaXN0ZW5lciIsImV2ZW50TmFtZSIsImxpc3RlbmVyIiwicHVzaCIsInJlbW92ZUNsaWVudEV2ZW50TGlzdGVuZXIiLCJvZmYiLCJzdGFydENvbnNvbGUiLCJzdG9wQ29uc29sZSIsInN0YXJ0TmV0d29yayIsInN0b3BOZXR3b3JrIiwiYWxsb3ciLCJfYWxsb3dOYXZpZ2F0aW9uV2l0aG91dFJlbG9hZCIsIm92ZXJyaWRlVXNlckFnZW50IiwidmFsdWUiLCJnZXRDb29raWVzIiwic2V0Q29va2llIiwiY29va2llIiwiZGVsZXRlQ29va2llIiwiY29va2llTmFtZSIsInVybCIsImdhcmJhZ2VDb2xsZWN0IiwidGltZW91dE1zIiwiY2hlY2tQYXJhbXMiLCJlcnIiLCJCIiwidGltZW91dCIsInRoZW4iLCJnY1N1Y2Nlc3MiLCJjYXRjaCIsImdjRXJyb3IiLCJUaW1lb3V0RXJyb3IiLCJtZXNzYWdlIiwidXNlQXBwRGljdExvY2siLCJhY3F1aXJlIiwic2tpcHBlZEFwcHMiLCJfc2tpcHBlZEFwcHMiLCJuYW1lIiwidG9QYWlycyIsIm1peGlucyIsInByb3RvdHlwZSIsImV2ZW50IiwiZXZlbnRzIiwiX2RlZmF1bHQiLCJkZWZhdWx0Il0sInNvdXJjZXMiOlsiLi4vLi4vbGliL3JlbW90ZS1kZWJ1Z2dlci5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFdmVudEVtaXR0ZXIgfSBmcm9tICdldmVudHMnO1xuaW1wb3J0IGxvZyBmcm9tICcuL2xvZ2dlcic7XG5pbXBvcnQgeyBScGNDbGllbnRTaW11bGF0b3IgfSBmcm9tICcuL3JwYyc7XG5pbXBvcnQgeyBjaGVja1BhcmFtcywgZ2V0TW9kdWxlUm9vdCB9IGZyb20gJy4vdXRpbHMnO1xuaW1wb3J0IHsgbWl4aW5zLCBldmVudHMgfSBmcm9tICcuL21peGlucyc7XG5pbXBvcnQgXyBmcm9tICdsb2Rhc2gnO1xuaW1wb3J0IEIgZnJvbSAnYmx1ZWJpcmQnO1xuaW1wb3J0IHBhdGggZnJvbSAncGF0aCc7XG5pbXBvcnQgQXN5bmNMb2NrIGZyb20gJ2FzeW5jLWxvY2snO1xuXG5jb25zdCBSRU1PVEVfREVCVUdHRVJfUE9SVCA9IDI3NzUzO1xuY29uc3QgU0FGQVJJX0JVTkRMRV9JRCA9ICdjb20uYXBwbGUubW9iaWxlc2FmYXJpJztcblxuLyogSG93IG1hbnkgbWlsbGlzZWNvbmRzIHRvIHdhaXQgZm9yIHdlYmtpdCB0byByZXR1cm4gYSByZXNwb25zZSBiZWZvcmUgdGltaW5nIG91dCAqL1xuY29uc3QgUlBDX1JFU1BPTlNFX1RJTUVPVVRfTVMgPSA1MDAwO1xuXG5jb25zdCBQQUdFX1JFQURZX1RJTUVPVVQgPSA1MDAwO1xuXG5jb25zdCBHQVJCQUdFX0NPTExFQ1RfVElNRU9VVCA9IDUwMDA7XG5cblxuY2xhc3MgUmVtb3RlRGVidWdnZXIgZXh0ZW5kcyBFdmVudEVtaXR0ZXIge1xuICAvKlxuICAgKiBUaGUgY29uc3RydWN0b3IgdGFrZXMgYW4gb3B0cyBoYXNoIHdpdGggdGhlIGZvbGxvd2luZyBwcm9wZXJ0aWVzOlxuICAgKiAgIC0gYnVuZGxlSWQgLSBpZCBvZiB0aGUgYXBwIGJlaW5nIGNvbm5lY3RlZCB0b1xuICAgKiAgIC0gYWRkaXRpb25hbEJ1bmRsZUlkcyAtIGFycmF5IG9mIHBvc3NpYmxlIGJ1bmRsZSBpZHMgdGhhdCB0aGUgaW5zcGVjdG9yXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgY291bGQgcmV0dXJuXG4gICAqICAgLSBwbGF0Zm9ybVZlcnNpb24gLSB2ZXJzaW9uIG9mIGlPU1xuICAgKiAgIC0gdXNlTmV3U2FmYXJpIC0gZm9yIHdlYiBpbnNwZWN0b3IsIHdoZXRoZXIgdGhpcyBpcyBhIG5ldyBTYWZhcmkgaW5zdGFuY2VcbiAgICogICAtIHBhZ2VMb2FkTXMgLSB0aGUgdGltZSwgaW4gbXMsIHRoYXQgc2hvdWxkIGJlIHdhaXRlZCBmb3IgcGFnZSBsb2FkaW5nXG4gICAqICAgLSBob3N0IC0gdGhlIHJlbW90ZSBkZWJ1Z2dlcidzIGhvc3QgYWRkcmVzc1xuICAgKiAgIC0gcG9ydCAtIHRoZSByZW1vdGUgZGVidWdnZXIgcG9ydCB0aHJvdWdoIHdoaWNoIHRvIGNvbW11bmljYXRlXG4gICAqICAgLSBsb2dBbGxDb21tdW5pY2F0aW9uIC0gbG9nIHBsaXN0cyBzZW50IGFuZCByZWNlaXZlZCBmcm9tIFdlYiBJbnNwZWN0b3JcbiAgICogICAtIGxvZ0FsbENvbW11bmljYXRpb25IZXhEdW1wIC0gbG9nIGNvbW11bmljYXRpb24gZnJvbSBXZWIgSW5zcGVjdG9yIGFzIGhleCBkdW1wXG4gICAqICAgLSBzb2NrZXRDaHVua1NpemUgLSBzaXplLCBpbiBieXRlcywgb2YgY2h1bmtzIG9mIGRhdGEgc2VudCB0byBXZWIgSW5zcGVjdG9yIChyZWFsIGRldmljZSBvbmx5KVxuICAgKiAgIC0gd2ViSW5zcGVjdG9yTWF4RnJhbWVMZW5ndGggLSBUaGUgbWF4aW11bSBzaXplIGluIGJ5dGVzIG9mIGEgc2luZ2xlIGRhdGEgZnJhbWVcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4gdGhlIGRldmljZSBjb21tdW5pY2F0aW9uIHByb3RvY29sXG4gICAqL1xuICBjb25zdHJ1Y3RvciAob3B0cyA9IHt9KSB7XG4gICAgc3VwZXIoKTtcblxuICAgIGxvZy5pbmZvKGBSZW1vdGUgRGVidWdnZXIgdmVyc2lvbiAke3JlcXVpcmUocGF0aC5yZXNvbHZlKGdldE1vZHVsZVJvb3QoKSwgJ3BhY2thZ2UuanNvbicpKS52ZXJzaW9ufWApO1xuXG4gICAgY29uc3Qge1xuICAgICAgYnVuZGxlSWQsXG4gICAgICBhZGRpdGlvbmFsQnVuZGxlSWRzID0gW10sXG4gICAgICBwbGF0Zm9ybVZlcnNpb24sXG4gICAgICBpc1NhZmFyaSA9IHRydWUsXG4gICAgICBpbmNsdWRlU2FmYXJpID0gZmFsc2UsXG4gICAgICB1c2VOZXdTYWZhcmkgPSBmYWxzZSxcbiAgICAgIHBhZ2VMb2FkTXMsXG4gICAgICBob3N0LFxuICAgICAgcG9ydCA9IFJFTU9URV9ERUJVR0dFUl9QT1JULFxuICAgICAgc29ja2V0UGF0aCxcbiAgICAgIHBhZ2VSZWFkeVRpbWVvdXQgPSBQQUdFX1JFQURZX1RJTUVPVVQsXG4gICAgICByZW1vdGVEZWJ1Z1Byb3h5LFxuICAgICAgZ2FyYmFnZUNvbGxlY3RPbkV4ZWN1dGUgPSBmYWxzZSxcbiAgICAgIGxvZ0Z1bGxSZXNwb25zZSA9IGZhbHNlLFxuICAgICAgbG9nQWxsQ29tbXVuaWNhdGlvbiA9IGZhbHNlLFxuICAgICAgbG9nQWxsQ29tbXVuaWNhdGlvbkhleER1bXAgPSBmYWxzZSxcbiAgICAgIHdlYkluc3BlY3Rvck1heEZyYW1lTGVuZ3RoLFxuICAgICAgc29ja2V0Q2h1bmtTaXplLFxuICAgICAgZnVsbFBhZ2VJbml0aWFsaXphdGlvbixcbiAgICB9ID0gb3B0cztcblxuICAgIHRoaXMuYnVuZGxlSWQgPSBidW5kbGVJZDtcbiAgICB0aGlzLmFkZGl0aW9uYWxCdW5kbGVJZHMgPSBhZGRpdGlvbmFsQnVuZGxlSWRzO1xuICAgIHRoaXMucGxhdGZvcm1WZXJzaW9uID0gcGxhdGZvcm1WZXJzaW9uO1xuICAgIHRoaXMuaXNTYWZhcmkgPSBpc1NhZmFyaTtcbiAgICB0aGlzLmluY2x1ZGVTYWZhcmkgPSBpbmNsdWRlU2FmYXJpO1xuICAgIHRoaXMudXNlTmV3U2FmYXJpID0gdXNlTmV3U2FmYXJpO1xuICAgIHRoaXMucGFnZUxvYWRNcyA9IHBhZ2VMb2FkTXM7XG4gICAgbG9nLmRlYnVnKGB1c2VOZXdTYWZhcmkgLS0+ICR7dGhpcy51c2VOZXdTYWZhcml9YCk7XG5cbiAgICB0aGlzLmdhcmJhZ2VDb2xsZWN0T25FeGVjdXRlID0gZ2FyYmFnZUNvbGxlY3RPbkV4ZWN1dGU7XG5cbiAgICB0aGlzLmhvc3QgPSBob3N0O1xuICAgIHRoaXMucG9ydCA9IHBvcnQ7XG4gICAgdGhpcy5zb2NrZXRQYXRoID0gc29ja2V0UGF0aDtcbiAgICB0aGlzLnJlbW90ZURlYnVnUHJveHkgPSByZW1vdGVEZWJ1Z1Byb3h5O1xuICAgIHRoaXMucGFnZVJlYWR5VGltZW91dCA9IHBhZ2VSZWFkeVRpbWVvdXQ7XG5cbiAgICB0aGlzLmxvZ0FsbENvbW11bmljYXRpb24gPSBfLmlzTmlsKGxvZ0FsbENvbW11bmljYXRpb24pID8gISFsb2dGdWxsUmVzcG9uc2UgOiAhIWxvZ0FsbENvbW11bmljYXRpb247XG4gICAgdGhpcy5sb2dBbGxDb21tdW5pY2F0aW9uSGV4RHVtcCA9IGxvZ0FsbENvbW11bmljYXRpb25IZXhEdW1wO1xuICAgIHRoaXMuc29ja2V0Q2h1bmtTaXplID0gc29ja2V0Q2h1bmtTaXplO1xuXG4gICAgaWYgKF8uaXNJbnRlZ2VyKHdlYkluc3BlY3Rvck1heEZyYW1lTGVuZ3RoKSkge1xuICAgICAgdGhpcy53ZWJJbnNwZWN0b3JNYXhGcmFtZUxlbmd0aCA9IHdlYkluc3BlY3Rvck1heEZyYW1lTGVuZ3RoO1xuICAgIH1cblxuICAgIHRoaXMuZnVsbFBhZ2VJbml0aWFsaXphdGlvbiA9IGZ1bGxQYWdlSW5pdGlhbGl6YXRpb247XG5cbiAgICB0aGlzLl9sb2NrID0gbmV3IEFzeW5jTG9jaygpO1xuICB9XG5cbiAgc2V0dXAgKCkge1xuICAgIC8vIGFwcCBoYW5kbGluZyBjb25maWd1cmF0aW9uXG4gICAgdGhpcy5hcHBEaWN0ID0ge307XG4gICAgdGhpcy5hcHBJZEtleSA9IG51bGw7XG4gICAgdGhpcy5wYWdlSWRLZXkgPSBudWxsO1xuICAgIHRoaXMucGFnZUxvYWRpbmcgPSBmYWxzZTtcbiAgICB0aGlzLl9uYXZpZ2F0aW5nVG9QYWdlID0gZmFsc2U7XG4gICAgdGhpcy5hbGxvd05hdmlnYXRpb25XaXRob3V0UmVsb2FkID0gZmFsc2U7XG5cbiAgICB0aGlzLnJwY0NsaWVudCA9IG51bGw7XG4gICAgdGhpcy5fY2xpZW50RXZlbnRMaXN0ZW5lcnMgPSB7fTtcbiAgfVxuXG4gIHRlYXJkb3duICgpIHtcbiAgICBsb2cuZGVidWcoJ0NsZWFuaW5nIHVwIGxpc3RlbmVycycpO1xuXG4gICAgdGhpcy5hcHBEaWN0ID0ge307XG4gICAgdGhpcy5hcHBJZEtleSA9IG51bGw7XG4gICAgdGhpcy5wYWdlSWRLZXkgPSBudWxsO1xuICAgIHRoaXMucGFnZUxvYWRpbmcgPSBmYWxzZTtcblxuICAgIHRoaXMucnBjQ2xpZW50ID0gbnVsbDtcblxuICAgIHRoaXMucmVtb3ZlQWxsTGlzdGVuZXJzKFJlbW90ZURlYnVnZ2VyLkVWRU5UX1BBR0VfQ0hBTkdFKTtcbiAgICB0aGlzLnJlbW92ZUFsbExpc3RlbmVycyhSZW1vdGVEZWJ1Z2dlci5FVkVOVF9ESVNDT05ORUNUKTtcbiAgfVxuXG4gIGluaXRScGNDbGllbnQgKCkge1xuICAgIHRoaXMucnBjQ2xpZW50ID0gbmV3IFJwY0NsaWVudFNpbXVsYXRvcih7XG4gICAgICBidW5kbGVJZDogdGhpcy5idW5kbGVJZCxcbiAgICAgIHBsYXRmb3JtVmVyc2lvbjogdGhpcy5wbGF0Zm9ybVZlcnNpb24sXG4gICAgICBpc1NhZmFyaTogdGhpcy5pc1NhZmFyaSxcbiAgICAgIGhvc3Q6IHRoaXMuaG9zdCxcbiAgICAgIHBvcnQ6IHRoaXMucG9ydCxcbiAgICAgIHNvY2tldFBhdGg6IHRoaXMuc29ja2V0UGF0aCxcbiAgICAgIG1lc3NhZ2VQcm94eTogdGhpcy5yZW1vdGVEZWJ1Z1Byb3h5LFxuICAgICAgbG9nQWxsQ29tbXVuaWNhdGlvbjogdGhpcy5sb2dBbGxDb21tdW5pY2F0aW9uLFxuICAgICAgbG9nQWxsQ29tbXVuaWNhdGlvbkhleER1bXA6IHRoaXMubG9nQWxsQ29tbXVuaWNhdGlvbkhleER1bXAsXG4gICAgICBmdWxsUGFnZUluaXRpYWxpemF0aW9uOiB0aGlzLmZ1bGxQYWdlSW5pdGlhbGl6YXRpb24sXG4gICAgICB3ZWJJbnNwZWN0b3JNYXhGcmFtZUxlbmd0aDogdGhpcy53ZWJJbnNwZWN0b3JNYXhGcmFtZUxlbmd0aCxcbiAgICB9KTtcbiAgfVxuXG4gIGdldCBpc0Nvbm5lY3RlZCAoKSB7XG4gICAgcmV0dXJuICEhdGhpcy5ycGNDbGllbnQ/LmlzQ29ubmVjdGVkO1xuICB9XG5cbiAgYXN5bmMgbGF1bmNoU2FmYXJpICgpIHtcbiAgICBhd2FpdCB0aGlzLnJwY0NsaWVudC5zZW5kKCdsYXVuY2hBcHBsaWNhdGlvbicsIHtcbiAgICAgIGJ1bmRsZUlkOiBTQUZBUklfQlVORExFX0lEXG4gICAgfSk7XG4gIH1cblxuICBhc3luYyBzdGFydFRpbWVsaW5lIChmbikge1xuICAgIGxvZy5kZWJ1ZygnU3RhcnRpbmcgdG8gcmVjb3JkIHRoZSB0aW1lbGluZScpO1xuICAgIHRoaXMucnBjQ2xpZW50Lm9uKCdUaW1lbGluZS5ldmVudFJlY29yZGVkJywgZm4pO1xuICAgIHJldHVybiBhd2FpdCB0aGlzLnJwY0NsaWVudC5zZW5kKCdzdGFydFRpbWVsaW5lJywge1xuICAgICAgYXBwSWRLZXk6IHRoaXMuYXBwSWRLZXksXG4gICAgICBwYWdlSWRLZXk6IHRoaXMucGFnZUlkS2V5LFxuICAgIH0pO1xuICB9XG5cbiAgYXN5bmMgc3RvcFRpbWVsaW5lICgpIHtcbiAgICBsb2cuZGVidWcoJ1N0b3BwaW5nIHRvIHJlY29yZCB0aGUgdGltZWxpbmUnKTtcbiAgICBhd2FpdCB0aGlzLnJwY0NsaWVudC5zZW5kKCdUaW1lbGluZS5zdG9wJywge1xuICAgICAgYXBwSWRLZXk6IHRoaXMuYXBwSWRLZXksXG4gICAgICBwYWdlSWRLZXk6IHRoaXMucGFnZUlkS2V5LFxuICAgIH0pO1xuICB9XG5cbiAgLypcbiAgICogS2VlcCB0cmFjayBvZiB0aGUgY2xpZW50IGV2ZW50IGxpc3RlbmVycyBzbyB0aGV5IGNhbiBiZSByZW1vdmVkXG4gICAqL1xuICBhZGRDbGllbnRFdmVudExpc3RlbmVyIChldmVudE5hbWUsIGxpc3RlbmVyKSB7XG4gICAgdGhpcy5fY2xpZW50RXZlbnRMaXN0ZW5lcnNbZXZlbnROYW1lXSA9IHRoaXMuX2NsaWVudEV2ZW50TGlzdGVuZXJzW2V2ZW50TmFtZV0gfHwgW107XG4gICAgdGhpcy5fY2xpZW50RXZlbnRMaXN0ZW5lcnNbZXZlbnROYW1lXS5wdXNoKGxpc3RlbmVyKTtcbiAgICB0aGlzLnJwY0NsaWVudC5vbihldmVudE5hbWUsIGxpc3RlbmVyKTtcbiAgfVxuXG4gIHJlbW92ZUNsaWVudEV2ZW50TGlzdGVuZXIgKGV2ZW50TmFtZSkge1xuICAgIGZvciAoY29uc3QgbGlzdGVuZXIgb2YgKHRoaXMuX2NsaWVudEV2ZW50TGlzdGVuZXJzW2V2ZW50TmFtZV0gfHwgW10pKSB7XG4gICAgICB0aGlzLnJwY0NsaWVudC5vZmYoZXZlbnROYW1lLCBsaXN0ZW5lcik7XG4gICAgfVxuICB9XG5cbiAgc3RhcnRDb25zb2xlIChsaXN0ZW5lcikge1xuICAgIGxvZy5kZWJ1ZygnU3RhcnRpbmcgdG8gbGlzdGVuIGZvciBKYXZhU2NyaXB0IGNvbnNvbGUnKTtcbiAgICB0aGlzLmFkZENsaWVudEV2ZW50TGlzdGVuZXIoJ0NvbnNvbGUubWVzc2FnZUFkZGVkJywgbGlzdGVuZXIpO1xuICAgIHRoaXMuYWRkQ2xpZW50RXZlbnRMaXN0ZW5lcignQ29uc29sZS5tZXNzYWdlUmVwZWF0Q291bnRVcGRhdGVkJywgbGlzdGVuZXIpO1xuICB9XG5cbiAgc3RvcENvbnNvbGUgKCkge1xuICAgIGxvZy5kZWJ1ZygnU3RvcHBpbmcgdG8gbGlzdGVuIGZvciBKYXZhU2NyaXB0IGNvbnNvbGUnKTtcbiAgICB0aGlzLnJlbW92ZUNsaWVudEV2ZW50TGlzdGVuZXIoJ0NvbnNvbGUubWVzc2FnZUFkZGVkJyk7XG4gICAgdGhpcy5yZW1vdmVDbGllbnRFdmVudExpc3RlbmVyKCdDb25zb2xlLm1lc3NhZ2VSZXBlYXRDb3VudFVwZGF0ZWQnKTtcbiAgfVxuXG4gIHN0YXJ0TmV0d29yayAobGlzdGVuZXIpIHtcbiAgICBsb2cuZGVidWcoJ1N0YXJ0aW5nIHRvIGxpc3RlbiBmb3IgbmV0d29yayBldmVudHMnKTtcbiAgICB0aGlzLmFkZENsaWVudEV2ZW50TGlzdGVuZXIoJ05ldHdvcmtFdmVudCcsIGxpc3RlbmVyKTtcbiAgfVxuXG4gIHN0b3BOZXR3b3JrICgpIHtcbiAgICBsb2cuZGVidWcoJ1N0b3BwaW5nIHRvIGxpc3RlbiBmb3IgbmV0d29yayBldmVudHMnKTtcbiAgICB0aGlzLnJlbW92ZUNsaWVudEV2ZW50TGlzdGVuZXIoJ05ldHdvcmtFdmVudCcpO1xuICB9XG5cbiAgc2V0IGFsbG93TmF2aWdhdGlvbldpdGhvdXRSZWxvYWQgKGFsbG93KSB7XG4gICAgdGhpcy5fYWxsb3dOYXZpZ2F0aW9uV2l0aG91dFJlbG9hZCA9IGFsbG93O1xuICB9XG5cbiAgZ2V0IGFsbG93TmF2aWdhdGlvbldpdGhvdXRSZWxvYWQgKCkge1xuICAgIHJldHVybiB0aGlzLl9hbGxvd05hdmlnYXRpb25XaXRob3V0UmVsb2FkO1xuICB9XG5cbiAgLy8gUG90ZW50aWFsbHkgdGhpcyBkb2VzIG5vdCB3b3JrIGZvciBtb2JpbGUgc2FmYXJpXG4gIGFzeW5jIG92ZXJyaWRlVXNlckFnZW50ICh2YWx1ZSkge1xuICAgIGxvZy5kZWJ1ZygnU2V0dGluZyBvdmVycmlkZVVzZXJBZ2VudCcpO1xuICAgIHJldHVybiBhd2FpdCB0aGlzLnJwY0NsaWVudC5zZW5kKCdQYWdlLm92ZXJyaWRlVXNlckFnZW50Jywge1xuICAgICAgYXBwSWRLZXk6IHRoaXMuYXBwSWRLZXksXG4gICAgICBwYWdlSWRLZXk6IHRoaXMucGFnZUlkS2V5LFxuICAgICAgdmFsdWVcbiAgICB9KTtcbiAgfVxuXG4gIGFzeW5jIGdldENvb2tpZXMgKCkge1xuICAgIGxvZy5kZWJ1ZygnR2V0dGluZyBjb29raWVzJyk7XG4gICAgcmV0dXJuIGF3YWl0IHRoaXMucnBjQ2xpZW50LnNlbmQoJ1BhZ2UuZ2V0Q29va2llcycsIHtcbiAgICAgIGFwcElkS2V5OiB0aGlzLmFwcElkS2V5LFxuICAgICAgcGFnZUlkS2V5OiB0aGlzLnBhZ2VJZEtleVxuICAgIH0pO1xuICB9XG5cbiAgYXN5bmMgc2V0Q29va2llIChjb29raWUpIHtcbiAgICBsb2cuZGVidWcoJ1NldHRpbmcgY29va2llJyk7XG4gICAgcmV0dXJuIGF3YWl0IHRoaXMucnBjQ2xpZW50LnNlbmQoJ1BhZ2Uuc2V0Q29va2llJywge1xuICAgICAgYXBwSWRLZXk6IHRoaXMuYXBwSWRLZXksXG4gICAgICBwYWdlSWRLZXk6IHRoaXMucGFnZUlkS2V5LFxuICAgICAgY29va2llXG4gICAgfSk7XG4gIH1cblxuICBhc3luYyBkZWxldGVDb29raWUgKGNvb2tpZU5hbWUsIHVybCkge1xuICAgIGxvZy5kZWJ1ZyhgRGVsZXRpbmcgY29va2llICcke2Nvb2tpZU5hbWV9JyBvbiAnJHt1cmx9J2ApO1xuICAgIHJldHVybiBhd2FpdCB0aGlzLnJwY0NsaWVudC5zZW5kKCdQYWdlLmRlbGV0ZUNvb2tpZScsIHtcbiAgICAgIGFwcElkS2V5OiB0aGlzLmFwcElkS2V5LFxuICAgICAgcGFnZUlkS2V5OiB0aGlzLnBhZ2VJZEtleSxcbiAgICAgIGNvb2tpZU5hbWUsXG4gICAgICB1cmwsXG4gICAgfSk7XG4gIH1cblxuICBhc3luYyBnYXJiYWdlQ29sbGVjdCAodGltZW91dE1zID0gR0FSQkFHRV9DT0xMRUNUX1RJTUVPVVQpIHtcbiAgICBsb2cuZGVidWcoYEdhcmJhZ2UgY29sbGVjdGluZyB3aXRoICR7dGltZW91dE1zfW1zIHRpbWVvdXRgKTtcbiAgICB0cnkge1xuICAgICAgY2hlY2tQYXJhbXMoe2FwcElkS2V5OiB0aGlzLmFwcElkS2V5LCBwYWdlSWRLZXk6IHRoaXMucGFnZUlkS2V5fSk7XG4gICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICBsb2cuZGVidWcoYFVuYWJsZSB0byBjb2xsZWN0IGdhcmJhZ2UgYXQgdGhpcyB0aW1lYCk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgYXdhaXQgQi5yZXNvbHZlKHRoaXMucnBjQ2xpZW50LnNlbmQoJ0hlYXAuZ2MnLCB7XG4gICAgICBhcHBJZEtleTogdGhpcy5hcHBJZEtleSxcbiAgICAgIHBhZ2VJZEtleTogdGhpcy5wYWdlSWRLZXksXG4gICAgfSkpLnRpbWVvdXQodGltZW91dE1zKVxuICAgIC50aGVuKGZ1bmN0aW9uIGdjU3VjY2VzcyAoKSB7IC8vIGVzbGludC1kaXNhYmxlLWxpbmUgcHJvbWlzZS9wcmVmZXItYXdhaXQtdG8tdGhlblxuICAgICAgbG9nLmRlYnVnKGBHYXJiYWdlIGNvbGxlY3Rpb24gc3VjY2Vzc2Z1bGApO1xuICAgIH0pLmNhdGNoKGZ1bmN0aW9uIGdjRXJyb3IgKGVycikgeyAvLyBlc2xpbnQtZGlzYWJsZS1saW5lIHByb21pc2UvcHJlZmVyLWF3YWl0LXRvLWNhbGxiYWNrc1xuICAgICAgaWYgKGVyciBpbnN0YW5jZW9mIEIuVGltZW91dEVycm9yKSB7XG4gICAgICAgIGxvZy5kZWJ1ZyhgR2FyYmFnZSBjb2xsZWN0aW9uIHRpbWVkIG91dCBhZnRlciAke3RpbWVvdXRNc31tc2ApO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgbG9nLmRlYnVnKGBVbmFibGUgdG8gY29sbGVjdCBnYXJiYWdlOiAke2Vyci5tZXNzYWdlfWApO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgYXN5bmMgdXNlQXBwRGljdExvY2sgKGZuKSB7XG4gICAgcmV0dXJuIGF3YWl0IHRoaXMuX2xvY2suYWNxdWlyZSgnYXBwRGljdCcsIGZuKTtcbiAgfVxuXG4gIGdldCBza2lwcGVkQXBwcyAoKSB7XG4gICAgcmV0dXJuIHRoaXMuX3NraXBwZWRBcHBzIHx8IFtdO1xuICB9XG59XG5cbmZvciAoY29uc3QgW25hbWUsIGZuXSBvZiBfLnRvUGFpcnMobWl4aW5zKSkge1xuICBSZW1vdGVEZWJ1Z2dlci5wcm90b3R5cGVbbmFtZV0gPSBmbjtcbn1cblxuZm9yIChjb25zdCBbbmFtZSwgZXZlbnRdIG9mIF8udG9QYWlycyhldmVudHMpKSB7XG4gIFJlbW90ZURlYnVnZ2VyW25hbWVdID0gZXZlbnQ7XG59XG5cbmV4cG9ydCBkZWZhdWx0IFJlbW90ZURlYnVnZ2VyO1xuZXhwb3J0IHtcbiAgUmVtb3RlRGVidWdnZXIsIFJFTU9URV9ERUJVR0dFUl9QT1JULCBSUENfUkVTUE9OU0VfVElNRU9VVF9NUyxcbn07XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQUEsSUFBQUEsT0FBQSxHQUFBQyxPQUFBO0FBQ0EsSUFBQUMsT0FBQSxHQUFBQyxzQkFBQSxDQUFBRixPQUFBO0FBQ0EsSUFBQUcsSUFBQSxHQUFBSCxPQUFBO0FBQ0EsSUFBQUksTUFBQSxHQUFBSixPQUFBO0FBQ0EsSUFBQUssT0FBQSxHQUFBTCxPQUFBO0FBQ0EsSUFBQU0sT0FBQSxHQUFBSixzQkFBQSxDQUFBRixPQUFBO0FBQ0EsSUFBQU8sU0FBQSxHQUFBTCxzQkFBQSxDQUFBRixPQUFBO0FBQ0EsSUFBQVEsS0FBQSxHQUFBTixzQkFBQSxDQUFBRixPQUFBO0FBQ0EsSUFBQVMsVUFBQSxHQUFBUCxzQkFBQSxDQUFBRixPQUFBO0FBRUEsTUFBTVUsb0JBQW9CLEdBQUcsS0FBSztBQUFDQyxPQUFBLENBQUFELG9CQUFBLEdBQUFBLG9CQUFBO0FBQ25DLE1BQU1FLGdCQUFnQixHQUFHLHdCQUF3QjtBQUdqRCxNQUFNQyx1QkFBdUIsR0FBRyxJQUFJO0FBQUNGLE9BQUEsQ0FBQUUsdUJBQUEsR0FBQUEsdUJBQUE7QUFFckMsTUFBTUMsa0JBQWtCLEdBQUcsSUFBSTtBQUUvQixNQUFNQyx1QkFBdUIsR0FBRyxJQUFJO0FBR3BDLE1BQU1DLGNBQWMsU0FBU0Msb0JBQVksQ0FBQztFQWlCeENDLFdBQVdBLENBQUVDLElBQUksR0FBRyxDQUFDLENBQUMsRUFBRTtJQUN0QixLQUFLLEVBQUU7SUFFUEMsZUFBRyxDQUFDQyxJQUFJLENBQUUsMkJBQTBCckIsT0FBTyxDQUFDc0IsYUFBSSxDQUFDQyxPQUFPLENBQUMsSUFBQUMsb0JBQWEsR0FBRSxFQUFFLGNBQWMsQ0FB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
|