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
@@ -39,22 +39,24 @@ function mergeWithSpacing(nodes: Node[], merge: Node[]): Node[] {
39
39
  return result;
40
40
  }
41
41
 
42
+ export type RendererBase<MatchT extends SDK.CSSPropertyParser.Match> = abstract new () => MatchRenderer<MatchT>;
43
+
42
44
  export interface MatchRenderer<MatchT extends SDK.CSSPropertyParser.Match> {
43
45
  readonly matchType: Platform.Constructor.Constructor<MatchT>;
44
46
  render(match: MatchT, context: RenderingContext): Node[];
45
47
  }
46
48
 
47
49
  // A mixin to automatically expose the match type on specific renrerers
48
- // eslint-disable-next-line @typescript-eslint/explicit-function-return-type
50
+
49
51
  export function rendererBase<MatchT extends SDK.CSSPropertyParser.Match>(
50
- matchT: Platform.Constructor.Constructor<MatchT>) {
51
- abstract class RendererBase implements MatchRenderer<MatchT> {
52
+ matchT: Platform.Constructor.Constructor<MatchT>): RendererBase<MatchT> {
53
+ abstract class RendererBaseClass implements MatchRenderer<MatchT> {
52
54
  readonly matchType = matchT;
53
55
  render(_match: MatchT, _context: RenderingContext): Node[] {
54
56
  return [];
55
57
  }
56
58
  }
57
- return RendererBase;
59
+ return RendererBaseClass;
58
60
  }
59
61
 
60
62
  /**
@@ -347,14 +349,13 @@ export class TracingContext {
347
349
  }
348
350
 
349
351
  export class RenderingContext {
350
- constructor(
351
- readonly ast: SDK.CSSPropertyParser.SyntaxTree, readonly property: SDK.CSSProperty.CSSProperty|null,
352
- readonly renderers:
353
- Map<Platform.Constructor.Constructor<SDK.CSSPropertyParser.Match>,
354
- MatchRenderer<SDK.CSSPropertyParser.Match>>,
355
- readonly matchedResult: SDK.CSSPropertyParser.BottomUpTreeMatching,
356
- readonly cssControls?: SDK.CSSPropertyParser.CSSControlMap, readonly options: {readonly?: boolean} = {},
357
- readonly tracing?: TracingContext, readonly signal?: AbortSignal) {
352
+ constructor(readonly ast: SDK.CSSPropertyParser.SyntaxTree, readonly property: SDK.CSSProperty.CSSProperty|null,
353
+ readonly renderers: Map<Platform.Constructor.Constructor<SDK.CSSPropertyParser.Match>,
354
+ MatchRenderer<SDK.CSSPropertyParser.Match>>,
355
+ readonly matchedResult: SDK.CSSPropertyParser.BottomUpTreeMatching,
356
+ readonly cssControls?: SDK.CSSPropertyParser.CSSControlMap|undefined,
357
+ readonly options: {readonly?: boolean} = {}, readonly tracing?: TracingContext|undefined,
358
+ readonly signal?: AbortSignal|undefined) {
358
359
  }
359
360
 
360
361
  addControl(cssType: string, control: HTMLElement): void {
@@ -530,8 +531,10 @@ export class Renderer extends SDK.CSSPropertyParser.TreeWalker {
530
531
  }
531
532
  }
532
533
 
534
+ const URLRendererBase: RendererBase<SDK.CSSPropertyParserMatchers.URLMatch> =
535
+ rendererBase(SDK.CSSPropertyParserMatchers.URLMatch);
533
536
  // clang-format off
534
- export class URLRenderer extends rendererBase(SDK.CSSPropertyParserMatchers.URLMatch) {
537
+ export class URLRenderer extends URLRendererBase {
535
538
  // clang-format on
536
539
  constructor(private readonly rule: SDK.CSSRule.CSSRule|null, private readonly node: SDK.DOMModel.DOMNode|null) {
537
540
  super();
@@ -564,8 +567,10 @@ export class URLRenderer extends rendererBase(SDK.CSSPropertyParserMatchers.URLM
564
567
  }
565
568
  }
566
569
 
570
+ const StringRendererBase: RendererBase<SDK.CSSPropertyParserMatchers.StringMatch> =
571
+ rendererBase(SDK.CSSPropertyParserMatchers.StringMatch);
567
572
  // clang-format off
568
- export class StringRenderer extends rendererBase(SDK.CSSPropertyParserMatchers.StringMatch) {
573
+ export class StringRenderer extends StringRendererBase {
569
574
  // clang-format on
570
575
  override render(match: SDK.CSSPropertyParserMatchers.StringMatch): Node[] {
571
576
  const element = document.createElement('span');
@@ -575,8 +580,10 @@ export class StringRenderer extends rendererBase(SDK.CSSPropertyParserMatchers.S
575
580
  }
576
581
  }
577
582
 
583
+ const BinOpRendererBase: RendererBase<SDK.CSSPropertyParserMatchers.BinOpMatch> =
584
+ rendererBase(SDK.CSSPropertyParserMatchers.BinOpMatch);
578
585
  // clang-format off
579
- export class BinOpRenderer extends rendererBase(SDK.CSSPropertyParserMatchers.BinOpMatch) {
586
+ export class BinOpRenderer extends BinOpRendererBase {
580
587
  // clang-format on
581
588
  override render(match: SDK.CSSPropertyParserMatchers.BinOpMatch, context: RenderingContext): Node[] {
582
589
  const [lhs, binop, rhs] = SDK.CSSPropertyParser.ASTUtils.children(match.node).map(child => {
@@ -47,8 +47,12 @@ export interface EventTypes {
47
47
  [Events.STYLES_UPDATE_COMPLETED]: void;
48
48
  }
49
49
 
50
- export class StandaloneStylesContainer extends Common.ObjectWrapper.eventMixin<EventTypes, typeof UI.Widget.VBox>(
51
- UI.Widget.VBox) implements StylesContainer {
50
+ const StandaloneStylesContainerBase: Common.ObjectWrapper.EventMixin<EventTypes, typeof UI.Widget.VBox> =
51
+ Common.ObjectWrapper.eventMixin(
52
+ UI.Widget.VBox,
53
+ );
54
+
55
+ export class StandaloneStylesContainer extends StandaloneStylesContainerBase implements StylesContainer {
52
56
  activeCSSAngle: InlineEditor.CSSAngle.CSSAngle|null = null;
53
57
  isEditingStyle = false;
54
58
  readonly sectionByElement = new WeakMap<Node, StylePropertiesSection>();
@@ -38,6 +38,7 @@ import {
38
38
  type MatchRenderer,
39
39
  Renderer,
40
40
  rendererBase,
41
+ type RendererBase,
41
42
  RenderingContext,
42
43
  StringRenderer,
43
44
  type TracingContext,
@@ -171,8 +172,10 @@ interface StylePropertyTreeElementParams {
171
172
  newProperty: boolean;
172
173
  }
173
174
 
175
+ const EnvFunctionRendererBase: RendererBase<SDK.CSSPropertyParserMatchers.EnvFunctionMatch> =
176
+ rendererBase(SDK.CSSPropertyParserMatchers.EnvFunctionMatch);
174
177
  // clang-format off
175
- export class EnvFunctionRenderer extends rendererBase(SDK.CSSPropertyParserMatchers.EnvFunctionMatch) {
178
+ export class EnvFunctionRenderer extends EnvFunctionRendererBase {
176
179
  // clang-format on
177
180
  constructor(
178
181
  readonly treeElement: StylePropertyTreeElement|null,
@@ -208,8 +211,10 @@ export class EnvFunctionRenderer extends rendererBase(SDK.CSSPropertyParserMatch
208
211
  return [span];
209
212
  }
210
213
  }
214
+ const FlexGridRendererBase: RendererBase<SDK.CSSPropertyParserMatchers.FlexGridGridLanesMatch> =
215
+ rendererBase(SDK.CSSPropertyParserMatchers.FlexGridGridLanesMatch);
211
216
  // clang-format off
212
- export class FlexGridRenderer extends rendererBase(SDK.CSSPropertyParserMatchers.FlexGridGridLanesMatch) {
217
+ export class FlexGridRenderer extends FlexGridRendererBase {
213
218
  // clang-format on
214
219
  readonly #treeElement: StylePropertyTreeElement|null;
215
220
  readonly #stylesContainer: StylesContainer;
@@ -278,8 +283,10 @@ export class FlexGridRenderer extends rendererBase(SDK.CSSPropertyParserMatchers
278
283
  }
279
284
  }
280
285
 
286
+ const CSSWideKeywordRendererBase: RendererBase<SDK.CSSPropertyParserMatchers.CSSWideKeywordMatch> =
287
+ rendererBase(SDK.CSSPropertyParserMatchers.CSSWideKeywordMatch);
281
288
  // clang-format off
282
- export class CSSWideKeywordRenderer extends rendererBase(SDK.CSSPropertyParserMatchers.CSSWideKeywordMatch) {
289
+ export class CSSWideKeywordRenderer extends CSSWideKeywordRendererBase {
283
290
  // clang-format on
284
291
  readonly #treeElement: StylePropertyTreeElement|null;
285
292
  readonly #stylesContainer: StylesContainer;
@@ -331,8 +338,10 @@ export function handleVarDefinitionActivate(variable: string|SDK.CSSMatchedStyle
331
338
  }
332
339
  }
333
340
 
341
+ const VariableRendererBase: RendererBase<SDK.CSSPropertyParserMatchers.VariableMatch> =
342
+ rendererBase(SDK.CSSPropertyParserMatchers.VariableMatch);
334
343
  // clang-format off
335
- export class VariableRenderer extends rendererBase(SDK.CSSPropertyParserMatchers.VariableMatch) {
344
+ export class VariableRenderer extends VariableRendererBase {
336
345
  // clang-format on
337
346
  readonly #stylesContainer: StylesContainer;
338
347
  readonly #treeElement: StylePropertyTreeElement|null;
@@ -434,8 +443,10 @@ export class VariableRenderer extends rendererBase(SDK.CSSPropertyParserMatchers
434
443
  }
435
444
  }
436
445
 
446
+ const VariableNameRendererBase: RendererBase<SDK.CSSPropertyParserMatchers.VariableNameMatch> =
447
+ rendererBase(SDK.CSSPropertyParserMatchers.VariableNameMatch);
437
448
  // clang-format off
438
- export class VariableNameRenderer extends rendererBase(SDK.CSSPropertyParserMatchers.VariableNameMatch) {
449
+ export class VariableNameRenderer extends VariableNameRendererBase {
439
450
  // clang-format on
440
451
  readonly #stylesContainer: StylesContainer;
441
452
  readonly #treeElement: StylePropertyTreeElement|null;
@@ -489,8 +500,10 @@ export class VariableNameRenderer extends rendererBase(SDK.CSSPropertyParserMatc
489
500
  }
490
501
  }
491
502
 
503
+ const AttributeRendererBase: RendererBase<SDK.CSSPropertyParserMatchers.AttributeMatch> =
504
+ rendererBase(SDK.CSSPropertyParserMatchers.AttributeMatch);
492
505
  // clang-format off
493
- export class AttributeRenderer extends rendererBase(SDK.CSSPropertyParserMatchers.AttributeMatch) {
506
+ export class AttributeRenderer extends AttributeRendererBase {
494
507
  // clang-format on
495
508
  readonly #stylesContainer: StylesContainer;
496
509
  readonly #treeElement: StylePropertyTreeElement|null;
@@ -606,8 +619,10 @@ export class AttributeRenderer extends rendererBase(SDK.CSSPropertyParserMatcher
606
619
  }
607
620
  }
608
621
 
622
+ const LinearGradientRendererBase: RendererBase<SDK.CSSPropertyParserMatchers.LinearGradientMatch> =
623
+ rendererBase(SDK.CSSPropertyParserMatchers.LinearGradientMatch);
609
624
  // clang-format off
610
- export class LinearGradientRenderer extends rendererBase(SDK.CSSPropertyParserMatchers.LinearGradientMatch) {
625
+ export class LinearGradientRenderer extends LinearGradientRendererBase {
611
626
  // clang-format on
612
627
  override render(match: SDK.CSSPropertyParserMatchers.LinearGradientMatch, context: RenderingContext): Node[] {
613
628
  const children = ASTUtils.children(match.node);
@@ -632,8 +647,10 @@ export class LinearGradientRenderer extends rendererBase(SDK.CSSPropertyParserMa
632
647
  }
633
648
  }
634
649
 
650
+ const RelativeColorChannelRendererBase: RendererBase<SDK.CSSPropertyParserMatchers.RelativeColorChannelMatch> =
651
+ rendererBase(SDK.CSSPropertyParserMatchers.RelativeColorChannelMatch);
635
652
  // clang-format off
636
- export class RelativeColorChannelRenderer extends rendererBase(SDK.CSSPropertyParserMatchers.RelativeColorChannelMatch) {
653
+ export class RelativeColorChannelRenderer extends RelativeColorChannelRendererBase {
637
654
  // clang-format on
638
655
  readonly #treeElement: StylePropertyTreeElement|null;
639
656
  constructor(treeElement: StylePropertyTreeElement|null) {
@@ -677,8 +694,10 @@ export class RelativeColorChannelRenderer extends rendererBase(SDK.CSSPropertyPa
677
694
  }
678
695
  }
679
696
 
697
+ const ColorRendererBase: RendererBase<SDK.CSSPropertyParserMatchers.ColorMatch> =
698
+ rendererBase(SDK.CSSPropertyParserMatchers.ColorMatch);
680
699
  // clang-format off
681
- export class ColorRenderer extends rendererBase(SDK.CSSPropertyParserMatchers.ColorMatch) {
700
+ export class ColorRenderer extends ColorRendererBase {
682
701
  // clang-format on
683
702
  readonly #treeElement: StylePropertyTreeElement|null;
684
703
  readonly #stylesContainer: StylesContainer;
@@ -836,8 +855,10 @@ export class ColorRenderer extends rendererBase(SDK.CSSPropertyParserMatchers.Co
836
855
  }
837
856
  }
838
857
 
858
+ const LightDarkColorRendererBase: RendererBase<SDK.CSSPropertyParserMatchers.LightDarkColorMatch> =
859
+ rendererBase(SDK.CSSPropertyParserMatchers.LightDarkColorMatch);
839
860
  // clang-format off
840
- export class LightDarkColorRenderer extends rendererBase(SDK.CSSPropertyParserMatchers.LightDarkColorMatch) {
861
+ export class LightDarkColorRenderer extends LightDarkColorRendererBase {
841
862
  // clang-format on
842
863
  readonly #treeElement: StylePropertyTreeElement|null;
843
864
  readonly #stylesContainer: StylesContainer;
@@ -941,8 +962,10 @@ export class LightDarkColorRenderer extends rendererBase(SDK.CSSPropertyParserMa
941
962
  }
942
963
  }
943
964
 
965
+ const ColorMixRendererBase: RendererBase<SDK.CSSPropertyParserMatchers.ColorMixMatch> =
966
+ rendererBase(SDK.CSSPropertyParserMatchers.ColorMixMatch);
944
967
  // clang-format off
945
- export class ColorMixRenderer extends rendererBase(SDK.CSSPropertyParserMatchers.ColorMixMatch) {
968
+ export class ColorMixRenderer extends ColorMixRendererBase {
946
969
  // clang-format on
947
970
  readonly #stylesContainer: StylesContainer;
948
971
  readonly #matchedStyles: SDK.CSSMatchedStyles.CSSMatchedStyles;
@@ -1088,8 +1111,10 @@ export class ColorMixRenderer extends rendererBase(SDK.CSSPropertyParserMatchers
1088
1111
  }
1089
1112
  }
1090
1113
 
1114
+ const ContrastColorRendererBase: RendererBase<SDK.CSSPropertyParserMatchers.ContrastColorMatch> =
1115
+ rendererBase(SDK.CSSPropertyParserMatchers.ContrastColorMatch);
1091
1116
  // clang-format off
1092
- export class ContrastColorRenderer extends rendererBase(SDK.CSSPropertyParserMatchers.ContrastColorMatch) {
1117
+ export class ContrastColorRenderer extends ContrastColorRendererBase {
1093
1118
  // clang-format on
1094
1119
  readonly #treeElement: StylePropertyTreeElement|null;
1095
1120
  readonly #stylesContainer: StylesContainer;
@@ -1128,8 +1153,10 @@ export class ContrastColorRenderer extends rendererBase(SDK.CSSPropertyParserMat
1128
1153
  }
1129
1154
  }
1130
1155
 
1156
+ const AngleRendererBase: RendererBase<SDK.CSSPropertyParserMatchers.AngleMatch> =
1157
+ rendererBase(SDK.CSSPropertyParserMatchers.AngleMatch);
1131
1158
  // clang-format off
1132
- export class AngleRenderer extends rendererBase(SDK.CSSPropertyParserMatchers.AngleMatch) {
1159
+ export class AngleRenderer extends AngleRendererBase {
1133
1160
  // clang-format on
1134
1161
  readonly #treeElement: StylePropertyTreeElement|null;
1135
1162
  constructor(treeElement: StylePropertyTreeElement|null) {
@@ -1188,8 +1215,10 @@ export class AngleRenderer extends rendererBase(SDK.CSSPropertyParserMatchers.An
1188
1215
  }
1189
1216
  }
1190
1217
 
1218
+ const LinkableNameRendererBase: RendererBase<SDK.CSSPropertyParserMatchers.LinkableNameMatch> =
1219
+ rendererBase(SDK.CSSPropertyParserMatchers.LinkableNameMatch);
1191
1220
  // clang-format off
1192
- export class LinkableNameRenderer extends rendererBase(SDK.CSSPropertyParserMatchers.LinkableNameMatch) {
1221
+ export class LinkableNameRenderer extends LinkableNameRendererBase {
1193
1222
  // clang-format on
1194
1223
  readonly #matchedStyles: SDK.CSSMatchedStyles.CSSMatchedStyles;
1195
1224
  readonly #stylesContainer: StylesContainer;
@@ -1292,8 +1321,10 @@ export class LinkableNameRenderer extends rendererBase(SDK.CSSPropertyParserMatc
1292
1321
  }
1293
1322
  }
1294
1323
 
1324
+ const BezierRendererBase: RendererBase<SDK.CSSPropertyParserMatchers.BezierMatch> =
1325
+ rendererBase(SDK.CSSPropertyParserMatchers.BezierMatch);
1295
1326
  // clang-format off
1296
- export class BezierRenderer extends rendererBase(SDK.CSSPropertyParserMatchers.BezierMatch) {
1327
+ export class BezierRenderer extends BezierRendererBase {
1297
1328
  // clang-format on
1298
1329
  readonly #treeElement: StylePropertyTreeElement|null;
1299
1330
  constructor(treeElement: StylePropertyTreeElement|null) {
@@ -1326,8 +1357,10 @@ export class BezierRenderer extends rendererBase(SDK.CSSPropertyParserMatchers.B
1326
1357
  }
1327
1358
  }
1328
1359
 
1360
+ const AutoBaseRendererBase: RendererBase<SDK.CSSPropertyParserMatchers.AutoBaseMatch> =
1361
+ rendererBase(SDK.CSSPropertyParserMatchers.AutoBaseMatch);
1329
1362
  // clang-format off
1330
- export class AutoBaseRenderer extends rendererBase(SDK.CSSPropertyParserMatchers.AutoBaseMatch) {
1363
+ export class AutoBaseRenderer extends AutoBaseRendererBase {
1331
1364
  readonly #computedStyleExtraFields : Protocol.CSS.ComputedStyleExtraFields|null;
1332
1365
  // clang-format on
1333
1366
 
@@ -1528,8 +1561,10 @@ export class ShadowModel implements InlineEditor.CSSShadowEditor.CSSShadowModel
1528
1561
  }
1529
1562
  }
1530
1563
 
1564
+ const ShadowRendererBase: RendererBase<SDK.CSSPropertyParserMatchers.ShadowMatch> =
1565
+ rendererBase(SDK.CSSPropertyParserMatchers.ShadowMatch);
1531
1566
  // clang-format off
1532
- export class ShadowRenderer extends rendererBase(SDK.CSSPropertyParserMatchers.ShadowMatch) {
1567
+ export class ShadowRenderer extends ShadowRendererBase {
1533
1568
  readonly #treeElement: StylePropertyTreeElement|null;
1534
1569
  // clang-format on
1535
1570
  constructor(treeElement: StylePropertyTreeElement|null) {
@@ -1669,8 +1704,10 @@ export class ShadowRenderer extends rendererBase(SDK.CSSPropertyParserMatchers.S
1669
1704
  }
1670
1705
  }
1671
1706
 
1707
+ const GridTemplateRendererBase: RendererBase<SDK.CSSPropertyParserMatchers.GridTemplateMatch> =
1708
+ rendererBase(SDK.CSSPropertyParserMatchers.GridTemplateMatch);
1672
1709
  // clang-format off
1673
- export class GridTemplateRenderer extends rendererBase(SDK.CSSPropertyParserMatchers.GridTemplateMatch) {
1710
+ export class GridTemplateRenderer extends GridTemplateRendererBase {
1674
1711
  // clang-format on
1675
1712
  override render(match: SDK.CSSPropertyParserMatchers.GridTemplateMatch, context: RenderingContext): Node[] {
1676
1713
  if (match.lines.length <= 1) {
@@ -1694,7 +1731,7 @@ export class GridTemplateRenderer extends rendererBase(SDK.CSSPropertyParserMatc
1694
1731
  }
1695
1732
  }
1696
1733
 
1697
- export const SHORTHANDS_FOR_PERCENTAGES = new Set([
1734
+ export const SHORTHANDS_FOR_PERCENTAGES: Set<string> = new Set([
1698
1735
  'inset',
1699
1736
  'inset-block',
1700
1737
  'inset-inline',
@@ -1726,8 +1763,10 @@ async function resolveValues(
1726
1763
  (await stylesContainer.cssModel()?.resolveValues(undefined, nodeId, ...values));
1727
1764
  }
1728
1765
 
1766
+ const LengthRendererBase: RendererBase<SDK.CSSPropertyParserMatchers.LengthMatch> =
1767
+ rendererBase(SDK.CSSPropertyParserMatchers.LengthMatch);
1729
1768
  // clang-format off
1730
- export class LengthRenderer extends rendererBase(SDK.CSSPropertyParserMatchers.LengthMatch) {
1769
+ export class LengthRenderer extends LengthRendererBase {
1731
1770
  // clang-format on
1732
1771
  readonly #stylesContainer: StylesContainer;
1733
1772
  readonly #treeElement: StylePropertyTreeElement|null;
@@ -1802,8 +1841,10 @@ export class LengthRenderer extends rendererBase(SDK.CSSPropertyParserMatchers.L
1802
1841
  }
1803
1842
  }
1804
1843
 
1844
+ const BaseFunctionRendererBase: RendererBase<SDK.CSSPropertyParserMatchers.BaseFunctionMatch<string>> =
1845
+ rendererBase(SDK.CSSPropertyParserMatchers.BaseFunctionMatch);
1805
1846
  // clang-format off
1806
- export class BaseFunctionRenderer extends rendererBase(SDK.CSSPropertyParserMatchers.BaseFunctionMatch) {
1847
+ export class BaseFunctionRenderer extends BaseFunctionRendererBase {
1807
1848
  // clang-format on
1808
1849
  readonly #stylesContainer: StylesContainer;
1809
1850
  readonly #matchedStyles: SDK.CSSMatchedStyles.CSSMatchedStyles;
@@ -1912,15 +1953,19 @@ export class BaseFunctionRenderer extends rendererBase(SDK.CSSPropertyParserMatc
1912
1953
  }
1913
1954
 
1914
1955
  export class MathFunctionRenderer extends BaseFunctionRenderer {
1915
- override readonly matchType = SDK.CSSPropertyParserMatchers.MathFunctionMatch;
1956
+ override readonly matchType: typeof SDK.CSSPropertyParserMatchers.MathFunctionMatch =
1957
+ SDK.CSSPropertyParserMatchers.MathFunctionMatch;
1916
1958
  }
1917
1959
 
1918
1960
  export class CustomFunctionRenderer extends BaseFunctionRenderer {
1919
- override readonly matchType = SDK.CSSPropertyParserMatchers.CustomFunctionMatch;
1961
+ override readonly matchType: typeof SDK.CSSPropertyParserMatchers.CustomFunctionMatch =
1962
+ SDK.CSSPropertyParserMatchers.CustomFunctionMatch;
1920
1963
  }
1921
1964
 
1965
+ const AnchorFunctionRendererBase: RendererBase<SDK.CSSPropertyParserMatchers.AnchorFunctionMatch> =
1966
+ rendererBase(SDK.CSSPropertyParserMatchers.AnchorFunctionMatch);
1922
1967
  // clang-format off
1923
- export class AnchorFunctionRenderer extends rendererBase(SDK.CSSPropertyParserMatchers.AnchorFunctionMatch) {
1968
+ export class AnchorFunctionRenderer extends AnchorFunctionRendererBase {
1924
1969
  // clang-format on
1925
1970
  readonly #stylesContainer: StylesContainer;
1926
1971
 
@@ -2015,8 +2060,10 @@ export class AnchorFunctionRenderer extends rendererBase(SDK.CSSPropertyParserMa
2015
2060
  }
2016
2061
  }
2017
2062
 
2063
+ const PositionAnchorRendererBase: RendererBase<SDK.CSSPropertyParserMatchers.PositionAnchorMatch> =
2064
+ rendererBase(SDK.CSSPropertyParserMatchers.PositionAnchorMatch);
2018
2065
  // clang-format off
2019
- export class PositionAnchorRenderer extends rendererBase(SDK.CSSPropertyParserMatchers.PositionAnchorMatch) {
2066
+ export class PositionAnchorRenderer extends PositionAnchorRendererBase {
2020
2067
  readonly #stylesContainer: StylesContainer;
2021
2068
  // clang-format on
2022
2069
 
@@ -2032,8 +2079,10 @@ export class PositionAnchorRenderer extends rendererBase(SDK.CSSPropertyParserMa
2032
2079
  }
2033
2080
  }
2034
2081
 
2082
+ const PositionTryRendererBase: RendererBase<SDK.CSSPropertyParserMatchers.PositionTryMatch> =
2083
+ rendererBase(SDK.CSSPropertyParserMatchers.PositionTryMatch);
2035
2084
  // clang-format off
2036
- export class PositionTryRenderer extends rendererBase(SDK.CSSPropertyParserMatchers.PositionTryMatch) {
2085
+ export class PositionTryRenderer extends PositionTryRendererBase {
2037
2086
  readonly #matchedStyles: SDK.CSSMatchedStyles.CSSMatchedStyles;
2038
2087
  // clang-format on
2039
2088
 
@@ -182,8 +182,12 @@ const DISCLAIMER_TOOLTIP_ID = 'styles-ai-code-completion-disclaimer-tooltip';
182
182
  const SPINNER_TOOLTIP_ID = 'styles-ai-code-completion-spinner-tooltip';
183
183
  const CITATIONS_TOOLTIP_ID = 'styles-ai-code-completion-citations-tooltip';
184
184
 
185
- export class StylesSidebarPane extends Common.ObjectWrapper.eventMixin<EventTypes, typeof ElementsSidebarPane>(
186
- ElementsSidebarPane) implements StylesContainer {
185
+ const StylesSidebarPaneBase: Common.ObjectWrapper.EventMixin<EventTypes, typeof ElementsSidebarPane> =
186
+ Common.ObjectWrapper.eventMixin(
187
+ ElementsSidebarPane,
188
+ );
189
+
190
+ export class StylesSidebarPane extends StylesSidebarPaneBase implements StylesContainer {
187
191
  private matchedStyles: SDK.CSSMatchedStyles.CSSMatchedStyles|null = null;
188
192
  private currentToolbarPane: UI.Widget.Widget|null = null;
189
193
  private animatedToolbarPane: UI.Widget.Widget|null = null;
@@ -607,3 +607,7 @@ li.hovered:not(.always-parent) + ol.children:not(.shadow-root) {
607
607
  .tree-outline-disclosure li.in-clipboard .highlight {
608
608
  outline: 1px dotted var(--sys-color-divider);
609
609
  }
610
+
611
+ .tree-outline-disclosure li.elements-tree-expand-all {
612
+ margin: var(--sys-size-2) 0;
613
+ }
@@ -630,7 +630,12 @@ export interface RulerEventTypes {
630
630
  [RulerEvents.MARKER_SELECTED]: number;
631
631
  }
632
632
 
633
- export class Ruler extends Common.ObjectWrapper.eventMixin<RulerEventTypes, typeof UI.Widget.Widget>(UI.Widget.Widget) {
633
+ const RulerBase: Common.ObjectWrapper.EventMixin<RulerEventTypes, typeof UI.Widget.Widget> =
634
+ Common.ObjectWrapper.eventMixin(
635
+ UI.Widget.Widget,
636
+ );
637
+
638
+ export class Ruler extends RulerBase {
634
639
  #view: RulerView;
635
640
  #horizontal = true;
636
641
  #scale = 1;
@@ -9,8 +9,12 @@ import inspectedPagePlaceholderStyles from './inspectedPagePlaceholder.css.js';
9
9
 
10
10
  let inspectedPagePlaceholderInstance: InspectedPagePlaceholder;
11
11
 
12
- export class InspectedPagePlaceholder extends Common.ObjectWrapper.eventMixin<EventTypes, typeof UI.Widget.Widget>(
13
- UI.Widget.Widget) {
12
+ const InspectedPagePlaceholderBase: Common.ObjectWrapper.EventMixin<EventTypes, typeof UI.Widget.Widget> =
13
+ Common.ObjectWrapper.eventMixin(
14
+ UI.Widget.Widget,
15
+ );
16
+
17
+ export class InspectedPagePlaceholder extends InspectedPagePlaceholderBase {
14
18
  constructor() {
15
19
  super({useShadowDom: true});
16
20
  this.registerRequiredCSS(inspectedPagePlaceholderStyles);
@@ -280,8 +280,12 @@ export const DEFAULT_VIEW = (input: ViewInput, _output: ViewOutput, target: Docu
280
280
  // clang-format on
281
281
  };
282
282
 
283
- export class LayerDetailsView extends Common.ObjectWrapper.eventMixin<EventTypes, typeof UI.Widget.Widget<ShadowRoot>>(
284
- UI.Widget.Widget) implements LayerView {
283
+ const LayerDetailsViewBase: Common.ObjectWrapper.EventMixin<EventTypes, typeof UI.Widget.Widget<ShadowRoot>> =
284
+ Common.ObjectWrapper.eventMixin(
285
+ UI.Widget.Widget,
286
+ );
287
+
288
+ export class LayerDetailsView extends LayerDetailsViewBase implements LayerView {
285
289
  private readonly layerViewHost: LayerViewHost;
286
290
  private layerSnapshotMap: Map<SDK.LayerTreeBase.Layer, SnapshotSelection>;
287
291
  private selection: Selection|null;
@@ -139,8 +139,13 @@ export const DEFAULT_VIEW: View = (input, output, target) => {
139
139
  // clang-format on
140
140
  };
141
141
 
142
- export class LayerTreeOutline extends Common.ObjectWrapper.eventMixin<EventTypes, typeof UI.Widget.Widget>(
143
- UI.Widget.Widget) implements Common.EventTarget.EventTarget<EventTypes>, LayerView {
142
+ const LayerTreeOutlineBase: Common.ObjectWrapper.EventMixin<EventTypes, typeof UI.Widget.Widget> =
143
+ Common.ObjectWrapper.eventMixin(
144
+ UI.Widget.Widget,
145
+ );
146
+
147
+ export class LayerTreeOutline extends LayerTreeOutlineBase implements Common.EventTarget.EventTarget<EventTypes>,
148
+ LayerView {
144
149
  private layerViewHost: LayerViewHost;
145
150
  private layerTree?: SDK.LayerTreeBase.LayerTreeBase|null;
146
151
  private layerSnapshotMap?: Map<SDK.LayerTreeBase.Layer, SnapshotSelection>;
@@ -137,7 +137,14 @@ export const DEFAULT_VIEW = (input: ViewInput, output: ViewOutput, target: HTMLE
137
137
  // clang-format onn
138
138
  };
139
139
 
140
- export class Layers3DView extends Common.ObjectWrapper.eventMixin<EventTypes, typeof UI.Widget.VBox>(UI.Widget.VBox)
140
+ const Layers3DViewBase: Common.ObjectWrapper.EventMixin<
141
+ EventTypes,
142
+ typeof UI.Widget.VBox
143
+ > = Common.ObjectWrapper.eventMixin(
144
+ UI.Widget.VBox,
145
+ );
146
+
147
+ export class Layers3DView extends Layers3DViewBase
141
148
  implements LayerView {
142
149
  private readonly layerViewHost: LayerViewHost;
143
150
  private transformController: TransformController;
@@ -239,8 +239,12 @@ const DEFAULT_VIEW = (input: ViewInput, output: ViewOutput, target: HTMLElement)
239
239
 
240
240
  type View = typeof DEFAULT_VIEW;
241
241
 
242
- export class PaintProfilerView extends Common.ObjectWrapper.eventMixin<EventTypes, typeof UI.Widget.Widget>(
243
- UI.Widget.Widget) {
242
+ const PaintProfilerViewBase: Common.ObjectWrapper.EventMixin<EventTypes, typeof UI.Widget.Widget> =
243
+ Common.ObjectWrapper.eventMixin(
244
+ UI.Widget.Widget,
245
+ );
246
+
247
+ export class PaintProfilerView extends PaintProfilerViewBase {
244
248
  private canvasContainer?: HTMLElement;
245
249
  #selectionWindow?: PerfUI.OverviewGrid.Window;
246
250
  private readonly innerBarWidth: number;
@@ -29,7 +29,7 @@ button.view-trace {
29
29
  .lighthouse-settings-pane {
30
30
  flex: none;
31
31
  background-color: var(--sys-color-cdt-base-container);
32
- border-bottom: 1px solid var(--sys-color-divider);
32
+ border-bottom: var(--sys-size-1) solid var(--sys-color-divider);
33
33
  }
34
34
 
35
35
  .lighthouse-settings-pane devtools-toolbar {
@@ -50,7 +50,7 @@ select.lighthouse-report {
50
50
 
51
51
  .lighthouse-toolbar-container > devtools-toolbar {
52
52
  background-color: var(--sys-color-cdt-base-container);
53
- border-bottom: 1px solid var(--sys-color-divider);
53
+ border-bottom: var(--sys-size-1) solid var(--sys-color-divider);
54
54
  }
55
55
 
56
56
  .lighthouse-toolbar-container > :first-child {
@@ -65,7 +65,7 @@ select.lighthouse-report {
65
65
  position: relative;
66
66
 
67
67
  :focus-visible {
68
- outline: -webkit-focus-ring-color auto 1px;
68
+ outline: -webkit-focus-ring-color auto var(--sys-size-1);
69
69
  }
70
70
 
71
71
  .lh-tools__button {
@@ -79,7 +79,7 @@ select.lighthouse-report {
79
79
  }
80
80
 
81
81
  &.lh-active + .lh-tools__dropdown {
82
- clip: rect(-8px, 204px, 270px, -10px); /* stylelint-disable-line property-no-deprecated */
82
+ clip: rect(calc(-1 * var(--sys-size-5)), 204px, 270px, -10px); /* stylelint-disable-line property-no-deprecated */
83
83
  }
84
84
  }
85
85
 
@@ -87,7 +87,7 @@ select.lighthouse-report {
87
87
  padding: var(--sys-size-5) 0;
88
88
  border-radius: var(--sys-shape-corner-small);
89
89
  box-shadow: var(--sys-elevation-level3);
90
- top: 24px;
90
+ top: var(--sys-size-11);
91
91
 
92
92
  &:hover a:focus {
93
93
  background-color: transparent;
@@ -7,23 +7,23 @@
7
7
 
8
8
  .lighthouse-start-view {
9
9
  line-height: 18px;
10
- padding: 24px;
10
+ padding: var(--sys-size-11);
11
11
  overflow: auto;
12
12
  height: 100%;
13
13
  /* for buttons */
14
14
  --legacy-accent-color: #0535c1;
15
15
  --legacy-accent-color-hover: #17b;
16
- --font-size: 14px;
16
+ --font-size: var(--sys-typescale-body2-size);
17
17
  --report-font-family: roboto, helvetica, arial, sans-serif;
18
18
  }
19
19
 
20
20
  .lighthouse-start-view header {
21
21
  display: flex;
22
- font-size: 18px;
22
+ font-size: var(--sys-typescale-headline3-size);
23
23
  flex-direction: row;
24
24
  align-items: center;
25
- column-gap: 16px;
26
- margin-bottom: 16px;
25
+ column-gap: var(--sys-size-8);
26
+ margin-bottom: var(--sys-size-8);
27
27
  }
28
28
 
29
29
  .lighthouse-start-view .lighthouse-title {
@@ -48,14 +48,14 @@
48
48
  }
49
49
 
50
50
  .lighthouse-form-section {
51
- padding: 8px;
51
+ padding: var(--sys-size-5);
52
52
  flex: 1 1;
53
53
  }
54
54
 
55
55
  .lighthouse-form-categories-fieldset {
56
56
  border: none;
57
57
  margin: 0;
58
- padding: 8px;
58
+ padding: var(--sys-size-5);
59
59
  }
60
60
 
61
61
  .lighthouse-form-section-label {
@@ -65,15 +65,15 @@
65
65
 
66
66
  .lighthouse-form-section-label i span {
67
67
  position: relative;
68
- top: -2px;
68
+ top: calc(-1 * var(--sys-size-2));
69
69
  }
70
70
 
71
71
  .lighthouse-form-section-label span.largeicon-checkmark {
72
- top: -4px;
72
+ top: calc(-1 * var(--sys-size-3));
73
73
  }
74
74
 
75
75
  .lighthouse-form-section-label .lighthouse-learn-more {
76
- margin: 20px;
76
+ margin: var(--sys-size-9);
77
77
  }
78
78
 
79
79
  .lighthouse-radio {
@@ -98,7 +98,7 @@
98
98
  }
99
99
 
100
100
  .lighthouse-start-button-container button {
101
- margin: 16px auto;
101
+ margin: var(--sys-size-8) auto;
102
102
  font-family: var(--report-font-family);
103
103
  font-weight: 500;
104
104
  font-size: var(--font-size);
@@ -115,12 +115,12 @@
115
115
  }
116
116
 
117
117
  &:not(:has(devtools-checkbox)) {
118
- margin-bottom: 6px;
118
+ margin-bottom: var(--sys-size-4);
119
119
  }
120
120
  }
121
121
 
122
122
  .lighthouse-launcher-row .dimmed {
123
- padding-left: 22px;
123
+ padding-left: var(--sys-size-10);
124
124
  }
125
125
 
126
126
  .lighthouse-help-text {