chrome-devtools-frontend 1.0.1581708 → 1.0.1582745

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 (53) hide show
  1. package/front_end/core/sdk/RemoteObject.ts +7 -1
  2. package/front_end/entrypoint_template.html +5 -1
  3. package/front_end/entrypoints/greendev_floaty/FloatyEntrypoint.ts +9 -24
  4. package/front_end/entrypoints/greendev_floaty/floaty.css +1 -1
  5. package/front_end/entrypoints/greendev_floaty/greendev_floaty.ts +1 -1
  6. package/front_end/generated/InspectorBackendCommands.ts +1 -1
  7. package/front_end/generated/SupportedCSSProperties.js +2 -0
  8. package/front_end/generated/protocol.ts +0 -6
  9. package/front_end/models/ai_assistance/agents/ContextSelectionAgent.snapshot.txt +6 -6
  10. package/front_end/models/ai_assistance/agents/ContextSelectionAgent.ts +17 -9
  11. package/front_end/models/ai_assistance/agents/NetworkAgent.ts +2 -6
  12. package/front_end/models/ai_assistance/data_formatters/NetworkRequestFormatter.ts +66 -2
  13. package/front_end/models/greendev/Prototypes.ts +1 -10
  14. package/front_end/models/issues_manager/ConnectionAllowlistIssue.ts +75 -0
  15. package/front_end/models/issues_manager/FederatedAuthRequestIssue.ts +0 -30
  16. package/front_end/models/issues_manager/IssuesManager.ts +5 -0
  17. package/front_end/models/issues_manager/descriptions/connectionAllowlistInvalidAllowlistItemType.md +12 -0
  18. package/front_end/models/issues_manager/descriptions/connectionAllowlistInvalidHeader.md +12 -0
  19. package/front_end/models/issues_manager/descriptions/connectionAllowlistInvalidUrlPattern.md +8 -0
  20. package/front_end/models/issues_manager/descriptions/connectionAllowlistItemNotInnerList.md +12 -0
  21. package/front_end/models/issues_manager/descriptions/connectionAllowlistMoreThanOneList.md +7 -0
  22. package/front_end/models/issues_manager/descriptions/connectionAllowlistReportingEndpointNotToken.md +10 -0
  23. package/front_end/models/issues_manager/issues_manager.ts +2 -0
  24. package/front_end/panels/ai_assistance/AiAssistancePanel.ts +7 -1
  25. package/front_end/panels/ai_assistance/components/ChatInput.ts +7 -3
  26. package/front_end/panels/application/preloading/PreloadingView.ts +8 -1
  27. package/front_end/panels/application/preloading/components/PreloadingDetailsReportView.ts +4 -1
  28. package/front_end/panels/application/preloading/components/PreloadingGrid.ts +2 -1
  29. package/front_end/panels/application/preloading/components/PreloadingString.ts +12 -3
  30. package/front_end/panels/application/preloading/helper/PreloadingForward.ts +14 -0
  31. package/front_end/panels/browser_debugger/CategorizedBreakpointsSidebarPane.ts +37 -3
  32. package/front_end/panels/changes/ChangesSidebar.ts +2 -6
  33. package/front_end/panels/console/ConsoleSidebar.ts +3 -11
  34. package/front_end/panels/lighthouse/LighthouseStartView.ts +3 -5
  35. package/front_end/panels/lighthouse/lighthouseStartView.css +6 -0
  36. package/front_end/panels/network/NetworkLogView.ts +6 -6
  37. package/front_end/panels/network/RequestInitiatorView.ts +19 -8
  38. package/front_end/panels/settings/AISettingsTab.ts +1 -5
  39. package/front_end/panels/settings/SettingsScreen.ts +0 -51
  40. package/front_end/panels/timeline/AnimationsTrackAppender.ts +4 -1
  41. package/front_end/panels/timeline/InteractionsTrackAppender.ts +1 -1
  42. package/front_end/panels/timeline/TimelineUIUtils.ts +13 -16
  43. package/front_end/third_party/chromium/README.chromium +1 -1
  44. package/front_end/ui/components/markdown_view/MarkdownLinksMap.ts +5 -1
  45. package/front_end/ui/legacy/Toolbar.ts +4 -4
  46. package/front_end/ui/legacy/Treeoutline.ts +4 -4
  47. package/front_end/ui/legacy/UIUtils.ts +9 -3
  48. package/front_end/ui/legacy/components/utils/JSPresentationUtils.ts +6 -11
  49. package/front_end/ui/legacy/components/utils/Linkifier.ts +4 -7
  50. package/package.json +1 -1
  51. package/front_end/models/issues_manager/descriptions/federatedAuthRequestClientMetadataHttpNotFound.md +0 -1
  52. package/front_end/models/issues_manager/descriptions/federatedAuthRequestClientMetadataInvalidResponse.md +0 -1
  53. package/front_end/models/issues_manager/descriptions/federatedAuthRequestClientMetadataNoResponse.md +0 -1
@@ -2502,24 +2502,21 @@ export class TimelineDetailsContentHelper {
2502
2502
  return null;
2503
2503
  }
2504
2504
 
2505
- let callFrameContents;
2506
- if (this.target) {
2507
- const stackTrace = await Bindings.DebuggerWorkspaceBinding.DebuggerWorkspaceBinding.instance()
2508
- .createStackTraceFromProtocolRuntime(runtimeStackTrace, this.target);
2509
- callFrameContents = new LegacyComponents.JSPresentationUtils.StackTracePreviewContent(
2510
- undefined, this.target ?? undefined, this.#linkifier, {tabStops: true, showColumnNumber: true});
2511
- callFrameContents.stackTrace = stackTrace;
2512
- } else {
2513
- // I _think_ this only happens during tests.
2514
- // See "TimelineFlameChartView > shows the details for a selected main thread event".
2515
- // For now, just defer to the still-supported legacy runtime stack trace. When
2516
- // that is removed, we could instead create a stub StackTrace ourselves, even
2517
- // without a `target`.
2518
- callFrameContents = new LegacyComponents.JSPresentationUtils.StackTracePreviewContent(
2519
- undefined, this.target ?? undefined, this.#linkifier,
2520
- {runtimeStackTrace, tabStops: true, showColumnNumber: true});
2505
+ // Fallback to the main page/root target. Maybe the main page has a source map we need.
2506
+ // Worst case the stack is identity mapped.
2507
+ const targetManager = SDK.TargetManager.TargetManager.instance();
2508
+ const target = this.target ?? targetManager.primaryPageTarget() ?? targetManager.rootTarget();
2509
+ if (!target) {
2510
+ return null;
2521
2511
  }
2522
2512
 
2513
+ const stackTrace =
2514
+ await Bindings.DebuggerWorkspaceBinding.DebuggerWorkspaceBinding.instance().createStackTraceFromProtocolRuntime(
2515
+ runtimeStackTrace, target);
2516
+ const callFrameContents = new LegacyComponents.JSPresentationUtils.StackTracePreviewContent(
2517
+ undefined, target, this.#linkifier, {tabStops: true, showColumnNumber: true});
2518
+ callFrameContents.stackTrace = stackTrace;
2519
+
2523
2520
  await callFrameContents.updateComplete;
2524
2521
  if (!callFrameContents.hasContent()) {
2525
2522
  return null;
@@ -1,7 +1,7 @@
1
1
  Name: Dependencies sourced from the upstream `chromium` repository
2
2
  URL: https://chromium.googlesource.com/chromium/src
3
3
  Version: N/A
4
- Revision: eb058eb950a74d8f8ffe880684c8a41a4cea87f2
4
+ Revision: 294287c423bbeff3981714f04e193960f503e773
5
5
  Update Mechanism: Manual (https://crbug.com/428069060)
6
6
  License: BSD-3-Clause
7
7
  License File: LICENSE
@@ -58,9 +58,12 @@ export const markdownLinks = new Map<string, string>([
58
58
  ['signatureHeader', 'https://www.rfc-editor.org/rfc/rfc9421.html#name-the-signature-http-field'],
59
59
  ['signatureInputHeader', 'https://www.rfc-editor.org/rfc/rfc9421.html#name-the-signature-input-http-fi'],
60
60
  ['signatureParameters', 'https://www.rfc-editor.org/rfc/rfc9421.html#name-signature-parameters'],
61
- ['sfDictionary', 'https://www.rfc-editor.org/rfc/rfc8941.html#name-dictionaries'],
62
61
  ['sfByteSequence', 'https://www.rfc-editor.org/rfc/rfc8941.html#name-byte-sequences'],
62
+ ['sfDictionary', 'https://www.rfc-editor.org/rfc/rfc8941.html#name-dictionaries'],
63
63
  ['sfInnerList', 'https://www.rfc-editor.org/rfc/rfc8941.html#name-inner-lists'],
64
+ ['sfList', 'https://www.rfc-editor.org/rfc/rfc8941.html#name-lists'],
65
+ ['sfString', 'https://www.rfc-editor.org/rfc/rfc8941.html#name-strings'],
66
+ ['sfToken', 'https://www.rfc-editor.org/rfc/rfc8941.html#name-tokens'],
64
67
  ['componentParameterSf', 'https://www.rfc-editor.org/rfc/rfc9421.html#name-strict-serialization-of-htt'],
65
68
  ['componentParameterReq', 'https://www.rfc-editor.org/rfc/rfc9421.html#content-request-response'],
66
69
  [
@@ -74,6 +77,7 @@ export const markdownLinks = new Map<string, string>([
74
77
  'https://privacysandbox.com/news/update-on-plans-for-privacy-sandbox-technologies/',
75
78
  'https://privacysandbox.com/news/update-on-plans-for-privacy-sandbox-technologies/'
76
79
  ],
80
+ ['urlPatternSpec', 'https://urlpattern.spec.whatwg.org/'],
77
81
  ]);
78
82
 
79
83
  export const getMarkdownLink = (key: string): string => {
@@ -1321,11 +1321,11 @@ export class ToolbarCheckbox extends ToolbarItem<void> {
1321
1321
  constructor(
1322
1322
  text: Common.UIString.LocalizedString, tooltip?: Common.UIString.LocalizedString,
1323
1323
  listener?: ((arg0: MouseEvent) => void), jslogContext?: string) {
1324
- const checkboxLabel = CheckboxLabel.create(text, undefined, undefined, jslogContext);
1324
+ // Pass tooltip to CheckboxLabel.create so it's set on the inner input/text elements,
1325
+ // rather than installing it on the wrapper element which causes screen readers to
1326
+ // incorrectly announce it as a group name.
1327
+ const checkboxLabel = CheckboxLabel.create(text, undefined, undefined, jslogContext, undefined, tooltip);
1325
1328
  super(checkboxLabel);
1326
- if (tooltip) {
1327
- Tooltip.install(this.element, tooltip);
1328
- }
1329
1329
  if (listener) {
1330
1330
  this.element.addEventListener('click', listener, false);
1331
1331
  }
@@ -1704,7 +1704,7 @@ export class TreeViewElement extends HTMLElementWithLightDOMTemplate {
1704
1704
  super();
1705
1705
  this.#treeOutline.addEventListener(Events.ElementSelected, event => {
1706
1706
  if (event.data instanceof TreeViewTreeElement) {
1707
- this.dispatchEvent(new TreeViewElement.SelectEvent(event.data.configElement));
1707
+ event.data.listItemElement.dispatchEvent(new TreeViewElement.SelectEvent());
1708
1708
  }
1709
1709
  });
1710
1710
  this.#treeOutline.addEventListener(Events.ElementExpanded, event => {
@@ -1859,9 +1859,9 @@ export class TreeViewElement extends HTMLElementWithLightDOMTemplate {
1859
1859
  }
1860
1860
 
1861
1861
  export namespace TreeViewElement {
1862
- export class SelectEvent extends CustomEvent<HTMLLIElement> {
1863
- constructor(detail: HTMLLIElement) {
1864
- super('select', {detail});
1862
+ export class SelectEvent extends CustomEvent<void> {
1863
+ constructor() {
1864
+ super('select');
1865
1865
  }
1866
1866
  }
1867
1867
 
@@ -1173,7 +1173,7 @@ export class CheckboxLabel extends HTMLElement {
1173
1173
 
1174
1174
  static create(
1175
1175
  title?: Platform.UIString.LocalizedString, checked?: boolean, subtitle?: Platform.UIString.LocalizedString,
1176
- jslogContext?: string, small?: boolean): CheckboxLabel {
1176
+ jslogContext?: string, small?: boolean, tooltip?: Platform.UIString.LocalizedString): CheckboxLabel {
1177
1177
  const element = document.createElement('devtools-checkbox');
1178
1178
  element.#checkboxElement.checked = Boolean(checked);
1179
1179
  if (jslogContext) {
@@ -1182,11 +1182,17 @@ export class CheckboxLabel extends HTMLElement {
1182
1182
  }
1183
1183
  if (title !== undefined) {
1184
1184
  element.#textElement.textContent = title;
1185
- element.#checkboxElement.title = title;
1186
1185
  if (subtitle !== undefined) {
1187
1186
  element.#textElement.createChild('div', 'devtools-checkbox-subtitle').textContent = subtitle;
1188
1187
  }
1189
1188
  }
1189
+ // checkboxElement tooltip: tooltip first, then title (custom tooltip takes precedence for the input)
1190
+ const inputTooltip = tooltip ?? title;
1191
+ if (inputTooltip) {
1192
+ element.#checkboxElement.title = inputTooltip;
1193
+ // Set aria-description for screen reader announcement
1194
+ element.#checkboxElement.setAttribute('aria-description', inputTooltip);
1195
+ }
1190
1196
  element.#checkboxElement.classList.toggle('small', small);
1191
1197
  return element;
1192
1198
  }
@@ -2069,7 +2075,7 @@ export class HTMLElementWithLightDOMTemplate extends HTMLElement {
2069
2075
  HTMLElementWithLightDOMTemplate.patchLitTemplate(value);
2070
2076
  return value;
2071
2077
  }
2072
- if (Array.isArray(value)) {
2078
+ if (Array.isArray(value) || value instanceof Iterator) {
2073
2079
  return value.map(patchValue);
2074
2080
  }
2075
2081
 
@@ -96,7 +96,7 @@ function populateContextMenu(link: Element, event: Event): void {
96
96
  }
97
97
 
98
98
  // TODO(crbug.com/456517732): remove when all usages of runtimeStackTrace are migrated.
99
- export function buildStackTraceRowsForLegacyRuntimeStackTrace(
99
+ function buildStackTraceRowsForLegacyRuntimeStackTrace(
100
100
  stackTrace: Protocol.Runtime.StackTrace,
101
101
  target: SDK.Target.Target|null,
102
102
  linkifier: Linkifier,
@@ -159,7 +159,7 @@ export function buildStackTraceRowsForLegacyRuntimeStackTrace(
159
159
  return stackTraceRows;
160
160
  }
161
161
 
162
- export function buildStackTraceRows(
162
+ function buildStackTraceRows(
163
163
  stackTrace: StackTrace.StackTrace.StackTrace,
164
164
  target: SDK.Target.Target|null,
165
165
  linkifier: Linkifier,
@@ -189,14 +189,9 @@ export function buildStackTraceRows(
189
189
  inlineFrameIndex: 0,
190
190
  revealBreakpoint: previousStackFrameWasBreakpointCondition,
191
191
  });
192
- if (link) {
193
- link.setAttribute('jslog', `${VisualLogging.link('stack-trace').track({click: true})}`);
194
- link.addEventListener('contextmenu', populateContextMenu.bind(null, link));
192
+ link.setAttribute('jslog', `${VisualLogging.link('stack-trace').track({click: true})}`);
193
+ link.addEventListener('contextmenu', populateContextMenu.bind(null, link));
195
194
 
196
- if (!link.textContent) {
197
- link.textContent = i18nString(UIStrings.unknownSource);
198
- }
199
- }
200
195
  stackTraceRows.push({functionName, link});
201
196
  previousStackFrameWasBreakpointCondition = [
202
197
  SDK.DebuggerModel.COND_BREAKPOINT_SOURCE_URL,
@@ -306,12 +301,12 @@ export interface Options {
306
301
  expandable?: boolean;
307
302
  }
308
303
 
309
- export interface StackTraceRegularRow {
304
+ interface StackTraceRegularRow {
310
305
  functionName: string;
311
306
  link: HTMLElement|null;
312
307
  }
313
308
 
314
- export interface StackTraceAsyncRow {
309
+ interface StackTraceAsyncRow {
315
310
  asyncDescription: string;
316
311
  }
317
312
 
@@ -345,8 +345,7 @@ export class Linkifier extends Common.ObjectWrapper.ObjectWrapper<EventTypes> im
345
345
  }
346
346
 
347
347
  maybeLinkifyStackTraceFrame(
348
- target: SDK.Target.Target|null, frame: StackTrace.StackTrace.Frame, options?: LinkifyOptions): HTMLElement|null {
349
- let fallbackAnchor: HTMLElement|null = null;
348
+ target: SDK.Target.Target|null, frame: StackTrace.StackTrace.Frame, options?: LinkifyOptions): HTMLElement {
350
349
  const linkifyURLOptions: LinkifyURLOptions = {
351
350
  ...options,
352
351
  lineNumber: frame.line,
@@ -361,10 +360,8 @@ export class Linkifier extends Common.ObjectWrapper.ObjectWrapper<EventTypes> im
361
360
  omitOrigin: options?.omitOrigin,
362
361
  };
363
362
  const {className = ''} = linkifyURLOptions;
364
- if (frame.url) {
365
- fallbackAnchor = Linkifier.linkifyURL(frame.url as Platform.DevToolsPath.UrlString, linkifyURLOptions);
366
- }
367
- if (!target || target.isDisposed()) {
363
+ const fallbackAnchor = Linkifier.linkifyURL(frame.url as Platform.DevToolsPath.UrlString, linkifyURLOptions);
364
+ if (!target || target.isDisposed() || !frame.uiSourceCode) {
368
365
  return fallbackAnchor;
369
366
  }
370
367
 
@@ -383,7 +380,7 @@ export class Linkifier extends Common.ObjectWrapper.ObjectWrapper<EventTypes> im
383
380
  revealBreakpoint: options?.revealBreakpoint,
384
381
  };
385
382
 
386
- const uiLocation = frame.uiSourceCode?.uiLocation(frame.line, frame.column) ?? null;
383
+ const uiLocation = frame.uiSourceCode.uiLocation(frame.line, frame.column) ?? null;
387
384
  this.updateAnchorFromUILocation(link, linkDisplayOptions, uiLocation);
388
385
 
389
386
  const anchors = (this.anchorsByTarget.get(target) as Element[]);
package/package.json CHANGED
@@ -105,5 +105,5 @@
105
105
  "flat-cache": "6.1.12"
106
106
  }
107
107
  },
108
- "version": "1.0.1581708"
108
+ "version": "1.0.1582745"
109
109
  }
@@ -1 +0,0 @@
1
- # The provider's client metadata endpoint cannot be found.
@@ -1 +0,0 @@
1
- # Provider's client metadata is invalid.
@@ -1 +0,0 @@
1
- # The response body is empty when fetching the provider's client metadata.