chrome-devtools-frontend 1.0.1689415 → 1.0.1690116

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 (197) hide show
  1. package/eslint.config.mjs +8 -2
  2. package/front_end/core/common/Object.ts +10 -4
  3. package/front_end/core/i18n/collect-ui-strings.js +5 -5
  4. package/front_end/core/i18n/generate-locales-js.js +1 -1
  5. package/front_end/core/i18n/i18n.ts +6 -0
  6. package/front_end/core/root/Runtime.ts +0 -5
  7. package/front_end/core/sdk/CSSMetadata.ts +3 -5
  8. package/front_end/core/sdk/DOMModel.ts +46 -11
  9. package/front_end/core/sdk/EmulationModel.ts +18 -0
  10. package/front_end/core/sdk/SDKSettings.ts +9 -0
  11. package/front_end/core/sdk/Script.ts +0 -1
  12. package/front_end/core/sdk/SecurityOrigin.ts +135 -25
  13. package/front_end/core/sdk/Target.ts +1 -5
  14. package/front_end/models/ai_assistance/AiUtils.ts +0 -10
  15. package/front_end/models/ai_assistance/agents/AccessibilityAgent.ts +6 -10
  16. package/front_end/models/ai_assistance/agents/StylingAgent.ts +0 -1
  17. package/front_end/models/ai_assistance/injected.ts +0 -2
  18. package/front_end/models/javascript_metadata/NativeFunctions.ts +1 -1
  19. package/front_end/models/trace/insights/CLSCulprits.ts +1 -2
  20. package/front_end/models/trace/insights/Cache.ts +1 -3
  21. package/front_end/models/trace/insights/CharacterSet.ts +1 -3
  22. package/front_end/models/trace/insights/DOMSize.ts +1 -3
  23. package/front_end/models/trace/insights/DocumentLatency.ts +1 -3
  24. package/front_end/models/trace/insights/DuplicatedJavaScript.ts +1 -3
  25. package/front_end/models/trace/insights/FontDisplay.ts +1 -2
  26. package/front_end/models/trace/insights/ForcedReflow.ts +1 -2
  27. package/front_end/models/trace/insights/INPBreakdown.ts +1 -3
  28. package/front_end/models/trace/insights/ImageDelivery.ts +1 -3
  29. package/front_end/models/trace/insights/LCPBreakdown.ts +1 -3
  30. package/front_end/models/trace/insights/LCPDiscovery.ts +1 -3
  31. package/front_end/models/trace/insights/LegacyJavaScript.ts +1 -3
  32. package/front_end/models/trace/insights/ModernHTTP.ts +1 -2
  33. package/front_end/models/trace/insights/NetworkDependencyTree.ts +1 -2
  34. package/front_end/models/trace/insights/RenderBlocking.ts +1 -3
  35. package/front_end/models/trace/insights/SlowCSSSelector.ts +1 -3
  36. package/front_end/models/trace/insights/ThirdParties.ts +1 -3
  37. package/front_end/models/trace/insights/Viewport.ts +1 -2
  38. package/front_end/panels/accessibility/ARIAAttributesView.ts +1 -1
  39. package/front_end/panels/accessibility/AccessibilityAnnouncementRecordingView.ts +3 -3
  40. package/front_end/panels/accessibility/AccessibilityNodeView.ts +1 -2
  41. package/front_end/panels/accessibility/AccessibilityStrings.ts +7 -3
  42. package/front_end/panels/ai_assistance/components/AIv2MarkdownRenderer.ts +2 -2
  43. package/front_end/panels/ai_assistance/components/AccessibilityAgentMarkdownRenderer.ts +1 -3
  44. package/front_end/panels/animation/AnimationGroupPreviewUI.ts +1 -1
  45. package/front_end/panels/animation/AnimationTimeline.ts +1 -1
  46. package/front_end/panels/animation/AnimationUI.ts +1 -1
  47. package/front_end/panels/application/AppManifestView.ts +6 -2
  48. package/front_end/panels/application/ApplicationPanelSidebar.ts +2 -4
  49. package/front_end/panels/application/BounceTrackingMitigationsTreeElement.ts +1 -1
  50. package/front_end/panels/application/FrameDetailsView.ts +1 -1
  51. package/front_end/panels/application/IndexedDBViews.ts +3 -2
  52. package/front_end/panels/application/ReportingApiTreeElement.ts +1 -1
  53. package/front_end/panels/application/ReportingApiView.ts +2 -2
  54. package/front_end/panels/application/ServiceWorkerUpdateCycleView.ts +1 -1
  55. package/front_end/panels/application/ServiceWorkersView.ts +1 -1
  56. package/front_end/panels/application/StorageBucketsTreeElement.ts +1 -1
  57. package/front_end/panels/application/StorageItemsToolbar.ts +6 -2
  58. package/front_end/panels/application/StorageView.ts +9 -8
  59. package/front_end/panels/application/TrustTokensTreeElement.ts +1 -1
  60. package/front_end/panels/application/WebMCPView.ts +2 -1
  61. package/front_end/panels/application/components/BounceTrackingMitigationsView.ts +1 -1
  62. package/front_end/panels/application/components/CrashReportContextGrid.ts +1 -1
  63. package/front_end/panels/application/components/EndpointsGrid.ts +1 -1
  64. package/front_end/panels/application/components/ReportsGrid.ts +1 -1
  65. package/front_end/panels/application/components/TrustTokensView.ts +1 -1
  66. package/front_end/panels/application/preloading/components/MismatchedPreloadingGrid.ts +1 -1
  67. package/front_end/panels/application/preloading/components/PreloadingGrid.ts +1 -1
  68. package/front_end/panels/application/preloading/components/RuleSetGrid.ts +7 -2
  69. package/front_end/panels/application/serviceWorkerUpdateCycleView.css +2 -0
  70. package/front_end/panels/autofill/AutofillView.ts +2 -2
  71. package/front_end/panels/browser_debugger/CategorizedBreakpointsSidebarPane.ts +2 -3
  72. package/front_end/panels/browser_debugger/DOMBreakpointsSidebarPane.ts +1 -1
  73. package/front_end/panels/changes/ChangesSidebar.ts +56 -15
  74. package/front_end/panels/changes/ChangesView.ts +1 -1
  75. package/front_end/panels/console/ConsolePrompt.ts +6 -2
  76. package/front_end/panels/console/ConsoleSidebar.ts +6 -2
  77. package/front_end/panels/elements/ElementsTreeElement.ts +12 -0
  78. package/front_end/panels/elements/ElementsTreeOutline.ts +400 -128
  79. package/front_end/panels/elements/PropertyRenderer.ts +22 -15
  80. package/front_end/panels/elements/StandaloneStylesContainer.ts +6 -2
  81. package/front_end/panels/elements/StylePropertyTreeElement.ts +75 -26
  82. package/front_end/panels/elements/StylesSidebarPane.ts +6 -2
  83. package/front_end/panels/elements/elementsTreeOutline.css +4 -0
  84. package/front_end/panels/emulation/DeviceModeView.ts +6 -1
  85. package/front_end/panels/emulation/InspectedPagePlaceholder.ts +6 -2
  86. package/front_end/panels/layer_viewer/LayerDetailsView.ts +6 -2
  87. package/front_end/panels/layer_viewer/LayerTreeOutline.ts +7 -2
  88. package/front_end/panels/layer_viewer/Layers3DView.ts +8 -1
  89. package/front_end/panels/layer_viewer/PaintProfilerView.ts +6 -2
  90. package/front_end/panels/lighthouse/lighthousePanel.css +5 -5
  91. package/front_end/panels/lighthouse/lighthouseStartView.css +13 -13
  92. package/front_end/panels/linear_memory_inspector/LinearMemoryInspectorPane.ts +6 -2
  93. package/front_end/panels/linear_memory_inspector/components/LinearMemoryInspector.ts +6 -2
  94. package/front_end/panels/mobile_throttling/NetworkThrottlingSelector.ts +6 -2
  95. package/front_end/panels/mobile_throttling/ThrottlingManager.ts +25 -54
  96. package/front_end/panels/network/NetworkLogView.ts +8 -3
  97. package/front_end/panels/network/components/RequestHeadersView.css +5 -0
  98. package/front_end/panels/network/networkLogView.css +4 -0
  99. package/front_end/panels/network/requestInitiatorViewTree.css +2 -0
  100. package/front_end/panels/performance_monitor/performanceMonitor.css +3 -3
  101. package/front_end/panels/profiler/HeapDetachedElementsView.ts +7 -2
  102. package/front_end/panels/profiler/HeapProfileView.ts +7 -2
  103. package/front_end/panels/profiler/HeapSnapshotDataGrids.ts +8 -4
  104. package/front_end/panels/profiler/HeapSnapshotGridNodes.ts +8 -4
  105. package/front_end/panels/profiler/HeapSnapshotView.ts +15 -6
  106. package/front_end/panels/profiler/HeapTimelineOverview.ts +6 -2
  107. package/front_end/panels/profiler/ProfileFlameChartDataProvider.ts +12 -5
  108. package/front_end/panels/profiler/ProfileLauncherView.ts +6 -2
  109. package/front_end/panels/profiler/profilesPanel.css +8 -9
  110. package/front_end/panels/profiler/profilesSidebarTree.css +13 -13
  111. package/front_end/panels/protocol_monitor/JSONEditor.css +2 -2
  112. package/front_end/panels/protocol_monitor/JSONEditor.ts +6 -1
  113. package/front_end/panels/protocol_monitor/protocolMonitor.css +2 -2
  114. package/front_end/panels/sources/SourcesView.ts +7 -2
  115. package/front_end/panels/sources/TabbedEditorContainer.ts +6 -2
  116. package/front_end/panels/sources/UISourceCodeFrame.ts +10 -3
  117. package/front_end/panels/timeline/AnimationsTrackAppender.ts +1 -1
  118. package/front_end/panels/timeline/AnnotationHelpers.ts +9 -9
  119. package/front_end/panels/timeline/CountersGraph.ts +8 -8
  120. package/front_end/panels/timeline/EventsTimelineTreeView.ts +3 -3
  121. package/front_end/panels/timeline/ExtensionTrackAppender.ts +1 -1
  122. package/front_end/panels/timeline/GPUTrackAppender.ts +1 -1
  123. package/front_end/panels/timeline/InteractionsTrackAppender.ts +1 -1
  124. package/front_end/panels/timeline/IsolateSelector.ts +2 -2
  125. package/front_end/panels/timeline/LayoutShiftsTrackAppender.ts +3 -3
  126. package/front_end/panels/timeline/NetworkTrackAppender.ts +1 -1
  127. package/front_end/panels/timeline/StatusDialog.ts +5 -6
  128. package/front_end/panels/timeline/ThirdPartyTreeView.ts +4 -4
  129. package/front_end/panels/timeline/ThreadAppender.ts +12 -14
  130. package/front_end/panels/timeline/TimelineController.ts +5 -8
  131. package/front_end/panels/timeline/TimelineDetailsView.ts +13 -9
  132. package/front_end/panels/timeline/TimelineEventOverview.ts +4 -4
  133. package/front_end/panels/timeline/TimelineFlameChartDataProvider.ts +17 -17
  134. package/front_end/panels/timeline/TimelineFlameChartView.ts +8 -3
  135. package/front_end/panels/timeline/TimelineHistoryManager.ts +8 -8
  136. package/front_end/panels/timeline/TimelineLoader.ts +1 -1
  137. package/front_end/panels/timeline/TimelineMiniMap.ts +7 -2
  138. package/front_end/panels/timeline/TimelinePanel.ts +57 -59
  139. package/front_end/panels/timeline/TimelineSelectorStatsView.ts +27 -27
  140. package/front_end/panels/timeline/TimelineTreeView.ts +46 -44
  141. package/front_end/panels/timeline/TimelineUIUtils.ts +142 -116
  142. package/front_end/panels/timeline/TimingsTrackAppender.ts +1 -1
  143. package/front_end/panels/timeline/TrackConfigBanner.ts +4 -4
  144. package/front_end/panels/timeline/UIDevtoolsUtils.ts +15 -15
  145. package/front_end/panels/timeline/components/insights/Table.ts +1 -1
  146. package/front_end/panels/timeline/enable-easter-egg.js +1 -1
  147. package/front_end/panels/timeline/timeline-meta.ts +30 -30
  148. package/front_end/panels/timeline/timelineFlameChartView.css +10 -10
  149. package/front_end/panels/timeline/timelineFlamechartPopover.css +5 -5
  150. package/front_end/panels/timeline/timelineHistoryManager.css +7 -7
  151. package/front_end/panels/timeline/timelinePaintProfiler.css +2 -2
  152. package/front_end/panels/timeline/utils/IgnoreList.ts +4 -4
  153. package/front_end/third_party/chromium/README.chromium +1 -1
  154. package/front_end/ui/comments/CommentAnchorResolver.ts +12 -3
  155. package/front_end/ui/comments/CommentOverlayManager.ts +9 -1
  156. package/front_end/ui/components/buttons/Button.docs.ts +1 -1
  157. package/front_end/ui/components/buttons/button.css +21 -0
  158. package/front_end/ui/components/report_view/ReportView.docs.ts +1 -1
  159. package/front_end/ui/components/snackbars/Snackbars.docs.ts +1 -1
  160. package/front_end/ui/components/spinners/Spinner.ts +1 -1
  161. package/front_end/ui/components/spinners/Spinners.docs.ts +1 -1
  162. package/front_end/ui/components/suggestion_input/SuggestionInput.ts +1 -2
  163. package/front_end/ui/components/switch/Switch.docs.ts +1 -1
  164. package/front_end/ui/components/text_editor/AiCodeCompletionProvider.ts +10 -8
  165. package/front_end/ui/components/text_editor/AiCodeGenerationProvider.ts +2 -1
  166. package/front_end/ui/components/text_editor/ExecutionPositionHighlighter.ts +2 -2
  167. package/front_end/ui/components/text_editor/TextEditor.ts +19 -0
  168. package/front_end/ui/components/text_editor/config.ts +109 -96
  169. package/front_end/ui/components/text_editor/cursor_tooltip.ts +1 -1
  170. package/front_end/ui/components/text_editor/theme.ts +1 -1
  171. package/front_end/ui/components/tooltips/Tooltip.docs.ts +1 -1
  172. package/front_end/ui/components/tooltips/Tooltip.ts +1 -1
  173. package/front_end/ui/components/tree_outline/TreeOutlineUtils.ts +4 -1
  174. package/front_end/ui/kit/cards/Card.ts +1 -1
  175. package/front_end/ui/kit/icons/Icon.ts +1 -1
  176. package/front_end/ui/kit/link/Link.docs.ts +1 -1
  177. package/front_end/ui/kit/link/Link.ts +1 -1
  178. package/front_end/ui/legacy/ContextMenu.docs.ts +1 -1
  179. package/front_end/ui/legacy/Dialog.ts +10 -2
  180. package/front_end/ui/legacy/FilterBar.ts +6 -1
  181. package/front_end/ui/legacy/RadioButton.docs.ts +1 -1
  182. package/front_end/ui/legacy/SelectMenu.docs.ts +1 -1
  183. package/front_end/ui/legacy/Slider.docs.ts +1 -1
  184. package/front_end/ui/legacy/SplitWidget.ts +5 -1
  185. package/front_end/ui/legacy/TabbedPane.ts +5 -1
  186. package/front_end/ui/legacy/components/color_picker/Spectrum.ts +6 -1
  187. package/front_end/ui/legacy/components/data_grid/ViewportDataGrid.ts +6 -2
  188. package/front_end/ui/legacy/components/inline_editor/BezierEditor.ts +6 -1
  189. package/front_end/ui/legacy/components/inline_editor/CSSShadowEditor.ts +6 -2
  190. package/front_end/ui/legacy/components/object_ui/objectPropertiesSection.css +2 -0
  191. package/front_end/ui/legacy/components/perf_ui/FilmStripView.ts +6 -1
  192. package/front_end/ui/legacy/components/perf_ui/FlameChart.ts +6 -2
  193. package/front_end/ui/legacy/components/perf_ui/TimelineOverviewPane.ts +8 -4
  194. package/front_end/ui/legacy/components/quick_open/FilteredListWidget.ts +8 -3
  195. package/front_end/ui/legacy/components/quick_open/QuickOpen.ts +6 -1
  196. package/front_end/ui/legacy/components/source_frame/SourceFrame.ts +7 -2
  197. package/package.json +2 -2
@@ -19,7 +19,7 @@ const UIStrings = {
19
19
  trustTokens: 'Private state tokens',
20
20
  } as const;
21
21
  const str_ = i18n.i18n.registerUIStrings('panels/application/TrustTokensTreeElement.ts', UIStrings);
22
- export const i18nString = i18n.i18n.getLocalizedString.bind(undefined, str_);
22
+ export const i18nString: i18n.LocalizeString = i18n.i18n.getLocalizedString.bind(undefined, str_);
23
23
 
24
24
  export class TrustTokensTreeElement extends ApplicationPanelTreeElement {
25
25
  private view?: ApplicationComponents.TrustTokensView.TrustTokensView;
@@ -1053,7 +1053,8 @@ export class PayloadWidget extends UI.Widget.Widget {
1053
1053
  #symbolizedError?: Bindings.SymbolizedError.SymbolizedError|null;
1054
1054
  #view: typeof PAYLOAD_DEFAULT_VIEW;
1055
1055
 
1056
- constructor(element?: HTMLElement, view = PAYLOAD_DEFAULT_VIEW) {
1056
+ constructor(element?: HTMLElement,
1057
+ view: (input: PayloadViewInput, output: object, target: HTMLElement) => void = PAYLOAD_DEFAULT_VIEW) {
1057
1058
  super(element);
1058
1059
  this.#view = view;
1059
1060
  }
@@ -56,7 +56,7 @@ const UIStrings = {
56
56
  } as const;
57
57
 
58
58
  const str_ = i18n.i18n.registerUIStrings('panels/application/components/BounceTrackingMitigationsView.ts', UIStrings);
59
- export const i18nString = i18n.i18n.getLocalizedString.bind(undefined, str_);
59
+ export const i18nString: i18n.LocalizeString = i18n.i18n.getLocalizedString.bind(undefined, str_);
60
60
 
61
61
  export const enum ScreenStatusType {
62
62
  INITIALIZING = 'Initializing',
@@ -29,7 +29,7 @@ const UIStrings = {
29
29
  copyValue: 'Copy value',
30
30
  } as const;
31
31
  const str_ = i18n.i18n.registerUIStrings('panels/application/components/CrashReportContextGrid.ts', UIStrings);
32
- export const i18nString = i18n.i18n.getLocalizedString.bind(undefined, str_);
32
+ export const i18nString: i18n.LocalizeString = i18n.i18n.getLocalizedString.bind(undefined, str_);
33
33
 
34
34
  export interface CrashReportContextGridData {
35
35
  entries: Array<{key: string, value: string}>;
@@ -25,7 +25,7 @@ const UIStrings = {
25
25
  endpointsDescription: 'Here you will find the list of endpoints that receive the reports',
26
26
  } as const;
27
27
  const str_ = i18n.i18n.registerUIStrings('panels/application/components/EndpointsGrid.ts', UIStrings);
28
- export const i18nString = i18n.i18n.getLocalizedString.bind(undefined, str_);
28
+ export const i18nString: i18n.LocalizeString = i18n.i18n.getLocalizedString.bind(undefined, str_);
29
29
 
30
30
  const {render, html} = Lit;
31
31
 
@@ -46,7 +46,7 @@ const UIStrings = {
46
46
  generatedAt: 'Generated at',
47
47
  } as const;
48
48
  const str_ = i18n.i18n.registerUIStrings('panels/application/components/ReportsGrid.ts', UIStrings);
49
- export const i18nString = i18n.i18n.getLocalizedString.bind(undefined, str_);
49
+ export const i18nString: i18n.LocalizeString = i18n.i18n.getLocalizedString.bind(undefined, str_);
50
50
 
51
51
  const {render, html} = Lit;
52
52
 
@@ -59,7 +59,7 @@ const UIStrings = {
59
59
  learnMore: 'Learn more',
60
60
  } as const;
61
61
  const str_ = i18n.i18n.registerUIStrings('panels/application/components/TrustTokensView.ts', UIStrings);
62
- export const i18nString = i18n.i18n.getLocalizedString.bind(undefined, str_);
62
+ export const i18nString: i18n.LocalizeString = i18n.i18n.getLocalizedString.bind(undefined, str_);
63
63
 
64
64
  export interface TrustTokensViewInput {
65
65
  tokens: Protocol.Storage.TrustTokens[];
@@ -57,7 +57,7 @@ const UIStrings = {
57
57
  } as const;
58
58
  const str_ =
59
59
  i18n.i18n.registerUIStrings('panels/application/preloading/components/MismatchedPreloadingGrid.ts', UIStrings);
60
- export const i18nString = i18n.i18n.getLocalizedString.bind(undefined, str_);
60
+ export const i18nString: i18n.LocalizeString = i18n.i18n.getLocalizedString.bind(undefined, str_);
61
61
 
62
62
  class PreloadingUIUtils {
63
63
  static status(status: SDK.PreloadingModel.PreloadingStatus): string {
@@ -37,7 +37,7 @@ const UIStrings = {
37
37
  prefetchFallbackReady: 'Prefetch fallback ready',
38
38
  } as const;
39
39
  const str_ = i18n.i18n.registerUIStrings('panels/application/preloading/components/PreloadingGrid.ts', UIStrings);
40
- export const i18nString = i18n.i18n.getLocalizedString.bind(undefined, str_);
40
+ export const i18nString: i18n.LocalizeString = i18n.i18n.getLocalizedString.bind(undefined, str_);
41
41
 
42
42
  const {render, html, nothing, Directives: {styleMap}} = Lit;
43
43
 
@@ -49,7 +49,7 @@ const UIStrings = {
49
49
  buttonRevealPreloadsAssociatedWithRuleSet: 'Reveal speculative loads associated with this rule set',
50
50
  } as const;
51
51
  const str_ = i18n.i18n.registerUIStrings('panels/application/preloading/components/RuleSetGrid.ts', UIStrings);
52
- export const i18nString = i18n.i18n.getLocalizedString.bind(undefined, str_);
52
+ export const i18nString: i18n.LocalizeString = i18n.i18n.getLocalizedString.bind(undefined, str_);
53
53
 
54
54
  export interface RuleSetGridData {
55
55
  rows: RuleSetGridRow[];
@@ -169,7 +169,12 @@ export const DEFAULT_VIEW: View = (input, _output, target) => {
169
169
  };
170
170
 
171
171
  /** Grid component to show SpeculationRules rule sets. **/
172
- export class RuleSetGrid extends Common.ObjectWrapper.eventMixin<EventTypes, typeof UI.Widget.VBox>(UI.Widget.VBox) {
172
+ const RuleSetGridBase: Common.ObjectWrapper.EventMixin<EventTypes, typeof UI.Widget.VBox> =
173
+ Common.ObjectWrapper.eventMixin(
174
+ UI.Widget.VBox,
175
+ );
176
+
177
+ export class RuleSetGrid extends RuleSetGridBase {
173
178
  readonly #view: View;
174
179
  #data: RuleSetGridData|null = null;
175
180
 
@@ -56,6 +56,8 @@
56
56
 
57
57
  .service-worker-update-timing-bar-clickable:focus-visible {
58
58
  background-color: var(--sys-color-state-focus-highlight);
59
+ outline: var(--sys-size-2) solid var(--sys-color-state-focus-ring);
60
+ outline-offset: calc(-1 * var(--sys-size-2));
59
61
  }
60
62
 
61
63
  .service-worker-update-timing-bar-clickable[aria-checked="true"]::before {
@@ -103,7 +103,7 @@ const AUTOFILL_INFO_URL = 'https://goo.gle/devtools-autofill-panel' as Platform.
103
103
  const AUTOFILL_FEEDBACK_URL = 'https://crbug.com/329106326' as Platform.DevToolsPath.UrlString;
104
104
 
105
105
  const str_ = i18n.i18n.registerUIStrings('panels/autofill/AutofillView.ts', UIStrings);
106
- export const i18nString = i18n.i18n.getLocalizedString.bind(undefined, str_);
106
+ export const i18nString: i18n.LocalizeString = i18n.i18n.getLocalizedString.bind(undefined, str_);
107
107
 
108
108
  interface ViewInput {
109
109
  autoOpenViewSetting: Common.Settings.Setting<boolean>;
@@ -298,7 +298,7 @@ export class AutofillView extends UI.Widget.VBox {
298
298
  #matches: AutofillManager.AutofillManager.Match[] = [];
299
299
  #highlightedMatches: AutofillManager.AutofillManager.Match[] = [];
300
300
 
301
- constructor(autofillManager: AutofillManager.AutofillManager.AutofillManager, view = DEFAULT_VIEW) {
301
+ constructor(autofillManager: AutofillManager.AutofillManager.AutofillManager, view: View = DEFAULT_VIEW) {
302
302
  super({useShadowDom: true});
303
303
  this.#autofillManager = autofillManager;
304
304
  this.#view = view;
@@ -262,9 +262,8 @@ export abstract class CategorizedBreakpointsSidebarPane extends UI.Widget.VBox<S
262
262
  #filterText: string|null = null;
263
263
  #view: View;
264
264
  #selectedItem: SDK.CategorizedBreakpoint.Category|SDK.CategorizedBreakpoint.CategorizedBreakpoint|null = null;
265
- constructor(
266
- breakpoints: SDK.CategorizedBreakpoint.CategorizedBreakpoint[], jslog: string, viewId: string,
267
- view = DEFAULT_VIEW) {
265
+ constructor(breakpoints: SDK.CategorizedBreakpoint.CategorizedBreakpoint[], jslog: string, viewId: string,
266
+ view: View = DEFAULT_VIEW) {
268
267
  super({useShadowDom: 'pure'});
269
268
  this.#view = view;
270
269
  this.#jslog = jslog;
@@ -216,7 +216,7 @@ export class DOMBreakpointsSidebarPane extends UI.Widget.VBox implements
216
216
  }
217
217
  }
218
218
 
219
- constructor(view = DEFAULT_VIEW) {
219
+ constructor(view: View = DEFAULT_VIEW) {
220
220
  super({useShadowDom: true});
221
221
 
222
222
  this.#view = view;
@@ -63,27 +63,39 @@ export const DEFAULT_VIEW: View = (input, output, target) => {
63
63
  target, {container: {attributes: {jslog: `${VisualLogging.pane('sidebar').track({resize: true})}`}}});
64
64
  };
65
65
 
66
- export class ChangesSidebar extends Common.ObjectWrapper.eventMixin<EventTypes, typeof UI.Widget.Widget>(
67
- UI.Widget.Widget) {
66
+ const ChangesSidebarBase: Common.ObjectWrapper.EventMixin<EventTypes, typeof UI.Widget.Widget> =
67
+ Common.ObjectWrapper.eventMixin(
68
+ UI.Widget.Widget,
69
+ );
70
+
71
+ export class ChangesSidebar extends ChangesSidebarBase {
68
72
  #workspaceDiff: WorkspaceDiff.WorkspaceDiff.WorkspaceDiffImpl|null = null;
69
73
  readonly #view: View;
70
74
  readonly #sourceCodes = new Set<Workspace.UISourceCode.UISourceCode>();
71
75
  #selectedUISourceCode: Workspace.UISourceCode.UISourceCode|null = null;
72
- constructor(target?: HTMLElement, view = DEFAULT_VIEW) {
76
+ constructor(target?: HTMLElement, view: View = DEFAULT_VIEW) {
73
77
  super(target);
74
78
  this.#view = view;
75
79
  }
76
80
 
77
- set workspaceDiff(workspaceDiff: WorkspaceDiff.WorkspaceDiff.WorkspaceDiffImpl) {
81
+ set workspaceDiff(
82
+ workspaceDiff: WorkspaceDiff.WorkspaceDiff.WorkspaceDiffImpl,
83
+ ) {
78
84
  if (this.#workspaceDiff) {
79
85
  this.#workspaceDiff.modifiedUISourceCodes().forEach(this.#removeUISourceCode.bind(this));
80
86
  this.#workspaceDiff.removeEventListener(
81
- WorkspaceDiff.WorkspaceDiff.Events.MODIFIED_STATUS_CHANGED, this.uiSourceCodeModifiedStatusChanged, this);
87
+ WorkspaceDiff.WorkspaceDiff.Events.MODIFIED_STATUS_CHANGED,
88
+ this.uiSourceCodeModifiedStatusChanged,
89
+ this,
90
+ );
82
91
  }
83
92
  this.#workspaceDiff = workspaceDiff;
84
93
  this.#workspaceDiff.modifiedUISourceCodes().forEach(this.#addUISourceCode.bind(this));
85
94
  this.#workspaceDiff.addEventListener(
86
- WorkspaceDiff.WorkspaceDiff.Events.MODIFIED_STATUS_CHANGED, this.uiSourceCodeModifiedStatusChanged, this);
95
+ WorkspaceDiff.WorkspaceDiff.Events.MODIFIED_STATUS_CHANGED,
96
+ this.uiSourceCodeModifiedStatusChanged,
97
+ this,
98
+ );
87
99
  this.requestUpdate();
88
100
  }
89
101
 
@@ -100,7 +112,9 @@ export class ChangesSidebar extends Common.ObjectWrapper.eventMixin<EventTypes,
100
112
  this.#view(input, {}, this.contentElement);
101
113
  }
102
114
 
103
- #selectionChanged(selectedUISourceCode: Workspace.UISourceCode.UISourceCode|null): void {
115
+ #selectionChanged(
116
+ selectedUISourceCode: Workspace.UISourceCode.UISourceCode|null,
117
+ ): void {
104
118
  this.#selectedUISourceCode = selectedUISourceCode;
105
119
  this.dispatchEventToListeners(Events.SELECTED_UI_SOURCE_CODE_CHANGED);
106
120
  this.requestUpdate();
@@ -108,16 +122,40 @@ export class ChangesSidebar extends Common.ObjectWrapper.eventMixin<EventTypes,
108
122
 
109
123
  #addUISourceCode(uiSourceCode: Workspace.UISourceCode.UISourceCode): void {
110
124
  this.#sourceCodes.add(uiSourceCode);
111
- uiSourceCode.addEventListener(Workspace.UISourceCode.Events.TitleChanged, this.requestUpdate, this);
112
- uiSourceCode.addEventListener(Workspace.UISourceCode.Events.WorkingCopyChanged, this.requestUpdate, this);
113
- uiSourceCode.addEventListener(Workspace.UISourceCode.Events.WorkingCopyCommitted, this.requestUpdate, this);
125
+ uiSourceCode.addEventListener(
126
+ Workspace.UISourceCode.Events.TitleChanged,
127
+ this.requestUpdate,
128
+ this,
129
+ );
130
+ uiSourceCode.addEventListener(
131
+ Workspace.UISourceCode.Events.WorkingCopyChanged,
132
+ this.requestUpdate,
133
+ this,
134
+ );
135
+ uiSourceCode.addEventListener(
136
+ Workspace.UISourceCode.Events.WorkingCopyCommitted,
137
+ this.requestUpdate,
138
+ this,
139
+ );
114
140
  this.requestUpdate();
115
141
  }
116
142
 
117
143
  #removeUISourceCode(uiSourceCode: Workspace.UISourceCode.UISourceCode): void {
118
- uiSourceCode.removeEventListener(Workspace.UISourceCode.Events.TitleChanged, this.requestUpdate, this);
119
- uiSourceCode.removeEventListener(Workspace.UISourceCode.Events.WorkingCopyChanged, this.requestUpdate, this);
120
- uiSourceCode.removeEventListener(Workspace.UISourceCode.Events.WorkingCopyCommitted, this.requestUpdate, this);
144
+ uiSourceCode.removeEventListener(
145
+ Workspace.UISourceCode.Events.TitleChanged,
146
+ this.requestUpdate,
147
+ this,
148
+ );
149
+ uiSourceCode.removeEventListener(
150
+ Workspace.UISourceCode.Events.WorkingCopyChanged,
151
+ this.requestUpdate,
152
+ this,
153
+ );
154
+ uiSourceCode.removeEventListener(
155
+ Workspace.UISourceCode.Events.WorkingCopyCommitted,
156
+ this.requestUpdate,
157
+ this,
158
+ );
121
159
  if (uiSourceCode === this.#selectedUISourceCode) {
122
160
  let newSelection;
123
161
  for (const sourceCode of this.#sourceCodes.values()) {
@@ -127,7 +165,9 @@ export class ChangesSidebar extends Common.ObjectWrapper.eventMixin<EventTypes,
127
165
  newSelection = sourceCode;
128
166
  }
129
167
  this.#sourceCodes.delete(uiSourceCode);
130
- this.#selectionChanged(newSelection ?? this.#sourceCodes.values().next().value ?? null);
168
+ this.#selectionChanged(
169
+ newSelection ?? this.#sourceCodes.values().next().value ?? null,
170
+ );
131
171
  } else {
132
172
  this.#sourceCodes.delete(uiSourceCode);
133
173
  }
@@ -135,7 +175,8 @@ export class ChangesSidebar extends Common.ObjectWrapper.eventMixin<EventTypes,
135
175
  }
136
176
 
137
177
  private uiSourceCodeModifiedStatusChanged(
138
- event: Common.EventTarget.EventTargetEvent<WorkspaceDiff.WorkspaceDiff.ModifiedStatusChangedEvent>): void {
178
+ event: Common.EventTarget.EventTargetEvent<WorkspaceDiff.WorkspaceDiff.ModifiedStatusChangedEvent>,
179
+ ): void {
139
180
  const {isModified, uiSourceCode} = event.data;
140
181
  if (isModified) {
141
182
  this.#addUISourceCode(uiSourceCode);
@@ -77,7 +77,7 @@ export class ChangesView extends UI.Widget.VBox<ShadowRoot> {
77
77
  #selectedUISourceCode: Workspace.UISourceCode.UISourceCode|null = null;
78
78
  readonly #view: View;
79
79
 
80
- constructor(target?: HTMLElement, view = DEFAULT_VIEW) {
80
+ constructor(target?: HTMLElement, view: View = DEFAULT_VIEW) {
81
81
  super(target, {useShadowDom: 'pure'});
82
82
 
83
83
  this.#workspaceDiff = WorkspaceDiff.WorkspaceDiff.workspaceDiff();
@@ -44,8 +44,12 @@ const UIStrings = {
44
44
  const str_ = i18n.i18n.registerUIStrings('panels/console/ConsolePrompt.ts', UIStrings);
45
45
  const i18nString = i18n.i18n.getLocalizedString.bind(undefined, str_);
46
46
 
47
- export class ConsolePrompt extends Common.ObjectWrapper.eventMixin<EventTypes, typeof UI.Widget.Widget>(
48
- UI.Widget.Widget) {
47
+ const ConsolePromptBase: Common.ObjectWrapper.EventMixin<EventTypes, typeof UI.Widget.Widget> =
48
+ Common.ObjectWrapper.eventMixin(
49
+ UI.Widget.Widget,
50
+ );
51
+
52
+ export class ConsolePrompt extends ConsolePromptBase {
49
53
  private addCompletionsFromHistory: boolean;
50
54
  #history: TextEditor.AutocompleteHistory.AutocompleteHistory;
51
55
  private initialText: string;
@@ -171,8 +171,12 @@ const CONSOLE_API_PARSED_FILTERS = [{
171
171
  regex: undefined,
172
172
  }];
173
173
 
174
- export class ConsoleSidebar extends Common.ObjectWrapper.eventMixin<EventTypes, typeof UI.Widget.VBox<ShadowRoot>>(
175
- UI.Widget.VBox) {
174
+ const ConsoleSidebarBase: Common.ObjectWrapper.EventMixin<EventTypes, typeof UI.Widget.VBox<ShadowRoot>> =
175
+ Common.ObjectWrapper.eventMixin(
176
+ UI.Widget.VBox,
177
+ );
178
+
179
+ export class ConsoleSidebar extends ConsoleSidebarBase {
176
180
  #view: View;
177
181
  readonly #groups = [
178
182
  new ConsoleFilterGroup(GroupName.ALL, [], ConsoleFilter.allLevelsFilterValue()),
@@ -1187,6 +1187,18 @@ export class ElementsTreeWidget extends UI.Widget.Widget {
1187
1187
 
1188
1188
  #updateRecord: Elements.ElementUpdateRecord.ElementUpdateRecord|null = null;
1189
1189
 
1190
+ get updateRecord(): Elements.ElementUpdateRecord.ElementUpdateRecord|null {
1191
+ return this.#updateRecord;
1192
+ }
1193
+
1194
+ set updateRecord(updateRecord: Elements.ElementUpdateRecord.ElementUpdateRecord|null) {
1195
+ if (this.#updateRecord === updateRecord) {
1196
+ return;
1197
+ }
1198
+ this.#updateRecord = updateRecord;
1199
+ this.requestUpdate();
1200
+ }
1201
+
1190
1202
  get node(): SDK.DOMModel.DOMNode {
1191
1203
  return this.#node;
1192
1204
  }