chrome-devtools-frontend 1.0.1514545 → 1.0.1515796

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 (163) hide show
  1. package/AUTHORS +1 -0
  2. package/docs/committers_policy.md +1 -1
  3. package/docs/contributing/infrastructure.md +101 -5
  4. package/front_end/Images/gdp-logo-dark.png +0 -0
  5. package/front_end/Images/gdp-logo-light.png +0 -0
  6. package/front_end/core/common/Settings.ts +11 -32
  7. package/front_end/entrypoints/main/main-meta.ts +2 -2
  8. package/front_end/generated/InspectorBackendCommands.js +4 -4
  9. package/front_end/generated/SupportedCSSProperties.js +12 -0
  10. package/front_end/generated/protocol.ts +10 -1
  11. package/front_end/global_typings/global_defs.d.ts +15 -1
  12. package/front_end/models/ai_assistance/agents/PerformanceAgent.ts +22 -23
  13. package/front_end/models/ai_assistance/agents/PerformanceAnnotationsAgent.ts +6 -7
  14. package/front_end/models/ai_assistance/ai_assistance.ts +3 -0
  15. package/front_end/models/ai_assistance/data_formatters/PerformanceTraceFormatter.snapshot.txt +141 -2
  16. package/front_end/models/ai_assistance/data_formatters/PerformanceTraceFormatter.ts +96 -10
  17. package/front_end/models/ai_code_completion/AiCodeCompletion.ts +123 -55
  18. package/front_end/models/cpu_profile/ProfileTreeModel.ts +1 -1
  19. package/front_end/models/extensions/ExtensionPanel.ts +4 -0
  20. package/front_end/models/heap_snapshot_model/HeapSnapshotModel.ts +5 -1
  21. package/front_end/models/javascript_metadata/NativeFunctions.js +7 -7
  22. package/front_end/models/text_utils/TextUtils.ts +26 -0
  23. package/front_end/models/trace/Processor.ts +1 -1
  24. package/front_end/models/trace/helpers/Trace.ts +1 -1
  25. package/front_end/models/trace/insights/DocumentLatency.ts +9 -7
  26. package/front_end/models/trace/types/Configuration.ts +12 -0
  27. package/front_end/panels/ai_assistance/AiAssistancePanel.ts +6 -7
  28. package/front_end/panels/ai_assistance/components/ChatView.ts +1 -2
  29. package/front_end/panels/application/components/BackForwardCacheStrings.ts +8 -2
  30. package/front_end/panels/common/BadgeNotification.ts +10 -8
  31. package/front_end/panels/common/GdpSignUpDialog.ts +25 -16
  32. package/front_end/panels/common/gdpSignUpDialog.css +10 -14
  33. package/front_end/panels/console/ConsoleView.ts +4 -0
  34. package/front_end/panels/elements/ElementsPanel.ts +4 -0
  35. package/front_end/panels/elements/StylePropertiesSection.ts +4 -4
  36. package/front_end/panels/network/NetworkConfigView.ts +1 -1
  37. package/front_end/panels/network/NetworkLogView.ts +2 -2
  38. package/front_end/panels/network/components/HeaderSectionRow.ts +2 -3
  39. package/front_end/panels/profiler/HeapProfileView.ts +1 -3
  40. package/front_end/panels/profiler/HeapSnapshotView.ts +5 -1
  41. package/front_end/panels/profiler/ProfileDataGrid.ts +4 -0
  42. package/front_end/panels/profiler/ProfileFlameChartDataProvider.ts +7 -29
  43. package/front_end/panels/profiler/ProfileView.ts +4 -0
  44. package/front_end/panels/recorder/components/CreateRecordingView.ts +2 -2
  45. package/front_end/panels/search/SearchView.ts +322 -248
  46. package/front_end/panels/settings/KeybindsSettingsTab.ts +1 -1
  47. package/front_end/panels/settings/SettingsScreen.ts +1 -1
  48. package/front_end/panels/settings/components/SyncSection.ts +59 -14
  49. package/front_end/panels/settings/components/syncSection.css +17 -4
  50. package/front_end/panels/sources/AiCodeCompletionPlugin.ts +4 -7
  51. package/front_end/panels/sources/SourcesView.ts +4 -0
  52. package/front_end/panels/sources/WatchExpressionsSidebarPane.ts +2 -2
  53. package/front_end/panels/timeline/CompatibilityTracksAppender.ts +6 -3
  54. package/front_end/panels/timeline/CountersGraph.ts +5 -5
  55. package/front_end/panels/timeline/TimelineDetailsView.ts +2 -2
  56. package/front_end/panels/timeline/TimelineFlameChartDataProvider.ts +4 -3
  57. package/front_end/panels/timeline/TimelineFlameChartView.ts +9 -4
  58. package/front_end/panels/timeline/TimelineHistoryManager.ts +2 -2
  59. package/front_end/panels/timeline/TimelinePanel.ts +4 -3
  60. package/front_end/panels/timeline/TimelineTreeView.ts +6 -2
  61. package/front_end/panels/timeline/TimelineUIUtils.ts +2 -1
  62. package/front_end/panels/timeline/components/SidebarSingleInsightSet.ts +2 -2
  63. package/front_end/panels/timeline/components/insights/BaseInsightComponent.ts +6 -6
  64. package/front_end/panels/timeline/overlays/OverlaysImpl.ts +2 -2
  65. package/front_end/panels/timeline/overlays/components/EntryLabelOverlay.ts +2 -3
  66. package/front_end/panels/timeline/utils/utils.ts +0 -8
  67. package/front_end/panels/webauthn/WebauthnPane.ts +1 -1
  68. package/front_end/{panels/timeline/utils → services/tracing}/FreshRecording.ts +1 -1
  69. package/front_end/services/tracing/tracing.ts +2 -0
  70. package/front_end/third_party/chromium/README.chromium +1 -1
  71. package/front_end/third_party/puppeteer/README.chromium +2 -2
  72. package/front_end/third_party/puppeteer/package/README.md +6 -3
  73. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/Browser.d.ts +1 -1
  74. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/Page.d.ts +11 -1
  75. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/Page.d.ts.map +1 -1
  76. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/Page.js +2 -2
  77. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/Page.js.map +1 -1
  78. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/Page.d.ts +5 -1
  79. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/Page.d.ts.map +1 -1
  80. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/Page.js +30 -8
  81. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/Page.js.map +1 -1
  82. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/core/BrowsingContext.d.ts.map +1 -1
  83. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/core/BrowsingContext.js +1 -3
  84. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/core/BrowsingContext.js.map +1 -1
  85. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/core/Realm.d.ts +2 -2
  86. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/NetworkManager.d.ts +1 -1
  87. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/NetworkManager.d.ts.map +1 -1
  88. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/NetworkManager.js +8 -2
  89. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/NetworkManager.js.map +1 -1
  90. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/Page.d.ts +5 -1
  91. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/Page.d.ts.map +1 -1
  92. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/Page.js +8 -2
  93. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/Page.js.map +1 -1
  94. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/generated/version.d.ts +1 -1
  95. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/generated/version.js +1 -1
  96. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/injected/injected.d.ts +1 -1
  97. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/BrowserLauncher.d.ts.map +1 -1
  98. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/BrowserLauncher.js +5 -0
  99. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/BrowserLauncher.js.map +1 -1
  100. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/util/Mutex.d.ts +2 -2
  101. package/front_end/third_party/puppeteer/package/lib/es5-iife/puppeteer-core-browser.d.ts +12 -2
  102. package/front_end/third_party/puppeteer/package/lib/es5-iife/puppeteer-core-browser.js +22 -8
  103. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/Browser.d.ts +1 -1
  104. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/Page.d.ts +11 -1
  105. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/Page.d.ts.map +1 -1
  106. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/Page.js +2 -2
  107. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/Page.js.map +1 -1
  108. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/Page.d.ts +5 -1
  109. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/Page.d.ts.map +1 -1
  110. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/Page.js +30 -8
  111. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/Page.js.map +1 -1
  112. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/core/BrowsingContext.d.ts.map +1 -1
  113. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/core/BrowsingContext.js +1 -3
  114. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/core/BrowsingContext.js.map +1 -1
  115. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/NetworkManager.d.ts +1 -1
  116. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/NetworkManager.d.ts.map +1 -1
  117. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/NetworkManager.js +8 -2
  118. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/NetworkManager.js.map +1 -1
  119. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/Page.d.ts +5 -1
  120. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/Page.d.ts.map +1 -1
  121. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/Page.js +8 -2
  122. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/Page.js.map +1 -1
  123. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/generated/version.d.ts +1 -1
  124. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/generated/version.js +1 -1
  125. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/BrowserLauncher.d.ts.map +1 -1
  126. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/BrowserLauncher.js +5 -0
  127. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/BrowserLauncher.js.map +1 -1
  128. package/front_end/third_party/puppeteer/package/lib/types.d.ts +12 -2
  129. package/front_end/third_party/puppeteer/package/package.json +4 -4
  130. package/front_end/third_party/puppeteer/package/src/api/Browser.ts +1 -1
  131. package/front_end/third_party/puppeteer/package/src/api/Page.ts +13 -2
  132. package/front_end/third_party/puppeteer/package/src/bidi/Page.ts +50 -8
  133. package/front_end/third_party/puppeteer/package/src/bidi/core/BrowsingContext.ts +0 -1
  134. package/front_end/third_party/puppeteer/package/src/cdp/NetworkManager.ts +8 -1
  135. package/front_end/third_party/puppeteer/package/src/cdp/Page.ts +21 -5
  136. package/front_end/third_party/puppeteer/package/src/generated/version.ts +1 -1
  137. package/front_end/third_party/puppeteer/package/src/node/BrowserLauncher.ts +12 -0
  138. package/front_end/ui/components/text_editor/config.ts +66 -16
  139. package/front_end/ui/legacy/Dialog.ts +38 -13
  140. package/front_end/ui/legacy/InspectorView.ts +7 -9
  141. package/front_end/ui/legacy/ProgressIndicator.ts +4 -5
  142. package/front_end/ui/legacy/SearchableView.ts +73 -55
  143. package/front_end/ui/legacy/SettingsUI.ts +5 -5
  144. package/front_end/ui/legacy/components/color_picker/Spectrum.ts +1 -4
  145. package/front_end/ui/legacy/components/data_grid/DataGrid.ts +5 -5
  146. package/front_end/ui/legacy/components/data_grid/DataGridElement.ts +4 -2
  147. package/front_end/ui/legacy/components/perf_ui/ChartViewport.ts +2 -2
  148. package/front_end/ui/legacy/components/perf_ui/FilmStripView.ts +2 -2
  149. package/front_end/ui/legacy/components/perf_ui/LineLevelProfile.ts +1 -4
  150. package/front_end/ui/legacy/components/perf_ui/OverviewGrid.ts +3 -3
  151. package/front_end/ui/legacy/components/perf_ui/TimelineOverviewPane.ts +2 -2
  152. package/front_end/ui/legacy/components/source_frame/JSONView.ts +10 -10
  153. package/front_end/ui/legacy/components/source_frame/SourceFrame.ts +4 -0
  154. package/front_end/ui/legacy/components/source_frame/XMLView.ts +4 -0
  155. package/front_end/ui/legacy/components/utils/Linkifier.ts +1 -4
  156. package/front_end/ui/legacy/searchableView.css +0 -4
  157. package/front_end/ui/visual_logging/Debugging.ts +24 -12
  158. package/front_end/ui/visual_logging/KnownContextValues.ts +1 -0
  159. package/package.json +3 -3
  160. package/front_end/Images/src/gdp-logo-standalone.svg +0 -9
  161. /package/front_end/{panels/timeline/utils → models/ai_assistance/performance}/AICallTree.ts +0 -0
  162. /package/front_end/{panels/timeline/utils → models/ai_assistance/performance}/AIContext.ts +0 -0
  163. /package/front_end/{panels/timeline/utils/InsightAIContext.ts → models/ai_assistance/performance/AIQueries.ts} +0 -0
package/AUTHORS CHANGED
@@ -14,6 +14,7 @@
14
14
  AbdAlRahman Gad <abdobngad@gmail.com>
15
15
  Ajay Panthagani <ajaypanthagani321@gmail.com>
16
16
  Alesandro Ortiz <alesandro@alesandroortiz.com>
17
+ Alex Ho <wjhe1016@gmail.com>
17
18
  Alexander Stammbach <alexander@stammbach.io>
18
19
  Alexey Rodionov <fluorescent.hallucinogen@gmail.com>
19
20
  Ameen Basha <ameenbasha111@gmail.com>
@@ -29,7 +29,7 @@ Once you get approval from the existing committers, you'll be added to [chrome-d
29
29
 
30
30
  In the most unfavorable circumstances, the process could extend up to two weeks. Maintain your commitment to writing patches. Even in the uncommon instances where a nomination fails, the objection is frequently something specific to resolve, such as "more patches" or "not enough people are familiar with this person's work."
31
31
 
32
- Two-factor authentication is a requirement for adding your account as a committer. If you haven't done so already, you'll need to set up a security key on your account.
32
+ Two-factor authentication is a requirement for adding your account as a committer. If you haven't done so already, you'll need to set up a security key on your account. For more information about this requirement see [Gerrit ReAuth](https://chromium.googlesource.com/chromium/src/+/main/docs/gerrit_reauth.md).
33
33
 
34
34
  # **Maintaining committer status**
35
35
 
@@ -88,6 +88,12 @@ file in the `infra/config` branch contains the logic that determines
88
88
  which builders are needed to verify a CQ. See `custom_locationsfilters`
89
89
  for the current logic.
90
90
 
91
+ Some of the filters currently in use are:
92
+ - `cpp_debug_extension` builders only trigger on changes related to the extension
93
+ - `dtf_check_no_bundle` builder only trigger on GN changes
94
+ - all other builders will not trigger if only documentation files are updated
95
+
96
+
91
97
  ## Branch cutting process
92
98
 
93
99
  At the end of every release cycle Chromium will cut a new branch for the current release.
@@ -139,11 +145,101 @@ To toggle this behaviour you need to edit `buckets/try.star` file ([example](htt
139
145
  dictionary together with the desired experiment rate percentage; remove it
140
146
  from the list to make it a regular builder
141
147
 
142
- ## Controlling when a builder runs
143
- // TODO
148
+ ## Adding a new builder in CQ
149
+
150
+ To add a new try-builder edit the `buckets/try.start` file to call one of the
151
+ existing functions that generate builder definitions:
152
+ - `try_builder` used for builder with recipes that do not orchestrate other
153
+ builders:
154
+ - build only builders (`dtf_check_no_bundle`)
155
+ - chromium builders (`devtools_frontend_linux_blink_light_rel_fastbuild`)
156
+ - `try_pair` used for builders with orchestrating recipes (delegates to a
157
+ compilator builder before delegating testing to swarming)
158
+
159
+ Alternatively define your own builder function and call it for the instances you
160
+ need (see `presubmit_builder` and `cpp_debug_extension_try`).
161
+
162
+ You will need add your new builder to the `cq_builders.devtools_builders` list.
144
163
 
145
- ## Adding a new builder
146
- // TODO
164
+ To control the CL blocking behaviour of your builder see above.
165
+
166
+ To control if the builder should be not present in the CQ for branches, add your
167
+ builder to `cq_builders.chromium_builders` list.
168
+
169
+ ## Adding a new builder in CI
170
+
171
+ To add a new try-builder edit the `buckets/ci.start` file to add a new
172
+ `builder_descriptor` to the `builders` of `generate_ci_configs` function call.
173
+
174
+ In your descriptor decide for the name of builder, the recipe, any other custom
175
+ properties you might need and for which configurations (consoles) to include
176
+ your builder (`ci` stands for the main waterfall console). [Example](https://chromium.googlesource.com/devtools/devtools-frontend/+/refs/heads/infra/config/buckets/ci.star#:~:text=name%20%3D%20%22-,Linux,-Compile%20Debug%22%2C).
147
177
 
148
178
  ## Anatomy of a CQ build
149
- // TODO
179
+
180
+ In CQ the builders that get most attention are `dtf_*_rel` builders. These builders
181
+ run the devtools/trybot_tester recipe and are responsible with building DevTools
182
+ Frontend and running our tests.
183
+
184
+ Below is a detailed description of what happens in such a build:
185
+ - The recipe will perform the `bot_update` and `gclient runhooks` step where
186
+ the tip-of-tree for devtools-frontend gets checked out, your changes get
187
+ patched on top of it and dependencies get updated.
188
+ - The compilator bot get triggered (`initialization` step)
189
+ - We wait for the compilator bot to finish. This bot is responsible for
190
+ the actual build of devtools-frontend.
191
+ - It does a `bot_update` of its own
192
+ - Generates the GN files (`gn` step)
193
+ - Compiles (`compile`) the project
194
+ - Reads the e2e_non_hosted test lists
195
+ - Creates a CAS archive with project and the compilation output
196
+ - Ouputs the `compilator_properties`
197
+ - Once the compilator is done we read the `compilator_properties` to find
198
+ - the `cas_digest` to be used when triggering tests on swarming
199
+ - the `e2e_non_hosted_test_list` for sharding the e2e tests execution
200
+ - Write the e2e test list at the location where building would have written it
201
+ - The default test run phase starts at `Run tests` step:
202
+ - We trigger all tests on swarming in parallel (`Trigger Tests`) substep.
203
+ - For all types of tests we calculate the command we want to run on swarming
204
+ and trigger a task with that command and the collected CAS digest
205
+ - Before calculating the command for e2e test we read the test list and
206
+ and split it in a number of shards. Each shard will have the allocated
207
+ tests specified in the command.
208
+ - We wait for all swarming task to complete
209
+ - Next we re-run the failed tests in attemt to exonerate their initial
210
+ failures (`Flake exonaration attempt` step):
211
+ - We query ResultDB for any tests that might have failed
212
+ - We collect the failed test names and contruct new commands to re-run
213
+ them on new swarming tasks
214
+ - We wait for all swarming task to complete
215
+ - Finally we will stress test the tests that were added/modified by the
216
+ current CL in the `Detect flakes in new tests` step
217
+ - Run `git diff` to determine which tests were added/modifed
218
+ - Construct the command to be run on swatming
219
+ - Trigger and wait for the swarming tasks to finish
220
+ - Calculate the outcome of the builder:
221
+ - fail the builder if tests failed in the default run and the exoneration
222
+ run was unsuccesful
223
+ - fail the builder if tests failed in the deflaking phase
224
+ - otherwise report build as passing
225
+
226
+ ### Common build failures
227
+
228
+ The first place where a build usualy fails is on `bot_update` and this usually
229
+ happens because your changes cannot be applied on top of the current tip-of-tree.
230
+ Rebase your CL and solve any merge conflicts and this failure will go away.
231
+
232
+ Another common failure is a compilation failure. You can insepct the compilator
233
+ builder (`dtf_*_compiler_rel`) separately by following the link next to the
234
+ `compilator steps` step.
235
+
236
+ If you have too many tests failing in the default phase the exoneration phase
237
+ gets skipped.
238
+
239
+ A test might not get exonerated in your build even if your CL does not touch
240
+ anything related to it. The exoneration phase will re-run previously faling
241
+ tests a number of times and at any point the test passes the tests gets
242
+ exonerated. Therefore a test can have a recent history of getting exonerated
243
+ even if it consitently failed 4 times out of 5 runs for some time. Try to
244
+ correlate your failure with a luci-analysys report on this test and skip it
245
+ untill the flakiness gets resolved.
@@ -133,7 +133,6 @@ export class Settings {
133
133
  * If you are creating a setting that you expect the user to control, and
134
134
  * sync, prefer {@see createSetting}
135
135
  */
136
- // TODO(crbug.com/1172300) Ignored during the jsdoc to ts migration
137
136
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
138
137
  moduleSetting<T = any>(settingName: string): Setting<T> {
139
138
  const setting = this.moduleSettings.get(settingName) as Setting<T>;
@@ -589,7 +588,6 @@ export class Setting<V> {
589
588
  }
590
589
  }
591
590
 
592
- // TODO(crbug.com/1172300) Ignored during the jsdoc to ts migration
593
591
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
594
592
  export class RegExpSetting extends Setting<any> {
595
593
  #regexFlags: string|undefined;
@@ -643,6 +641,9 @@ export class RegExpSetting extends Setting<any> {
643
641
  }
644
642
  }
645
643
 
644
+ // The VersionController does a lot of mapping and restructuring which often need
645
+ // typecasting to any, allow it in there
646
+ /* eslint-disable @typescript-eslint/no-explicit-any */
646
647
  export class VersionController {
647
648
  static readonly GLOBAL_VERSION_SETTING_NAME = 'inspectorVersion';
648
649
  static readonly SYNCED_VERSION_SETTING_NAME = 'syncedInspectorVersion';
@@ -798,16 +799,16 @@ export class VersionController {
798
799
 
799
800
  const newSetting = Settings.instance().createSetting(newName, {});
800
801
  const newValue = newSetting.get() || {};
801
- // TODO(crbug.com/1172300) Ignored during the jsdoc to ts migration
802
+
802
803
  // @ts-expect-error
803
804
  newValue.vertical = newValue.vertical || {};
804
- // TODO(crbug.com/1172300) Ignored during the jsdoc to ts migration
805
+
805
806
  // @ts-expect-error
806
807
  newValue.vertical.showMode = showMode;
807
- // TODO(crbug.com/1172300) Ignored during the jsdoc to ts migration
808
+
808
809
  // @ts-expect-error
809
810
  newValue.horizontal = newValue.horizontal || {};
810
- // TODO(crbug.com/1172300) Ignored during the jsdoc to ts migration
811
+
811
812
  // @ts-expect-error
812
813
  newValue.horizontal.showMode = showMode;
813
814
  newSetting.set(newValue);
@@ -888,7 +889,7 @@ export class VersionController {
888
889
  const newList = [];
889
890
  for (let i = 0; i < list.length; ++i) {
890
891
  const value = list[i];
891
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
892
+
892
893
  const device: Record<string, any> = {};
893
894
  device['title'] = value['title'];
894
895
  device['type'] = 'unknown';
@@ -930,8 +931,6 @@ export class VersionController {
930
931
  }
931
932
 
932
933
  updateVersionFrom14To15(): void {
933
- // TODO(crbug.com/1172300) Ignored during the jsdoc to ts migration
934
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
935
934
  const setting = Settings.instance().createLocalSetting<any>('workspaceExcludedFolders', {});
936
935
  const oldValue = setting.get();
937
936
  const newValue: Record<string, string[]> = {};
@@ -945,8 +944,6 @@ export class VersionController {
945
944
  }
946
945
 
947
946
  updateVersionFrom15To16(): void {
948
- // TODO(crbug.com/1172300) Ignored during the jsdoc to ts migration
949
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
950
947
  const setting = Settings.instance().createSetting<any>('InspectorView.panelOrder', {});
951
948
  const tabOrders = setting.get();
952
949
  for (const key of Object.keys(tabOrders)) {
@@ -956,8 +953,6 @@ export class VersionController {
956
953
  }
957
954
 
958
955
  updateVersionFrom16To17(): void {
959
- // TODO(crbug.com/1172300) Ignored during the jsdoc to ts migration
960
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
961
956
  const setting = Settings.instance().createSetting<any>('networkConditionsCustomProfiles', []);
962
957
  const oldValue = setting.get();
963
958
  const newValue = [];
@@ -976,8 +971,6 @@ export class VersionController {
976
971
  }
977
972
 
978
973
  updateVersionFrom17To18(): void {
979
- // TODO(crbug.com/1172300) Ignored during the jsdoc to ts migration
980
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
981
974
  const setting = Settings.instance().createLocalSetting<any>('workspaceExcludedFolders', {});
982
975
  const oldValue = setting.get();
983
976
  const newValue: Record<string, string> = {};
@@ -997,8 +990,6 @@ export class VersionController {
997
990
 
998
991
  updateVersionFrom18To19(): void {
999
992
  const defaultColumns = {status: true, type: true, initiator: true, size: true, time: true};
1000
- // TODO(crbug.com/1172300) Ignored during the jsdoc to ts migration
1001
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
1002
993
  const visibleColumnSettings = Settings.instance().createSetting<any>('networkLogColumnsVisibility', defaultColumns);
1003
994
  const visibleColumns = visibleColumnSettings.get();
1004
995
  visibleColumns.name = true;
@@ -1034,8 +1025,6 @@ export class VersionController {
1034
1025
  }
1035
1026
 
1036
1027
  updateVersionFrom21To22(): void {
1037
- // TODO(crbug.com/1172300) Ignored during the jsdoc to ts migration
1038
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
1039
1028
  const breakpointsSetting = Settings.instance().createLocalSetting<any>('breakpoints', []);
1040
1029
  const breakpoints = breakpointsSetting.get();
1041
1030
  for (const breakpoint of breakpoints) {
@@ -1058,8 +1047,7 @@ export class VersionController {
1058
1047
 
1059
1048
  updateVersionFrom24To25(): void {
1060
1049
  const defaultColumns = {status: true, type: true, initiator: true, size: true, time: true};
1061
- // TODO(crbug.com/1172300) Ignored during the jsdoc to ts migration
1062
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
1050
+
1063
1051
  const networkLogColumnsSetting = Settings.instance().createSetting<any>('networkLogColumns', defaultColumns);
1064
1052
  const columns = networkLogColumnsSetting.get();
1065
1053
  delete columns.product;
@@ -1071,8 +1059,6 @@ export class VersionController {
1071
1059
  const urls = Object.keys(oldSetting.get());
1072
1060
  const textFilter = urls.map(url => `-url:${url}`).join(' ');
1073
1061
  if (textFilter) {
1074
- // TODO(crbug.com/1172300) Ignored during the jsdoc to ts migration
1075
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
1076
1062
  const textFilterSetting = Settings.instance().createSetting<any>('console.textFilter', '');
1077
1063
  const suffix = textFilterSetting.get() ? ` ${textFilterSetting.get()}` : '';
1078
1064
  textFilterSetting.set(`${textFilter}${suffix}`);
@@ -1082,8 +1068,6 @@ export class VersionController {
1082
1068
 
1083
1069
  updateVersionFrom26To27(): void {
1084
1070
  function renameKeyInObjectSetting(settingName: string, from: string, to: string): void {
1085
- // TODO(crbug.com/1172300) Ignored during the jsdoc to ts migration
1086
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
1087
1071
  const setting = Settings.instance().createSetting<any>(settingName, {});
1088
1072
  const value = setting.get();
1089
1073
  if (from in value) {
@@ -1115,8 +1099,6 @@ export class VersionController {
1115
1099
 
1116
1100
  updateVersionFrom28To29(): void {
1117
1101
  function renameKeyInObjectSetting(settingName: string, from: string, to: string): void {
1118
- // TODO(crbug.com/1172300) Ignored during the jsdoc to ts migration
1119
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
1120
1102
  const setting = Settings.instance().createSetting<any>(settingName, {});
1121
1103
  const value = setting.get();
1122
1104
  if (from in value) {
@@ -1171,7 +1153,6 @@ export class VersionController {
1171
1153
  // know on which resource type the given breakpoint was set, we just assume
1172
1154
  // 'script' here to keep things simple.
1173
1155
 
1174
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
1175
1156
  const breakpointsSetting = Settings.instance().createLocalSetting<any>('breakpoints', []);
1176
1157
  const breakpoints = breakpointsSetting.get();
1177
1158
  for (const breakpoint of breakpoints) {
@@ -1181,12 +1162,11 @@ export class VersionController {
1181
1162
  }
1182
1163
 
1183
1164
  updateVersionFrom32To33(): void {
1184
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
1185
1165
  const previouslyViewedFilesSetting = Settings.instance().createLocalSetting<any>('previouslyViewedFiles', []);
1186
1166
  let previouslyViewedFiles = previouslyViewedFilesSetting.get();
1187
1167
 
1188
1168
  // Discard old 'previouslyViewedFiles' items that don't have a 'url' property.
1189
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
1169
+
1190
1170
  previouslyViewedFiles = previouslyViewedFiles.filter((previouslyViewedFile: any) => 'url' in previouslyViewedFile);
1191
1171
 
1192
1172
  // Introduce the new 'resourceTypeName' property on previously viewed files.
@@ -1213,7 +1193,6 @@ export class VersionController {
1213
1193
  const logpointPrefix = '/** DEVTOOLS_LOGPOINT */ console.log(';
1214
1194
  const logpointSuffix = ')';
1215
1195
 
1216
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
1217
1196
  const breakpointsSetting = Settings.instance().createLocalSetting<any>('breakpoints', []);
1218
1197
  const breakpoints = breakpointsSetting.get();
1219
1198
  for (const breakpoint of breakpoints) {
@@ -1234,7 +1213,6 @@ export class VersionController {
1234
1213
  const logpointPrefix = '/** DEVTOOLS_LOGPOINT */ console.log(';
1235
1214
  const logpointSuffix = ')';
1236
1215
 
1237
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
1238
1216
  const breakpointsSetting = Settings.instance().createLocalSetting<any>('breakpoints', []);
1239
1217
  const breakpoints = breakpointsSetting.get();
1240
1218
  for (const breakpoint of breakpoints) {
@@ -1466,6 +1444,7 @@ export class VersionController {
1466
1444
  }
1467
1445
  }
1468
1446
  }
1447
+ /* eslint-enable @typescript-eslint/no-explicit-any */
1469
1448
 
1470
1449
  export const enum SettingStorageType {
1471
1450
  /** Persists with the active Chrome profile but also syncs the settings across devices via Chrome Sync. */
@@ -195,7 +195,7 @@ const UIStrings = {
195
195
  * @description Label for a checkbox in the settings UI. Allows developers to opt-in/opt-out
196
196
  * of receiving Google Developer Program (GDP) badges based on their activity in Chrome DevTools.
197
197
  */
198
- receiveBadges: 'Receive badges',
198
+ earnBadges: 'Earn badges',
199
199
  /**
200
200
  * @description A command available in the command menu to perform searches, for example in the
201
201
  * elements panel, as user types, rather than only when they press Enter.
@@ -799,7 +799,7 @@ Common.Settings.registerSettingExtension({
799
799
  settingName: 'receive-gdp-badges',
800
800
  settingType: Common.Settings.SettingType.BOOLEAN,
801
801
  storageType: Common.Settings.SettingStorageType.SYNCED,
802
- title: i18nLazyString(UIStrings.receiveBadges),
802
+ title: i18nLazyString(UIStrings.earnBadges),
803
803
  defaultValue: false,
804
804
  reloadRequired: true,
805
805
  });
@@ -653,7 +653,7 @@ inspectorBackend.registerCommand("IndexedDB.deleteDatabase", [{"name": "security
653
653
  inspectorBackend.registerCommand("IndexedDB.deleteObjectStoreEntries", [{"name": "securityOrigin", "type": "string", "optional": true, "description": "At least and at most one of securityOrigin, storageKey, or storageBucket must be specified. Security origin.", "typeRef": null}, {"name": "storageKey", "type": "string", "optional": true, "description": "Storage key.", "typeRef": null}, {"name": "storageBucket", "type": "object", "optional": true, "description": "Storage bucket. If not specified, it uses the default bucket.", "typeRef": "Storage.StorageBucket"}, {"name": "databaseName", "type": "string", "optional": false, "description": "", "typeRef": null}, {"name": "objectStoreName", "type": "string", "optional": false, "description": "", "typeRef": null}, {"name": "keyRange", "type": "object", "optional": false, "description": "Range of entry keys to delete", "typeRef": "IndexedDB.KeyRange"}], [], "Delete a range of entries from an object store");
654
654
  inspectorBackend.registerCommand("IndexedDB.disable", [], [], "Disables events from backend.");
655
655
  inspectorBackend.registerCommand("IndexedDB.enable", [], [], "Enables events from backend.");
656
- inspectorBackend.registerCommand("IndexedDB.requestData", [{"name": "securityOrigin", "type": "string", "optional": true, "description": "At least and at most one of securityOrigin, storageKey, or storageBucket must be specified. Security origin.", "typeRef": null}, {"name": "storageKey", "type": "string", "optional": true, "description": "Storage key.", "typeRef": null}, {"name": "storageBucket", "type": "object", "optional": true, "description": "Storage bucket. If not specified, it uses the default bucket.", "typeRef": "Storage.StorageBucket"}, {"name": "databaseName", "type": "string", "optional": false, "description": "Database name.", "typeRef": null}, {"name": "objectStoreName", "type": "string", "optional": false, "description": "Object store name.", "typeRef": null}, {"name": "indexName", "type": "string", "optional": true, "description": "Index name. If not specified or empty string, it performs an object store data request.", "typeRef": null}, {"name": "skipCount", "type": "number", "optional": false, "description": "Number of records to skip.", "typeRef": null}, {"name": "pageSize", "type": "number", "optional": false, "description": "Number of records to fetch.", "typeRef": null}, {"name": "keyRange", "type": "object", "optional": true, "description": "Key range.", "typeRef": "IndexedDB.KeyRange"}], ["objectStoreDataEntries", "hasMore"], "Requests data from object store or index.");
656
+ inspectorBackend.registerCommand("IndexedDB.requestData", [{"name": "securityOrigin", "type": "string", "optional": true, "description": "At least and at most one of securityOrigin, storageKey, or storageBucket must be specified. Security origin.", "typeRef": null}, {"name": "storageKey", "type": "string", "optional": true, "description": "Storage key.", "typeRef": null}, {"name": "storageBucket", "type": "object", "optional": true, "description": "Storage bucket. If not specified, it uses the default bucket.", "typeRef": "Storage.StorageBucket"}, {"name": "databaseName", "type": "string", "optional": false, "description": "Database name.", "typeRef": null}, {"name": "objectStoreName", "type": "string", "optional": false, "description": "Object store name.", "typeRef": null}, {"name": "indexName", "type": "string", "optional": true, "description": "Index name. If not specified, it performs an object store data request.", "typeRef": null}, {"name": "skipCount", "type": "number", "optional": false, "description": "Number of records to skip.", "typeRef": null}, {"name": "pageSize", "type": "number", "optional": false, "description": "Number of records to fetch.", "typeRef": null}, {"name": "keyRange", "type": "object", "optional": true, "description": "Key range.", "typeRef": "IndexedDB.KeyRange"}], ["objectStoreDataEntries", "hasMore"], "Requests data from object store or index.");
657
657
  inspectorBackend.registerCommand("IndexedDB.getMetadata", [{"name": "securityOrigin", "type": "string", "optional": true, "description": "At least and at most one of securityOrigin, storageKey, or storageBucket must be specified. Security origin.", "typeRef": null}, {"name": "storageKey", "type": "string", "optional": true, "description": "Storage key.", "typeRef": null}, {"name": "storageBucket", "type": "object", "optional": true, "description": "Storage bucket. If not specified, it uses the default bucket.", "typeRef": "Storage.StorageBucket"}, {"name": "databaseName", "type": "string", "optional": false, "description": "Database name.", "typeRef": null}, {"name": "objectStoreName", "type": "string", "optional": false, "description": "Object store name.", "typeRef": null}], ["entriesCount", "keyGeneratorValue"], "Gets metadata of an object store.");
658
658
  inspectorBackend.registerCommand("IndexedDB.requestDatabase", [{"name": "securityOrigin", "type": "string", "optional": true, "description": "At least and at most one of securityOrigin, storageKey, or storageBucket must be specified. Security origin.", "typeRef": null}, {"name": "storageKey", "type": "string", "optional": true, "description": "Storage key.", "typeRef": null}, {"name": "storageBucket", "type": "object", "optional": true, "description": "Storage bucket. If not specified, it uses the default bucket.", "typeRef": "Storage.StorageBucket"}, {"name": "databaseName", "type": "string", "optional": false, "description": "Database name.", "typeRef": null}], ["databaseWithObjectStores"], "Requests database with given name in given frame.");
659
659
  inspectorBackend.registerCommand("IndexedDB.requestDatabaseNames", [{"name": "securityOrigin", "type": "string", "optional": true, "description": "At least and at most one of securityOrigin, storageKey, or storageBucket must be specified. Security origin.", "typeRef": null}, {"name": "storageKey", "type": "string", "optional": true, "description": "Storage key.", "typeRef": null}, {"name": "storageBucket", "type": "object", "optional": true, "description": "Storage bucket. If not specified, it uses the default bucket.", "typeRef": "Storage.StorageBucket"}], ["databaseNames"], "Requests database names for given security origin.");
@@ -897,7 +897,7 @@ inspectorBackend.registerType("Network.WebSocketFrame", [{"name": "opcode", "typ
897
897
  inspectorBackend.registerType("Network.CachedResource", [{"name": "url", "type": "string", "optional": false, "description": "Resource URL. This is the url of the original network request.", "typeRef": null}, {"name": "type", "type": "string", "optional": false, "description": "Type of this resource.", "typeRef": "Network.ResourceType"}, {"name": "response", "type": "object", "optional": true, "description": "Cached response data.", "typeRef": "Network.Response"}, {"name": "bodySize", "type": "number", "optional": false, "description": "Cached response body size.", "typeRef": null}]);
898
898
  inspectorBackend.registerType("Network.Initiator", [{"name": "type", "type": "string", "optional": false, "description": "Type of this initiator.", "typeRef": null}, {"name": "stack", "type": "object", "optional": true, "description": "Initiator JavaScript stack trace, set for Script only. Requires the Debugger domain to be enabled.", "typeRef": "Runtime.StackTrace"}, {"name": "url", "type": "string", "optional": true, "description": "Initiator URL, set for Parser type or for Script type (when script is importing module) or for SignedExchange type.", "typeRef": null}, {"name": "lineNumber", "type": "number", "optional": true, "description": "Initiator line number, set for Parser type or for Script type (when script is importing module) (0-based).", "typeRef": null}, {"name": "columnNumber", "type": "number", "optional": true, "description": "Initiator column number, set for Parser type or for Script type (when script is importing module) (0-based).", "typeRef": null}, {"name": "requestId", "type": "string", "optional": true, "description": "Set if another request triggered this request (e.g. preflight).", "typeRef": "Network.RequestId"}]);
899
899
  inspectorBackend.registerType("Network.CookiePartitionKey", [{"name": "topLevelSite", "type": "string", "optional": false, "description": "The site of the top-level URL the browser was visiting at the start of the request to the endpoint that set the cookie.", "typeRef": null}, {"name": "hasCrossSiteAncestor", "type": "boolean", "optional": false, "description": "Indicates if the cookie has any ancestors that are cross-site to the topLevelSite.", "typeRef": null}]);
900
- inspectorBackend.registerType("Network.Cookie", [{"name": "name", "type": "string", "optional": false, "description": "Cookie name.", "typeRef": null}, {"name": "value", "type": "string", "optional": false, "description": "Cookie value.", "typeRef": null}, {"name": "domain", "type": "string", "optional": false, "description": "Cookie domain.", "typeRef": null}, {"name": "path", "type": "string", "optional": false, "description": "Cookie path.", "typeRef": null}, {"name": "expires", "type": "number", "optional": false, "description": "Cookie expiration date as the number of seconds since the UNIX epoch.", "typeRef": null}, {"name": "size", "type": "number", "optional": false, "description": "Cookie size.", "typeRef": null}, {"name": "httpOnly", "type": "boolean", "optional": false, "description": "True if cookie is http-only.", "typeRef": null}, {"name": "secure", "type": "boolean", "optional": false, "description": "True if cookie is secure.", "typeRef": null}, {"name": "session", "type": "boolean", "optional": false, "description": "True in case of session cookie.", "typeRef": null}, {"name": "sameSite", "type": "string", "optional": true, "description": "Cookie SameSite type.", "typeRef": "Network.CookieSameSite"}, {"name": "priority", "type": "string", "optional": false, "description": "Cookie Priority", "typeRef": "Network.CookiePriority"}, {"name": "sameParty", "type": "boolean", "optional": false, "description": "True if cookie is SameParty.", "typeRef": null}, {"name": "sourceScheme", "type": "string", "optional": false, "description": "Cookie source scheme type.", "typeRef": "Network.CookieSourceScheme"}, {"name": "sourcePort", "type": "number", "optional": false, "description": "Cookie source port. Valid values are {-1, [1, 65535]}, -1 indicates an unspecified port. An unspecified port value allows protocol clients to emulate legacy cookie scope for the port. This is a temporary ability and it will be removed in the future.", "typeRef": null}, {"name": "partitionKey", "type": "object", "optional": true, "description": "Cookie partition key.", "typeRef": "Network.CookiePartitionKey"}, {"name": "partitionKeyOpaque", "type": "boolean", "optional": true, "description": "True if cookie partition key is opaque.", "typeRef": null}]);
900
+ inspectorBackend.registerType("Network.Cookie", [{"name": "name", "type": "string", "optional": false, "description": "Cookie name.", "typeRef": null}, {"name": "value", "type": "string", "optional": false, "description": "Cookie value.", "typeRef": null}, {"name": "domain", "type": "string", "optional": false, "description": "Cookie domain.", "typeRef": null}, {"name": "path", "type": "string", "optional": false, "description": "Cookie path.", "typeRef": null}, {"name": "expires", "type": "number", "optional": false, "description": "Cookie expiration date as the number of seconds since the UNIX epoch. The value is set to -1 if the expiry date is not set. The value can be null for values that cannot be represented in JSON (\u00b1Inf).", "typeRef": null}, {"name": "size", "type": "number", "optional": false, "description": "Cookie size.", "typeRef": null}, {"name": "httpOnly", "type": "boolean", "optional": false, "description": "True if cookie is http-only.", "typeRef": null}, {"name": "secure", "type": "boolean", "optional": false, "description": "True if cookie is secure.", "typeRef": null}, {"name": "session", "type": "boolean", "optional": false, "description": "True in case of session cookie.", "typeRef": null}, {"name": "sameSite", "type": "string", "optional": true, "description": "Cookie SameSite type.", "typeRef": "Network.CookieSameSite"}, {"name": "priority", "type": "string", "optional": false, "description": "Cookie Priority", "typeRef": "Network.CookiePriority"}, {"name": "sameParty", "type": "boolean", "optional": false, "description": "True if cookie is SameParty.", "typeRef": null}, {"name": "sourceScheme", "type": "string", "optional": false, "description": "Cookie source scheme type.", "typeRef": "Network.CookieSourceScheme"}, {"name": "sourcePort", "type": "number", "optional": false, "description": "Cookie source port. Valid values are {-1, [1, 65535]}, -1 indicates an unspecified port. An unspecified port value allows protocol clients to emulate legacy cookie scope for the port. This is a temporary ability and it will be removed in the future.", "typeRef": null}, {"name": "partitionKey", "type": "object", "optional": true, "description": "Cookie partition key.", "typeRef": "Network.CookiePartitionKey"}, {"name": "partitionKeyOpaque", "type": "boolean", "optional": true, "description": "True if cookie partition key is opaque.", "typeRef": null}]);
901
901
  inspectorBackend.registerType("Network.BlockedSetCookieWithReason", [{"name": "blockedReasons", "type": "array", "optional": false, "description": "The reason(s) this cookie was blocked.", "typeRef": "Network.SetCookieBlockedReason"}, {"name": "cookieLine", "type": "string", "optional": false, "description": "The string representing this individual cookie as it would appear in the header. This is not the entire \\\"cookie\\\" or \\\"set-cookie\\\" header which could have multiple cookies.", "typeRef": null}, {"name": "cookie", "type": "object", "optional": true, "description": "The cookie object which represents the cookie which was not stored. It is optional because sometimes complete cookie information is not available, such as in the case of parsing errors.", "typeRef": "Network.Cookie"}]);
902
902
  inspectorBackend.registerType("Network.ExemptedSetCookieWithReason", [{"name": "exemptionReason", "type": "string", "optional": false, "description": "The reason the cookie was exempted.", "typeRef": "Network.CookieExemptionReason"}, {"name": "cookieLine", "type": "string", "optional": false, "description": "The string representing this individual cookie as it would appear in the header.", "typeRef": null}, {"name": "cookie", "type": "object", "optional": false, "description": "The cookie object representing the cookie.", "typeRef": "Network.Cookie"}]);
903
903
  inspectorBackend.registerType("Network.AssociatedCookie", [{"name": "cookie", "type": "object", "optional": false, "description": "The cookie object representing the cookie which was not sent.", "typeRef": "Network.Cookie"}, {"name": "blockedReasons", "type": "array", "optional": false, "description": "The reason(s) the cookie was blocked. If empty means the cookie is included.", "typeRef": "Network.CookieBlockedReason"}, {"name": "exemptionReason", "type": "string", "optional": true, "description": "The reason the cookie should have been blocked by 3PCD but is exempted. A cookie could only have at most one exemption reason.", "typeRef": "Network.CookieExemptionReason"}]);
@@ -1008,7 +1008,7 @@ inspectorBackend.registerEnum("Page.ClientNavigationReason", {AnchorClick: "anch
1008
1008
  inspectorBackend.registerEnum("Page.ClientNavigationDisposition", {CurrentTab: "currentTab", NewTab: "newTab", NewWindow: "newWindow", Download: "download"});
1009
1009
  inspectorBackend.registerEnum("Page.ReferrerPolicy", {NoReferrer: "noReferrer", NoReferrerWhenDowngrade: "noReferrerWhenDowngrade", Origin: "origin", OriginWhenCrossOrigin: "originWhenCrossOrigin", SameOrigin: "sameOrigin", StrictOrigin: "strictOrigin", StrictOriginWhenCrossOrigin: "strictOriginWhenCrossOrigin", UnsafeUrl: "unsafeUrl"});
1010
1010
  inspectorBackend.registerEnum("Page.NavigationType", {Navigation: "Navigation", BackForwardCacheRestore: "BackForwardCacheRestore"});
1011
- inspectorBackend.registerEnum("Page.BackForwardCacheNotRestoredReason", {NotPrimaryMainFrame: "NotPrimaryMainFrame", BackForwardCacheDisabled: "BackForwardCacheDisabled", RelatedActiveContentsExist: "RelatedActiveContentsExist", HTTPStatusNotOK: "HTTPStatusNotOK", SchemeNotHTTPOrHTTPS: "SchemeNotHTTPOrHTTPS", Loading: "Loading", WasGrantedMediaAccess: "WasGrantedMediaAccess", DisableForRenderFrameHostCalled: "DisableForRenderFrameHostCalled", DomainNotAllowed: "DomainNotAllowed", HTTPMethodNotGET: "HTTPMethodNotGET", SubframeIsNavigating: "SubframeIsNavigating", Timeout: "Timeout", CacheLimit: "CacheLimit", JavaScriptExecution: "JavaScriptExecution", RendererProcessKilled: "RendererProcessKilled", RendererProcessCrashed: "RendererProcessCrashed", SchedulerTrackedFeatureUsed: "SchedulerTrackedFeatureUsed", ConflictingBrowsingInstance: "ConflictingBrowsingInstance", CacheFlushed: "CacheFlushed", ServiceWorkerVersionActivation: "ServiceWorkerVersionActivation", SessionRestored: "SessionRestored", ServiceWorkerPostMessage: "ServiceWorkerPostMessage", EnteredBackForwardCacheBeforeServiceWorkerHostAdded: "EnteredBackForwardCacheBeforeServiceWorkerHostAdded", RenderFrameHostReused_SameSite: "RenderFrameHostReused_SameSite", RenderFrameHostReused_CrossSite: "RenderFrameHostReused_CrossSite", ServiceWorkerClaim: "ServiceWorkerClaim", IgnoreEventAndEvict: "IgnoreEventAndEvict", HaveInnerContents: "HaveInnerContents", TimeoutPuttingInCache: "TimeoutPuttingInCache", BackForwardCacheDisabledByLowMemory: "BackForwardCacheDisabledByLowMemory", BackForwardCacheDisabledByCommandLine: "BackForwardCacheDisabledByCommandLine", NetworkRequestDatAPIpeDrainedAsBytesConsumer: "NetworkRequestDatapipeDrainedAsBytesConsumer", NetworkRequestRedirected: "NetworkRequestRedirected", NetworkRequestTimeout: "NetworkRequestTimeout", NetworkExceedsBufferLimit: "NetworkExceedsBufferLimit", NavigationCancelledWhileRestoring: "NavigationCancelledWhileRestoring", NotMostRecentNavigationEntry: "NotMostRecentNavigationEntry", BackForwardCacheDisabledForPrerender: "BackForwardCacheDisabledForPrerender", UserAgentOverrideDiffers: "UserAgentOverrideDiffers", ForegroundCacheLimit: "ForegroundCacheLimit", BrowsingInstanceNotSwapped: "BrowsingInstanceNotSwapped", BackForwardCacheDisabledForDelegate: "BackForwardCacheDisabledForDelegate", UnloadHandlerExistsInMainFrame: "UnloadHandlerExistsInMainFrame", UnloadHandlerExistsInSubFrame: "UnloadHandlerExistsInSubFrame", ServiceWorkerUnregistration: "ServiceWorkerUnregistration", CacheControlNoStore: "CacheControlNoStore", CacheControlNoStoreCookieModified: "CacheControlNoStoreCookieModified", CacheControlNoStoreHTTPOnlyCookieModified: "CacheControlNoStoreHTTPOnlyCookieModified", NoResponseHead: "NoResponseHead", Unknown: "Unknown", ActivationNavigationsDisallowedForBug1234857: "ActivationNavigationsDisallowedForBug1234857", ErrorDocument: "ErrorDocument", FencedFramesEmbedder: "FencedFramesEmbedder", CookieDisabled: "CookieDisabled", HTTPAuthRequired: "HTTPAuthRequired", CookieFlushed: "CookieFlushed", BroadcastChannelOnMessage: "BroadcastChannelOnMessage", WebViewSettingsChanged: "WebViewSettingsChanged", WebViewJavaScriptObjectChanged: "WebViewJavaScriptObjectChanged", WebViewMessageListenerInjected: "WebViewMessageListenerInjected", WebViewSafeBrowsingAllowlistChanged: "WebViewSafeBrowsingAllowlistChanged", WebViewDocumentStartJavascriptChanged: "WebViewDocumentStartJavascriptChanged", WebSocket: "WebSocket", WebTransport: "WebTransport", WebRTC: "WebRTC", MainResourceHasCacheControlNoStore: "MainResourceHasCacheControlNoStore", MainResourceHasCacheControlNoCache: "MainResourceHasCacheControlNoCache", SubresourceHasCacheControlNoStore: "SubresourceHasCacheControlNoStore", SubresourceHasCacheControlNoCache: "SubresourceHasCacheControlNoCache", ContainsPlugins: "ContainsPlugins", DocumentLoaded: "DocumentLoaded", OutstandingNetworkRequestOthers: "OutstandingNetworkRequestOthers", RequestedMIDIPermission: "RequestedMIDIPermission", RequestedAudioCapturePermission: "RequestedAudioCapturePermission", RequestedVideoCapturePermission: "RequestedVideoCapturePermission", RequestedBackForwardCacheBlockedSensors: "RequestedBackForwardCacheBlockedSensors", RequestedBackgroundWorkPermission: "RequestedBackgroundWorkPermission", BroadcastChannel: "BroadcastChannel", WebXR: "WebXR", SharedWorker: "SharedWorker", SharedWorkerMessage: "SharedWorkerMessage", WebLocks: "WebLocks", WebHID: "WebHID", WebShare: "WebShare", RequestedStorageAccessGrant: "RequestedStorageAccessGrant", WebNfc: "WebNfc", OutstandingNetworkRequestFetch: "OutstandingNetworkRequestFetch", OutstandingNetworkRequestXHR: "OutstandingNetworkRequestXHR", AppBanner: "AppBanner", Printing: "Printing", WebDatabase: "WebDatabase", PictureInPicture: "PictureInPicture", SpeechRecognizer: "SpeechRecognizer", IdleManager: "IdleManager", PaymentManager: "PaymentManager", SpeechSynthesis: "SpeechSynthesis", KeyboardLock: "KeyboardLock", WebOTPService: "WebOTPService", OutstandingNetworkRequestDirectSocket: "OutstandingNetworkRequestDirectSocket", InjectedJavascript: "InjectedJavascript", InjectedStyleSheet: "InjectedStyleSheet", KeepaliveRequest: "KeepaliveRequest", IndexedDBEvent: "IndexedDBEvent", Dummy: "Dummy", JsNetworkRequestReceivedCacheControlNoStoreResource: "JsNetworkRequestReceivedCacheControlNoStoreResource", WebRTCUsedWithCCNS: "WebRTCUsedWithCCNS", WebTransportUsedWithCCNS: "WebTransportUsedWithCCNS", WebSocketUsedWithCCNS: "WebSocketUsedWithCCNS", SmartCard: "SmartCard", LiveMediaStreamTrack: "LiveMediaStreamTrack", UnloadHandler: "UnloadHandler", ParserAborted: "ParserAborted", ContentSecurityHandler: "ContentSecurityHandler", ContentWebAuthenticationAPI: "ContentWebAuthenticationAPI", ContentFileChooser: "ContentFileChooser", ContentSerial: "ContentSerial", ContentFileSystemAccess: "ContentFileSystemAccess", ContentMediaDevicesDispatcherHost: "ContentMediaDevicesDispatcherHost", ContentWebBluetooth: "ContentWebBluetooth", ContentWebUSB: "ContentWebUSB", ContentMediaSessionService: "ContentMediaSessionService", ContentScreenReader: "ContentScreenReader", ContentDiscarded: "ContentDiscarded", EmbedderPopupBlockerTabHelper: "EmbedderPopupBlockerTabHelper", EmbedderSafeBrowsingTriggeredPopupBlocker: "EmbedderSafeBrowsingTriggeredPopupBlocker", EmbedderSafeBrowsingThreatDetails: "EmbedderSafeBrowsingThreatDetails", EmbedderAppBannerManager: "EmbedderAppBannerManager", EmbedderDomDistillerViewerSource: "EmbedderDomDistillerViewerSource", EmbedderDomDistillerSelfDeletingRequestDelegate: "EmbedderDomDistillerSelfDeletingRequestDelegate", EmbedderOomInterventionTabHelper: "EmbedderOomInterventionTabHelper", EmbedderOfflinePage: "EmbedderOfflinePage", EmbedderChromePasswordManagerClientBindCredentialManager: "EmbedderChromePasswordManagerClientBindCredentialManager", EmbedderPermissionRequestManager: "EmbedderPermissionRequestManager", EmbedderModalDialog: "EmbedderModalDialog", EmbedderExtensions: "EmbedderExtensions", EmbedderExtensionMessaging: "EmbedderExtensionMessaging", EmbedderExtensionMessagingForOpenPort: "EmbedderExtensionMessagingForOpenPort", EmbedderExtensionSentMessageToCachedFrame: "EmbedderExtensionSentMessageToCachedFrame", RequestedByWebViewClient: "RequestedByWebViewClient", PostMessageByWebViewClient: "PostMessageByWebViewClient", CacheControlNoStoreDeviceBoundSessionTerminated: "CacheControlNoStoreDeviceBoundSessionTerminated", CacheLimitPrunedOnModerateMemoryPressure: "CacheLimitPrunedOnModerateMemoryPressure", CacheLimitPrunedOnCriticalMemoryPressure: "CacheLimitPrunedOnCriticalMemoryPressure"});
1011
+ inspectorBackend.registerEnum("Page.BackForwardCacheNotRestoredReason", {NotPrimaryMainFrame: "NotPrimaryMainFrame", BackForwardCacheDisabled: "BackForwardCacheDisabled", RelatedActiveContentsExist: "RelatedActiveContentsExist", HTTPStatusNotOK: "HTTPStatusNotOK", SchemeNotHTTPOrHTTPS: "SchemeNotHTTPOrHTTPS", Loading: "Loading", WasGrantedMediaAccess: "WasGrantedMediaAccess", DisableForRenderFrameHostCalled: "DisableForRenderFrameHostCalled", DomainNotAllowed: "DomainNotAllowed", HTTPMethodNotGET: "HTTPMethodNotGET", SubframeIsNavigating: "SubframeIsNavigating", Timeout: "Timeout", CacheLimit: "CacheLimit", JavaScriptExecution: "JavaScriptExecution", RendererProcessKilled: "RendererProcessKilled", RendererProcessCrashed: "RendererProcessCrashed", SchedulerTrackedFeatureUsed: "SchedulerTrackedFeatureUsed", ConflictingBrowsingInstance: "ConflictingBrowsingInstance", CacheFlushed: "CacheFlushed", ServiceWorkerVersionActivation: "ServiceWorkerVersionActivation", SessionRestored: "SessionRestored", ServiceWorkerPostMessage: "ServiceWorkerPostMessage", EnteredBackForwardCacheBeforeServiceWorkerHostAdded: "EnteredBackForwardCacheBeforeServiceWorkerHostAdded", RenderFrameHostReused_SameSite: "RenderFrameHostReused_SameSite", RenderFrameHostReused_CrossSite: "RenderFrameHostReused_CrossSite", ServiceWorkerClaim: "ServiceWorkerClaim", IgnoreEventAndEvict: "IgnoreEventAndEvict", HaveInnerContents: "HaveInnerContents", TimeoutPuttingInCache: "TimeoutPuttingInCache", BackForwardCacheDisabledByLowMemory: "BackForwardCacheDisabledByLowMemory", BackForwardCacheDisabledByCommandLine: "BackForwardCacheDisabledByCommandLine", NetworkRequestDatAPIpeDrainedAsBytesConsumer: "NetworkRequestDatapipeDrainedAsBytesConsumer", NetworkRequestRedirected: "NetworkRequestRedirected", NetworkRequestTimeout: "NetworkRequestTimeout", NetworkExceedsBufferLimit: "NetworkExceedsBufferLimit", NavigationCancelledWhileRestoring: "NavigationCancelledWhileRestoring", NotMostRecentNavigationEntry: "NotMostRecentNavigationEntry", BackForwardCacheDisabledForPrerender: "BackForwardCacheDisabledForPrerender", UserAgentOverrideDiffers: "UserAgentOverrideDiffers", ForegroundCacheLimit: "ForegroundCacheLimit", BrowsingInstanceNotSwapped: "BrowsingInstanceNotSwapped", BackForwardCacheDisabledForDelegate: "BackForwardCacheDisabledForDelegate", UnloadHandlerExistsInMainFrame: "UnloadHandlerExistsInMainFrame", UnloadHandlerExistsInSubFrame: "UnloadHandlerExistsInSubFrame", ServiceWorkerUnregistration: "ServiceWorkerUnregistration", CacheControlNoStore: "CacheControlNoStore", CacheControlNoStoreCookieModified: "CacheControlNoStoreCookieModified", CacheControlNoStoreHTTPOnlyCookieModified: "CacheControlNoStoreHTTPOnlyCookieModified", NoResponseHead: "NoResponseHead", Unknown: "Unknown", ActivationNavigationsDisallowedForBug1234857: "ActivationNavigationsDisallowedForBug1234857", ErrorDocument: "ErrorDocument", FencedFramesEmbedder: "FencedFramesEmbedder", CookieDisabled: "CookieDisabled", HTTPAuthRequired: "HTTPAuthRequired", CookieFlushed: "CookieFlushed", BroadcastChannelOnMessage: "BroadcastChannelOnMessage", WebViewSettingsChanged: "WebViewSettingsChanged", WebViewJavaScriptObjectChanged: "WebViewJavaScriptObjectChanged", WebViewMessageListenerInjected: "WebViewMessageListenerInjected", WebViewSafeBrowsingAllowlistChanged: "WebViewSafeBrowsingAllowlistChanged", WebViewDocumentStartJavascriptChanged: "WebViewDocumentStartJavascriptChanged", WebSocket: "WebSocket", WebTransport: "WebTransport", WebRTC: "WebRTC", MainResourceHasCacheControlNoStore: "MainResourceHasCacheControlNoStore", MainResourceHasCacheControlNoCache: "MainResourceHasCacheControlNoCache", SubresourceHasCacheControlNoStore: "SubresourceHasCacheControlNoStore", SubresourceHasCacheControlNoCache: "SubresourceHasCacheControlNoCache", ContainsPlugins: "ContainsPlugins", DocumentLoaded: "DocumentLoaded", OutstandingNetworkRequestOthers: "OutstandingNetworkRequestOthers", RequestedMIDIPermission: "RequestedMIDIPermission", RequestedAudioCapturePermission: "RequestedAudioCapturePermission", RequestedVideoCapturePermission: "RequestedVideoCapturePermission", RequestedBackForwardCacheBlockedSensors: "RequestedBackForwardCacheBlockedSensors", RequestedBackgroundWorkPermission: "RequestedBackgroundWorkPermission", BroadcastChannel: "BroadcastChannel", WebXR: "WebXR", SharedWorker: "SharedWorker", SharedWorkerMessage: "SharedWorkerMessage", SharedWorkerWithNoActiveClient: "SharedWorkerWithNoActiveClient", WebLocks: "WebLocks", WebHID: "WebHID", WebBluetooth: "WebBluetooth", WebShare: "WebShare", RequestedStorageAccessGrant: "RequestedStorageAccessGrant", WebNfc: "WebNfc", OutstandingNetworkRequestFetch: "OutstandingNetworkRequestFetch", OutstandingNetworkRequestXHR: "OutstandingNetworkRequestXHR", AppBanner: "AppBanner", Printing: "Printing", WebDatabase: "WebDatabase", PictureInPicture: "PictureInPicture", SpeechRecognizer: "SpeechRecognizer", IdleManager: "IdleManager", PaymentManager: "PaymentManager", SpeechSynthesis: "SpeechSynthesis", KeyboardLock: "KeyboardLock", WebOTPService: "WebOTPService", OutstandingNetworkRequestDirectSocket: "OutstandingNetworkRequestDirectSocket", InjectedJavascript: "InjectedJavascript", InjectedStyleSheet: "InjectedStyleSheet", KeepaliveRequest: "KeepaliveRequest", IndexedDBEvent: "IndexedDBEvent", Dummy: "Dummy", JsNetworkRequestReceivedCacheControlNoStoreResource: "JsNetworkRequestReceivedCacheControlNoStoreResource", WebRTCUsedWithCCNS: "WebRTCUsedWithCCNS", WebTransportUsedWithCCNS: "WebTransportUsedWithCCNS", WebSocketUsedWithCCNS: "WebSocketUsedWithCCNS", SmartCard: "SmartCard", LiveMediaStreamTrack: "LiveMediaStreamTrack", UnloadHandler: "UnloadHandler", ParserAborted: "ParserAborted", ContentSecurityHandler: "ContentSecurityHandler", ContentWebAuthenticationAPI: "ContentWebAuthenticationAPI", ContentFileChooser: "ContentFileChooser", ContentSerial: "ContentSerial", ContentFileSystemAccess: "ContentFileSystemAccess", ContentMediaDevicesDispatcherHost: "ContentMediaDevicesDispatcherHost", ContentWebBluetooth: "ContentWebBluetooth", ContentWebUSB: "ContentWebUSB", ContentMediaSessionService: "ContentMediaSessionService", ContentScreenReader: "ContentScreenReader", ContentDiscarded: "ContentDiscarded", EmbedderPopupBlockerTabHelper: "EmbedderPopupBlockerTabHelper", EmbedderSafeBrowsingTriggeredPopupBlocker: "EmbedderSafeBrowsingTriggeredPopupBlocker", EmbedderSafeBrowsingThreatDetails: "EmbedderSafeBrowsingThreatDetails", EmbedderAppBannerManager: "EmbedderAppBannerManager", EmbedderDomDistillerViewerSource: "EmbedderDomDistillerViewerSource", EmbedderDomDistillerSelfDeletingRequestDelegate: "EmbedderDomDistillerSelfDeletingRequestDelegate", EmbedderOomInterventionTabHelper: "EmbedderOomInterventionTabHelper", EmbedderOfflinePage: "EmbedderOfflinePage", EmbedderChromePasswordManagerClientBindCredentialManager: "EmbedderChromePasswordManagerClientBindCredentialManager", EmbedderPermissionRequestManager: "EmbedderPermissionRequestManager", EmbedderModalDialog: "EmbedderModalDialog", EmbedderExtensions: "EmbedderExtensions", EmbedderExtensionMessaging: "EmbedderExtensionMessaging", EmbedderExtensionMessagingForOpenPort: "EmbedderExtensionMessagingForOpenPort", EmbedderExtensionSentMessageToCachedFrame: "EmbedderExtensionSentMessageToCachedFrame", RequestedByWebViewClient: "RequestedByWebViewClient", PostMessageByWebViewClient: "PostMessageByWebViewClient", CacheControlNoStoreDeviceBoundSessionTerminated: "CacheControlNoStoreDeviceBoundSessionTerminated", CacheLimitPrunedOnModerateMemoryPressure: "CacheLimitPrunedOnModerateMemoryPressure", CacheLimitPrunedOnCriticalMemoryPressure: "CacheLimitPrunedOnCriticalMemoryPressure"});
1012
1012
  inspectorBackend.registerEnum("Page.BackForwardCacheNotRestoredReasonType", {SupportPending: "SupportPending", PageSupportNeeded: "PageSupportNeeded", Circumstantial: "Circumstantial"});
1013
1013
  inspectorBackend.registerEvent("Page.domContentEventFired", ["timestamp"]);
1014
1014
  inspectorBackend.registerEnum("Page.FileChooserOpenedEventMode", {SelectSingle: "selectSingle", SelectMultiple: "selectMultiple"});
@@ -1520,7 +1520,7 @@ inspectorBackend.registerCommand("HeapProfiler.enable", [], [], "");
1520
1520
  inspectorBackend.registerCommand("HeapProfiler.getHeapObjectId", [{"name": "objectId", "type": "string", "optional": false, "description": "Identifier of the object to get heap object id for.", "typeRef": "Runtime.RemoteObjectId"}], ["heapSnapshotObjectId"], "");
1521
1521
  inspectorBackend.registerCommand("HeapProfiler.getObjectByHeapObjectId", [{"name": "objectId", "type": "string", "optional": false, "description": "", "typeRef": "HeapProfiler.HeapSnapshotObjectId"}, {"name": "objectGroup", "type": "string", "optional": true, "description": "Symbolic group name that can be used to release multiple objects.", "typeRef": null}], ["result"], "");
1522
1522
  inspectorBackend.registerCommand("HeapProfiler.getSamplingProfile", [], ["profile"], "");
1523
- inspectorBackend.registerCommand("HeapProfiler.startSampling", [{"name": "samplingInterval", "type": "number", "optional": true, "description": "Average sample interval in bytes. Poisson distribution is used for the intervals. The default value is 32768 bytes.", "typeRef": null}, {"name": "includeObjectsCollectedByMajorGC", "type": "boolean", "optional": true, "description": "By default, the sampling heap profiler reports only objects which are still alive when the profile is returned via getSamplingProfile or stopSampling, which is useful for determining what functions contribute the most to steady-state memory usage. This flag instructs the sampling heap profiler to also include information about objects discarded by major GC, which will show which functions cause large temporary memory usage or long GC pauses.", "typeRef": null}, {"name": "includeObjectsCollectedByMinorGC", "type": "boolean", "optional": true, "description": "By default, the sampling heap profiler reports only objects which are still alive when the profile is returned via getSamplingProfile or stopSampling, which is useful for determining what functions contribute the most to steady-state memory usage. This flag instructs the sampling heap profiler to also include information about objects discarded by minor GC, which is useful when tuning a latency-sensitive application for minimal GC activity.", "typeRef": null}], [], "");
1523
+ inspectorBackend.registerCommand("HeapProfiler.startSampling", [{"name": "samplingInterval", "type": "number", "optional": true, "description": "Average sample interval in bytes. Poisson distribution is used for the intervals. The default value is 32768 bytes.", "typeRef": null}, {"name": "stackDepth", "type": "number", "optional": true, "description": "Maximum stack depth. The default value is 128.", "typeRef": null}, {"name": "includeObjectsCollectedByMajorGC", "type": "boolean", "optional": true, "description": "By default, the sampling heap profiler reports only objects which are still alive when the profile is returned via getSamplingProfile or stopSampling, which is useful for determining what functions contribute the most to steady-state memory usage. This flag instructs the sampling heap profiler to also include information about objects discarded by major GC, which will show which functions cause large temporary memory usage or long GC pauses.", "typeRef": null}, {"name": "includeObjectsCollectedByMinorGC", "type": "boolean", "optional": true, "description": "By default, the sampling heap profiler reports only objects which are still alive when the profile is returned via getSamplingProfile or stopSampling, which is useful for determining what functions contribute the most to steady-state memory usage. This flag instructs the sampling heap profiler to also include information about objects discarded by minor GC, which is useful when tuning a latency-sensitive application for minimal GC activity.", "typeRef": null}], [], "");
1524
1524
  inspectorBackend.registerCommand("HeapProfiler.startTrackingHeapObjects", [{"name": "trackAllocations", "type": "boolean", "optional": true, "description": "", "typeRef": null}], [], "");
1525
1525
  inspectorBackend.registerCommand("HeapProfiler.stopSampling", [], ["profile"], "");
1526
1526
  inspectorBackend.registerCommand("HeapProfiler.stopTrackingHeapObjects", [{"name": "reportProgress", "type": "boolean", "optional": true, "description": "If true 'reportHeapSnapshotProgress' events will be generated while snapshot is being taken when the tracking is stopped.", "typeRef": null}, {"name": "treatGlobalObjectsAsRoots", "type": "boolean", "optional": true, "description": "Deprecated in favor of `exposeInternals`.", "typeRef": null}, {"name": "captureNumericValue", "type": "boolean", "optional": true, "description": "If true, numerical values are included in the snapshot", "typeRef": null}, {"name": "exposeInternals", "type": "boolean", "optional": true, "description": "If true, exposes internals of the snapshot.", "typeRef": null}], [], "");
@@ -600,6 +600,7 @@ export const generatedProperties = [
600
600
  "overscroll-behavior-inline",
601
601
  "overscroll-behavior-x",
602
602
  "overscroll-behavior-y",
603
+ "overscroll-position",
603
604
  "pad",
604
605
  "padding-block-end",
605
606
  "padding-block-start",
@@ -3383,6 +3384,12 @@ export const generatedProperties = [
3383
3384
  ],
3384
3385
  "name": "overscroll-behavior-y"
3385
3386
  },
3387
+ {
3388
+ "keywords": [
3389
+ "none"
3390
+ ],
3391
+ "name": "overscroll-position"
3392
+ },
3386
3393
  {
3387
3394
  "name": "pad"
3388
3395
  },
@@ -6282,6 +6289,11 @@ export const generatedPropertyValues = {
6282
6289
  "none"
6283
6290
  ]
6284
6291
  },
6292
+ "overscroll-position": {
6293
+ "values": [
6294
+ "none"
6295
+ ]
6296
+ },
6285
6297
  "page": {
6286
6298
  "values": [
6287
6299
  "auto"
@@ -8332,7 +8332,7 @@ export namespace IndexedDB {
8332
8332
  */
8333
8333
  objectStoreName: string;
8334
8334
  /**
8335
- * Index name. If not specified or empty string, it performs an object store data request.
8335
+ * Index name. If not specified, it performs an object store data request.
8336
8336
  */
8337
8337
  indexName?: string;
8338
8338
  /**
@@ -10530,6 +10530,9 @@ export namespace Network {
10530
10530
  path: string;
10531
10531
  /**
10532
10532
  * Cookie expiration date as the number of seconds since the UNIX epoch.
10533
+ * The value is set to -1 if the expiry date is not set.
10534
+ * The value can be null for values that cannot be represented in
10535
+ * JSON (±Inf).
10533
10536
  */
10534
10537
  expires: number;
10535
10538
  /**
@@ -14440,8 +14443,10 @@ export namespace Page {
14440
14443
  WebXR = 'WebXR',
14441
14444
  SharedWorker = 'SharedWorker',
14442
14445
  SharedWorkerMessage = 'SharedWorkerMessage',
14446
+ SharedWorkerWithNoActiveClient = 'SharedWorkerWithNoActiveClient',
14443
14447
  WebLocks = 'WebLocks',
14444
14448
  WebHID = 'WebHID',
14449
+ WebBluetooth = 'WebBluetooth',
14445
14450
  WebShare = 'WebShare',
14446
14451
  RequestedStorageAccessGrant = 'RequestedStorageAccessGrant',
14447
14452
  WebNfc = 'WebNfc',
@@ -20426,6 +20431,10 @@ export namespace HeapProfiler {
20426
20431
  * default value is 32768 bytes.
20427
20432
  */
20428
20433
  samplingInterval?: number;
20434
+ /**
20435
+ * Maximum stack depth. The default value is 128.
20436
+ */
20437
+ stackDepth?: number;
20429
20438
  /**
20430
20439
  * By default, the sampling heap profiler reports only objects which are
20431
20440
  * still alive when the profile is returned via getSamplingProfile or
@@ -12,7 +12,7 @@ declare module '*.css.js' {
12
12
  export default styles;
13
13
  }
14
14
 
15
- // Types for the Scheduler API.
15
+ // [start] Types for the Scheduler API.
16
16
  // These are taken from
17
17
  // https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/wicg-task-scheduling
18
18
  // but modified because within Chrome we can use the API without worrying that
@@ -66,3 +66,17 @@ interface Window {
66
66
  interface WorkerGlobalScope {
67
67
  readonly scheduler?: Scheduler;
68
68
  }
69
+ // [end] Types for the Scheduler API.
70
+
71
+ // [start] Type definition for EyeDropper
72
+
73
+ interface EyeDropper {
74
+ open: (options?: {signal?: AbortSignal}) => Promise<{sRGBHex: string}>;
75
+ }
76
+
77
+ interface Window {
78
+ // eslint-disable-next-line @typescript-eslint/naming-convention
79
+ EyeDropper: {new(): EyeDropper};
80
+ }
81
+
82
+ // [end] Type definition for EyeDropper