Index: third_party/WebKit/Source/devtools/front_end/network/NetworkConfigView.js |
diff --git a/third_party/WebKit/Source/devtools/front_end/network/NetworkConfigView.js b/third_party/WebKit/Source/devtools/front_end/network/NetworkConfigView.js |
index 010af0f09fb92e8ad56641a6f7e71c2c654fbccd..5c5ef9866b20e301818f371007d30895d72085f7 100644 |
--- a/third_party/WebKit/Source/devtools/front_end/network/NetworkConfigView.js |
+++ b/third_party/WebKit/Source/devtools/front_end/network/NetworkConfigView.js |
@@ -1,255 +1,360 @@ |
// Copyright (c) 2015 The Chromium Authors. All rights reserved. |
// Use of this source code is governed by a BSD-style license that can be |
// found in the LICENSE file. |
- |
/** |
- * @constructor |
- * @extends {WebInspector.VBox} |
+ * @unrestricted |
*/ |
-WebInspector.NetworkConfigView = function() |
-{ |
- WebInspector.VBox.call(this, true); |
- this.registerRequiredCSS("network/networkConfigView.css"); |
- this.contentElement.classList.add("network-config"); |
+WebInspector.NetworkConfigView = class extends WebInspector.VBox { |
+ constructor() { |
+ super(true); |
+ this.registerRequiredCSS('network/networkConfigView.css'); |
+ this.contentElement.classList.add('network-config'); |
this._createCacheSection(); |
- this.contentElement.createChild("div").classList.add("panel-section-separator"); |
+ this.contentElement.createChild('div').classList.add('panel-section-separator'); |
this._createNetworkThrottlingSection(); |
- this.contentElement.createChild("div").classList.add("panel-section-separator"); |
+ this.contentElement.createChild('div').classList.add('panel-section-separator'); |
this._createUserAgentSection(); |
-}; |
- |
-WebInspector.NetworkConfigView.prototype = { |
- /** |
- * @param {string} title |
- * @param {string=} className |
- * @return {!Element} |
- */ |
- _createSection: function(title, className) |
- { |
- var section = this.contentElement.createChild("section", "network-config-group"); |
- if (className) |
- section.classList.add(className); |
- section.createChild("div", "network-config-title").textContent = title; |
- return section.createChild("div", "network-config-fields"); |
- }, |
- |
- _createCacheSection: function() |
- { |
- var section = this._createSection(WebInspector.UIString("Caching"), "network-config-disable-cache"); |
- section.appendChild(WebInspector.SettingsUI.createSettingCheckbox(WebInspector.UIString("Disable cache"), WebInspector.moduleSetting("cacheDisabled"), true)); |
- }, |
- |
- _createNetworkThrottlingSection: function() |
- { |
- var section = this._createSection(WebInspector.UIString("Network throttling"), "network-config-throttling"); |
- WebInspector.NetworkConditionsSelector.decorateSelect(/** @type {!HTMLSelectElement} */(section.createChild("select", "chrome-select"))); |
- }, |
- |
- _createUserAgentSection: function() |
- { |
- var section = this._createSection(WebInspector.UIString("User agent"), "network-config-ua"); |
- var checkboxLabel = createCheckboxLabel(WebInspector.UIString("Select automatically"), true); |
- section.appendChild(checkboxLabel); |
- this._autoCheckbox = checkboxLabel.checkboxElement; |
- this._autoCheckbox.addEventListener("change", this._userAgentTypeChanged.bind(this)); |
- |
- this._customUserAgentSetting = WebInspector.settings.createSetting("customUserAgent", ""); |
- this._customUserAgentSetting.addChangeListener(this._customUserAgentChanged, this); |
- |
- this._customUserAgent = section.createChild("div", "network-config-ua-custom"); |
- this._customSelectAndInput = WebInspector.NetworkConfigView.createUserAgentSelectAndInput(); |
- this._customSelectAndInput.select.classList.add("chrome-select"); |
- this._customUserAgent.appendChild(this._customSelectAndInput.select); |
- this._customUserAgent.appendChild(this._customSelectAndInput.input); |
- this._userAgentTypeChanged(); |
- }, |
- |
- _customUserAgentChanged: function() |
- { |
- if (this._autoCheckbox.checked) |
- return; |
- WebInspector.multitargetNetworkManager.setCustomUserAgentOverride(this._customUserAgentSetting.get()); |
- }, |
- |
- _userAgentTypeChanged: function() |
- { |
- var useCustomUA = !this._autoCheckbox.checked; |
- this._customUserAgent.classList.toggle("checked", useCustomUA); |
- this._customSelectAndInput.select.disabled = !useCustomUA; |
- this._customSelectAndInput.input.disabled = !useCustomUA; |
- var customUA = useCustomUA ? this._customUserAgentSetting.get() : ""; |
- WebInspector.multitargetNetworkManager.setCustomUserAgentOverride(customUA); |
- }, |
- |
- __proto__ : WebInspector.VBox.prototype |
-}; |
+ } |
+ /** |
+ * @return {{select: !Element, input: !Element}} |
+ */ |
+ static createUserAgentSelectAndInput() { |
+ var userAgentSetting = WebInspector.settings.createSetting('customUserAgent', ''); |
+ var userAgentSelectElement = createElement('select'); |
-/** |
- * @return {{select: !Element, input: !Element}} |
- */ |
-WebInspector.NetworkConfigView.createUserAgentSelectAndInput = function() |
-{ |
- var userAgentSetting = WebInspector.settings.createSetting("customUserAgent", ""); |
- var userAgentSelectElement = createElement("select"); |
- |
- const customOverride = {title: WebInspector.UIString("Custom..."), value: "custom"}; |
+ const customOverride = {title: WebInspector.UIString('Custom...'), value: 'custom'}; |
userAgentSelectElement.appendChild(new Option(customOverride.title, customOverride.value)); |
var groups = WebInspector.NetworkConfigView._userAgentGroups; |
for (var userAgentDescriptor of groups) { |
- var groupElement = userAgentSelectElement.createChild("optgroup"); |
- groupElement.label = userAgentDescriptor.title; |
- for (var userAgentVersion of userAgentDescriptor.values) { |
- var userAgentValue = WebInspector.MultitargetNetworkManager.patchUserAgentWithChromeVersion(userAgentVersion.value); |
- groupElement.appendChild(new Option(userAgentVersion.title, userAgentValue)); |
- } |
+ var groupElement = userAgentSelectElement.createChild('optgroup'); |
+ groupElement.label = userAgentDescriptor.title; |
+ for (var userAgentVersion of userAgentDescriptor.values) { |
+ var userAgentValue = |
+ WebInspector.MultitargetNetworkManager.patchUserAgentWithChromeVersion(userAgentVersion.value); |
+ groupElement.appendChild(new Option(userAgentVersion.title, userAgentValue)); |
+ } |
} |
userAgentSelectElement.selectedIndex = 0; |
- var otherUserAgentElement = createElement("input"); |
- otherUserAgentElement.type = "text"; |
+ var otherUserAgentElement = createElement('input'); |
+ otherUserAgentElement.type = 'text'; |
otherUserAgentElement.value = userAgentSetting.get(); |
otherUserAgentElement.title = userAgentSetting.get(); |
- otherUserAgentElement.placeholder = WebInspector.UIString("Enter a custom user agent"); |
+ otherUserAgentElement.placeholder = WebInspector.UIString('Enter a custom user agent'); |
otherUserAgentElement.required = true; |
settingChanged(); |
- userAgentSelectElement.addEventListener("change", userAgentSelected, false); |
- otherUserAgentElement.addEventListener("input", applyOtherUserAgent, false); |
- |
- function userAgentSelected() |
- { |
- var value = userAgentSelectElement.options[userAgentSelectElement.selectedIndex].value; |
- if (value !== customOverride.value) { |
- userAgentSetting.set(value); |
- otherUserAgentElement.value = value; |
- otherUserAgentElement.title = value; |
- } else { |
- otherUserAgentElement.select(); |
- } |
+ userAgentSelectElement.addEventListener('change', userAgentSelected, false); |
+ otherUserAgentElement.addEventListener('input', applyOtherUserAgent, false); |
+ |
+ function userAgentSelected() { |
+ var value = userAgentSelectElement.options[userAgentSelectElement.selectedIndex].value; |
+ if (value !== customOverride.value) { |
+ userAgentSetting.set(value); |
+ otherUserAgentElement.value = value; |
+ otherUserAgentElement.title = value; |
+ } else { |
+ otherUserAgentElement.select(); |
+ } |
} |
- function settingChanged() |
- { |
- var value = userAgentSetting.get(); |
- var options = userAgentSelectElement.options; |
- var selectionRestored = false; |
- for (var i = 0; i < options.length; ++i) { |
- if (options[i].value === value) { |
- userAgentSelectElement.selectedIndex = i; |
- selectionRestored = true; |
- break; |
- } |
+ function settingChanged() { |
+ var value = userAgentSetting.get(); |
+ var options = userAgentSelectElement.options; |
+ var selectionRestored = false; |
+ for (var i = 0; i < options.length; ++i) { |
+ if (options[i].value === value) { |
+ userAgentSelectElement.selectedIndex = i; |
+ selectionRestored = true; |
+ break; |
} |
+ } |
- if (!selectionRestored) |
- userAgentSelectElement.selectedIndex = 0; |
+ if (!selectionRestored) |
+ userAgentSelectElement.selectedIndex = 0; |
} |
- function applyOtherUserAgent() |
- { |
- if (userAgentSetting.get() !== otherUserAgentElement.value) { |
- userAgentSetting.set(otherUserAgentElement.value); |
- otherUserAgentElement.title = otherUserAgentElement.value; |
- settingChanged(); |
- } |
+ function applyOtherUserAgent() { |
+ if (userAgentSetting.get() !== otherUserAgentElement.value) { |
+ userAgentSetting.set(otherUserAgentElement.value); |
+ otherUserAgentElement.title = otherUserAgentElement.value; |
+ settingChanged(); |
+ } |
} |
- return { select: userAgentSelectElement, input: otherUserAgentElement }; |
+ return {select: userAgentSelectElement, input: otherUserAgentElement}; |
+ } |
+ |
+ /** |
+ * @param {string} title |
+ * @param {string=} className |
+ * @return {!Element} |
+ */ |
+ _createSection(title, className) { |
+ var section = this.contentElement.createChild('section', 'network-config-group'); |
+ if (className) |
+ section.classList.add(className); |
+ section.createChild('div', 'network-config-title').textContent = title; |
+ return section.createChild('div', 'network-config-fields'); |
+ } |
+ |
+ _createCacheSection() { |
+ var section = this._createSection(WebInspector.UIString('Caching'), 'network-config-disable-cache'); |
+ section.appendChild(WebInspector.SettingsUI.createSettingCheckbox( |
+ WebInspector.UIString('Disable cache'), WebInspector.moduleSetting('cacheDisabled'), true)); |
+ } |
+ |
+ _createNetworkThrottlingSection() { |
+ var section = this._createSection(WebInspector.UIString('Network throttling'), 'network-config-throttling'); |
+ WebInspector.NetworkConditionsSelector.decorateSelect( |
+ /** @type {!HTMLSelectElement} */ (section.createChild('select', 'chrome-select'))); |
+ } |
+ |
+ _createUserAgentSection() { |
+ var section = this._createSection(WebInspector.UIString('User agent'), 'network-config-ua'); |
+ var checkboxLabel = createCheckboxLabel(WebInspector.UIString('Select automatically'), true); |
+ section.appendChild(checkboxLabel); |
+ this._autoCheckbox = checkboxLabel.checkboxElement; |
+ this._autoCheckbox.addEventListener('change', this._userAgentTypeChanged.bind(this)); |
+ |
+ this._customUserAgentSetting = WebInspector.settings.createSetting('customUserAgent', ''); |
+ this._customUserAgentSetting.addChangeListener(this._customUserAgentChanged, this); |
+ |
+ this._customUserAgent = section.createChild('div', 'network-config-ua-custom'); |
+ this._customSelectAndInput = WebInspector.NetworkConfigView.createUserAgentSelectAndInput(); |
+ this._customSelectAndInput.select.classList.add('chrome-select'); |
+ this._customUserAgent.appendChild(this._customSelectAndInput.select); |
+ this._customUserAgent.appendChild(this._customSelectAndInput.input); |
+ this._userAgentTypeChanged(); |
+ } |
+ |
+ _customUserAgentChanged() { |
+ if (this._autoCheckbox.checked) |
+ return; |
+ WebInspector.multitargetNetworkManager.setCustomUserAgentOverride(this._customUserAgentSetting.get()); |
+ } |
+ |
+ _userAgentTypeChanged() { |
+ var useCustomUA = !this._autoCheckbox.checked; |
+ this._customUserAgent.classList.toggle('checked', useCustomUA); |
+ this._customSelectAndInput.select.disabled = !useCustomUA; |
+ this._customSelectAndInput.input.disabled = !useCustomUA; |
+ var customUA = useCustomUA ? this._customUserAgentSetting.get() : ''; |
+ WebInspector.multitargetNetworkManager.setCustomUserAgentOverride(customUA); |
+ } |
}; |
+ |
/** @type {!Array.<{title: string, values: !Array.<{title: string, value: string}>}>} */ |
WebInspector.NetworkConfigView._userAgentGroups = [ |
- { |
- title: "Android", |
- values: [ |
- {title: "Android (4.0.2) Browser \u2014 Galaxy Nexus", value: "Mozilla/5.0 (Linux; U; Android 4.0.2; en-us; Galaxy Nexus Build/ICL53F) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 Mobile Safari/534.30"}, |
- {title: "Android (2.3) Browser \u2014 Nexus S", value: "Mozilla/5.0 (Linux; U; Android 2.3.6; en-us; Nexus S Build/GRK39F) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1"} |
- ] |
- }, |
- { |
- title: "BlackBerry", |
- values: [ |
- {title: "BlackBerry \u2014 BB10", value: "Mozilla/5.0 (BB10; Touch) AppleWebKit/537.1+ (KHTML, like Gecko) Version/10.0.0.1337 Mobile Safari/537.1+"}, |
- {title: "BlackBerry \u2014 PlayBook 2.1", value: "Mozilla/5.0 (PlayBook; U; RIM Tablet OS 2.1.0; en-US) AppleWebKit/536.2+ (KHTML, like Gecko) Version/7.2.1.0 Safari/536.2+"}, |
- {title: "BlackBerry \u2014 9900", value: "Mozilla/5.0 (BlackBerry; U; BlackBerry 9900; en-US) AppleWebKit/534.11+ (KHTML, like Gecko) Version/7.0.0.187 Mobile Safari/534.11+"} |
- ] |
- }, |
- { |
- title: "Chrome", |
- values: [ |
- {title: "Chrome \u2014 Android Mobile", value: "Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/%s Mobile Safari/537.36"}, |
- {title: "Chrome \u2014 Android Tablet", value: "Mozilla/5.0 (Linux; Android 4.3; Nexus 7 Build/JSS15Q) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/%s Safari/537.36"}, |
- {title: "Chrome \u2014 iPhone", value: "Mozilla/5.0 (iPhone; CPU iPhone OS 9_1 like Mac OS X) AppleWebKit/601.1 (KHTML, like Gecko) CriOS/%s Mobile/13B143 Safari/601.1.46"}, |
- {title: "Chrome \u2014 iPad", value: "Mozilla/5.0 (iPad; CPU OS 9_1 like Mac OS X) AppleWebKit/601.1 (KHTML, like Gecko) CriOS/%s Mobile/13B143 Safari/601.1.46"}, |
- {title: "Chrome \u2014 Mac", value: "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/%s Safari/537.36"}, |
- {title: "Chrome \u2014 Windows", value: "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/%s Safari/537.36"} |
- ] |
- }, |
- { |
- title: "Edge", |
- values: [ |
- {title: "Edge \u2014 Windows", value: "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.135 Safari/537.36 Edge/12.10240"}, |
- {title: "Edge \u2014 Mobile", value: "Mozilla/5.0 (Windows Phone 10.0; Android 4.2.1; Microsoft; Lumia 640 XL LTE) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.135 Mobile Safari/537.36 Edge/12.10166"}, |
- {title: "Edge \u2014 XBox", value: "Mozilla/5.0 (Windows NT 10.0; Win64; x64; Xbox; Xbox One) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.135 Safari/537.36 Edge/13.10586"} |
- ] |
- }, |
- { |
- title: "Firefox", |
- values: [ |
- {title: "Firefox \u2014 Android Mobile", value: "Mozilla/5.0 (Android 4.4; Mobile; rv:46.0) Gecko/46.0 Firefox/46.0"}, |
- {title: "Firefox \u2014 Android Tablet", value: "Mozilla/5.0 (Android 4.4; Tablet; rv:46.0) Gecko/46.0 Firefox/46.0"}, |
- {title: "Firefox \u2014 iPhone", value: "Mozilla/5.0 (iPhone; CPU iPhone OS 8_3 like Mac OS X) AppleWebKit/600.1.4 (KHTML, like Gecko) FxiOS/1.0 Mobile/12F69 Safari/600.1.4"}, |
- {title: "Firefox \u2014 iPad", value: "Mozilla/5.0 (iPad; CPU iPhone OS 8_3 like Mac OS X) AppleWebKit/600.1.4 (KHTML, like Gecko) FxiOS/1.0 Mobile/12F69 Safari/600.1.4"}, |
- {title: "Firefox \u2014 Mac", value: "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.11; rv:46.0) Gecko/20100101 Firefox/46.0"}, |
- {title: "Firefox \u2014 Windows", value: "Mozilla/5.0 (Windows NT 10.0; WOW64; rv:46.0) Gecko/20100101 Firefox/46.0"} |
- ] |
- }, |
- { |
- title: "Googlebot", |
- values: [ |
- {title: "Googlebot", value: "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)"}, |
- {title: "Googlebot Smartphone", value: "Mozilla/5.0 (Linux; Android 6.0.1; Nexus 5X Build/MMB29P) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2272.96 Mobile Safari/537.36 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)"} |
- ] |
- }, |
- { |
- title: "Internet Explorer", |
- values: [ |
- {title: "Internet Explorer 11", value: "Mozilla/5.0 (Windows NT 10.0; WOW64; Trident/7.0; rv:11.0) like Gecko"}, |
- {title: "Internet Explorer 10", value: "Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; WOW64; Trident/6.0)"}, |
- {title: "Internet Explorer 9", value: "Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0)"}, |
- {title: "Internet Explorer 8", value: "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.0; Trident/4.0)"}, |
- {title: "Internet Explorer 7", value: "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0)"} |
- ] |
- }, |
- { |
- title: "Opera", |
- values: [ |
- {title: "Opera \u2014 Mac", value: "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2661.87 Safari/537.36 OPR/37.0.2178.31"}, |
- {title: "Opera \u2014 Windows", value: "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2661.87 Safari/537.36 OPR/37.0.2178.31"}, |
- {title: "Opera (Presto) \u2014 Mac", value: "Opera/9.80 (Macintosh; Intel Mac OS X 10.9.1) Presto/2.12.388 Version/12.16"}, |
- {title: "Opera (Presto) \u2014 Windows", value: "Opera/9.80 (Windows NT 6.1) Presto/2.12.388 Version/12.16"}, |
- {title: "Opera Mobile \u2014 Android Mobile", value: "Opera/12.02 (Android 4.1; Linux; Opera Mobi/ADR-1111101157; U; en-US) Presto/2.9.201 Version/12.02"}, |
- {title: "Opera Mini \u2014 iOS", value: "Opera/9.80 (iPhone; Opera Mini/8.0.0/34.2336; U; en) Presto/2.8.119 Version/11.10"} |
- ] |
- }, |
- { |
- title: "Safari", |
- values: [ |
- {title: "Safari \u2014 iPad iOS 9", value: "Mozilla/5.0 (iPad; CPU OS 9_1 like Mac OS X) AppleWebKit/601.1.46 (KHTML, like Gecko) Version/9.0 Mobile/13B137 Safari/601.1"}, |
- {title: "Safari \u2014 iPhone iOS 9", value: "Mozilla/5.0 (iPhone; CPU iPhone OS 9_1 like Mac OS X) AppleWebKit/601.1.46 (KHTML, like Gecko) Version/9.0 Mobile/13B137 Safari/601.1"}, |
- {title: "Safari \u2014 Mac", value: "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_3) AppleWebKit/537.75.14 (KHTML, like Gecko) Version/7.0.3 Safari/7046A194A"} |
- ] |
- }, |
- { |
- title: "UC Browser", |
- values: [ |
- {title: "UC Browser \u2014 Android Mobile", value: "Mozilla/5.0 (Linux; U; Android 4.4.4; en-US; XT1022 Build/KXC21.5-40) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 UCBrowser/10.7.0.636 U3/0.8.0 Mobile Safari/534.30"}, |
- {title: "UC Browser \u2014 iOS", value: "UCWEB/2.0 (iPad; U; CPU OS 7_1 like Mac OS X; en; iPad3,6) U2/1.0.0 UCBrowser/9.3.1.344"}, |
- {title: "UC Browser \u2014 Windows Phone", value: "NokiaX2-02/2.0 (11.79) Profile/MIDP-2.1 Configuration/CLDC-1.1 Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; Trident/4.0; SLCC2;.NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; InfoPath.2) UCBrowser8.4.0.159/70/352"} |
- ] |
- } |
+ { |
+ title: 'Android', |
+ values: [ |
+ { |
+ title: 'Android (4.0.2) Browser \u2014 Galaxy Nexus', |
+ value: |
+ 'Mozilla/5.0 (Linux; U; Android 4.0.2; en-us; Galaxy Nexus Build/ICL53F) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 Mobile Safari/534.30' |
+ }, |
+ { |
+ title: 'Android (2.3) Browser \u2014 Nexus S', |
+ value: |
+ 'Mozilla/5.0 (Linux; U; Android 2.3.6; en-us; Nexus S Build/GRK39F) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1' |
+ } |
+ ] |
+ }, |
+ { |
+ title: 'BlackBerry', |
+ values: [ |
+ { |
+ title: 'BlackBerry \u2014 BB10', |
+ value: |
+ 'Mozilla/5.0 (BB10; Touch) AppleWebKit/537.1+ (KHTML, like Gecko) Version/10.0.0.1337 Mobile Safari/537.1+' |
+ }, |
+ { |
+ title: 'BlackBerry \u2014 PlayBook 2.1', |
+ value: |
+ 'Mozilla/5.0 (PlayBook; U; RIM Tablet OS 2.1.0; en-US) AppleWebKit/536.2+ (KHTML, like Gecko) Version/7.2.1.0 Safari/536.2+' |
+ }, |
+ { |
+ title: 'BlackBerry \u2014 9900', |
+ value: |
+ 'Mozilla/5.0 (BlackBerry; U; BlackBerry 9900; en-US) AppleWebKit/534.11+ (KHTML, like Gecko) Version/7.0.0.187 Mobile Safari/534.11+' |
+ } |
+ ] |
+ }, |
+ { |
+ title: 'Chrome', |
+ values: [ |
+ { |
+ title: 'Chrome \u2014 Android Mobile', |
+ value: |
+ 'Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/%s Mobile Safari/537.36' |
+ }, |
+ { |
+ title: 'Chrome \u2014 Android Tablet', |
+ value: |
+ 'Mozilla/5.0 (Linux; Android 4.3; Nexus 7 Build/JSS15Q) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/%s Safari/537.36' |
+ }, |
+ { |
+ title: 'Chrome \u2014 iPhone', |
+ value: |
+ 'Mozilla/5.0 (iPhone; CPU iPhone OS 9_1 like Mac OS X) AppleWebKit/601.1 (KHTML, like Gecko) CriOS/%s Mobile/13B143 Safari/601.1.46' |
+ }, |
+ { |
+ title: 'Chrome \u2014 iPad', |
+ value: |
+ 'Mozilla/5.0 (iPad; CPU OS 9_1 like Mac OS X) AppleWebKit/601.1 (KHTML, like Gecko) CriOS/%s Mobile/13B143 Safari/601.1.46' |
+ }, |
+ { |
+ title: 'Chrome \u2014 Mac', |
+ value: |
+ 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/%s Safari/537.36' |
+ }, |
+ { |
+ title: 'Chrome \u2014 Windows', |
+ value: 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/%s Safari/537.36' |
+ } |
+ ] |
+ }, |
+ { |
+ title: 'Edge', |
+ values: [ |
+ { |
+ title: 'Edge \u2014 Windows', |
+ value: |
+ 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.135 Safari/537.36 Edge/12.10240' |
+ }, |
+ { |
+ title: 'Edge \u2014 Mobile', |
+ value: |
+ 'Mozilla/5.0 (Windows Phone 10.0; Android 4.2.1; Microsoft; Lumia 640 XL LTE) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.135 Mobile Safari/537.36 Edge/12.10166' |
+ }, |
+ { |
+ title: 'Edge \u2014 XBox', |
+ value: |
+ 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; Xbox; Xbox One) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.135 Safari/537.36 Edge/13.10586' |
+ } |
+ ] |
+ }, |
+ { |
+ title: 'Firefox', |
+ values: [ |
+ { |
+ title: 'Firefox \u2014 Android Mobile', |
+ value: 'Mozilla/5.0 (Android 4.4; Mobile; rv:46.0) Gecko/46.0 Firefox/46.0' |
+ }, |
+ { |
+ title: 'Firefox \u2014 Android Tablet', |
+ value: 'Mozilla/5.0 (Android 4.4; Tablet; rv:46.0) Gecko/46.0 Firefox/46.0' |
+ }, |
+ { |
+ title: 'Firefox \u2014 iPhone', |
+ value: |
+ 'Mozilla/5.0 (iPhone; CPU iPhone OS 8_3 like Mac OS X) AppleWebKit/600.1.4 (KHTML, like Gecko) FxiOS/1.0 Mobile/12F69 Safari/600.1.4' |
+ }, |
+ { |
+ title: 'Firefox \u2014 iPad', |
+ value: |
+ 'Mozilla/5.0 (iPad; CPU iPhone OS 8_3 like Mac OS X) AppleWebKit/600.1.4 (KHTML, like Gecko) FxiOS/1.0 Mobile/12F69 Safari/600.1.4' |
+ }, |
+ { |
+ title: 'Firefox \u2014 Mac', |
+ value: 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10.11; rv:46.0) Gecko/20100101 Firefox/46.0' |
+ }, |
+ { |
+ title: 'Firefox \u2014 Windows', |
+ value: 'Mozilla/5.0 (Windows NT 10.0; WOW64; rv:46.0) Gecko/20100101 Firefox/46.0' |
+ } |
+ ] |
+ }, |
+ { |
+ title: 'Googlebot', |
+ values: [ |
+ {title: 'Googlebot', value: 'Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)'}, { |
+ title: 'Googlebot Smartphone', |
+ value: |
+ 'Mozilla/5.0 (Linux; Android 6.0.1; Nexus 5X Build/MMB29P) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2272.96 Mobile Safari/537.36 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)' |
+ } |
+ ] |
+ }, |
+ { |
+ title: 'Internet Explorer', |
+ values: [ |
+ {title: 'Internet Explorer 11', value: 'Mozilla/5.0 (Windows NT 10.0; WOW64; Trident/7.0; rv:11.0) like Gecko'}, |
+ {title: 'Internet Explorer 10', value: 'Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; WOW64; Trident/6.0)'}, |
+ {title: 'Internet Explorer 9', value: 'Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0)'}, |
+ {title: 'Internet Explorer 8', value: 'Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.0; Trident/4.0)'}, |
+ {title: 'Internet Explorer 7', value: 'Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0)'} |
+ ] |
+ }, |
+ { |
+ title: 'Opera', |
+ values: [ |
+ { |
+ title: 'Opera \u2014 Mac', |
+ value: |
+ 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2661.87 Safari/537.36 OPR/37.0.2178.31' |
+ }, |
+ { |
+ title: 'Opera \u2014 Windows', |
+ value: |
+ 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2661.87 Safari/537.36 OPR/37.0.2178.31' |
+ }, |
+ { |
+ title: 'Opera (Presto) \u2014 Mac', |
+ value: 'Opera/9.80 (Macintosh; Intel Mac OS X 10.9.1) Presto/2.12.388 Version/12.16' |
+ }, |
+ {title: 'Opera (Presto) \u2014 Windows', value: 'Opera/9.80 (Windows NT 6.1) Presto/2.12.388 Version/12.16'}, { |
+ title: 'Opera Mobile \u2014 Android Mobile', |
+ value: 'Opera/12.02 (Android 4.1; Linux; Opera Mobi/ADR-1111101157; U; en-US) Presto/2.9.201 Version/12.02' |
+ }, |
+ { |
+ title: 'Opera Mini \u2014 iOS', |
+ value: 'Opera/9.80 (iPhone; Opera Mini/8.0.0/34.2336; U; en) Presto/2.8.119 Version/11.10' |
+ } |
+ ] |
+ }, |
+ { |
+ title: 'Safari', |
+ values: [ |
+ { |
+ title: 'Safari \u2014 iPad iOS 9', |
+ value: |
+ 'Mozilla/5.0 (iPad; CPU OS 9_1 like Mac OS X) AppleWebKit/601.1.46 (KHTML, like Gecko) Version/9.0 Mobile/13B137 Safari/601.1' |
+ }, |
+ { |
+ title: 'Safari \u2014 iPhone iOS 9', |
+ value: |
+ 'Mozilla/5.0 (iPhone; CPU iPhone OS 9_1 like Mac OS X) AppleWebKit/601.1.46 (KHTML, like Gecko) Version/9.0 Mobile/13B137 Safari/601.1' |
+ }, |
+ { |
+ title: 'Safari \u2014 Mac', |
+ value: |
+ 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_3) AppleWebKit/537.75.14 (KHTML, like Gecko) Version/7.0.3 Safari/7046A194A' |
+ } |
+ ] |
+ }, |
+ { |
+ title: 'UC Browser', |
+ values: [ |
+ { |
+ title: 'UC Browser \u2014 Android Mobile', |
+ value: |
+ 'Mozilla/5.0 (Linux; U; Android 4.4.4; en-US; XT1022 Build/KXC21.5-40) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 UCBrowser/10.7.0.636 U3/0.8.0 Mobile Safari/534.30' |
+ }, |
+ { |
+ title: 'UC Browser \u2014 iOS', |
+ value: 'UCWEB/2.0 (iPad; U; CPU OS 7_1 like Mac OS X; en; iPad3,6) U2/1.0.0 UCBrowser/9.3.1.344' |
+ }, |
+ { |
+ title: 'UC Browser \u2014 Windows Phone', |
+ value: |
+ 'NokiaX2-02/2.0 (11.79) Profile/MIDP-2.1 Configuration/CLDC-1.1 Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; Trident/4.0; SLCC2;.NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; InfoPath.2) UCBrowser8.4.0.159/70/352' |
+ } |
+ ] |
+ } |
]; |