chrome-devtools-frontend 1.0.1669021 → 1.0.1672557

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.
Files changed (302) hide show
  1. package/.agents/skills/fixing-skipped-tests/SKILL.md +6 -6
  2. package/.agents/skills/gerrit-cli/SKILL.md +4 -10
  3. package/.agents/skills/gerrit-cli/references/commands.md +45 -2
  4. package/.agents/skills/gerrit-cli/references/workflows.md +7 -0
  5. package/.agents/skills/gerrit-cli/scripts/import_upstream.py +34 -152
  6. package/config/typescript/tsconfig.eslint.json +1 -1
  7. package/docs/contributing/settings-experiments-features.md +2 -8
  8. package/docs/ecosystem/automatic_workspace_folders.md +0 -19
  9. package/eslint.config.mjs +5 -5
  10. package/front_end/core/common/Lazy.ts +3 -3
  11. package/front_end/core/common/SettingRegistration.ts +0 -7
  12. package/front_end/core/common/Settings.ts +0 -38
  13. package/front_end/core/host/UserMetrics.ts +187 -953
  14. package/front_end/core/host/UserMetricsEnums.ts +949 -0
  15. package/front_end/core/root/Runtime.ts +21 -138
  16. package/front_end/core/sdk/CSSMetadata.ts +70 -65
  17. package/front_end/core/sdk/CategorizedBreakpoint.ts +0 -1
  18. package/front_end/core/sdk/ChildTargetManager.ts +0 -2
  19. package/front_end/core/sdk/EmulationModel.ts +0 -2
  20. package/front_end/core/sdk/EventBreakpointsModel.ts +0 -4
  21. package/front_end/core/sdk/NetworkManager.ts +0 -3
  22. package/front_end/core/sdk/PageResourceLoader.ts +9 -9
  23. package/front_end/core/sdk/RehydratingConnection.ts +52 -4
  24. package/front_end/core/sdk/Target.ts +0 -4
  25. package/front_end/devtools_compatibility.js +886 -0
  26. package/front_end/entrypoints/inspector_main/RenderingOptions.ts +7 -6
  27. package/front_end/entrypoints/main/ExecutionContextSelector.ts +0 -1
  28. package/front_end/entrypoints/main/MainImpl.ts +18 -22
  29. package/front_end/foundation/Universe.ts +7 -2
  30. package/front_end/generated/InspectorBackendCommands.ts +3 -10
  31. package/front_end/generated/{SupportedCSSProperties.js → SupportedCSSProperties.ts} +16 -0
  32. package/front_end/generated/protocol-mapping.d.ts +0 -42
  33. package/front_end/generated/protocol-proxy-api.d.ts +0 -38
  34. package/front_end/generated/protocol.ts +9 -169
  35. package/front_end/models/ai_assistance/AiAgent2.ts +11 -3
  36. package/front_end/models/ai_assistance/AiConversation.ts +1 -0
  37. package/front_end/models/ai_assistance/AiHistoryStorage.ts +8 -5
  38. package/front_end/models/ai_assistance/AiSetting.ts +108 -0
  39. package/front_end/models/ai_assistance/AiUtils.ts +47 -0
  40. package/front_end/models/ai_assistance/ChangeManager.ts +1 -0
  41. package/front_end/models/ai_assistance/ExtensionScope.ts +3 -12
  42. package/front_end/models/ai_assistance/agents/AiAgent.ts +11 -18
  43. package/front_end/models/ai_assistance/agents/ContextSelectionAgent.ts +3 -0
  44. package/front_end/models/ai_assistance/agents/ExecuteJavascript.ts +42 -17
  45. package/front_end/models/ai_assistance/agents/PerformanceAgent.snapshot.txt +1 -1
  46. package/front_end/models/ai_assistance/agents/PerformanceAgent.ts +3 -2
  47. package/front_end/models/ai_assistance/agents/StorageAgent.ts +253 -155
  48. package/front_end/models/ai_assistance/agents/StylingAgent.snapshot.txt +2 -2
  49. package/front_end/models/ai_assistance/ai_assistance.ts +4 -0
  50. package/front_end/models/ai_assistance/contexts/PerformanceTraceContext.ts +12 -6
  51. package/front_end/models/ai_assistance/data_formatters/FileFormatter.ts +3 -1
  52. package/front_end/models/ai_assistance/data_formatters/NetworkRequestFormatter.ts +1 -0
  53. package/front_end/models/ai_assistance/data_formatters/PerformanceInsightFormatter.ts +4 -3
  54. package/front_end/models/ai_assistance/data_formatters/PerformanceTraceFormatter.snapshot.txt +1 -1
  55. package/front_end/models/ai_assistance/data_formatters/PerformanceTraceFormatter.ts +1 -0
  56. package/front_end/models/ai_assistance/injected.ts +1 -0
  57. package/front_end/models/ai_assistance/performance/AICallTree.ts +1 -0
  58. package/front_end/models/ai_assistance/skills/Skill.ts +1 -1
  59. package/front_end/models/ai_assistance/skills/SkillRegistry.ts +2 -0
  60. package/front_end/models/ai_assistance/skills/performance.md +10 -0
  61. package/front_end/models/ai_assistance/tools/ExecuteJavaScript.ts +52 -5
  62. package/front_end/models/ai_assistance/tools/GetElementAccessibilityDetails.ts +4 -4
  63. package/front_end/models/ai_assistance/tools/GetLighthouseAudits.ts +4 -4
  64. package/front_end/models/ai_assistance/tools/GetNetworkRequestDetails.ts +5 -4
  65. package/front_end/models/ai_assistance/tools/GetStyles.ts +5 -4
  66. package/front_end/models/ai_assistance/tools/ListNetworkRequests.ts +5 -4
  67. package/front_end/models/ai_assistance/tools/README.md +1 -1
  68. package/front_end/models/ai_assistance/tools/RecordPerformanceTrace.ts +63 -0
  69. package/front_end/models/ai_assistance/tools/ResolveDevtoolsNodePath.ts +5 -5
  70. package/front_end/models/ai_assistance/tools/Tool.ts +118 -24
  71. package/front_end/models/ai_assistance/tools/ToolRegistry.ts +2 -0
  72. package/front_end/models/badges/UserBadges.ts +2 -0
  73. package/front_end/models/bindings/NetworkProject.ts +5 -0
  74. package/front_end/models/bindings/ResourceScriptMapping.ts +2 -0
  75. package/front_end/models/bindings/ResourceUtils.ts +3 -0
  76. package/front_end/models/crux-manager/CrUXManager.ts +1 -0
  77. package/front_end/models/emulation/DeviceModeModel.ts +140 -7
  78. package/front_end/models/emulation/EmulatedDevices.ts +246 -793
  79. package/front_end/models/issues_manager/IssuesManager.ts +10 -2
  80. package/front_end/models/live-metrics/LiveMetrics.ts +41 -9
  81. package/front_end/models/logs/LogManager.ts +8 -5
  82. package/front_end/models/logs/NetworkLog.ts +1 -0
  83. package/front_end/models/persistence/IsolatedFileSystemManager.ts +21 -3
  84. package/front_end/models/persistence/NetworkPersistenceManager.ts +6 -0
  85. package/front_end/models/project_settings/ProjectSettingsModel.ts +8 -12
  86. package/front_end/models/trace/Processor.ts +42 -10
  87. package/front_end/models/trace/handlers/LayoutShiftsHandler.ts +12 -19
  88. package/front_end/models/trace/handlers/MetaHandler.ts +38 -5
  89. package/front_end/models/trace/insights/CLSCulprits.ts +1 -2
  90. package/front_end/models/trace/insights/CharacterSet.ts +1 -1
  91. package/front_end/models/trace/insights/Common.ts +21 -2
  92. package/front_end/models/trace/insights/DocumentLatency.ts +1 -1
  93. package/front_end/models/trace/insights/LCPBreakdown.ts +7 -6
  94. package/front_end/models/trace/insights/LCPDiscovery.ts +1 -1
  95. package/front_end/models/trace/insights/ModernHTTP.ts +7 -3
  96. package/front_end/models/trace/insights/NetworkDependencyTree.ts +1 -1
  97. package/front_end/models/trace/insights/RenderBlocking.ts +1 -1
  98. package/front_end/models/trace/insights/ThirdParties.ts +5 -2
  99. package/front_end/models/trace/insights/types.ts +11 -6
  100. package/front_end/models/trace/types/Configuration.ts +5 -0
  101. package/front_end/models/trace_source_maps_resolver/SourceMapsResolver.ts +3 -1
  102. package/front_end/models/workspace/IgnoreListManager.ts +2 -0
  103. package/front_end/models/workspace/UISourceCode.ts +2 -0
  104. package/front_end/models/workspace_diff/WorkspaceDiff.ts +4 -0
  105. package/front_end/panels/ai_assistance/AiAssistancePanel.ts +22 -22
  106. package/front_end/panels/ai_assistance/ai_assistance-meta.ts +0 -7
  107. package/front_end/panels/ai_assistance/components/ChatInput.ts +4 -0
  108. package/front_end/panels/ai_assistance/components/ChatMessage.ts +79 -34
  109. package/front_end/panels/ai_assistance/components/WalkthroughView.ts +1 -2
  110. package/front_end/panels/ai_assistance/components/walkthroughView.css +1 -1
  111. package/front_end/panels/application/ApplicationPanelSidebar.ts +9 -106
  112. package/front_end/panels/application/ApplicationPanelTreeElement.ts +1 -1
  113. package/front_end/panels/application/application.ts +0 -10
  114. package/front_end/panels/application/components/components.ts +0 -4
  115. package/front_end/panels/browser_debugger/CategorizedBreakpointsSidebarPane.ts +0 -5
  116. package/front_end/panels/browser_debugger/EventListenerBreakpointsSidebarPane.ts +6 -12
  117. package/front_end/panels/browser_debugger/browser_debugger-meta.ts +5 -3
  118. package/front_end/panels/console/ConsoleFormat.ts +2 -62
  119. package/front_end/panels/console/ConsoleViewMessage.ts +14 -7
  120. package/front_end/panels/elements/ElementsTreeElement.ts +1 -2
  121. package/front_end/panels/emulation/AdvancedApp.ts +1 -2
  122. package/front_end/panels/emulation/DeviceModeToolbar.ts +83 -69
  123. package/front_end/panels/emulation/DeviceModeView.ts +4 -134
  124. package/front_end/panels/emulation/DeviceModeWrapper.ts +52 -69
  125. package/front_end/panels/emulation/MediaQueryInspector.ts +2 -2
  126. package/front_end/panels/emulation/emulation-meta.ts +12 -12
  127. package/front_end/panels/issues/IssuesPane.ts +3 -1
  128. package/front_end/panels/lighthouse/LighthouseController.ts +6 -0
  129. package/front_end/panels/linear_memory_inspector/components/LinearMemoryInspector.ts +17 -21
  130. package/front_end/panels/linear_memory_inspector/components/LinearMemoryNavigator.ts +206 -126
  131. package/front_end/panels/linear_memory_inspector/components/linearMemoryInspector.css +1 -1
  132. package/front_end/panels/mobile_throttling/CalibrationController.ts +1 -1
  133. package/front_end/panels/mobile_throttling/MobileThrottlingSelector.ts +3 -3
  134. package/front_end/panels/mobile_throttling/NetworkPanelIndicator.ts +6 -6
  135. package/front_end/panels/mobile_throttling/NetworkThrottlingSelector.ts +14 -12
  136. package/front_end/panels/mobile_throttling/ThrottlingManager.ts +13 -13
  137. package/front_end/panels/mobile_throttling/ThrottlingPresets.ts +10 -10
  138. package/front_end/panels/mobile_throttling/ThrottlingSettingsTab.ts +28 -28
  139. package/front_end/panels/mobile_throttling/mobile_throttling-meta.ts +6 -6
  140. package/front_end/panels/network/RequestHeadersView.ts +1 -1
  141. package/front_end/panels/network/ResourceChunkView.ts +243 -144
  142. package/front_end/panels/network/ResourceDirectSocketChunkView.ts +52 -29
  143. package/front_end/panels/network/ResourceWebSocketFrameView.ts +21 -35
  144. package/front_end/panels/network/resourceChunkView.css +41 -36
  145. package/front_end/panels/profiler/HeapDetachedElementsDataGrid.ts +21 -12
  146. package/front_end/panels/profiler/profiler.ts +4 -0
  147. package/front_end/panels/recorder/RecorderPanel.ts +6 -14
  148. package/front_end/panels/sensors/LocationsSettingsTab.ts +7 -7
  149. package/front_end/panels/settings/AISettingsTab.ts +75 -31
  150. package/front_end/panels/settings/SettingsScreen.ts +8 -13
  151. package/front_end/panels/settings/components/SyncSection.ts +3 -4
  152. package/front_end/panels/settings/emulation/DevicesSettingsTab.ts +650 -18
  153. package/front_end/panels/settings/emulation/devicesSettingsTab.css +18 -0
  154. package/front_end/panels/settings/settings-meta.ts +0 -1
  155. package/front_end/panels/sources/CategorizedBreakpointL10n.ts +0 -2
  156. package/front_end/panels/sources/DebuggerPausedMessage.ts +11 -5
  157. package/front_end/panels/sources/DebuggerPlugin.ts +1 -1
  158. package/front_end/panels/sources/EditingLocationHistoryManager.ts +12 -9
  159. package/front_end/panels/sources/SourcesPanel.ts +19 -17
  160. package/front_end/panels/sources/SourcesView.ts +191 -96
  161. package/front_end/panels/sources/TabbedEditorContainer.ts +3 -4
  162. package/front_end/panels/sources/WatchExpressionsSidebarPane.ts +2 -5
  163. package/front_end/panels/timeline/TimelinePanel.ts +2 -0
  164. package/front_end/panels/timeline/TimelineUIUtils.ts +15 -0
  165. package/front_end/panels/timeline/components/CWVMetrics.ts +16 -3
  166. package/front_end/panels/timeline/components/cwvMetrics.css +4 -0
  167. package/front_end/panels/timeline/components/liveMetricsView.css +0 -17
  168. package/front_end/panels/timeline/components/metricValueStyles.css +17 -0
  169. package/front_end/panels/timeline/timeline-meta.ts +3 -5
  170. package/front_end/third_party/chromium/README.chromium +1 -1
  171. package/front_end/third_party/codemirror.next/chunk/angular.js +1 -1
  172. package/front_end/third_party/codemirror.next/chunk/codemirror.js +1 -1
  173. package/front_end/third_party/codemirror.next/chunk/codemirror.js.map +1 -1
  174. package/front_end/third_party/codemirror.next/chunk/cpp.js +1 -1
  175. package/front_end/third_party/codemirror.next/chunk/cpp.js.map +1 -1
  176. package/front_end/third_party/codemirror.next/chunk/java.js +1 -1
  177. package/front_end/third_party/codemirror.next/chunk/java.js.map +1 -1
  178. package/front_end/third_party/codemirror.next/chunk/legacy.js +1 -1
  179. package/front_end/third_party/codemirror.next/chunk/less.js +1 -1
  180. package/front_end/third_party/codemirror.next/chunk/less.js.map +1 -1
  181. package/front_end/third_party/codemirror.next/chunk/markdown.js +1 -1
  182. package/front_end/third_party/codemirror.next/chunk/markdown.js.map +1 -1
  183. package/front_end/third_party/codemirror.next/chunk/php.js +1 -1
  184. package/front_end/third_party/codemirror.next/chunk/php.js.map +1 -1
  185. package/front_end/third_party/codemirror.next/chunk/python.js +1 -1
  186. package/front_end/third_party/codemirror.next/chunk/python.js.map +1 -1
  187. package/front_end/third_party/codemirror.next/chunk/sass.js +1 -1
  188. package/front_end/third_party/codemirror.next/chunk/sass.js.map +1 -1
  189. package/front_end/third_party/codemirror.next/chunk/svelte.js +1 -1
  190. package/front_end/third_party/codemirror.next/chunk/svelte.js.map +1 -1
  191. package/front_end/third_party/codemirror.next/chunk/vue.js +1 -1
  192. package/front_end/third_party/codemirror.next/chunk/wast.js +1 -1
  193. package/front_end/third_party/codemirror.next/chunk/wast.js.map +1 -1
  194. package/front_end/third_party/codemirror.next/chunk/xml.js +1 -1
  195. package/front_end/third_party/codemirror.next/chunk/xml.js.map +1 -1
  196. package/front_end/third_party/codemirror.next/codemirror.next.d.ts +1332 -193
  197. package/front_end/third_party/codemirror.next/codemirror.next.js +1 -1
  198. package/front_end/third_party/codemirror.next/rebuild.sh +1 -1
  199. package/front_end/third_party/puppeteer/README.chromium +2 -2
  200. package/front_end/third_party/puppeteer/package/lib/es5-iife/puppeteer-core-browser.d.ts +64 -15
  201. package/front_end/third_party/puppeteer/package/lib/es5-iife/puppeteer-core-browser.js +65 -16
  202. package/front_end/third_party/puppeteer/package/lib/puppeteer/api/Page.d.ts +50 -7
  203. package/front_end/third_party/puppeteer/package/lib/puppeteer/api/Page.d.ts.map +1 -1
  204. package/front_end/third_party/puppeteer/package/lib/puppeteer/api/Page.js.map +1 -1
  205. package/front_end/third_party/puppeteer/package/lib/puppeteer/bidi/BidiOverCdp.d.ts +2 -1
  206. package/front_end/third_party/puppeteer/package/lib/puppeteer/bidi/BidiOverCdp.d.ts.map +1 -1
  207. package/front_end/third_party/puppeteer/package/lib/puppeteer/bidi/BidiOverCdp.js +5 -5
  208. package/front_end/third_party/puppeteer/package/lib/puppeteer/bidi/BidiOverCdp.js.map +1 -1
  209. package/front_end/third_party/puppeteer/package/lib/puppeteer/bidi/Connection.d.ts +2 -1
  210. package/front_end/third_party/puppeteer/package/lib/puppeteer/bidi/Connection.d.ts.map +1 -1
  211. package/front_end/third_party/puppeteer/package/lib/puppeteer/bidi/Connection.js +8 -6
  212. package/front_end/third_party/puppeteer/package/lib/puppeteer/bidi/Connection.js.map +1 -1
  213. package/front_end/third_party/puppeteer/package/lib/puppeteer/bidi/Dialog.d.ts.map +1 -1
  214. package/front_end/third_party/puppeteer/package/lib/puppeteer/bidi/Dialog.js +3 -0
  215. package/front_end/third_party/puppeteer/package/lib/puppeteer/bidi/Dialog.js.map +1 -1
  216. package/front_end/third_party/puppeteer/package/lib/puppeteer/cdp/Browser.d.ts.map +1 -1
  217. package/front_end/third_party/puppeteer/package/lib/puppeteer/cdp/Browser.js +16 -1
  218. package/front_end/third_party/puppeteer/package/lib/puppeteer/cdp/Browser.js.map +1 -1
  219. package/front_end/third_party/puppeteer/package/lib/puppeteer/cdp/Connection.d.ts +5 -1
  220. package/front_end/third_party/puppeteer/package/lib/puppeteer/cdp/Connection.d.ts.map +1 -1
  221. package/front_end/third_party/puppeteer/package/lib/puppeteer/cdp/Connection.js +11 -6
  222. package/front_end/third_party/puppeteer/package/lib/puppeteer/cdp/Connection.js.map +1 -1
  223. package/front_end/third_party/puppeteer/package/lib/puppeteer/cdp/Dialog.d.ts.map +1 -1
  224. package/front_end/third_party/puppeteer/package/lib/puppeteer/cdp/Dialog.js +5 -0
  225. package/front_end/third_party/puppeteer/package/lib/puppeteer/cdp/Dialog.js.map +1 -1
  226. package/front_end/third_party/puppeteer/package/lib/puppeteer/cdp/NetworkManager.d.ts.map +1 -1
  227. package/front_end/third_party/puppeteer/package/lib/puppeteer/cdp/NetworkManager.js +10 -0
  228. package/front_end/third_party/puppeteer/package/lib/puppeteer/cdp/NetworkManager.js.map +1 -1
  229. package/front_end/third_party/puppeteer/package/lib/puppeteer/common/BrowserConnector.js +4 -3
  230. package/front_end/third_party/puppeteer/package/lib/puppeteer/common/BrowserConnector.js.map +1 -1
  231. package/front_end/third_party/puppeteer/package/lib/puppeteer/common/Debug.d.ts +27 -2
  232. package/front_end/third_party/puppeteer/package/lib/puppeteer/common/Debug.d.ts.map +1 -1
  233. package/front_end/third_party/puppeteer/package/lib/puppeteer/common/Debug.js +12 -1
  234. package/front_end/third_party/puppeteer/package/lib/puppeteer/common/Debug.js.map +1 -1
  235. package/front_end/third_party/puppeteer/package/lib/puppeteer/common/util.d.ts +2 -2
  236. package/front_end/third_party/puppeteer/package/lib/puppeteer/common/util.d.ts.map +1 -1
  237. package/front_end/third_party/puppeteer/package/lib/puppeteer/common/util.js +2 -2
  238. package/front_end/third_party/puppeteer/package/lib/puppeteer/common/util.js.map +1 -1
  239. package/front_end/third_party/puppeteer/package/lib/puppeteer/node/ChromeLauncher.d.ts.map +1 -1
  240. package/front_end/third_party/puppeteer/package/lib/puppeteer/node/ChromeLauncher.js +2 -0
  241. package/front_end/third_party/puppeteer/package/lib/puppeteer/node/ChromeLauncher.js.map +1 -1
  242. package/front_end/third_party/puppeteer/package/lib/puppeteer/node/ScreenRecorder.d.ts +2 -1
  243. package/front_end/third_party/puppeteer/package/lib/puppeteer/node/ScreenRecorder.d.ts.map +1 -1
  244. package/front_end/third_party/puppeteer/package/lib/puppeteer/node/ScreenRecorder.js +5 -4
  245. package/front_end/third_party/puppeteer/package/lib/puppeteer/node/ScreenRecorder.js.map +1 -1
  246. package/front_end/third_party/puppeteer/package/lib/puppeteer/revisions.d.ts +3 -3
  247. package/front_end/third_party/puppeteer/package/lib/puppeteer/revisions.js +3 -3
  248. package/front_end/third_party/puppeteer/package/lib/puppeteer/util/version.d.ts +1 -1
  249. package/front_end/third_party/puppeteer/package/lib/puppeteer/util/version.js +1 -1
  250. package/front_end/third_party/puppeteer/package/lib/types.d.ts +64 -15
  251. package/front_end/third_party/puppeteer/package/package.json +2 -2
  252. package/front_end/third_party/puppeteer/package/src/api/Page.ts +50 -7
  253. package/front_end/third_party/puppeteer/package/src/bidi/BidiOverCdp.ts +9 -7
  254. package/front_end/third_party/puppeteer/package/src/bidi/Connection.ts +9 -6
  255. package/front_end/third_party/puppeteer/package/src/bidi/Dialog.ts +4 -0
  256. package/front_end/third_party/puppeteer/package/src/cdp/Browser.ts +24 -1
  257. package/front_end/third_party/puppeteer/package/src/cdp/Connection.ts +11 -6
  258. package/front_end/third_party/puppeteer/package/src/cdp/Dialog.ts +7 -0
  259. package/front_end/third_party/puppeteer/package/src/cdp/NetworkManager.ts +11 -0
  260. package/front_end/third_party/puppeteer/package/src/common/BrowserConnector.ts +7 -3
  261. package/front_end/third_party/puppeteer/package/src/common/Debug.ts +30 -5
  262. package/front_end/third_party/puppeteer/package/src/common/util.ts +2 -2
  263. package/front_end/third_party/puppeteer/package/src/node/ChromeLauncher.ts +2 -0
  264. package/front_end/third_party/puppeteer/package/src/node/ScreenRecorder.ts +6 -4
  265. package/front_end/third_party/puppeteer/package/src/revisions.ts +3 -3
  266. package/front_end/third_party/puppeteer/package/src/util/version.ts +1 -1
  267. package/front_end/tsconfig.compatibility.json +2 -1
  268. package/front_end/tsconfig.json +1 -1
  269. package/front_end/ui/components/icon_button/IconButton.ts +1 -1
  270. package/front_end/ui/components/issue_counter/IssueCounter.ts +1 -1
  271. package/front_end/ui/components/settings/SettingCheckbox.ts +4 -7
  272. package/front_end/ui/components/settings/settings.ts +1 -2
  273. package/front_end/ui/legacy/Treeoutline.ts +52 -30
  274. package/front_end/ui/legacy/components/object_ui/CSSStyleSanitizer.ts +74 -0
  275. package/front_end/ui/legacy/components/object_ui/CustomPreviewComponent.ts +6 -1
  276. package/front_end/ui/legacy/components/object_ui/ObjectPropertiesSection.ts +47 -54
  277. package/front_end/ui/legacy/components/object_ui/object_ui.ts +2 -0
  278. package/front_end/ui/legacy/components/quick_open/CommandMenu.ts +5 -27
  279. package/front_end/ui/legacy/components/settings_ui/SettingsUI.ts +10 -12
  280. package/front_end/ui/settings/SettingUIRegistration.ts +0 -8
  281. package/front_end/ui/visual_logging/KnownContextValues.ts +37 -0
  282. package/inspector_overlay/tsconfig.json +8 -2
  283. package/package.json +3 -2
  284. package/.agents/skills/gerrit-cli/scripts/gerrit_client_wrapper.py +0 -47
  285. package/front_end/core/sdk/CSSModel.test.api.ts +0 -102
  286. package/front_end/core/sdk/DOMModel.test.api.ts +0 -104
  287. package/front_end/foundation/Universe.test.api.ts +0 -73
  288. package/front_end/panels/application/SharedStorageEventsView.ts +0 -128
  289. package/front_end/panels/application/SharedStorageItemsView.ts +0 -179
  290. package/front_end/panels/application/SharedStorageListTreeElement.ts +0 -65
  291. package/front_end/panels/application/SharedStorageModel.ts +0 -249
  292. package/front_end/panels/application/SharedStorageTreeElement.ts +0 -40
  293. package/front_end/panels/application/components/SharedStorageAccessGrid.ts +0 -191
  294. package/front_end/panels/application/components/SharedStorageMetadataView.ts +0 -133
  295. package/front_end/panels/application/components/sharedStorageAccessGrid.css +0 -29
  296. package/front_end/panels/application/components/sharedStorageMetadataView.css +0 -29
  297. package/front_end/panels/application/sharedStorageEventsView.css +0 -9
  298. package/front_end/panels/network/OriginalResourceChunkView.ts +0 -340
  299. package/front_end/panels/network/originalResourceChunkView.css +0 -49
  300. package/front_end/ui/components/settings/SettingDeprecationWarning.ts +0 -47
  301. package/front_end/ui/components/settings/settingDeprecationWarning.css +0 -14
  302. /package/front_end/generated/{ARIAProperties.js → ARIAProperties.ts} +0 -0
@@ -6,6 +6,7 @@ import * as Common from '../common/common.js';
6
6
 
7
7
  import {InspectorFrontendHostInstance} from './InspectorFrontendHost.js';
8
8
  import {EnumeratedHistogram} from './InspectorFrontendHostAPI.js';
9
+ import type * as Enums from './UserMetricsEnums.js';
9
10
 
10
11
  export class UserMetrics {
11
12
 
@@ -263,970 +264,203 @@ export class UserMetrics {
263
264
  }
264
265
 
265
266
  /**
266
- * The numeric enum values are not necessarily continuous! It is possible that
267
- * values have been removed, which results in gaps in the sequence of values.
268
- * When adding a new value:
269
- * 1. Add an entry to the bottom of the enum before 'MAX_VALUE'.
270
- * 2. Set the value of the new entry to the current value of 'MAX_VALUE'.
271
- * 2. Increment the value of 'MAX_VALUE' by 1.
272
- * When removing a value which is no longer needed:
273
- * 1. Delete the line with the unneeded value
274
- * 2. Do not update any 'MAX_VALUE' or any other value.
267
+ * Creates a proxy that delays the resolution of UMA enum values until runtime.
268
+ * We do this to decouple the UMA metrics from the TypeScript compilation.
269
+ * This ensures that when DevTools is used with remote debugging or as a
270
+ * custom frontend, the enum boundary values exactly match what the host
271
+ * Chrome binary expects (which is provided via devtools_compatibility.js).
275
272
  */
273
+ function createDynamicEnumProxy<T>(enumName: string): T {
274
+ return new Proxy({}, {
275
+ get(_target, prop) {
276
+ if (typeof prop === 'symbol') {
277
+ return Reflect.get(_target, prop);
278
+ }
279
+
280
+ const metrics =
281
+ // eslint-disable-next-line @typescript-eslint/naming-convention
282
+ (globalThis as {DevToolsMetrics?: Record<string, Record<string, number|string>>}).DevToolsMetrics;
283
+ const enumObj = metrics && metrics[enumName];
284
+
285
+ if (enumObj && prop in enumObj) {
286
+ return enumObj[prop as keyof typeof enumObj];
287
+ }
288
+
289
+ // Support reverse lookups for numeric values.
290
+ if (typeof prop === 'string' && /^\d+$/.test(prop)) {
291
+ const value = Number(prop);
292
+ for (const [key, val] of Object.entries(enumObj || {})) {
293
+ if (val === value) {
294
+ return key;
295
+ }
296
+ }
297
+ }
298
+
299
+ // Return undefined if the property is missing to preserve truthiness fallbacks
300
+ // in hosted mode or when DevToolsMetrics is uninitialized.
301
+ return undefined;
302
+ },
303
+
304
+ has(_target, prop) {
305
+ const metrics =
306
+ // eslint-disable-next-line @typescript-eslint/naming-convention
307
+ (globalThis as {DevToolsMetrics?: Record<string, Record<string, number|string>>}).DevToolsMetrics;
308
+ const enumObj = metrics && metrics[enumName];
309
+ if (enumObj && prop in enumObj) {
310
+ return true;
311
+ }
312
+ if (typeof prop === 'string' && /^\d+$/.test(prop)) {
313
+ return Object.values(enumObj || {}).includes(Number(prop));
314
+ }
315
+ return false;
316
+ },
317
+
318
+ ownKeys(_target) {
319
+ const metrics =
320
+ // eslint-disable-next-line @typescript-eslint/naming-convention
321
+ (globalThis as {DevToolsMetrics?: Record<string, Record<string, number|string>>}).DevToolsMetrics;
322
+ const enumObj = metrics && metrics[enumName];
323
+ return enumObj ? Reflect.ownKeys(enumObj) : [];
324
+ },
325
+
326
+ getOwnPropertyDescriptor(_target, prop) {
327
+ const metrics =
328
+ // eslint-disable-next-line @typescript-eslint/naming-convention
329
+ (globalThis as {DevToolsMetrics?: Record<string, Record<string, number|string>>}).DevToolsMetrics;
330
+ const enumObj = metrics && metrics[enumName];
331
+ if (!enumObj) {
332
+ return undefined;
333
+ }
334
+ return Reflect.getOwnPropertyDescriptor(enumObj, prop);
335
+ },
336
+ }) as T;
337
+ }
338
+
339
+ export type Action = Enums.Action;
340
+ export const Action = createDynamicEnumProxy<typeof Enums.Action>('Action');
341
+
342
+ export type PanelCodes = Enums.PanelCodes;
343
+ export const PanelCodes = createDynamicEnumProxy<typeof Enums.PanelCodes>('PanelCodes');
344
+
345
+ export type MediaTypes = Enums.MediaTypes;
346
+ export const MediaTypes = createDynamicEnumProxy<typeof Enums.MediaTypes>('MediaTypes');
347
+
348
+ export type KeybindSetSettings = Enums.KeybindSetSettings;
349
+ export const KeybindSetSettings = createDynamicEnumProxy<typeof Enums.KeybindSetSettings>('KeybindSetSettings');
350
+
351
+ export type KeyboardShortcutAction = Enums.KeyboardShortcutAction;
352
+ export const KeyboardShortcutAction =
353
+ createDynamicEnumProxy<typeof Enums.KeyboardShortcutAction>('KeyboardShortcutAction');
354
+
355
+ export type IssueOpener = Enums.IssueOpener;
356
+ export const IssueOpener = createDynamicEnumProxy<typeof Enums.IssueOpener>('IssueOpener');
357
+
358
+ export type DevtoolsExperiments = Enums.DevtoolsExperiments;
359
+ export const DevtoolsExperiments = createDynamicEnumProxy<typeof Enums.DevtoolsExperiments>('DevtoolsExperiments');
360
+
361
+ export type IssueExpanded = Enums.IssueExpanded;
362
+ export const IssueExpanded = createDynamicEnumProxy<typeof Enums.IssueExpanded>('IssueExpanded');
363
+
364
+ export type IssueResourceOpened = Enums.IssueResourceOpened;
365
+ export const IssueResourceOpened = createDynamicEnumProxy<typeof Enums.IssueResourceOpened>('IssueResourceOpened');
366
+
367
+ export type IssueCreated = Enums.IssueCreated;
368
+ export const IssueCreated = createDynamicEnumProxy<typeof Enums.IssueCreated>('IssueCreated');
369
+
370
+ export type DeveloperResourceLoaded = Enums.DeveloperResourceLoaded;
371
+ export const DeveloperResourceLoaded =
372
+ createDynamicEnumProxy<typeof Enums.DeveloperResourceLoaded>('DeveloperResourceLoaded');
373
+
374
+ export type DeveloperResourceScheme = Enums.DeveloperResourceScheme;
375
+ export const DeveloperResourceScheme =
376
+ createDynamicEnumProxy<typeof Enums.DeveloperResourceScheme>('DeveloperResourceScheme');
377
+
378
+ export type Language = Enums.Language;
379
+ export const Language = createDynamicEnumProxy<typeof Enums.Language>('Language');
380
+
381
+ export type SyncSetting = Enums.SyncSetting;
382
+ export const SyncSetting = createDynamicEnumProxy<typeof Enums.SyncSetting>('SyncSetting');
383
+
384
+ export type RecordingToggled = Enums.RecordingToggled;
385
+ export const RecordingToggled = createDynamicEnumProxy<typeof Enums.RecordingToggled>('RecordingToggled');
386
+
387
+ export type RecordingAssertion = Enums.RecordingAssertion;
388
+ export const RecordingAssertion = createDynamicEnumProxy<typeof Enums.RecordingAssertion>('RecordingAssertion');
389
+
390
+ export type RecordingReplayFinished = Enums.RecordingReplayFinished;
391
+ export const RecordingReplayFinished =
392
+ createDynamicEnumProxy<typeof Enums.RecordingReplayFinished>('RecordingReplayFinished');
393
+
394
+ export type RecordingReplaySpeed = Enums.RecordingReplaySpeed;
395
+ export const RecordingReplaySpeed = createDynamicEnumProxy<typeof Enums.RecordingReplaySpeed>('RecordingReplaySpeed');
396
+
397
+ export type RecordingReplayStarted = Enums.RecordingReplayStarted;
398
+ export const RecordingReplayStarted =
399
+ createDynamicEnumProxy<typeof Enums.RecordingReplayStarted>('RecordingReplayStarted');
400
+
401
+ export type RecordingEdited = Enums.RecordingEdited;
402
+ export const RecordingEdited = createDynamicEnumProxy<typeof Enums.RecordingEdited>('RecordingEdited');
403
+
404
+ export type RecordingExported = Enums.RecordingExported;
405
+ export const RecordingExported = createDynamicEnumProxy<typeof Enums.RecordingExported>('RecordingExported');
406
+
407
+ export type RecordingCodeToggled = Enums.RecordingCodeToggled;
408
+ export const RecordingCodeToggled = createDynamicEnumProxy<typeof Enums.RecordingCodeToggled>('RecordingCodeToggled');
409
+
410
+ export type RecordingCopiedToClipboard = Enums.RecordingCopiedToClipboard;
411
+ export const RecordingCopiedToClipboard =
412
+ createDynamicEnumProxy<typeof Enums.RecordingCopiedToClipboard>('RecordingCopiedToClipboard');
413
+
414
+ export type ManifestSectionCodes = Enums.ManifestSectionCodes;
415
+ export const ManifestSectionCodes = createDynamicEnumProxy<typeof Enums.ManifestSectionCodes>('ManifestSectionCodes');
276
416
 
277
- /**
278
- * Codes below are used to collect UMA histograms in the Chromium port.
279
- * Do not change the values below, additional actions are needed on the Chromium side
280
- * in order to add more codes.
281
- **/
282
- export enum Action {
283
- /* eslint-disable @typescript-eslint/naming-convention */
284
- WindowDocked = 1,
285
- WindowUndocked = 2,
286
- ScriptsBreakpointSet = 3,
287
- TimelineStarted = 4,
288
- ProfilesCPUProfileTaken = 5,
289
- ProfilesHeapProfileTaken = 6,
290
- ConsoleEvaluated = 8,
291
- FileSavedInWorkspace = 9,
292
- DeviceModeEnabled = 10,
293
- AnimationsPlaybackRateChanged = 11,
294
- RevisionApplied = 12,
295
- FileSystemDirectoryContentReceived = 13,
296
- StyleRuleEdited = 14,
297
- CommandEvaluatedInConsolePanel = 15,
298
- DOMPropertiesExpanded = 16,
299
- ResizedViewInResponsiveMode = 17,
300
- TimelinePageReloadStarted = 18,
301
- ConnectToNodeJSFromFrontend = 19,
302
- ConnectToNodeJSDirectly = 20,
303
- CpuThrottlingEnabled = 21,
304
- CpuProfileNodeFocused = 22,
305
- CpuProfileNodeExcluded = 23,
306
- SelectFileFromFilePicker = 24,
307
- SelectCommandFromCommandMenu = 25,
308
- ChangeInspectedNodeInElementsPanel = 26,
309
- StyleRuleCopied = 27,
310
- CoverageStarted = 28,
311
- LighthouseStarted = 29,
312
- LighthouseFinished = 30,
313
- ShowedThirdPartyBadges = 31,
314
- LighthouseViewTrace = 32,
315
- FilmStripStartedRecording = 33,
316
- CoverageReportFiltered = 34,
317
- CoverageStartedPerBlock = 35,
318
- 'SettingsOpenedFromGear-deprecated' = 36,
319
- 'SettingsOpenedFromMenu-deprecated' = 37,
320
- 'SettingsOpenedFromCommandMenu-deprecated' = 38,
321
- TabMovedToDrawer = 39,
322
- TabMovedToMainPanel = 40,
323
- CaptureCssOverviewClicked = 41,
324
- VirtualAuthenticatorEnvironmentEnabled = 42,
325
- SourceOrderViewActivated = 43,
326
- UserShortcutAdded = 44,
327
- ShortcutRemoved = 45,
328
- ShortcutModified = 46,
329
- CustomPropertyLinkClicked = 47,
330
- CustomPropertyEdited = 48,
331
- ServiceWorkerNetworkRequestClicked = 49,
332
- ServiceWorkerNetworkRequestClosedQuickly = 50,
333
- NetworkPanelServiceWorkerRespondWith = 51,
334
- NetworkPanelCopyValue = 52,
335
- ConsoleSidebarOpened = 53,
336
- PerfPanelTraceImported = 54,
337
- PerfPanelTraceExported = 55,
338
- StackFrameRestarted = 56,
339
- CaptureTestProtocolClicked = 57,
340
- BreakpointRemovedFromRemoveButton = 58,
341
- BreakpointGroupExpandedStateChanged = 59,
342
- HeaderOverrideFileCreated = 60,
343
- HeaderOverrideEnableEditingClicked = 61,
344
- HeaderOverrideHeaderAdded = 62,
345
- HeaderOverrideHeaderEdited = 63,
346
- HeaderOverrideHeaderRemoved = 64,
347
- HeaderOverrideHeadersFileEdited = 65,
348
- PersistenceNetworkOverridesEnabled = 66,
349
- PersistenceNetworkOverridesDisabled = 67,
350
- BreakpointRemovedFromContextMenu = 68,
351
- BreakpointsInFileRemovedFromRemoveButton = 69,
352
- BreakpointsInFileRemovedFromContextMenu = 70,
353
- BreakpointsInFileCheckboxToggled = 71,
354
- BreakpointsInFileEnabledDisabledFromContextMenu = 72,
355
- BreakpointConditionEditedFromSidebar = 73,
356
- WorkspaceTabAddFolder = 74,
357
- WorkspaceTabRemoveFolder = 75,
358
- OverrideTabAddFolder = 76,
359
- OverrideTabRemoveFolder = 77,
360
- WorkspaceSourceSelected = 78,
361
- OverridesSourceSelected = 79,
362
- StyleSheetInitiatorLinkClicked = 80,
363
- BreakpointRemovedFromGutterContextMenu = 81,
364
- BreakpointRemovedFromGutterToggle = 82,
365
- StylePropertyInsideKeyframeEdited = 83,
366
- OverrideContentFromSourcesContextMenu = 84,
367
- OverrideContentFromNetworkContextMenu = 85,
368
- OverrideScript = 86,
369
- OverrideStyleSheet = 87,
370
- OverrideDocument = 88,
371
- OverrideFetchXHR = 89,
372
- OverrideImage = 90,
373
- OverrideFont = 91,
374
- OverrideContentContextMenuSetup = 92,
375
- OverrideContentContextMenuAbandonSetup = 93,
376
- OverrideContentContextMenuActivateDisabled = 94,
377
- OverrideContentContextMenuOpenExistingFile = 95,
378
- OverrideContentContextMenuSaveNewFile = 96,
379
- ShowAllOverridesFromSourcesContextMenu = 97,
380
- ShowAllOverridesFromNetworkContextMenu = 98,
381
- AnimationGroupsCleared = 99,
382
- AnimationsPaused = 100,
383
- AnimationsResumed = 101,
384
- AnimatedNodeDescriptionClicked = 102,
385
- AnimationGroupScrubbed = 103,
386
- AnimationGroupReplayed = 104,
387
- OverrideTabDeleteFolderContextMenu = 105,
388
- WorkspaceDropFolder = 107,
389
- WorkspaceSelectFolder = 108,
390
- OverrideContentContextMenuSourceMappedWarning = 109,
391
- OverrideContentContextMenuRedirectToDeployed = 110,
392
- NewStyleRuleAdded = 111,
393
- TraceExpanded = 112,
394
- InsightConsoleMessageShown = 113,
395
- InsightRequestedViaContextMenu = 114,
396
- InsightRequestedViaHoverButton = 115,
397
- InsightRatedPositive = 117,
398
- InsightRatedNegative = 118,
399
- InsightClosed = 119,
400
- InsightErrored = 120,
401
- InsightHoverButtonShown = 121,
402
- SelfXssWarningConsoleMessageShown = 122,
403
- SelfXssWarningDialogShown = 123,
404
- SelfXssAllowPastingInConsole = 124,
405
- SelfXssAllowPastingInDialog = 125,
406
- ToggleEmulateFocusedPageFromStylesPaneOn = 126,
407
- ToggleEmulateFocusedPageFromStylesPaneOff = 127,
408
- ToggleEmulateFocusedPageFromRenderingTab = 128,
409
- ToggleEmulateFocusedPageFromCommandMenu = 129,
410
- InsightGenerated = 130,
411
- InsightErroredApi = 131,
412
- InsightErroredMarkdown = 132,
413
- ToggleShowWebVitals = 133,
414
- InsightErroredPermissionDenied = 134,
415
- InsightErroredCannotSend = 135,
416
- InsightErroredRequestFailed = 136,
417
- InsightErroredCannotParseChunk = 137,
418
- InsightErroredUnknownChunk = 138,
419
- InsightErroredOther = 139,
420
- AutofillReceived = 140,
421
- AutofillReceivedAndTabAutoOpened = 141,
422
- AnimationGroupSelected = 142,
423
- ScrollDrivenAnimationGroupSelected = 143,
424
- ScrollDrivenAnimationGroupScrubbed = 144,
425
- AiAssistanceOpenedFromElementsPanel = 145,
426
- AiAssistanceOpenedFromStylesTab = 146,
427
- ConsoleFilterByContext = 147,
428
- ConsoleFilterBySource = 148,
429
- ConsoleFilterByUrl = 149,
430
- InsightConsentReminderShown = 150,
431
- InsightConsentReminderCanceled = 151,
432
- InsightConsentReminderConfirmed = 152,
433
- InsightsOnboardingShown = 153,
434
- InsightsOnboardingCanceledOnPage1 = 154,
435
- InsightsOnboardingCanceledOnPage2 = 155,
436
- InsightsOnboardingConfirmed = 156,
437
- InsightsOnboardingNextPage = 157,
438
- InsightsOnboardingPrevPage = 158,
439
- InsightsOnboardingFeatureDisabled = 159,
440
- InsightsOptInTeaserShown = 160,
441
- InsightsOptInTeaserSettingsLinkClicked = 161,
442
- InsightsOptInTeaserConfirmedInSettings = 162,
443
- InsightsReminderTeaserShown = 163,
444
- InsightsReminderTeaserConfirmed = 164,
445
- InsightsReminderTeaserCanceled = 165,
446
- InsightsReminderTeaserSettingsLinkClicked = 166,
447
- InsightsReminderTeaserAbortedInSettings = 167,
448
- GeneratingInsightWithoutDisclaimer = 168,
449
- AiAssistanceOpenedFromElementsPanelFloatingButton = 169,
450
- AiAssistanceOpenedFromNetworkPanel = 170,
451
- AiAssistanceOpenedFromSourcesPanel = 171,
452
- AiAssistanceOpenedFromSourcesPanelFloatingButton = 172,
453
- AiAssistanceOpenedFromPerformancePanelCallTree = 173,
454
- AiAssistanceOpenedFromNetworkPanelFloatingButton = 174,
455
- AiAssistancePanelOpened = 175,
456
- AiAssistanceQuerySubmitted = 176,
457
- AiAssistanceAnswerReceived = 177,
458
- AiAssistanceDynamicSuggestionClicked = 178,
459
- AiAssistanceSideEffectConfirmed = 179,
460
- AiAssistanceSideEffectRejected = 180,
461
- AiAssistanceError = 181,
462
- AiCodeCompletionResponseServedFromCache = 184,
463
- AiCodeCompletionRequestTriggered = 185,
464
- AiCodeCompletionSuggestionDisplayed = 186,
465
- AiCodeCompletionSuggestionAccepted = 187,
466
- AiCodeCompletionError = 188,
467
- AttributeLinkClicked = 189,
468
- InsightRequestedViaTeaser = 190,
469
- InsightTeaserGenerationStarted = 191,
470
- InsightTeaserGenerationCompleted = 192,
471
- InsightTeaserGenerationAborted = 193,
472
- InsightTeaserGenerationErrored = 194,
473
- AiCodeGenerationSuggestionDisplayed = 195,
474
- AiCodeGenerationSuggestionAccepted = 196,
475
- InsightTeaserModelDownloadStarted = 197,
476
- InsightTeaserModelDownloadCompleted = 198,
477
- AiCodeGenerationError = 199,
478
- AiCodeGenerationRequestTriggered = 200,
479
- AiCodeCompletionRequestTriggeredFromConsole = 201,
480
- AiCodeCompletionRequestTriggeredFromSources = 202,
481
- AiCodeCompletionRequestTriggeredFromStyles = 203,
482
- AiCodeGenerationRequestTriggeredFromConsole = 204,
483
- AiCodeGenerationRequestTriggeredFromSources = 205,
484
- AiCodeCompletionFreCompletedFromConsole = 206,
485
- AiCodeCompletionFreCompletedFromSources = 207,
486
- AiAssistanceOpenedFromApplicationPanelFloatingButton = 208,
487
- AiAssistanceOpenedFromApplicationPanel = 209,
488
- MAX_VALUE = 210,
489
- /* eslint-enable @typescript-eslint/naming-convention */
490
- }
491
-
492
- export enum PanelCodes {
493
- /* eslint-disable @typescript-eslint/naming-convention */
494
- elements = 1,
495
- resources = 2,
496
- network = 3,
497
- sources = 4,
498
- timeline = 5,
499
- 'heap-profiler' = 6,
500
- console = 8,
501
- layers = 9,
502
- 'console-view' = 10,
503
- animations = 11,
504
- 'network.config' = 12,
505
- rendering = 13,
506
- sensors = 14,
507
- 'sources.search' = 15,
508
- security = 16,
509
- 'js-profiler' = 17,
510
- lighthouse = 18,
511
- coverage = 19,
512
- 'protocol-monitor' = 20,
513
- 'remote-devices' = 21,
514
- 'web-audio' = 22,
515
- 'changes.changes' = 23,
516
- 'performance.monitor' = 24,
517
- 'release-note' = 25,
518
-
519
- 'sources.quick' = 27,
520
- 'network.blocked-urls' = 28,
521
- 'settings-preferences' = 29,
522
- 'settings-workspace' = 30,
523
- 'settings-experiments' = 31,
524
- 'settings-blackbox' = 32,
525
- 'settings-devices' = 33,
526
- 'settings-throttling-conditions' = 34,
527
- 'settings-emulation-locations' = 35,
528
- 'settings-shortcuts' = 36,
529
- 'issues-pane' = 37,
530
- 'settings-keybinds' = 38,
531
- cssoverview = 39,
532
- 'chrome-recorder' = 40,
533
- 'trust-tokens' = 41,
534
- 'reporting-api' = 42,
535
- 'interest-groups' = 43,
536
- 'back-forward-cache' = 44,
537
- 'service-worker-cache' = 45,
538
- 'background-service-background-fetch' = 46,
539
- 'background-service-background-sync' = 47,
540
- 'background-service-push-messaging' = 48,
541
- 'background-service-notifications' = 49,
542
- 'background-service-payment-handler' = 50,
543
- 'background-service-periodic-background-sync' = 51,
544
- 'service-workers' = 52,
545
- 'app-manifest' = 53,
546
- storage = 54,
547
- cookies = 55,
548
- 'frame-details' = 56,
549
- 'frame-resource' = 57,
550
- 'frame-window' = 58,
551
- 'frame-worker' = 59,
552
- 'dom-storage' = 60,
553
- 'indexed-db' = 61,
554
- 'web-sql' = 62,
555
- 'performance-insights' = 63,
556
- preloading = 64,
557
- 'bounce-tracking-mitigations' = 65,
558
- 'developer-resources' = 66,
559
- 'autofill-view' = 67,
560
- freestyler = 68,
561
- ads = 69,
562
- /* eslint-enable @typescript-eslint/naming-convention */
563
- MAX_VALUE = 70,
564
- }
417
+ export type LighthouseModeRun = Enums.LighthouseModeRun;
418
+ export const LighthouseModeRun = createDynamicEnumProxy<typeof Enums.LighthouseModeRun>('LighthouseModeRun');
565
419
 
566
- export enum MediaTypes {
567
- /* eslint-disable @typescript-eslint/naming-convention */
568
- Unknown = 0,
569
- 'text/css' = 2,
570
- 'text/html' = 3,
571
- 'application/xml' = 4,
572
- 'application/wasm' = 5,
573
- 'application/manifest+json' = 6,
574
- 'application/x-aspx' = 7,
575
- 'application/jsp' = 8,
576
- 'text/x-c++src' = 9,
577
- 'text/x-coffeescript' = 10,
578
- 'application/vnd.dart' = 11,
579
- 'text/typescript' = 12,
580
- 'text/typescript-jsx' = 13,
581
- 'application/json' = 14,
582
- 'text/x-csharp' = 15,
583
- 'text/x-java' = 16,
584
- 'text/x-less' = 17,
585
- 'application/x-httpd-php' = 18,
586
- 'text/x-python' = 19,
587
- 'text/x-sh' = 20,
588
- 'text/x-gss' = 21,
589
- 'text/x-sass' = 22,
590
- 'text/x-scss' = 23,
591
- 'text/markdown' = 24,
592
- 'text/x-clojure' = 25,
593
- 'text/jsx' = 26,
594
- 'text/x-go' = 27,
595
- 'text/x-kotlin' = 28,
596
- 'text/x-scala' = 29,
597
- 'text/x.svelte' = 30,
598
- 'text/javascript+plain' = 31,
599
- 'text/javascript+minified' = 32,
600
- 'text/javascript+sourcemapped' = 33,
601
- 'text/x.angular' = 34,
602
- 'text/x.vue' = 35,
603
- 'text/javascript+snippet' = 36,
604
- 'text/javascript+eval' = 37, // Scripts resulting from console inputs or page "eval"s with no sourceUrl comment.
605
- /* eslint-enable @typescript-eslint/naming-convention */
606
- MAX_VALUE = 38,
607
- }
608
-
609
- export enum KeybindSetSettings {
610
- /* eslint-disable @typescript-eslint/naming-convention */
611
- devToolsDefault = 0,
612
- vsCode = 1,
613
- /* eslint-enable @typescript-eslint/naming-convention */
614
- MAX_VALUE = 2,
615
- }
420
+ export type LighthouseCategoryUsed = Enums.LighthouseCategoryUsed;
421
+ export const LighthouseCategoryUsed =
422
+ createDynamicEnumProxy<typeof Enums.LighthouseCategoryUsed>('LighthouseCategoryUsed');
616
423
 
617
- export enum KeyboardShortcutAction {
618
- /* eslint-disable @typescript-eslint/naming-convention */
619
- OtherShortcut = 0,
620
- 'quick-open.show-command-menu' = 1,
621
- 'console.clear' = 2,
622
- 'console.toggle' = 3,
623
- 'debugger.step' = 4,
624
- 'debugger.step-into' = 5,
625
- 'debugger.step-out' = 6,
626
- 'debugger.step-over' = 7,
627
- 'debugger.toggle-breakpoint' = 8,
628
- 'debugger.toggle-breakpoint-enabled' = 9,
629
- 'debugger.toggle-pause' = 10,
630
- 'elements.edit-as-html' = 11,
631
- 'elements.hide-element' = 12,
632
- 'elements.redo' = 13,
633
- 'elements.toggle-element-search' = 14,
634
- 'elements.undo' = 15,
635
- 'main.search-in-panel.find' = 16,
636
- 'main.toggle-drawer' = 17,
637
- 'network.hide-request-details' = 18,
638
- 'network.search' = 19,
639
- 'network.toggle-recording' = 20,
640
- 'quick-open.show' = 21,
641
- 'settings.show' = 22,
642
- 'sources.search' = 23,
643
- 'background-service.toggle-recording' = 24,
644
- 'components.collect-garbage' = 25,
645
- 'console.clear.history' = 26,
646
- 'console.create-pin' = 27,
647
- 'coverage.start-with-reload' = 28,
648
- 'coverage.toggle-recording' = 29,
649
- 'debugger.breakpoint-input-window' = 30,
650
- 'debugger.evaluate-selection' = 31,
651
- 'debugger.next-call-frame' = 32,
652
- 'debugger.previous-call-frame' = 33,
653
- 'debugger.run-snippet' = 34,
654
- 'debugger.toggle-breakpoints-active' = 35,
655
- 'elements.capture-area-screenshot' = 36,
656
- 'emulation.capture-full-height-screenshot' = 37,
657
- 'emulation.capture-node-screenshot' = 38,
658
- 'emulation.capture-screenshot' = 39,
659
- 'emulation.show-sensors' = 40,
660
- 'emulation.toggle-device-mode' = 41,
661
- 'help.release-notes' = 42,
662
- 'help.report-issue' = 43,
663
- 'input.start-replaying' = 44,
664
- 'input.toggle-pause' = 45,
665
- 'input.toggle-recording' = 46,
666
- 'inspector-main.focus-debuggee' = 47,
667
- 'inspector-main.hard-reload' = 48,
668
- 'inspector-main.reload' = 49,
669
- 'main.debug-reload' = 52,
670
- 'main.next-tab' = 53,
671
- 'main.previous-tab' = 54,
672
- 'main.search-in-panel.cancel' = 55,
673
- 'main.search-in-panel.find-next' = 56,
674
- 'main.search-in-panel.find-previous' = 57,
675
- 'main.toggle-dock' = 58,
676
- 'main.zoom-in' = 59,
677
- 'main.zoom-out' = 60,
678
- 'main.zoom-reset' = 61,
679
- 'network-conditions.network-low-end-mobile' = 62,
680
- 'network-conditions.network-mid-tier-mobile' = 63,
681
- 'network-conditions.network-offline' = 64,
682
- 'network-conditions.network-online' = 65,
683
- 'profiler.heap-toggle-recording' = 66,
684
- 'profiler.js-toggle-recording' = 67,
685
- 'resources.clear' = 68,
686
- 'settings.documentation' = 69,
687
- 'settings.shortcuts' = 70,
688
- 'sources.add-folder-to-workspace' = 71,
689
- 'sources.add-to-watch' = 72,
690
- 'sources.close-all' = 73,
691
- 'sources.close-editor-tab' = 74,
692
- 'sources.create-snippet' = 75,
693
- 'sources.go-to-line' = 76,
694
- 'sources.go-to-member' = 77,
695
- 'sources.jump-to-next-location' = 78,
696
- 'sources.jump-to-previous-location' = 79,
697
- 'sources.rename' = 80,
698
- 'sources.save' = 81,
699
- 'sources.save-all' = 82,
700
- 'sources.switch-file' = 83,
701
- 'timeline.jump-to-next-frame' = 84,
702
- 'timeline.jump-to-previous-frame' = 85,
703
- 'timeline.load-from-file' = 86,
704
- 'timeline.next-recording' = 87,
705
- 'timeline.previous-recording' = 88,
706
- 'timeline.record-reload' = 89,
707
- 'timeline.save-to-file' = 90,
708
- 'timeline.show-history' = 91,
709
- 'timeline.toggle-recording' = 92,
710
- 'sources.increment-css' = 93,
711
- 'sources.increment-css-by-ten' = 94,
712
- 'sources.decrement-css' = 95,
713
- 'sources.decrement-css-by-ten' = 96,
714
- 'layers.reset-view' = 97,
715
- 'layers.pan-mode' = 98,
716
- 'layers.rotate-mode' = 99,
717
- 'layers.zoom-in' = 100,
718
- 'layers.zoom-out' = 101,
719
- 'layers.up' = 102,
720
- 'layers.down' = 103,
721
- 'layers.left' = 104,
722
- 'layers.right' = 105,
723
- 'help.report-translation-issue' = 106,
724
- 'rendering.toggle-prefers-color-scheme' = 107,
725
- 'chrome-recorder.start-recording' = 108,
726
- 'chrome-recorder.replay-recording' = 109,
727
- 'chrome-recorder.toggle-code-view' = 110,
728
- 'chrome-recorder.copy-recording-or-step' = 111,
729
- 'elements.new-style-rule' = 114,
730
- 'elements.refresh-event-listeners' = 115,
731
- 'coverage.clear' = 116,
732
- 'coverage.export' = 117,
733
- 'timeline.dim-third-parties' = 118,
734
- 'main.toggle-drawer-orientation' = 119,
735
- /* eslint-enable @typescript-eslint/naming-convention */
736
- MAX_VALUE = 120,
737
- }
424
+ export type SwatchType = Enums.SwatchType;
425
+ export const SwatchType = createDynamicEnumProxy<typeof Enums.SwatchType>('SwatchType');
738
426
 
739
- /** Update DevToolsIssuesPanelOpenedFrom in tools/metrics/histograms/metadata/dev/enums.xml if new enum is added. **/
740
- export const enum IssueOpener {
741
- CONSOLE_INFO_BAR = 0,
742
- LEARN_MORE_LINK_COEP = 1,
743
- STATUS_BAR_ISSUES_COUNTER = 2,
744
- HAMBURGER_MENU = 3,
745
- ADORNER = 4,
746
- COMMAND_MENU = 5,
747
- MORE_TOOLS_MENU = 6,
748
- MAX_VALUE = 7,
749
- }
427
+ export type BadgeType = Enums.BadgeType;
428
+ export const BadgeType = createDynamicEnumProxy<typeof Enums.BadgeType>('BadgeType');
750
429
 
751
- /**
752
- * This list should contain the currently active Devtools Experiments,
753
- * gaps are expected.
754
- */
755
- export enum DevtoolsExperiments {
756
- /* eslint-disable @typescript-eslint/naming-convention */
757
- 'protocol-monitor' = 13,
758
- 'instrumentation-breakpoints' = 61,
759
- 'durable-messages' = 110,
760
- 'jpeg-xl' = 111,
761
- 'plus-button' = 112,
762
- /* eslint-enable @typescript-eslint/naming-convention */
763
-
764
- // Increment this when new experiments are added.
765
- MAX_VALUE = 113,
766
- }
430
+ export type AnimationsPlaybackRate = Enums.AnimationsPlaybackRate;
431
+ export const AnimationsPlaybackRate =
432
+ createDynamicEnumProxy<typeof Enums.AnimationsPlaybackRate>('AnimationsPlaybackRate');
767
433
 
768
- /** Update DevToolsIssuesPanelIssueExpanded from tools/metrics/histograms/enums.xml if new enum is added. **/
769
- export enum IssueExpanded {
770
- /* eslint-disable @typescript-eslint/naming-convention */
771
- CrossOriginEmbedderPolicy = 0,
772
- MixedContent = 1,
773
- SameSiteCookie = 2,
774
- HeavyAd = 3,
775
- ContentSecurityPolicy = 4,
776
- Other = 5,
777
- Generic = 6,
778
- ThirdPartyPhaseoutCookie = 7,
779
- GenericCookie = 8,
780
- /* eslint-enable @typescript-eslint/naming-convention */
781
- MAX_VALUE = 9,
782
- }
434
+ export type TimelineNavigationSetting = Enums.TimelineNavigationSetting;
435
+ export const TimelineNavigationSetting =
436
+ createDynamicEnumProxy<typeof Enums.TimelineNavigationSetting>('TimelineNavigationSetting');
783
437
 
784
- export enum IssueResourceOpened {
785
- /* eslint-disable @typescript-eslint/naming-convention */
786
- CrossOriginEmbedderPolicyRequest = 0,
787
- CrossOriginEmbedderPolicyElement = 1,
788
- MixedContentRequest = 2,
789
- SameSiteCookieCookie = 3,
790
- SameSiteCookieRequest = 4,
791
- HeavyAdElement = 5,
792
- ContentSecurityPolicyDirective = 6,
793
- ContentSecurityPolicyElement = 7,
794
- /* eslint-enable @typescript-eslint/naming-convention */
795
- MAX_VALUE = 13,
796
- }
438
+ export type BuiltInAiAvailability = Enums.BuiltInAiAvailability;
439
+ export const BuiltInAiAvailability =
440
+ createDynamicEnumProxy<typeof Enums.BuiltInAiAvailability>('BuiltInAiAvailability');
797
441
 
798
- /**
799
- * This list should contain the currently active issue types,
800
- * gaps are expected.
801
- */
802
- export enum IssueCreated {
803
- /* eslint-disable @typescript-eslint/naming-convention */
804
- MixedContentIssue = 0,
805
- 'ContentSecurityPolicyIssue::kInlineViolation' = 1,
806
- 'ContentSecurityPolicyIssue::kEvalViolation' = 2,
807
- 'ContentSecurityPolicyIssue::kURLViolation' = 3,
808
- 'ContentSecurityPolicyIssue::kTrustedTypesSinkViolation' = 4,
809
- 'ContentSecurityPolicyIssue::kTrustedTypesPolicyViolation' = 5,
810
- 'HeavyAdIssue::NetworkTotalLimit' = 6,
811
- 'HeavyAdIssue::CpuTotalLimit' = 7,
812
- 'HeavyAdIssue::CpuPeakLimit' = 8,
813
- 'CrossOriginEmbedderPolicyIssue::CoepFrameResourceNeedsCoepHeader' = 9,
814
- 'CrossOriginEmbedderPolicyIssue::CoopSandboxedIFrameCannotNavigateToCoopPage' = 10,
815
- 'CrossOriginEmbedderPolicyIssue::CorpNotSameOrigin' = 11,
816
- 'CrossOriginEmbedderPolicyIssue::CorpNotSameOriginAfterDefaultedToSameOriginByCoep' = 12,
817
- 'CrossOriginEmbedderPolicyIssue::CorpNotSameSite' = 13,
818
- 'CookieIssue::ExcludeSameSiteNoneInsecure::ReadCookie' = 14,
819
- 'CookieIssue::ExcludeSameSiteNoneInsecure::SetCookie' = 15,
820
- 'CookieIssue::WarnSameSiteNoneInsecure::ReadCookie' = 16,
821
- 'CookieIssue::WarnSameSiteNoneInsecure::SetCookie' = 17,
822
-
823
- 'CookieIssue::ExcludeSameSiteUnspecifiedTreatedAsLax::ReadCookie' = 30,
824
- 'CookieIssue::ExcludeSameSiteUnspecifiedTreatedAsLax::SetCookie' = 31,
825
- 'CookieIssue::WarnSameSiteUnspecifiedLaxAllowUnsafe::ReadCookie' = 32,
826
- 'CookieIssue::WarnSameSiteUnspecifiedLaxAllowUnsafe::SetCookie' = 33,
827
- 'CookieIssue::WarnSameSiteUnspecifiedCrossSiteContext::ReadCookie' = 34,
828
- 'CookieIssue::WarnSameSiteUnspecifiedCrossSiteContext::SetCookie' = 35,
829
- 'SharedArrayBufferIssue::TransferIssue' = 36,
830
- 'SharedArrayBufferIssue::CreationIssue' = 37,
831
-
832
- 'CorsIssue::InsecureLocalNetwork' = 42,
833
- 'CorsIssue::InvalidHeaders' = 44,
834
- 'CorsIssue::WildcardOriginWithCredentials' = 45,
835
- 'CorsIssue::PreflightResponseInvalid' = 46,
836
- 'CorsIssue::OriginMismatch' = 47,
837
- 'CorsIssue::AllowCredentialsRequired' = 48,
838
- 'CorsIssue::MethodDisallowedByPreflightResponse' = 49,
839
- 'CorsIssue::HeaderDisallowedByPreflightResponse' = 50,
840
- 'CorsIssue::RedirectContainsCredentials' = 51,
841
- 'CorsIssue::DisallowedByMode' = 52,
842
- 'CorsIssue::CorsDisabledScheme' = 53,
843
- 'CorsIssue::PreflightMissingAllowExternal' = 54,
844
- 'CorsIssue::PreflightInvalidAllowExternal' = 55,
845
- 'CorsIssue::NoCorsRedirectModeNotFollow' = 57,
846
- 'QuirksModeIssue::QuirksMode' = 58,
847
- 'QuirksModeIssue::LimitedQuirksMode' = 59,
848
- DeprecationIssue = 60,
849
- 'ClientHintIssue::MetaTagAllowListInvalidOrigin' = 61,
850
- 'ClientHintIssue::MetaTagModifiedHTML' = 62,
851
- 'GenericIssue::CrossOriginPortalPostMessageError' = 64,
852
- 'GenericIssue::FormLabelForNameError' = 65,
853
- 'GenericIssue::FormDuplicateIdForInputError' = 66,
854
- 'GenericIssue::FormInputWithNoLabelError' = 67,
855
- 'GenericIssue::FormAutocompleteAttributeEmptyError' = 68,
856
- 'GenericIssue::FormEmptyIdAndNameAttributesForInputError' = 69,
857
- 'GenericIssue::FormAriaLabelledByToNonExistingIdError' = 70,
858
- 'GenericIssue::FormInputAssignedAutocompleteValueToIdOrNameAttributeError' = 71,
859
- 'GenericIssue::FormLabelHasNeitherForNorNestedInputError' = 72,
860
- 'GenericIssue::FormLabelForMatchesNonExistingIdError' = 73,
861
- 'GenericIssue::FormHasPasswordFieldWithoutUsernameFieldError' = 74,
862
- 'GenericIssue::FormInputHasWrongButWellIntendedAutocompleteValueError' = 75,
863
- 'StylesheetLoadingIssue::LateImportRule' = 76,
864
- 'StylesheetLoadingIssue::RequestFailed' = 77,
865
- 'CookieIssue::WarnThirdPartyPhaseout::ReadCookie' = 82,
866
- 'CookieIssue::WarnThirdPartyPhaseout::SetCookie' = 83,
867
- 'CookieIssue::ExcludeThirdPartyPhaseout::ReadCookie' = 84,
868
- 'CookieIssue::ExcludeThirdPartyPhaseout::SetCookie' = 85,
869
- 'ElementAccessibilityIssue::DisallowedSelectChild' = 86,
870
- 'ElementAccessibilityIssue::DisallowedOptGroupChild' = 87,
871
- 'ElementAccessibilityIssue::NonPhrasingContentOptionChild' = 88,
872
- 'ElementAccessibilityIssue::InteractiveContentOptionChild' = 89,
873
- 'ElementAccessibilityIssue::InteractiveContentLegendChild' = 90,
874
- 'SRIMessageSignatureIssue::MissingSignatureHeader' = 91,
875
- 'SRIMessageSignatureIssue::MissingSignatureInputHeader' = 92,
876
- 'SRIMessageSignatureIssue::InvalidSignatureHeader' = 93,
877
- 'SRIMessageSignatureIssue::InvalidSignatureInputHeader' = 94,
878
- 'SRIMessageSignatureIssue::SignatureHeaderValueIsNotByteSequence' = 95,
879
- 'SRIMessageSignatureIssue::SignatureHeaderValueIsParameterized' = 96,
880
- 'SRIMessageSignatureIssue::SignatureHeaderValueIsIncorrectLength' = 97,
881
- 'SRIMessageSignatureIssue::SignatureInputHeaderMissingLabel' = 98,
882
- 'SRIMessageSignatureIssue::SignatureInputHeaderValueNotInnerList' = 99,
883
- 'SRIMessageSignatureIssue::SignatureInputHeaderValueMissingComponents' = 100,
884
- 'SRIMessageSignatureIssue::SignatureInputHeaderInvalidComponentType' = 101,
885
- 'SRIMessageSignatureIssue::SignatureInputHeaderInvalidComponentName' = 102,
886
- 'SRIMessageSignatureIssue::SignatureInputHeaderInvalidHeaderComponentParameter' = 103,
887
- 'SRIMessageSignatureIssue::SignatureInputHeaderInvalidDerivedComponentParameter' = 104,
888
- 'SRIMessageSignatureIssue::SignatureInputHeaderKeyIdLength' = 105,
889
- 'SRIMessageSignatureIssue::SignatureInputHeaderInvalidParameter' = 106,
890
- 'SRIMessageSignatureIssue::SignatureInputHeaderMissingRequiredParameters' = 107,
891
- 'SRIMessageSignatureIssue::ValidationFailedSignatureExpired' = 108,
892
- 'SRIMessageSignatureIssue::ValidationFailedInvalidLength' = 109,
893
- 'SRIMessageSignatureIssue::ValidationFailedSignatureMismatch' = 110,
894
- 'CorsIssue::LocalNetworkAccessPermissionDenied' = 111,
895
- 'SRIMessageSignatureIssue::ValidationFailedIntegrityMismatch' = 112,
896
- 'ElementAccessibilityIssue::InteractiveContentSummaryDescendant' = 113,
897
- 'CorsIssue::InvalidLocalNetworkAccess' = 114,
898
- /* eslint-enable @typescript-eslint/naming-convention */
899
- MAX_VALUE = 115,
900
- }
901
-
902
- export const enum DeveloperResourceLoaded {
903
- LOAD_THROUGH_PAGE_VIA_TARGET = 0,
904
- /* LOAD_THROUGH_PAGE_VIA_FRAME = 1 was barely used */
905
- LOAD_THROUGH_PAGE_FAILURE = 2,
906
- LOAD_THROUGH_PAGE_FALLBACK = 3,
907
- FALLBACK_AFTER_FAILURE = 4,
908
- FALLBACK_PER_OVERRIDE = 5,
909
- FALLBACK_PER_PROTOCOL = 6,
910
- FALLBACK_FAILURE = 7,
911
- MAX_VALUE = 8,
912
- }
913
-
914
- export const enum DeveloperResourceScheme {
915
- OTHER = 0,
916
- UKNOWN = 1,
917
- HTTP = 2,
918
- HTTPS = 3,
919
- HTTP_LOCALHOST = 4,
920
- HTTPS_LOCALHOST = 5,
921
- DATA = 6,
922
- FILE = 7,
923
- BLOB = 8,
924
- MAX_VALUE = 9,
925
- }
926
-
927
- export enum Language {
928
- /* eslint-disable @typescript-eslint/naming-convention */
929
- af = 1,
930
- am = 2,
931
- ar = 3,
932
- as = 4,
933
- az = 5,
934
- be = 6,
935
- bg = 7,
936
- bn = 8,
937
- bs = 9,
938
- ca = 10,
939
- cs = 11,
940
- cy = 12,
941
- da = 13,
942
- de = 14,
943
- el = 15,
944
- 'en-GB' = 16,
945
- 'en-US' = 17,
946
- 'es-419' = 18,
947
- es = 19,
948
- et = 20,
949
- eu = 21,
950
- fa = 22,
951
- fi = 23,
952
- fil = 24,
953
- 'fr-CA' = 25,
954
- fr = 26,
955
- gl = 27,
956
- gu = 28,
957
- he = 29,
958
- hi = 30,
959
- hr = 31,
960
- hu = 32,
961
- hy = 33,
962
- id = 34,
963
- is = 35,
964
- it = 36,
965
- ja = 37,
966
- ka = 38,
967
- kk = 39,
968
- km = 40,
969
- kn = 41,
970
- ko = 42,
971
- ky = 43,
972
- lo = 44,
973
- lt = 45,
974
- lv = 46,
975
- mk = 47,
976
- ml = 48,
977
- mn = 49,
978
- mr = 50,
979
- ms = 51,
980
- my = 52,
981
- ne = 53,
982
- nl = 54,
983
- no = 55,
984
- or = 56,
985
- pa = 57,
986
- pl = 58,
987
- 'pt-PT' = 59,
988
- pt = 60,
989
- ro = 61,
990
- ru = 62,
991
- si = 63,
992
- sk = 64,
993
- sl = 65,
994
- sq = 66,
995
- 'sr-Latn' = 67,
996
- sr = 68,
997
- sv = 69,
998
- sw = 70,
999
- ta = 71,
1000
- te = 72,
1001
- th = 73,
1002
- tr = 74,
1003
- uk = 75,
1004
- ur = 76,
1005
- uz = 77,
1006
- vi = 78,
1007
- zh = 79,
1008
- 'zh-HK' = 80,
1009
- 'zh-TW' = 81,
1010
- zu = 82,
1011
- /* eslint-enable @typescript-eslint/naming-convention */
1012
- MAX_VALUE = 83,
1013
- }
1014
-
1015
- export const enum SyncSetting {
1016
- CHROME_SYNC_DISABLED = 1,
1017
- CHROME_SYNC_SETTINGS_DISABLED = 2,
1018
- DEVTOOLS_SYNC_SETTING_DISABLED = 3,
1019
- DEVTOOLS_SYNC_SETTING_ENABLED = 4,
1020
- MAX_VALUE = 5,
1021
- }
1022
-
1023
- export const enum RecordingToggled {
1024
- RECORDING_STARTED = 1,
1025
- RECORDING_FINISHED = 2,
1026
- MAX_VALUE = 3,
1027
- }
1028
-
1029
- export const enum RecordingAssertion {
1030
- ASSERTION_ADDED = 1,
1031
- PROPERTY_ASSERTION_EDITED = 2,
1032
- ATTRIBUTE_ASSERTION_EDITED = 3,
1033
- MAX_VALUE = 4,
1034
- }
1035
-
1036
- export const enum RecordingReplayFinished {
1037
- SUCCESS = 1,
1038
- TIMEOUT_ERROR_SELECTORS = 2,
1039
- TIMEOUT_ERROR_TARGET = 3,
1040
- OTHER_ERROR = 4,
1041
- MAX_VALUE = 5,
1042
- }
1043
-
1044
- export const enum RecordingReplaySpeed {
1045
- NORMAL = 1,
1046
- SLOW = 2,
1047
- VERY_SLOW = 3,
1048
- EXTREMELY_SLOW = 4,
1049
- MAX_VALUE = 5,
1050
- }
1051
-
1052
- export const enum RecordingReplayStarted {
1053
- REPLAY_ONLY = 1,
1054
- REPLAY_WITH_PERFORMANCE_TRACING = 2,
1055
- REPLAY_VIA_EXTENSION = 3,
1056
- MAX_VALUE = 4,
1057
- }
1058
-
1059
- export const enum RecordingEdited {
1060
- SELECTOR_PICKER_USED = 1,
1061
- STEP_ADDED = 2,
1062
- STEP_REMOVED = 3,
1063
- SELECTOR_ADDED = 4,
1064
- SELECTOR_REMOVED = 5,
1065
- SELECTOR_PART_ADDED = 6,
1066
- SELECTOR_PART_EDITED = 7,
1067
- SELECTOR_PART_REMOVED = 8,
1068
- TYPE_CHANGED = 9,
1069
- OTHER_EDITING = 10,
1070
- MAX_VALUE = 11,
1071
- }
1072
-
1073
- export const enum RecordingExported {
1074
- TO_PUPPETEER = 1,
1075
- TO_JSON = 2,
1076
- TO_PUPPETEER_REPLAY = 3,
1077
- TO_EXTENSION = 4,
1078
- TO_LIGHTHOUSE = 5,
1079
- MAX_VALUE = 6,
1080
- }
1081
-
1082
- export const enum RecordingCodeToggled {
1083
- CODE_SHOWN = 1,
1084
- CODE_HIDDEN = 2,
1085
- MAX_VALUE = 3,
1086
- }
1087
-
1088
- export const enum RecordingCopiedToClipboard {
1089
- COPIED_RECORDING_WITH_PUPPETEER = 1,
1090
- COPIED_RECORDING_WITH_JSON = 2,
1091
- COPIED_RECORDING_WITH_REPLAY = 3,
1092
- COPIED_RECORDING_WITH_EXTENSION = 4,
1093
- COPIED_STEP_WITH_PUPPETEER = 5,
1094
- COPIED_STEP_WITH_JSON = 6,
1095
- COPIED_STEP_WITH_REPLAY = 7,
1096
- COPIED_STEP_WITH_EXTENSION = 8,
1097
- MAX_VALUE = 9,
1098
- }
1099
-
1100
- export enum ManifestSectionCodes {
1101
- /* eslint-disable @typescript-eslint/naming-convention -- Indexed access. */
1102
- OtherSection = 0,
1103
- Identity = 1,
1104
- Presentation = 2,
1105
- 'Protocol Handlers' = 3,
1106
- Icons = 4,
1107
- 'Window Controls Overlay' = 5,
1108
- /* eslint-enable @typescript-eslint/naming-convention */
1109
- MAX_VALUE = 6,
1110
- }
1111
-
1112
- export const enum LighthouseModeRun {
1113
- NAVIGATION = 0,
1114
- TIMESPAN = 1,
1115
- SNAPSHOT = 2,
1116
- LEGACY_NAVIGATION = 3,
1117
- MAX_VALUE = 4,
1118
- }
1119
-
1120
- export const enum LighthouseCategoryUsed {
1121
- PERFORMANCE = 0,
1122
- ACCESSIBILITY = 1,
1123
- BEST_PRACTICES = 2,
1124
- SEO = 3,
1125
- PWA = 4,
1126
- PUB_ADS = 5,
1127
- AGENTIC_BROWSING = 6,
1128
- MAX_VALUE = 7,
1129
- }
1130
-
1131
- export const enum SwatchType {
1132
- VAR_LINK = 0,
1133
- ANIMATION_NAME_LINK = 1,
1134
- COLOR = 2,
1135
- ANIMATION_TIMING = 3,
1136
- SHADOW = 4,
1137
- GRID = 5,
1138
- FLEX = 6,
1139
- ANGLE = 7,
1140
- LENGTH = 8,
1141
- POSITION_TRY_LINK = 10,
1142
- ATTR_LINK = 11,
1143
- GRID_LANES = 12,
1144
- MAX_VALUE = 13,
1145
- }
1146
-
1147
- export const enum BadgeType {
1148
- GRID = 0,
1149
- SUBGRID = 1,
1150
- FLEX = 2,
1151
- AD = 3,
1152
- SCROLL_SNAP = 4,
1153
- CONTAINER = 5,
1154
- SLOT = 6,
1155
- TOP_LAYER = 7,
1156
- REVEAL = 8,
1157
- MAX_VALUE = 9,
1158
- }
1159
-
1160
- export const enum AnimationsPlaybackRate {
1161
- PERCENT_100 = 0,
1162
- PERCENT_25 = 1,
1163
- PERCENT_10 = 2,
1164
- OTHER = 3,
1165
- MAX_VALUE = 4,
1166
- }
1167
-
1168
- export const enum TimelineNavigationSetting {
1169
- // Setting is set to classic when the first trace of the session is recorded or loaded.
1170
- CLASSIC_AT_SESSION_FIRST_TRACE = 0,
1171
- // Setting is set to modern when the first trace of the session is recorded or loaded.
1172
- MODERN_AT_SESSION_FIRST_TRACE = 1,
1173
- SWITCHED_TO_CLASSIC = 2,
1174
- SWITCHED_TO_MODERN = 3,
1175
- MAX_VALUE = 4,
1176
- }
1177
-
1178
- export const enum BuiltInAiAvailability {
1179
- UNAVAILABLE_HAS_GPU = 0,
1180
- DOWNLOADABLE_HAS_GPU = 1,
1181
- DOWNLOADING_HAS_GPU = 2,
1182
- AVAILABLE_HAS_GPU = 3,
1183
- DISABLED_HAS_GPU = 4,
1184
- UNAVAILABLE_NO_GPU = 5,
1185
- DOWNLOADABLE_NO_GPU = 6,
1186
- DOWNLOADING_NO_GPU = 7,
1187
- AVAILABLE_NO_GPU = 8,
1188
- DISABLED_NO_GPU = 9,
1189
- MAX_VALUE = 10,
1190
- }
1191
-
1192
- export const enum ResendRequestType {
1193
- XHR = 0,
1194
- FETCH = 1,
1195
- SCRIPT = 2,
1196
- STYLESHEET = 3,
1197
- IMAGE = 4,
1198
- MEDIA = 5,
1199
- FONT = 6,
1200
- WASM = 7,
1201
- MANIFEST = 8,
1202
- TEXT_TRACK = 9,
1203
- SOURCE_MAP_SCRIPT = 10,
1204
- SOURCE_MAP_STYLE_SHEET = 11,
1205
- DOCUMENT = 12,
1206
- PREFETCH = 13,
1207
- PING = 14,
1208
- OTHER = 15,
1209
- MAX_VALUE = 16,
1210
- }
442
+ export type ResendRequestType = Enums.ResendRequestType;
443
+ export const ResendRequestType = createDynamicEnumProxy<typeof Enums.ResendRequestType>('ResendRequestType');
1211
444
 
1212
- const resendRequestTypeMap = new Map<Common.ResourceType.ResourceType, ResendRequestType>([
1213
- [Common.ResourceType.resourceTypes.XHR, ResendRequestType.XHR],
1214
- [Common.ResourceType.resourceTypes.Fetch, ResendRequestType.FETCH],
1215
- [Common.ResourceType.resourceTypes.Script, ResendRequestType.SCRIPT],
1216
- [Common.ResourceType.resourceTypes.Stylesheet, ResendRequestType.STYLESHEET],
1217
- [Common.ResourceType.resourceTypes.Image, ResendRequestType.IMAGE],
1218
- [Common.ResourceType.resourceTypes.Media, ResendRequestType.MEDIA],
1219
- [Common.ResourceType.resourceTypes.Font, ResendRequestType.FONT],
1220
- [Common.ResourceType.resourceTypes.Wasm, ResendRequestType.WASM],
1221
- [Common.ResourceType.resourceTypes.Manifest, ResendRequestType.MANIFEST],
1222
- [Common.ResourceType.resourceTypes.TextTrack, ResendRequestType.TEXT_TRACK],
1223
- [Common.ResourceType.resourceTypes.SourceMapScript, ResendRequestType.SOURCE_MAP_SCRIPT],
1224
- [Common.ResourceType.resourceTypes.SourceMapStyleSheet, ResendRequestType.SOURCE_MAP_STYLE_SHEET],
1225
- [Common.ResourceType.resourceTypes.Document, ResendRequestType.DOCUMENT],
1226
- [Common.ResourceType.resourceTypes.Prefetch, ResendRequestType.PREFETCH],
1227
- [Common.ResourceType.resourceTypes.Ping, ResendRequestType.PING],
445
+ const resendRequestTypeMap = new Map<Common.ResourceType.ResourceType, keyof typeof Enums.ResendRequestType>([
446
+ [Common.ResourceType.resourceTypes.XHR, 'XHR'],
447
+ [Common.ResourceType.resourceTypes.Fetch, 'FETCH'],
448
+ [Common.ResourceType.resourceTypes.Script, 'SCRIPT'],
449
+ [Common.ResourceType.resourceTypes.Stylesheet, 'STYLESHEET'],
450
+ [Common.ResourceType.resourceTypes.Image, 'IMAGE'],
451
+ [Common.ResourceType.resourceTypes.Media, 'MEDIA'],
452
+ [Common.ResourceType.resourceTypes.Font, 'FONT'],
453
+ [Common.ResourceType.resourceTypes.Wasm, 'WASM'],
454
+ [Common.ResourceType.resourceTypes.Manifest, 'MANIFEST'],
455
+ [Common.ResourceType.resourceTypes.TextTrack, 'TEXT_TRACK'],
456
+ [Common.ResourceType.resourceTypes.SourceMapScript, 'SOURCE_MAP_SCRIPT'],
457
+ [Common.ResourceType.resourceTypes.SourceMapStyleSheet, 'SOURCE_MAP_STYLE_SHEET'],
458
+ [Common.ResourceType.resourceTypes.Document, 'DOCUMENT'],
459
+ [Common.ResourceType.resourceTypes.Prefetch, 'PREFETCH'],
460
+ [Common.ResourceType.resourceTypes.Ping, 'PING'],
1228
461
  ]);
1229
462
 
1230
463
  export function resendRequestType(resourceType: Common.ResourceType.ResourceType): ResendRequestType {
1231
- return resendRequestTypeMap.get(resourceType) ?? ResendRequestType.OTHER;
464
+ const key = resendRequestTypeMap.get(resourceType);
465
+ return (key ? ResendRequestType[key] : undefined) ?? ResendRequestType.OTHER;
1232
466
  }