chrome-devtools-frontend 1.0.1625079 → 1.0.1625854

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 (171) hide show
  1. package/front_end/core/common/VersionController.ts +9 -7
  2. package/front_end/core/common/common.ts +0 -4
  3. package/front_end/core/host/Platform.ts +0 -9
  4. package/front_end/core/host/UserMetrics.ts +0 -55
  5. package/front_end/core/root/ExperimentNames.ts +0 -1
  6. package/front_end/core/sdk/CPUThrottlingManager.ts +1 -1
  7. package/front_end/core/sdk/CSSMetadata.ts +0 -8
  8. package/front_end/core/sdk/CSSProperty.ts +1 -5
  9. package/front_end/core/sdk/CSSPropertyParserMatchers.ts +0 -30
  10. package/front_end/{panels/application → core/sdk}/DOMStorageModel.ts +12 -10
  11. package/front_end/core/sdk/sdk.ts +2 -0
  12. package/front_end/entrypoints/main/MainImpl.ts +12 -8
  13. package/front_end/entrypoints/main/SimpleApp.ts +3 -4
  14. package/front_end/entrypoints/main/main-meta.ts +1 -1
  15. package/front_end/generated/InspectorBackendCommands.ts +3 -3
  16. package/front_end/generated/SupportedCSSProperties.js +21 -21
  17. package/front_end/generated/protocol.ts +4 -1
  18. package/front_end/models/ai_code_completion/AiCodeCompletion.ts +10 -2
  19. package/front_end/models/ai_code_generation/AiCodeGeneration.ts +5 -1
  20. package/front_end/models/issues_manager/CookieIssue.ts +0 -4
  21. package/front_end/models/issues_manager/RelatedIssue.ts +0 -14
  22. package/front_end/models/workspace/IgnoreListManager.ts +1 -1
  23. package/front_end/models/workspace/UISourceCode.ts +10 -5
  24. package/front_end/panels/ai_assistance/components/ChatMessage.ts +26 -9
  25. package/front_end/panels/application/ApplicationPanelSidebar.ts +32 -42
  26. package/front_end/panels/application/BackForwardCacheTreeElement.ts +2 -2
  27. package/front_end/panels/application/BounceTrackingMitigationsTreeElement.ts +2 -2
  28. package/front_end/panels/application/DOMStorageItemsView.ts +18 -13
  29. package/front_end/panels/application/InterestGroupTreeElement.ts +2 -2
  30. package/front_end/panels/application/ReportingApiTreeElement.ts +3 -3
  31. package/front_end/panels/application/ResourcesPanel.ts +1 -2
  32. package/front_end/panels/application/ServiceWorkerCacheTreeElement.ts +1 -2
  33. package/front_end/panels/application/StorageView.ts +1 -2
  34. package/front_end/panels/application/TrustTokensTreeElement.ts +2 -2
  35. package/front_end/panels/application/WebMCPTreeElement.ts +2 -2
  36. package/front_end/panels/application/application.ts +0 -2
  37. package/front_end/panels/console/ConsolePrompt.ts +1 -1
  38. package/front_end/panels/console/ConsoleView.ts +3 -4
  39. package/front_end/panels/elements/ColorSwatchPopoverIcon.ts +0 -152
  40. package/front_end/panels/elements/ElementsTreeElement.ts +4 -9
  41. package/front_end/panels/elements/StylePropertiesSection.ts +0 -61
  42. package/front_end/panels/elements/StylePropertyTreeElement.ts +1 -21
  43. package/front_end/panels/elements/StylesAiCodeCompletionProvider.ts +6 -4
  44. package/front_end/panels/elements/StylesSidebarPane.ts +2 -3
  45. package/front_end/panels/elements/stylesSidebarPane.css +0 -8
  46. package/front_end/panels/emulation/AdvancedApp.ts +3 -3
  47. package/front_end/panels/emulation/DeviceModeToolbar.ts +203 -377
  48. package/front_end/panels/emulation/emulation-meta.ts +1 -1
  49. package/front_end/panels/network/NetworkPanel.ts +1 -1
  50. package/front_end/panels/profiler/HeapProfilerPanel.ts +1 -2
  51. package/front_end/panels/screencast/ScreencastApp.ts +3 -3
  52. package/front_end/panels/screencast/screencast-meta.ts +1 -2
  53. package/front_end/panels/settings/SettingsScreen.ts +2 -2
  54. package/front_end/panels/sources/AiCodeCompletionPlugin.ts +2 -4
  55. package/front_end/panels/sources/SourcesNavigator.ts +1 -1
  56. package/front_end/panels/sources/UISourceCodeFrame.ts +1 -3
  57. package/front_end/panels/timeline/TimelinePanel.ts +2 -2
  58. package/front_end/third_party/chromium/README.chromium +1 -1
  59. package/front_end/third_party/puppeteer/README.chromium +2 -2
  60. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/Page.d.ts +2 -2
  61. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/locators/locators.d.ts +3 -2
  62. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/locators/locators.d.ts.map +1 -1
  63. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/locators/locators.js +53 -23
  64. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/locators/locators.js.map +1 -1
  65. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/Browser.d.ts +3 -2
  66. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/Browser.d.ts.map +1 -1
  67. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/Browser.js +18 -8
  68. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/Browser.js.map +1 -1
  69. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/BrowserConnector.d.ts.map +1 -1
  70. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/BrowserConnector.js +2 -2
  71. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/BrowserConnector.js.map +1 -1
  72. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/Page.d.ts.map +1 -1
  73. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/Page.js +4 -0
  74. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/Page.js.map +1 -1
  75. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/TargetManager.d.ts +1 -1
  76. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/TargetManager.d.ts.map +1 -1
  77. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/TargetManager.js +54 -19
  78. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/TargetManager.js.map +1 -1
  79. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/WebMCP.d.ts +5 -0
  80. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/WebMCP.d.ts.map +1 -1
  81. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/WebMCP.js +2 -9
  82. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/WebMCP.js.map +1 -1
  83. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/BrowserConnector.d.ts.map +1 -1
  84. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/BrowserConnector.js +3 -0
  85. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/BrowserConnector.js.map +1 -1
  86. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/ConnectOptions.d.ts +37 -1
  87. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/ConnectOptions.d.ts.map +1 -1
  88. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/injected/injected.d.ts +1 -1
  89. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/BrowserLauncher.d.ts.map +1 -1
  90. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/BrowserLauncher.js +5 -2
  91. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/BrowserLauncher.js.map +1 -1
  92. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/ChromeLauncher.d.ts.map +1 -1
  93. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/ChromeLauncher.js +1 -0
  94. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/ChromeLauncher.js.map +1 -1
  95. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/revisions.d.ts +3 -3
  96. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/revisions.js +3 -3
  97. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/util/Mutex.d.ts +2 -2
  98. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/util/version.d.ts +1 -1
  99. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/util/version.js +1 -1
  100. package/front_end/third_party/puppeteer/package/lib/es5-iife/puppeteer-core-browser.d.ts +47 -65
  101. package/front_end/third_party/puppeteer/package/lib/es5-iife/puppeteer-core-browser.js +143 -55
  102. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/Page.d.ts +2 -2
  103. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/locators/locators.d.ts +3 -2
  104. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/locators/locators.d.ts.map +1 -1
  105. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/locators/locators.js +53 -23
  106. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/locators/locators.js.map +1 -1
  107. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/Browser.d.ts +3 -2
  108. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/Browser.d.ts.map +1 -1
  109. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/Browser.js +18 -8
  110. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/Browser.js.map +1 -1
  111. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/BrowserConnector.d.ts.map +1 -1
  112. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/BrowserConnector.js +2 -2
  113. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/BrowserConnector.js.map +1 -1
  114. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/Page.d.ts.map +1 -1
  115. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/Page.js +4 -0
  116. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/Page.js.map +1 -1
  117. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/TargetManager.d.ts +1 -1
  118. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/TargetManager.d.ts.map +1 -1
  119. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/TargetManager.js +54 -19
  120. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/TargetManager.js.map +1 -1
  121. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/WebMCP.d.ts +5 -0
  122. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/WebMCP.d.ts.map +1 -1
  123. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/WebMCP.js +2 -9
  124. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/WebMCP.js.map +1 -1
  125. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/BrowserConnector.d.ts.map +1 -1
  126. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/BrowserConnector.js +3 -0
  127. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/BrowserConnector.js.map +1 -1
  128. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/ConnectOptions.d.ts +37 -1
  129. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/ConnectOptions.d.ts.map +1 -1
  130. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/BrowserLauncher.d.ts.map +1 -1
  131. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/BrowserLauncher.js +5 -2
  132. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/BrowserLauncher.js.map +1 -1
  133. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/ChromeLauncher.d.ts.map +1 -1
  134. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/ChromeLauncher.js +1 -0
  135. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/ChromeLauncher.js.map +1 -1
  136. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/revisions.d.ts +3 -3
  137. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/revisions.js +3 -3
  138. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/util/version.d.ts +1 -1
  139. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/util/version.js +1 -1
  140. package/front_end/third_party/puppeteer/package/lib/types.d.ts +47 -65
  141. package/front_end/third_party/puppeteer/package/package.json +6 -6
  142. package/front_end/third_party/puppeteer/package/src/api/Page.ts +2 -2
  143. package/front_end/third_party/puppeteer/package/src/api/locators/locators.ts +69 -27
  144. package/front_end/third_party/puppeteer/package/src/cdp/Browser.ts +27 -8
  145. package/front_end/third_party/puppeteer/package/src/cdp/BrowserConnector.ts +4 -2
  146. package/front_end/third_party/puppeteer/package/src/cdp/Page.ts +6 -0
  147. package/front_end/third_party/puppeteer/package/src/cdp/TargetManager.ts +60 -18
  148. package/front_end/third_party/puppeteer/package/src/cdp/WebMCP.ts +7 -9
  149. package/front_end/third_party/puppeteer/package/src/common/BrowserConnector.ts +3 -0
  150. package/front_end/third_party/puppeteer/package/src/common/ConnectOptions.ts +37 -1
  151. package/front_end/third_party/puppeteer/package/src/node/BrowserLauncher.ts +7 -2
  152. package/front_end/third_party/puppeteer/package/src/node/ChromeLauncher.ts +1 -0
  153. package/front_end/third_party/puppeteer/package/src/revisions.ts +3 -3
  154. package/front_end/third_party/puppeteer/package/src/util/version.ts +1 -1
  155. package/front_end/ui/components/text_editor/AiCodeCompletionProvider.ts +19 -14
  156. package/front_end/ui/components/text_editor/AiCodeGenerationProvider.ts +8 -7
  157. package/front_end/{core/common → ui/legacy}/AppProvider.ts +1 -1
  158. package/front_end/ui/legacy/InspectorView.ts +4 -3
  159. package/front_end/ui/legacy/TabbedPane.ts +1 -1
  160. package/front_end/ui/legacy/UIUserMetrics.ts +70 -0
  161. package/front_end/ui/legacy/components/cookie_table/CookiesTable.ts +1 -8
  162. package/front_end/ui/legacy/components/inline_editor/inline_editor.ts +0 -6
  163. package/front_end/ui/legacy/legacy.ts +6 -0
  164. package/front_end/ui/visual_logging/KnownContextValues.ts +1 -0
  165. package/package.json +1 -1
  166. package/front_end/Images/src/custom-typography.svg +0 -3
  167. package/front_end/ui/legacy/components/inline_editor/FontEditor.ts +0 -798
  168. package/front_end/ui/legacy/components/inline_editor/FontEditorUnitConverter.ts +0 -250
  169. package/front_end/ui/legacy/components/inline_editor/FontEditorUtils.ts +0 -204
  170. package/front_end/ui/legacy/components/inline_editor/fontEditor.css +0 -185
  171. /package/front_end/{core/common → ui/legacy}/App.ts +0 -0
@@ -5,7 +5,6 @@
5
5
  import * as Common from '../../core/common/common.js';
6
6
  import * as SDK from '../../core/sdk/sdk.js';
7
7
 
8
- import {CookieIssue, CookieIssueSubCategory} from './CookieIssue.js';
9
8
  import type {Issue, IssueCategory} from './Issue.js';
10
9
  import {IssuesManager} from './IssuesManager.js';
11
10
 
@@ -56,19 +55,6 @@ export function hasIssueOfCategory(obj: IssuesAssociatable, category: IssueCateg
56
55
  return issuesAssociatedWith(issues, obj).some(issue => issue.getCategory() === category);
57
56
  }
58
57
 
59
- export function hasThirdPartyPhaseoutCookieIssue(obj: IssuesAssociatable): boolean {
60
- const issues = Array.from(IssuesManager.instance().issues());
61
- return issuesAssociatedWith(issues, obj)
62
- .some(issue => CookieIssue.getSubCategory(issue.code()) === CookieIssueSubCategory.THIRD_PARTY_PHASEOUT_COOKIE);
63
- }
64
-
65
- export function hasThirdPartyPhaseoutCookieIssueForDomain(domain: string): boolean {
66
- const issues = Array.from(IssuesManager.instance().issues());
67
- const issuesForDomain = issues.filter(issue => Array.from(issue.cookies()).some(cookie => cookie.domain === domain));
68
- return issuesForDomain.some(
69
- issue => CookieIssue.getSubCategory(issue.code()) === CookieIssueSubCategory.THIRD_PARTY_PHASEOUT_COOKIE);
70
- }
71
-
72
58
  export async function reveal(obj: IssuesAssociatable, category?: IssueCategory): Promise<void|undefined> {
73
59
  if (typeof obj === 'string') {
74
60
  const issue = IssuesManager.instance().getIssueById(obj);
@@ -419,7 +419,7 @@ export class IgnoreListManager extends Common.ObjectWrapper.ObjectWrapper<EventT
419
419
  }
420
420
 
421
421
  let regexPatterns = this.getSkipStackFramesPatternSetting().getAsArray();
422
- const regexValue = IgnoreListManager.instance().urlToRegExpString(url);
422
+ const regexValue = this.urlToRegExpString(url);
423
423
  if (!regexValue) {
424
424
  return;
425
425
  }
@@ -214,7 +214,7 @@ export class UISourceCode extends Common.ObjectWrapper.ObjectWrapper<EventTypes>
214
214
  if (!content) {
215
215
  return null;
216
216
  }
217
- return content.isEncoded && content.content ? window.atob(content.content) : content.content;
217
+ return content.isEncoded && content.content ? atob(content.content) : content.content;
218
218
  }
219
219
 
220
220
  /** Only used to compare whether content changed */
@@ -222,7 +222,7 @@ export class UISourceCode extends Common.ObjectWrapper.ObjectWrapper<EventTypes>
222
222
  if (!content || TextUtils.ContentData.ContentData.isError(content)) {
223
223
  return null;
224
224
  }
225
- return content.createdFromBase64 ? window.atob(content.base64) : content.text;
225
+ return content.createdFromBase64 ? atob(content.base64) : content.text;
226
226
  }
227
227
 
228
228
  async checkContentUpdated(): Promise<void> {
@@ -264,9 +264,14 @@ export class UISourceCode extends Common.ObjectWrapper.ObjectWrapper<EventTypes>
264
264
  await Common.Revealer.reveal(this);
265
265
 
266
266
  // Make sure we are in the next frame before stopping the world with confirm
267
- await new Promise(resolve => window.setTimeout(resolve, 0));
268
-
269
- const shouldUpdate = window.confirm(i18nString(UIStrings.thisFileWasChangedExternally));
267
+ await new Promise(resolve => setTimeout(resolve, 0));
268
+
269
+ // FIXME: we should not call confirm() from the models.
270
+ const shouldUpdate = typeof (globalThis as unknown as {confirm: (msg: string) => boolean}).confirm === 'function' ?
271
+ (globalThis as unknown as {
272
+ confirm: (msg: string) => boolean,
273
+ }).confirm(i18nString(UIStrings.thisFileWasChangedExternally)) :
274
+ true;
270
275
  if (shouldUpdate) {
271
276
  this.#contentCommitted(updatedContent.content, false);
272
277
  } else {
@@ -1974,21 +1974,38 @@ async function makeTimelineRangeSummaryWidget(widgetData: TimelineRangeSummaryAi
1974
1974
  Promise<WidgetMakerResponse|null> {
1975
1975
  const {bounds, parsedTrace, track} = widgetData.data;
1976
1976
  let events: readonly Trace.Types.Events.Event[] = [];
1977
+
1978
+ // Note: right now "main" is the only track we support, but in the future we
1979
+ // can imagine supporting more.
1977
1980
  if (track === 'main') {
1978
- const flameChartView = Timeline.TimelinePanel.TimelinePanel.instance().getFlameChart();
1979
- const mainDataProvider = flameChartView.getMainDataProvider();
1980
- const mainTrack =
1981
- mainDataProvider.timelineData().groups.find((group: {name: string}) => group.name.startsWith('Main \u2014 '));
1982
- if (mainTrack) {
1983
- events = mainDataProvider.groupTreeEvents(mainTrack) ?? [];
1981
+ // To find the main thread, we first find the navigationId that is "active"
1982
+ // for the given bounds. We do this because the "main" thread can change on
1983
+ // navigations, so this is the most accurate way to find the main thread at
1984
+ // the timespan we are interested in.
1985
+ let navigationId: string|undefined;
1986
+ for (const nav of parsedTrace.data.Meta.mainFrameNavigations) {
1987
+ if (nav.ts <= bounds.min) {
1988
+ navigationId = nav.args.data?.navigationId;
1989
+ } else {
1990
+ break;
1991
+ }
1984
1992
  }
1993
+ const mainThread = AiAssistanceModel.AIQueries.AIQueries.findMainThread(navigationId, parsedTrace);
1994
+ if (mainThread) {
1995
+ events = mainThread.entries;
1996
+ AiAssistanceModel.Debug.debugLog(
1997
+ `TimelineRangeSummaryAiWidget found main thread. PID:`, mainThread.pid, 'TID:', mainThread.tid,
1998
+ 'Number of entries:', mainThread.entries.length);
1999
+ }
2000
+ }
2001
+ if (!events) {
2002
+ AiAssistanceModel.Debug.debugLog(`Warning: could not find events for TimelineRangeSummaryAiWidget`, widgetData);
2003
+ return null;
1985
2004
  }
1986
- const eventsArray = Array.from(events);
1987
- eventsArray.sort((a, b) => a.ts - b.ts);
1988
2005
 
1989
2006
  const thirdPartyTree = new Timeline.ThirdPartyTreeView.ThirdPartyTreeViewWidget();
1990
2007
  const mapper = Trace.EntityMapper.EntityMapper.getOrCreate(parsedTrace);
1991
- thirdPartyTree.model = {selectedEvents: eventsArray, parsedTrace, entityMapper: mapper};
2008
+ thirdPartyTree.model = {selectedEvents: events as Trace.Types.Events.Event[], parsedTrace, entityMapper: mapper};
1992
2009
  thirdPartyTree.activeSelection = Timeline.TimelineSelection.selectionFromRangeMicroSeconds(bounds.min, bounds.max);
1993
2010
  thirdPartyTree.refreshTree(true);
1994
2011
 
@@ -40,7 +40,6 @@ import * as Platform from '../../core/platform/platform.js';
40
40
  import * as Root from '../../core/root/root.js';
41
41
  import * as SDK from '../../core/sdk/sdk.js';
42
42
  import * as Protocol from '../../generated/protocol.js';
43
- import * as IssuesManager from '../../models/issues_manager/issues_manager.js';
44
43
  import * as LegacyWrapper from '../../ui/components/legacy_wrapper/legacy_wrapper.js';
45
44
  import {createIcon} from '../../ui/kit/kit.js';
46
45
  import * as SourceFrame from '../../ui/legacy/components/source_frame/source_frame.js';
@@ -54,7 +53,6 @@ import {BackgroundServiceView} from './BackgroundServiceView.js';
54
53
  import {BounceTrackingMitigationsTreeElement} from './BounceTrackingMitigationsTreeElement.js';
55
54
  import {DeviceBoundSessionsModel} from './DeviceBoundSessionsModel.js';
56
55
  import {RootTreeElement as DeviceBoundSessionsRootTreeElement} from './DeviceBoundSessionsTreeElement.js';
57
- import {type DOMStorage, DOMStorageModel, Events as DOMStorageModelEvents} from './DOMStorageModel.js';
58
56
  import {
59
57
  Events as ExtensionStorageModelEvents,
60
58
  type ExtensionStorage,
@@ -275,11 +273,6 @@ const UIStrings = {
275
273
  * @description Application sidebar panel
276
274
  */
277
275
  applicationSidebarPanel: 'Application panel sidebar',
278
- /**
279
- * @description Tooltip in Application Panel Sidebar of the Application panel
280
- * @example {https://example.com} PH1
281
- */
282
- thirdPartyPhaseout: 'Cookies from {PH1} may have been blocked due to third-party cookie phaseout.',
283
276
  /**
284
277
  * @description Description text in the Application Panel describing a frame's resources
285
278
  */
@@ -352,7 +345,7 @@ export class ApplicationPanelSidebar extends UI.Widget.VBox implements SDK.Targe
352
345
  deviceBoundSessionsModel: DeviceBoundSessionsModel|undefined;
353
346
  preloadingSummaryTreeElement: PreloadingSummaryTreeElement|undefined;
354
347
  private readonly resourcesSection: ResourcesSection;
355
- private domStorageTreeElements: Map<DOMStorage, DOMStorageTreeElement>;
348
+ private domStorageTreeElements: Map<SDK.DOMStorageModel.DOMStorage, DOMStorageTreeElement>;
356
349
  private extensionIdToStorageTreeParentElement: Map<string, ExtensionStorageTreeParentElement>;
357
350
  private extensionStorageModels: ExtensionStorageModel[];
358
351
  private extensionStorageTreeElements: Map<string, ExtensionStorageTreeElement>;
@@ -524,9 +517,9 @@ export class ApplicationPanelSidebar extends UI.Widget.VBox implements SDK.Targe
524
517
  }
525
518
 
526
519
  SDK.TargetManager.TargetManager.instance().observeModels(
527
- DOMStorageModel, {
528
- modelAdded: (model: DOMStorageModel) => this.domStorageModelAdded(model),
529
- modelRemoved: (model: DOMStorageModel) => this.domStorageModelRemoved(model),
520
+ SDK.DOMStorageModel.DOMStorageModel, {
521
+ modelAdded: (model: SDK.DOMStorageModel.DOMStorageModel) => this.domStorageModelAdded(model),
522
+ modelRemoved: (model: SDK.DOMStorageModel.DOMStorageModel) => this.domStorageModelRemoved(model),
530
523
  },
531
524
  {scoped: true});
532
525
 
@@ -659,17 +652,17 @@ export class ApplicationPanelSidebar extends UI.Widget.VBox implements SDK.Targe
659
652
  }
660
653
  }
661
654
 
662
- private domStorageModelAdded(model: DOMStorageModel): void {
655
+ private domStorageModelAdded(model: SDK.DOMStorageModel.DOMStorageModel): void {
663
656
  model.enable();
664
657
  model.storages().forEach(this.addDOMStorage.bind(this));
665
- model.addEventListener(DOMStorageModelEvents.DOM_STORAGE_ADDED, this.domStorageAdded, this);
666
- model.addEventListener(DOMStorageModelEvents.DOM_STORAGE_REMOVED, this.domStorageRemoved, this);
658
+ model.addEventListener(SDK.DOMStorageModel.Events.DOM_STORAGE_ADDED, this.domStorageAdded, this);
659
+ model.addEventListener(SDK.DOMStorageModel.Events.DOM_STORAGE_REMOVED, this.domStorageRemoved, this);
667
660
  }
668
661
 
669
- private domStorageModelRemoved(model: DOMStorageModel): void {
662
+ private domStorageModelRemoved(model: SDK.DOMStorageModel.DOMStorageModel): void {
670
663
  model.storages().forEach(this.removeDOMStorage.bind(this));
671
- model.removeEventListener(DOMStorageModelEvents.DOM_STORAGE_ADDED, this.domStorageAdded, this);
672
- model.removeEventListener(DOMStorageModelEvents.DOM_STORAGE_REMOVED, this.domStorageRemoved, this);
664
+ model.removeEventListener(SDK.DOMStorageModel.Events.DOM_STORAGE_ADDED, this.domStorageAdded, this);
665
+ model.removeEventListener(SDK.DOMStorageModel.Events.DOM_STORAGE_REMOVED, this.domStorageRemoved, this);
673
666
  }
674
667
 
675
668
  private extensionStorageModelAdded(model: ExtensionStorageModel): void {
@@ -829,12 +822,12 @@ export class ApplicationPanelSidebar extends UI.Widget.VBox implements SDK.Targe
829
822
  }
830
823
  }
831
824
 
832
- private domStorageAdded(event: Common.EventTarget.EventTargetEvent<DOMStorage>): void {
825
+ private domStorageAdded(event: Common.EventTarget.EventTargetEvent<SDK.DOMStorageModel.DOMStorage>): void {
833
826
  const domStorage = (event.data);
834
827
  this.addDOMStorage(domStorage);
835
828
  }
836
829
 
837
- private addDOMStorage(domStorage: DOMStorage): void {
830
+ private addDOMStorage(domStorage: SDK.DOMStorageModel.DOMStorage): void {
838
831
  console.assert(!this.domStorageTreeElements.get(domStorage));
839
832
  console.assert(Boolean(domStorage.storageKey));
840
833
 
@@ -853,12 +846,12 @@ export class ApplicationPanelSidebar extends UI.Widget.VBox implements SDK.Targe
853
846
  }
854
847
  }
855
848
 
856
- private domStorageRemoved(event: Common.EventTarget.EventTargetEvent<DOMStorage>): void {
849
+ private domStorageRemoved(event: Common.EventTarget.EventTargetEvent<SDK.DOMStorageModel.DOMStorage>): void {
857
850
  const domStorage = (event.data);
858
851
  this.removeDOMStorage(domStorage);
859
852
  }
860
853
 
861
- private removeDOMStorage(domStorage: DOMStorage): void {
854
+ private removeDOMStorage(domStorage: SDK.DOMStorageModel.DOMStorage): void {
862
855
  const treeElement = this.domStorageTreeElements.get(domStorage);
863
856
  if (!treeElement) {
864
857
  return;
@@ -1150,7 +1143,7 @@ export class BackgroundServiceTreeElement extends ApplicationPanelTreeElement {
1150
1143
  }
1151
1144
  this.showView(this.view);
1152
1145
  UI.Context.Context.instance().setFlavor(BackgroundServiceView, this.view);
1153
- Host.userMetrics.panelShown('background_service_' + this.serviceName);
1146
+ UI.UIUserMetrics.UIUserMetrics.instance().panelShown('background_service_' + this.serviceName);
1154
1147
  return false;
1155
1148
  }
1156
1149
  }
@@ -1174,7 +1167,7 @@ export class ServiceWorkersTreeElement extends ApplicationPanelTreeElement {
1174
1167
  this.view = new ServiceWorkersView();
1175
1168
  }
1176
1169
  this.showView(this.view);
1177
- Host.userMetrics.panelShown('service-workers');
1170
+ UI.UIUserMetrics.UIUserMetrics.instance().panelShown('service-workers');
1178
1171
  return false;
1179
1172
  }
1180
1173
  }
@@ -1201,7 +1194,7 @@ export class AppManifestTreeElement extends ApplicationPanelTreeElement {
1201
1194
  override onselect(selectedByUser?: boolean): boolean {
1202
1195
  super.onselect(selectedByUser);
1203
1196
  this.showView(this.view);
1204
- Host.userMetrics.panelShown('app-manifest');
1197
+ UI.UIUserMetrics.UIUserMetrics.instance().panelShown('app-manifest');
1205
1198
  return false;
1206
1199
  }
1207
1200
 
@@ -1260,7 +1253,8 @@ export class ClearStorageTreeElement extends ApplicationPanelTreeElement {
1260
1253
  this.view = new StorageView();
1261
1254
  }
1262
1255
  this.showView(this.view);
1263
- Host.userMetrics.panelShown(Host.UserMetrics.PanelCodes[Host.UserMetrics.PanelCodes.storage]);
1256
+ UI.UIUserMetrics.UIUserMetrics.instance().panelShown(
1257
+ Host.UserMetrics.PanelCodes[Host.UserMetrics.PanelCodes.storage]);
1264
1258
  return false;
1265
1259
  }
1266
1260
  }
@@ -1505,7 +1499,7 @@ export class IDBDatabaseTreeElement extends ApplicationPanelTreeElement {
1505
1499
  }
1506
1500
 
1507
1501
  this.showView(this.view);
1508
- Host.userMetrics.panelShown('indexed-db');
1502
+ UI.UIUserMetrics.UIUserMetrics.instance().panelShown('indexed-db');
1509
1503
  return false;
1510
1504
  }
1511
1505
 
@@ -1641,7 +1635,7 @@ export class IDBObjectStoreTreeElement extends ApplicationPanelTreeElement {
1641
1635
  }
1642
1636
 
1643
1637
  this.showView(this.view);
1644
- Host.userMetrics.panelShown('indexed-db');
1638
+ UI.UIUserMetrics.UIUserMetrics.instance().panelShown('indexed-db');
1645
1639
  return false;
1646
1640
  }
1647
1641
 
@@ -1732,7 +1726,7 @@ export class IDBIndexTreeElement extends ApplicationPanelTreeElement {
1732
1726
  }
1733
1727
 
1734
1728
  this.showView(this.view);
1735
- Host.userMetrics.panelShown('indexed-db');
1729
+ UI.UIUserMetrics.UIUserMetrics.instance().panelShown('indexed-db');
1736
1730
  return false;
1737
1731
  }
1738
1732
 
@@ -1744,8 +1738,8 @@ export class IDBIndexTreeElement extends ApplicationPanelTreeElement {
1744
1738
  }
1745
1739
 
1746
1740
  export class DOMStorageTreeElement extends ApplicationPanelTreeElement {
1747
- private readonly domStorage: DOMStorage;
1748
- constructor(storagePanel: ResourcesPanel, domStorage: DOMStorage) {
1741
+ private readonly domStorage: SDK.DOMStorageModel.DOMStorage;
1742
+ constructor(storagePanel: ResourcesPanel, domStorage: SDK.DOMStorageModel.DOMStorage) {
1749
1743
  super(
1750
1744
  storagePanel,
1751
1745
  domStorage.storageKey ? SDK.StorageKeyManager.parseStorageKey(domStorage.storageKey).origin :
@@ -1763,7 +1757,7 @@ export class DOMStorageTreeElement extends ApplicationPanelTreeElement {
1763
1757
 
1764
1758
  override onselect(selectedByUser?: boolean): boolean {
1765
1759
  super.onselect(selectedByUser);
1766
- Host.userMetrics.panelShown('dom-storage');
1760
+ UI.UIUserMetrics.UIUserMetrics.instance().panelShown('dom-storage');
1767
1761
  this.resourcesPanel.showDOMStorage(this.domStorage);
1768
1762
  return false;
1769
1763
  }
@@ -1803,7 +1797,7 @@ export class ExtensionStorageTreeElement extends ApplicationPanelTreeElement {
1803
1797
  override onselect(selectedByUser?: boolean): boolean {
1804
1798
  super.onselect(selectedByUser);
1805
1799
  this.resourcesPanel.showExtensionStorage(this.extensionStorage);
1806
- Host.userMetrics.panelShown('extension-storage');
1800
+ UI.UIUserMetrics.UIUserMetrics.instance().panelShown('extension-storage');
1807
1801
  return false;
1808
1802
  }
1809
1803
 
@@ -1846,11 +1840,6 @@ export class CookieTreeElement extends ApplicationPanelTreeElement {
1846
1840
  this.#cookieDomain = cookieUrl.securityOrigin();
1847
1841
  this.tooltip = i18nString(UIStrings.cookiesUsedByFramesFromS, {PH1: this.#cookieDomain});
1848
1842
  const icon = createIcon('cookie');
1849
- // Note that we cannot use `cookieDomainInternal` here since it contains scheme.
1850
- if (IssuesManager.RelatedIssue.hasThirdPartyPhaseoutCookieIssueForDomain(cookieUrl.domain())) {
1851
- icon.name = 'warning-filled';
1852
- this.tooltip = i18nString(UIStrings.thirdPartyPhaseout, {PH1: this.#cookieDomain});
1853
- }
1854
1843
  this.setLeadingIcons([icon]);
1855
1844
  }
1856
1845
 
@@ -1878,7 +1867,8 @@ export class CookieTreeElement extends ApplicationPanelTreeElement {
1878
1867
  override onselect(selectedByUser?: boolean): boolean {
1879
1868
  super.onselect(selectedByUser);
1880
1869
  this.resourcesPanel.showCookies(this.target, this.#cookieDomain);
1881
- Host.userMetrics.panelShown(Host.UserMetrics.PanelCodes[Host.UserMetrics.PanelCodes.cookies]);
1870
+ UI.UIUserMetrics.UIUserMetrics.instance().panelShown(
1871
+ Host.UserMetrics.PanelCodes[Host.UserMetrics.PanelCodes.cookies]);
1882
1872
  return false;
1883
1873
  }
1884
1874
  }
@@ -2231,7 +2221,7 @@ export class FrameTreeElement extends ApplicationPanelTreeElement {
2231
2221
  this.view = new FrameDetailsReportView();
2232
2222
  this.view.frame = this.frame;
2233
2223
  }
2234
- Host.userMetrics.panelShown('frame-details');
2224
+ UI.UIUserMetrics.UIUserMetrics.instance().panelShown('frame-details');
2235
2225
  this.showView(this.view);
2236
2226
 
2237
2227
  this.listItemElement.classList.remove('hovered');
@@ -2405,7 +2395,7 @@ export class FrameResourceTreeElement extends ApplicationPanelTreeElement {
2405
2395
  } else {
2406
2396
  void this.panel.scheduleShowView(this.preparePreview());
2407
2397
  }
2408
- Host.userMetrics.panelShown('frame-resource');
2398
+ UI.UIUserMetrics.UIUserMetrics.instance().panelShown('frame-resource');
2409
2399
  return false;
2410
2400
  }
2411
2401
 
@@ -2493,7 +2483,7 @@ class FrameWindowTreeElement extends ApplicationPanelTreeElement {
2493
2483
  this.view.requestUpdate();
2494
2484
  }
2495
2485
  this.showView(this.view);
2496
- Host.userMetrics.panelShown('frame-window');
2486
+ UI.UIUserMetrics.UIUserMetrics.instance().panelShown('frame-window');
2497
2487
  return false;
2498
2488
  }
2499
2489
 
@@ -2522,7 +2512,7 @@ class WorkerTreeElement extends ApplicationPanelTreeElement {
2522
2512
  this.view.requestUpdate();
2523
2513
  }
2524
2514
  this.showView(this.view);
2525
- Host.userMetrics.panelShown('frame-worker');
2515
+ UI.UIUserMetrics.UIUserMetrics.instance().panelShown('frame-worker');
2526
2516
  return false;
2527
2517
  }
2528
2518
 
@@ -2,10 +2,10 @@
2
2
  // Use of this source code is governed by a BSD-style license that can be
3
3
  // found in the LICENSE file.
4
4
 
5
- import * as Host from '../../core/host/host.js';
6
5
  import * as i18n from '../../core/i18n/i18n.js';
7
6
  import type * as Platform from '../../core/platform/platform.js';
8
7
  import {createIcon} from '../../ui/kit/kit.js';
8
+ import * as UI from '../../ui/legacy/legacy.js';
9
9
 
10
10
  import {ApplicationPanelTreeElement} from './ApplicationPanelTreeElement.js';
11
11
  import * as ApplicationComponents from './components/components.js';
@@ -39,7 +39,7 @@ export class BackForwardCacheTreeElement extends ApplicationPanelTreeElement {
39
39
  this.view = new ApplicationComponents.BackForwardCacheView.BackForwardCacheView();
40
40
  }
41
41
  this.showView(this.view);
42
- Host.userMetrics.panelShown('back-forward-cache');
42
+ UI.UIUserMetrics.UIUserMetrics.instance().panelShown('back-forward-cache');
43
43
 
44
44
  return false;
45
45
  }
@@ -2,10 +2,10 @@
2
2
  // Use of this source code is governed by a BSD-style license that can be
3
3
  // found in the LICENSE file.
4
4
 
5
- import * as Host from '../../core/host/host.js';
6
5
  import * as i18n from '../../core/i18n/i18n.js';
7
6
  import type * as Platform from '../../core/platform/platform.js';
8
7
  import {createIcon} from '../../ui/kit/kit.js';
8
+ import * as UI from '../../ui/legacy/legacy.js';
9
9
 
10
10
  import {ApplicationPanelTreeElement} from './ApplicationPanelTreeElement.js';
11
11
  import * as ApplicationComponents from './components/components.js';
@@ -39,7 +39,7 @@ export class BounceTrackingMitigationsTreeElement extends ApplicationPanelTreeEl
39
39
  this.view = new ApplicationComponents.BounceTrackingMitigationsView.BounceTrackingMitigationsView();
40
40
  }
41
41
  this.showView(this.view);
42
- Host.userMetrics.panelShown('bounce-tracking-mitigations');
42
+ UI.UIUserMetrics.UIUserMetrics.instance().panelShown('bounce-tracking-mitigations');
43
43
  return false;
44
44
  }
45
45
  }
@@ -32,12 +32,12 @@
32
32
  import * as Common from '../../core/common/common.js';
33
33
  import * as i18n from '../../core/i18n/i18n.js';
34
34
  import type * as Platform from '../../core/platform/platform.js';
35
+ import * as SDK from '../../core/sdk/sdk.js';
35
36
  import * as TextUtils from '../../models/text_utils/text_utils.js';
36
37
  import * as SourceFrame from '../../ui/legacy/components/source_frame/source_frame.js';
37
38
  import * as UI from '../../ui/legacy/legacy.js';
38
39
  import * as VisualLogging from '../../ui/visual_logging/visual_logging.js';
39
40
 
40
- import {DOMStorage} from './DOMStorageModel.js';
41
41
  import {KeyValueStorageItemsView} from './KeyValueStorageItemsView.js';
42
42
 
43
43
  const UIStrings = {
@@ -58,10 +58,10 @@ const UIStrings = {
58
58
  const str_ = i18n.i18n.registerUIStrings('panels/application/DOMStorageItemsView.ts', UIStrings);
59
59
  const i18nString = i18n.i18n.getLocalizedString.bind(undefined, str_);
60
60
  export class DOMStorageItemsView extends KeyValueStorageItemsView {
61
- private domStorage: DOMStorage;
61
+ private domStorage: SDK.DOMStorageModel.DOMStorage;
62
62
  private eventListeners: Common.EventTarget.EventDescriptor[];
63
63
 
64
- constructor(domStorage: DOMStorage) {
64
+ constructor(domStorage: SDK.DOMStorageModel.DOMStorage) {
65
65
  super(
66
66
  i18nString(UIStrings.domStorageItems), 'dom-storage', true, /* view=*/ undefined, /* metadataView=*/ undefined,
67
67
  /* jslog=*/ undefined, ['storage-view', 'table']);
@@ -91,7 +91,7 @@ export class DOMStorageItemsView extends KeyValueStorageItemsView {
91
91
  );
92
92
  }
93
93
 
94
- setStorage(domStorage: DOMStorage): void {
94
+ setStorage(domStorage: SDK.DOMStorageModel.DOMStorage): void {
95
95
  Common.EventTarget.removeEventListeners(this.eventListeners);
96
96
  this.domStorage = domStorage;
97
97
  const storageKind = domStorage.isLocalStorage ? 'local-storage-data' : 'session-storage-data';
@@ -100,10 +100,14 @@ export class DOMStorageItemsView extends KeyValueStorageItemsView {
100
100
  this.toolbar?.setStorageKey(domStorage.storageKey);
101
101
  }
102
102
  this.eventListeners = [
103
- this.domStorage.addEventListener(DOMStorage.Events.DOM_STORAGE_ITEMS_CLEARED, this.domStorageItemsCleared, this),
104
- this.domStorage.addEventListener(DOMStorage.Events.DOM_STORAGE_ITEM_REMOVED, this.domStorageItemRemoved, this),
105
- this.domStorage.addEventListener(DOMStorage.Events.DOM_STORAGE_ITEM_ADDED, this.domStorageItemAdded, this),
106
- this.domStorage.addEventListener(DOMStorage.Events.DOM_STORAGE_ITEM_UPDATED, this.domStorageItemUpdated, this),
103
+ this.domStorage.addEventListener(
104
+ SDK.DOMStorageModel.DOMStorage.Events.DOM_STORAGE_ITEMS_CLEARED, this.domStorageItemsCleared, this),
105
+ this.domStorage.addEventListener(
106
+ SDK.DOMStorageModel.DOMStorage.Events.DOM_STORAGE_ITEM_REMOVED, this.domStorageItemRemoved, this),
107
+ this.domStorage.addEventListener(
108
+ SDK.DOMStorageModel.DOMStorage.Events.DOM_STORAGE_ITEM_ADDED, this.domStorageItemAdded, this),
109
+ this.domStorage.addEventListener(
110
+ SDK.DOMStorageModel.DOMStorage.Events.DOM_STORAGE_ITEM_UPDATED, this.domStorageItemUpdated, this),
107
111
  ];
108
112
  this.refreshItems();
109
113
  }
@@ -121,8 +125,8 @@ export class DOMStorageItemsView extends KeyValueStorageItemsView {
121
125
  UI.ARIAUtils.LiveAnnouncer.alert(i18nString(UIStrings.domStorageItemsCleared));
122
126
  }
123
127
 
124
- private domStorageItemRemoved(event: Common.EventTarget.EventTargetEvent<DOMStorage.DOMStorageItemRemovedEvent>):
125
- void {
128
+ private domStorageItemRemoved(
129
+ event: Common.EventTarget.EventTargetEvent<SDK.DOMStorageModel.DOMStorage.DOMStorageItemRemovedEvent>): void {
126
130
  if (!this.isShowing()) {
127
131
  return;
128
132
  }
@@ -135,7 +139,8 @@ export class DOMStorageItemsView extends KeyValueStorageItemsView {
135
139
  UI.ARIAUtils.LiveAnnouncer.alert(i18nString(UIStrings.domStorageItemDeleted));
136
140
  }
137
141
 
138
- private domStorageItemAdded(event: Common.EventTarget.EventTargetEvent<DOMStorage.DOMStorageItemAddedEvent>): void {
142
+ private domStorageItemAdded(
143
+ event: Common.EventTarget.EventTargetEvent<SDK.DOMStorageModel.DOMStorage.DOMStorageItemAddedEvent>): void {
139
144
  if (!this.isShowing()) {
140
145
  return;
141
146
  }
@@ -143,8 +148,8 @@ export class DOMStorageItemsView extends KeyValueStorageItemsView {
143
148
  this.itemAdded(event.data.key, event.data.value);
144
149
  }
145
150
 
146
- private domStorageItemUpdated(event: Common.EventTarget.EventTargetEvent<DOMStorage.DOMStorageItemUpdatedEvent>):
147
- void {
151
+ private domStorageItemUpdated(
152
+ event: Common.EventTarget.EventTargetEvent<SDK.DOMStorageModel.DOMStorage.DOMStorageItemUpdatedEvent>): void {
148
153
  if (!this.isShowing()) {
149
154
  return;
150
155
  }
@@ -2,12 +2,12 @@
2
2
  // Use of this source code is governed by a BSD-style license that can be
3
3
  // found in the LICENSE file.
4
4
 
5
- import * as Host from '../../core/host/host.js';
6
5
  import * as i18n from '../../core/i18n/i18n.js';
7
6
  import type * as Platform from '../../core/platform/platform.js';
8
7
  import * as SDK from '../../core/sdk/sdk.js';
9
8
  import type * as Protocol from '../../generated/protocol.js';
10
9
  import {createIcon} from '../../ui/kit/kit.js';
10
+ import * as UI from '../../ui/legacy/legacy.js';
11
11
 
12
12
  import {ApplicationPanelTreeElement} from './ApplicationPanelTreeElement.js';
13
13
  import {InterestGroupStorageView} from './InterestGroupStorageView.js';
@@ -51,7 +51,7 @@ export class InterestGroupTreeElement extends ApplicationPanelTreeElement {
51
51
  override onselect(selectedByUser?: boolean): boolean {
52
52
  super.onselect(selectedByUser);
53
53
  this.showView(this.view);
54
- Host.userMetrics.panelShown('interest-groups');
54
+ UI.UIUserMetrics.UIUserMetrics.instance().panelShown('interest-groups');
55
55
  return false;
56
56
  }
57
57
 
@@ -2,10 +2,10 @@
2
2
  // Use of this source code is governed by a BSD-style license that can be
3
3
  // found in the LICENSE file.
4
4
 
5
- import * as Host from '../../core/host/host.js';
6
5
  import * as i18n from '../../core/i18n/i18n.js';
7
6
  import type * as Platform from '../../core/platform/platform.js';
8
7
  import {createIcon} from '../../ui/kit/kit.js';
8
+ import * as UI from '../../ui/legacy/legacy.js';
9
9
 
10
10
  import {ApplicationPanelTreeElement} from './ApplicationPanelTreeElement.js';
11
11
  import {CrashReportContextView} from './CrashReportContextView.js';
@@ -53,7 +53,7 @@ export class ReportingApiTreeElement extends ApplicationPanelTreeElement {
53
53
  this.view = new ReportingApiView();
54
54
  }
55
55
  this.showView(this.view);
56
- Host.userMetrics.panelShown('reporting-api');
56
+ UI.UIUserMetrics.UIUserMetrics.instance().panelShown('reporting-api');
57
57
  return false;
58
58
  }
59
59
  }
@@ -78,7 +78,7 @@ export class CrashReportContextTreeElement extends ApplicationPanelTreeElement {
78
78
  }
79
79
  this.view.requestUpdate();
80
80
  this.showView(this.view);
81
- Host.userMetrics.panelShown('crash-report-context');
81
+ UI.UIUserMetrics.UIUserMetrics.instance().panelShown('crash-report-context');
82
82
  return false;
83
83
  }
84
84
  }
@@ -17,7 +17,6 @@ import {CookieItemsView} from './CookieItemsView.js';
17
17
  import type {DeviceBoundSessionsModel} from './DeviceBoundSessionsModel.js';
18
18
  import {DeviceBoundSessionsView} from './DeviceBoundSessionsView.js';
19
19
  import {DOMStorageItemsView} from './DOMStorageItemsView.js';
20
- import type {DOMStorage} from './DOMStorageModel.js';
21
20
  import {ExtensionStorageItemsView} from './ExtensionStorageItemsView.js';
22
21
  import type {ExtensionStorage} from './ExtensionStorageModel.js';
23
22
  import type * as PreloadingHelper from './preloading/helper/helper.js';
@@ -166,7 +165,7 @@ export class ResourcesPanel extends UI.Panel.PanelWithSidebar {
166
165
  this.showView(this.categoryView);
167
166
  }
168
167
 
169
- showDOMStorage(domStorage: DOMStorage): void {
168
+ showDOMStorage(domStorage: SDK.DOMStorageModel.DOMStorage): void {
170
169
  if (!domStorage) {
171
170
  return;
172
171
  }
@@ -3,7 +3,6 @@
3
3
  // found in the LICENSE file.
4
4
 
5
5
  import type * as Common from '../../core/common/common.js';
6
- import * as Host from '../../core/host/host.js';
7
6
  import * as i18n from '../../core/i18n/i18n.js';
8
7
  import type * as Platform from '../../core/platform/platform.js';
9
8
  import * as SDK from '../../core/sdk/sdk.js';
@@ -214,7 +213,7 @@ export class SWCacheTreeElement extends ApplicationPanelTreeElement {
214
213
  }
215
214
 
216
215
  this.showView(this.view);
217
- Host.userMetrics.panelShown('service-worker-cache');
216
+ UI.UIUserMetrics.UIUserMetrics.instance().panelShown('service-worker-cache');
218
217
  return false;
219
218
  }
220
219
 
@@ -16,7 +16,6 @@ import * as SettingsUI from '../../ui/legacy/components/settings_ui/settings_ui.
16
16
  import * as UI from '../../ui/legacy/legacy.js';
17
17
  import * as VisualLogging from '../../ui/visual_logging/visual_logging.js';
18
18
 
19
- import {DOMStorageModel} from './DOMStorageModel.js';
20
19
  import {IndexedDBModel} from './IndexedDBModel.js';
21
20
  import storageViewStyles from './storageView.css.js';
22
21
 
@@ -459,7 +458,7 @@ export class StorageView extends UI.Widget.VBox {
459
458
  const hasAll = set.has(Protocol.Storage.StorageType.All);
460
459
 
461
460
  if (set.has(Protocol.Storage.StorageType.Local_storage) || hasAll) {
462
- const storageModel = target.model(DOMStorageModel);
461
+ const storageModel = target.model(SDK.DOMStorageModel.DOMStorageModel);
463
462
  if (storageModel) {
464
463
  storageModel.clearForStorageKey(storageKey);
465
464
  }
@@ -2,10 +2,10 @@
2
2
  // Use of this source code is governed by a BSD-style license that can be
3
3
  // found in the LICENSE file.
4
4
 
5
- import * as Host from '../../core/host/host.js';
6
5
  import * as i18n from '../../core/i18n/i18n.js';
7
6
  import type * as Platform from '../../core/platform/platform.js';
8
7
  import {createIcon} from '../../ui/kit/kit.js';
8
+ import * as UI from '../../ui/legacy/legacy.js';
9
9
 
10
10
  import {ApplicationPanelTreeElement} from './ApplicationPanelTreeElement.js';
11
11
  import * as ApplicationComponents from './components/components.js';
@@ -40,7 +40,7 @@ export class TrustTokensTreeElement extends ApplicationPanelTreeElement {
40
40
  this.view = new ApplicationComponents.TrustTokensView.TrustTokensView();
41
41
  }
42
42
  this.showView(this.view);
43
- Host.userMetrics.panelShown('trust-tokens');
43
+ UI.UIUserMetrics.UIUserMetrics.instance().panelShown('trust-tokens');
44
44
  return false;
45
45
  }
46
46
  }
@@ -2,9 +2,9 @@
2
2
  // Use of this source code is governed by a BSD-style license that can be
3
3
  // found in the LICENSE file.
4
4
 
5
- import * as Host from '../../core/host/host.js';
6
5
  import type * as Platform from '../../core/platform/platform.js';
7
6
  import {createIcon} from '../../ui/kit/kit.js';
7
+ import * as UI from '../../ui/legacy/legacy.js';
8
8
 
9
9
  import {ApplicationPanelTreeElement} from './ApplicationPanelTreeElement.js';
10
10
  import type {ResourcesPanel} from './ResourcesPanel.js';
@@ -29,7 +29,7 @@ export class WebMCPTreeElement extends ApplicationPanelTreeElement {
29
29
  this.#view = new WebMCPView();
30
30
  }
31
31
  this.showView(this.#view);
32
- Host.userMetrics.panelShown('web-mcp');
32
+ UI.UIUserMetrics.UIUserMetrics.instance().panelShown('web-mcp');
33
33
  return false;
34
34
  }
35
35
  }