|  | // Copyright 2017 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. | 
|  |  | 
|  | /** | 
|  | * @param {!Protocol.Network.ResourcePriority} priority | 
|  | * @return {string} | 
|  | */ | 
|  | PerfUI.uiLabelForNetworkPriority = function(priority) { | 
|  | return PerfUI._priorityUILabelMap().get(priority) || ''; | 
|  | }; | 
|  |  | 
|  | /** | 
|  | * @param {string} priorityLabel | 
|  | * @return {string} | 
|  | */ | 
|  | PerfUI.uiLabelToNetworkPriority = function(priorityLabel) { | 
|  | if (!PerfUI._uiLabelToPriorityMapInstance) { | 
|  | /** @type {!Map<string, !Protocol.Network.ResourcePriority>} */ | 
|  | PerfUI._uiLabelToPriorityMapInstance = new Map(); | 
|  | PerfUI._priorityUILabelMap().forEach((value, key) => PerfUI._uiLabelToPriorityMapInstance.set(value, key)); | 
|  | } | 
|  | return PerfUI._uiLabelToPriorityMapInstance.get(priorityLabel) || ''; | 
|  | }; | 
|  |  | 
|  | /** | 
|  | * @return {!Map<!Protocol.Network.ResourcePriority, string>} | 
|  | */ | 
|  | PerfUI._priorityUILabelMap = function() { | 
|  | if (PerfUI._priorityUILabelMapInstance) { | 
|  | return PerfUI._priorityUILabelMapInstance; | 
|  | } | 
|  |  | 
|  | /** @type {!Map<!Protocol.Network.ResourcePriority, string>} */ | 
|  | const map = new Map(); | 
|  | map.set(Protocol.Network.ResourcePriority.VeryLow, Common.UIString('Lowest')); | 
|  | map.set(Protocol.Network.ResourcePriority.Low, Common.UIString('Low')); | 
|  | map.set(Protocol.Network.ResourcePriority.Medium, Common.UIString('Medium')); | 
|  | map.set(Protocol.Network.ResourcePriority.High, Common.UIString('High')); | 
|  | map.set(Protocol.Network.ResourcePriority.VeryHigh, Common.UIString('Highest')); | 
|  | PerfUI._priorityUILabelMapInstance = map; | 
|  | return map; | 
|  | }; | 
|  |  | 
|  | /** | 
|  | * @param {!Protocol.Network.ResourcePriority} priority | 
|  | * @return {number} | 
|  | */ | 
|  | PerfUI.networkPriorityWeight = function(priority) { | 
|  | if (!PerfUI._networkPriorityWeights) { | 
|  | /** @type {!Map<!Protocol.Network.ResourcePriority, number>} */ | 
|  | const priorityMap = new Map(); | 
|  | priorityMap.set(Protocol.Network.ResourcePriority.VeryLow, 1); | 
|  | priorityMap.set(Protocol.Network.ResourcePriority.Low, 2); | 
|  | priorityMap.set(Protocol.Network.ResourcePriority.Medium, 3); | 
|  | priorityMap.set(Protocol.Network.ResourcePriority.High, 4); | 
|  | priorityMap.set(Protocol.Network.ResourcePriority.VeryHigh, 5); | 
|  | PerfUI._networkPriorityWeights = priorityMap; | 
|  | } | 
|  | return PerfUI._networkPriorityWeights.get(priority) || 0; | 
|  | }; |