chrome-devtools-frontend 1.0.1622369 → 1.0.1624409

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 (33) hide show
  1. package/front_end/Images/src/expand.svg +1 -0
  2. package/front_end/entrypoints/greendev_floaty/FloatyEntrypoint.ts +72 -8
  3. package/front_end/entrypoints/greendev_floaty/floaty.html +1 -1
  4. package/front_end/generated/Deprecation.ts +7 -0
  5. package/front_end/generated/InspectorBackendCommands.ts +1 -1
  6. package/front_end/generated/SupportedCSSProperties.js +6 -6
  7. package/front_end/generated/protocol.ts +1 -0
  8. package/front_end/models/ai_assistance/agents/GreenDevAgent.ts +373 -112
  9. package/front_end/models/ai_assistance/agents/NetworkAgent.snapshot.txt +57 -0
  10. package/front_end/models/ai_assistance/agents/NetworkAgent.ts +2 -1
  11. package/front_end/models/ai_assistance/agents/PerformanceAgent.ts +3 -10
  12. package/front_end/models/javascript_metadata/NativeFunctions.js +9 -4
  13. package/front_end/panels/ai_assistance/components/ChatMessage.ts +212 -3
  14. package/front_end/panels/console/ConsoleView.ts +86 -7
  15. package/front_end/panels/console/ConsoleViewMessage.ts +23 -1
  16. package/front_end/panels/elements/StylePropertiesSection.ts +1 -2
  17. package/front_end/panels/elements/StylePropertyTreeElement.ts +1 -1
  18. package/front_end/panels/elements/StylesAiCodeCompletionProvider.ts +6 -2
  19. package/front_end/panels/elements/StylesSidebarPane.ts +17 -4
  20. package/front_end/panels/emulation/DeviceModeToolbar.ts +37 -13
  21. package/front_end/panels/emulation/deviceModeView.css +25 -0
  22. package/front_end/panels/greendev/GreenDevPanel.ts +30 -3
  23. package/front_end/panels/media/EventDisplayTable.ts +1 -1
  24. package/front_end/panels/mobile_throttling/NetworkThrottlingSelector.ts +48 -27
  25. package/front_end/panels/mobile_throttling/ThrottlingManager.ts +67 -38
  26. package/front_end/panels/network/NetworkConfigView.ts +1 -1
  27. package/front_end/panels/profiler/HeapSnapshotView.ts +1 -22
  28. package/front_end/third_party/chromium/README.chromium +1 -1
  29. package/front_end/ui/legacy/UIUtils.ts +26 -4
  30. package/front_end/ui/visual_logging/KnownContextValues.ts +17 -0
  31. package/package.json +1 -1
  32. package/front_end/panels/emulation/components/DeviceSizeInputElement.ts +0 -134
  33. package/front_end/panels/emulation/components/components.ts +0 -9
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" height="20" viewBox="0 -960 960 960" width="20"><path d="M192-96v-72h576v72H192Zm288-144L336-384l51-51 57 57v-204l-57 57-51-51 144-144 144 144-51 51-57-57v204l57-57 51 51-144 144ZM192-792v-72h576v72H192Z"/></svg>
@@ -7,8 +7,11 @@ import '../../core/sdk/sdk-meta.js';
7
7
  import '../../models/workspace/workspace-meta.js';
8
8
  import '../../models/logs/logs-meta.js';
9
9
  import '../../panels/sensors/sensors-meta.js';
10
+ import '../../panels/sources/sources-meta.js';
10
11
  import '../../entrypoints/inspector_main/inspector_main-meta.js';
11
12
  import '../../entrypoints/main/main-meta.js';
13
+ import '../../ui/legacy/components/source_frame/source_frame-meta.js';
14
+ import '../../ui/components/markdown_view/markdown_view.js';
12
15
 
13
16
  import * as Common from '../../core/common/common.js';
14
17
  import * as Host from '../../core/host/host.js';
@@ -22,6 +25,8 @@ import type * as Protocol from '../../generated/protocol.js';
22
25
  import * as AiAssistance from '../../models/ai_assistance/ai_assistance.js';
23
26
  import * as Greendev from '../../models/greendev/greendev.js';
24
27
  import type {SyncMessage} from '../../panels/greendev/GreenDevShared.js';
28
+ import * as Marked from '../../third_party/marked/marked.js';
29
+ import * as MarkdownView from '../../ui/components/markdown_view/markdown_view.js';
25
30
  import * as UI from '../../ui/legacy/legacy.js';
26
31
  import * as ThemeSupport from '../../ui/legacy/theme_support/theme_support.js';
27
32
 
@@ -294,6 +299,8 @@ class GreenDevFloaty {
294
299
  nodeDescription: document.querySelector('.green-dev-floaty-dialog-node-description')?.textContent,
295
300
  });
296
301
 
302
+ let agentFinished = false;
303
+ let steps = 0;
297
304
  try {
298
305
  let results;
299
306
  if (useGreenDevAgent && this.#agent instanceof AiAssistance.GreenDevAgent.GreenDevAgent) {
@@ -302,7 +309,7 @@ class GreenDevFloaty {
302
309
  return;
303
310
  }
304
311
 
305
- // --- Add the Accessibility Tree ---
312
+ // --- Get the Accessibility Tree ---
306
313
  const accessibilityModel = target.model(SDK.AccessibilityModel.AccessibilityModel);
307
314
  let axTree = '';
308
315
  if (accessibilityModel) {
@@ -315,7 +322,7 @@ class GreenDevFloaty {
315
322
  }
316
323
  }
317
324
 
318
- // --- Add the most recent network requests ---
325
+ // --- Get the most recent network requests ---
319
326
  const allNetworkRequests = await AiAssistance.GreenDevAgent.GreenDevAgent.getNetworkContextData(target);
320
327
  const networkResourcesMax = 50;
321
328
  const startNetworkIndex = Math.max(0, allNetworkRequests.length - networkResourcesMax);
@@ -330,13 +337,13 @@ class GreenDevFloaty {
330
337
  allNetworkRequests.length -
331
338
  lastNetworkRequests.length} additional requests are available (network requests shown are capped at ${
332
339
  networkResourcesMax} requests).` :
333
- 'No further network requests have been issued.';
340
+ 'No further network requests are available.';
334
341
 
335
342
  formattedNetworkContext = `Showing network requests with indices ${startNetworkIndex}-${
336
343
  startNetworkIndex + lastNetworkRequests.length - 1}:\n\n${formattedNetworkContext}\n\n${footer}`;
337
344
  }
338
345
 
339
- // --- Add the most recent console messages ---
346
+ // --- Get the most recent console messages ---
340
347
  const consoleModel = target.model(SDK.ConsoleModel.ConsoleModel);
341
348
  const allConsoleMessages = consoleModel ? consoleModel.messages() : [];
342
349
  const consoleMsgLimit = 50;
@@ -358,7 +365,7 @@ class GreenDevFloaty {
358
365
  allConsoleMessages.length -
359
366
  lastConsoleMessages.length} additional messages are available (errors shown are capped at ${
360
367
  consoleMsgLimit} most recent).` :
361
- 'No further console messages have been emitted.';
368
+ 'No further console messages are available.';
362
369
 
363
370
  formattedConsoleMessages = `Showing console messages with indices ${startIndex}-${
364
371
  startIndex + lastConsoleMessages.length - 1}:\n\n${formattedConsoleMessages}\n\n${footer}`;
@@ -366,8 +373,15 @@ class GreenDevFloaty {
366
373
 
367
374
  const mainUrl = target.inspectedURL();
368
375
 
369
- // --- Add some context information about the selected node ---
376
+ // --- Get the React Props for the selected node (if available) ---
377
+ const reactComponentProps = this.#backendNodeId ?
378
+ await this.#agent.getReactComponentProps(this.#backendNodeId, false) :
379
+ 'Could not get the backendNodeId for the selected element.';
380
+
381
+ // --- Get some context information about the selected node ---
370
382
  const elementContext = await AiAssistance.StylingAgent.StylingAgent.describeElement(this.#node);
383
+
384
+ // Now construct the full context.
371
385
  const context = `# Page URL
372
386
 
373
387
  ${mainUrl}
@@ -376,6 +390,10 @@ ${mainUrl}
376
390
 
377
391
  ${elementContext}
378
392
 
393
+ # React component props:
394
+
395
+ ${reactComponentProps}
396
+
379
397
  # Recent network requests
380
398
 
381
399
  ${formattedNetworkContext}
@@ -401,15 +419,53 @@ ${axTree}`;
401
419
 
402
420
  for await (const result of results) {
403
421
  switch (result.type) {
404
- case ResponseType.ANSWER:
405
- aiContent.textContent = result.text;
422
+ case ResponseType.QUERYING:
423
+ steps++;
424
+ break;
425
+ case ResponseType.ANSWER: {
426
+ aiContent.textContent = '';
427
+ // Add a space in the protocol, which prevents links from being linkified in
428
+ // the markup. Why? Because there's an exception thrown if the links don't match the
429
+ // allowlist in getMarkdownLink(). Need to figure out later.
430
+ let sanitizedText = result.text.replace(/https:\/\//g, 'https: //');
431
+ sanitizedText = sanitizedText.replace(/http:\/\//g, 'http: //');
432
+ const markdown = new MarkdownView.MarkdownView.MarkdownView();
433
+ markdown.data = {
434
+ tokens: Marked.Marked.lexer(sanitizedText),
435
+ };
436
+ aiContent.append(markdown);
437
+ void new Promise(resolve => setTimeout(resolve, 0)).then(() => {
438
+ const style = document.createElement('style');
439
+ style.textContent =
440
+ '.message { font-size: 1.0rem; } .message code { font-size: 1.0rem; font-family: \'Roboto Mono\', ' +
441
+ 'monospace; color: green; } .message ul { margin-left: 20px; }';
442
+ markdown.shadowRoot?.appendChild(style);
443
+
444
+ const codeBlocks = markdown.shadowRoot?.querySelectorAll('devtools-code-block');
445
+ if (codeBlocks) {
446
+ for (const codeBlock of codeBlocks) {
447
+ const style = document.createElement('style');
448
+ style.textContent = `
449
+ .heading { color: black; background-color: #f2f6ff; font-family: 'Roboto Mono', monospace; padding: 2px 4px;
450
+ border-top-left-radius: 8px; border-top-right-radius: 8px; margin-bottom: 3px; }
451
+ .code { background-color: #f8f9fa; font-family: 'Roboto Mono', monospace; padding: 5px;
452
+ border-bottom-left-radius: 8px; border-bottom-right-radius: 8px; }
453
+ .editor-wrapper { margin-left: 20px; }
454
+ `;
455
+ codeBlock.shadowRoot?.appendChild(style);
456
+ }
457
+ }
458
+ });
406
459
  this.#syncChannel.postMessage(
407
460
  {type: 'update-last-message', text: result.text, sessionId: this.#backendNodeId});
461
+ agentFinished = true;
408
462
  break;
463
+ }
409
464
  case ResponseType.ERROR:
410
465
  aiContent.textContent = this.#formatError(result.error);
411
466
  this.#syncChannel.postMessage(
412
467
  {type: 'update-last-message', text: this.#formatError(result.error), sessionId: this.#backendNodeId});
468
+ agentFinished = true;
413
469
  break;
414
470
  case ResponseType.SIDE_EFFECT:
415
471
  result.confirm(true);
@@ -423,6 +479,14 @@ ${axTree}`;
423
479
  }
424
480
  } catch (e) {
425
481
  aiContent.textContent = `Exception: ${e instanceof Error ? e.message : String(e)}`;
482
+ agentFinished = true;
483
+ }
484
+
485
+ const MAX_AGENT_STEPS = AiAssistance.AiAgent.MAX_STEPS;
486
+ if (!agentFinished && steps >= MAX_AGENT_STEPS) {
487
+ aiContent.textContent = `The agent has reached its internal limit of ${MAX_AGENT_STEPS} steps per turn before
488
+ finding an answer. Please try again with a more specific query or say 'continue' (to get ${MAX_AGENT_STEPS}
489
+ more steps and continue trying).`;
426
490
  }
427
491
  };
428
492
 
@@ -20,7 +20,7 @@
20
20
  <div class="green-dev-floaty-dialog-blue-card">
21
21
  <div class="green-dev-floaty-dialog-node-description"></div>
22
22
  <div class="input-row">
23
- <input type="text" class="green-dev-floaty-dialog-text-field" placeholder="Why is this not centered?">
23
+ <input type="text" class="green-dev-floaty-dialog-text-field" placeholder="Why is this hanging?">
24
24
  <button class="green-dev-floaty-dialog-play-button"></button>
25
25
  </div>
26
26
  <div class="green-dev-floaty-disclaimer">
@@ -210,6 +210,10 @@ export const UIStrings = {
210
210
  * @description Standard message when one web API is deprecated in favor of another.
211
211
  */
212
212
  PrefixedVideoSupportsFullscreen: "HTMLVideoElement.webkitSupportsFullscreen is deprecated. Please use Document.fullscreenEnabled instead.",
213
+ /**
214
+ * @description Warning displayed to developers when an SVG filter is applied to a disallowed content type.
215
+ */
216
+ PreventSvgFilterPaint: "SVG filters cannot be applied to cross-origin iframes, restricted iframes (e.g., sandboxed), or plugins.",
213
217
  /**
214
218
  * @description Standard message when one web API is deprecated in favor of another.
215
219
  */
@@ -390,6 +394,9 @@ export const DEPRECATIONS_METADATA: Partial<Record<string, DeprecationDescriptor
390
394
  "chromeStatusFeature": 5176235376246784,
391
395
  "milestone": 106
392
396
  },
397
+ "PreventSvgFilterPaint": {
398
+ "chromeStatusFeature": 5117170452398080
399
+ },
393
400
  "RTCConstraintEnableDtlsSrtpFalse": {
394
401
  "milestone": 97
395
402
  },
@@ -1032,7 +1032,7 @@ inspectorBackend.registerEnum("Page.AdFrameExplanation", {ParentIsAd: "ParentIsA
1032
1032
  inspectorBackend.registerEnum("Page.SecureContextType", {Secure: "Secure", SecureLocalhost: "SecureLocalhost", InsecureScheme: "InsecureScheme", InsecureAncestor: "InsecureAncestor"});
1033
1033
  inspectorBackend.registerEnum("Page.CrossOriginIsolatedContextType", {Isolated: "Isolated", NotIsolated: "NotIsolated", NotIsolatedFeatureDisabled: "NotIsolatedFeatureDisabled"});
1034
1034
  inspectorBackend.registerEnum("Page.GatedAPIFeatures", {SharedArrayBuffers: "SharedArrayBuffers", SharedArrayBuffersTransferAllowed: "SharedArrayBuffersTransferAllowed", PerformanceMeasureMemory: "PerformanceMeasureMemory", PerformanceProfile: "PerformanceProfile"});
1035
- inspectorBackend.registerEnum("Page.PermissionsPolicyFeature", {Accelerometer: "accelerometer", AllScreensCapture: "all-screens-capture", AmbientLightSensor: "ambient-light-sensor", AriaNotify: "aria-notify", AttributionReporting: "attribution-reporting", Autofill: "autofill", Autoplay: "autoplay", Bluetooth: "bluetooth", BrowsingTopics: "browsing-topics", Camera: "camera", CapturedSurfaceControl: "captured-surface-control", ChDpr: "ch-dpr", ChDeviceMemory: "ch-device-memory", ChDownlink: "ch-downlink", ChEct: "ch-ect", ChPrefersColorScheme: "ch-prefers-color-scheme", ChPrefersReducedMotion: "ch-prefers-reduced-motion", ChPrefersReducedTransparency: "ch-prefers-reduced-transparency", ChRtt: "ch-rtt", ChSaveData: "ch-save-data", ChUa: "ch-ua", ChUaArch: "ch-ua-arch", ChUaBitness: "ch-ua-bitness", ChUaHighEntropyValues: "ch-ua-high-entropy-values", ChUaPlatform: "ch-ua-platform", ChUaModel: "ch-ua-model", ChUaMobile: "ch-ua-mobile", ChUaFormFactors: "ch-ua-form-factors", ChUaFullVersion: "ch-ua-full-version", ChUaFullVersionList: "ch-ua-full-version-list", ChUaPlatformVersion: "ch-ua-platform-version", ChUaWow64: "ch-ua-wow64", ChViewportHeight: "ch-viewport-height", ChViewportWidth: "ch-viewport-width", ChWidth: "ch-width", ClipboardRead: "clipboard-read", ClipboardWrite: "clipboard-write", ComputePressure: "compute-pressure", ControlledFrame: "controlled-frame", CrossOriginIsolated: "cross-origin-isolated", DeferredFetch: "deferred-fetch", DeferredFetchMinimal: "deferred-fetch-minimal", DeviceAttributes: "device-attributes", DigitalCredentialsCreate: "digital-credentials-create", DigitalCredentialsGet: "digital-credentials-get", DirectSockets: "direct-sockets", DirectSocketsMulticast: "direct-sockets-multicast", DirectSocketsPrivate: "direct-sockets-private", DisplayCapture: "display-capture", DocumentDomain: "document-domain", EncryptedMedia: "encrypted-media", ExecutionWhileOutOfViewport: "execution-while-out-of-viewport", ExecutionWhileNotRendered: "execution-while-not-rendered", FocusWithoutUserActivation: "focus-without-user-activation", Fullscreen: "fullscreen", Frobulate: "frobulate", Gamepad: "gamepad", Geolocation: "geolocation", Gyroscope: "gyroscope", Hid: "hid", IdentityCredentialsGet: "identity-credentials-get", IdleDetection: "idle-detection", InterestCohort: "interest-cohort", JoinAdInterestGroup: "join-ad-interest-group", KeyboardMap: "keyboard-map", LanguageDetector: "language-detector", LanguageModel: "language-model", LocalFonts: "local-fonts", LocalNetwork: "local-network", LocalNetworkAccess: "local-network-access", LoopbackNetwork: "loopback-network", Magnetometer: "magnetometer", ManualText: "manual-text", MediaPlaybackWhileNotVisible: "media-playback-while-not-visible", Microphone: "microphone", Midi: "midi", OnDeviceSpeechRecognition: "on-device-speech-recognition", OtpCredentials: "otp-credentials", Payment: "payment", PictureInPicture: "picture-in-picture", PrivateAggregation: "private-aggregation", PrivateStateTokenIssuance: "private-state-token-issuance", PrivateStateTokenRedemption: "private-state-token-redemption", PublickeyCredentialsCreate: "publickey-credentials-create", PublickeyCredentialsGet: "publickey-credentials-get", RecordAdAuctionEvents: "record-ad-auction-events", Rewriter: "rewriter", RunAdAuction: "run-ad-auction", ScreenWakeLock: "screen-wake-lock", Serial: "serial", SharedStorage: "shared-storage", SharedStorageSelectUrl: "shared-storage-select-url", SmartCard: "smart-card", SpeakerSelection: "speaker-selection", StorageAccess: "storage-access", SubApps: "sub-apps", Summarizer: "summarizer", SyncXhr: "sync-xhr", Translator: "translator", Unload: "unload", Usb: "usb", UsbUnrestricted: "usb-unrestricted", VerticalScroll: "vertical-scroll", WebAppInstallation: "web-app-installation", WebPrinting: "web-printing", WebShare: "web-share", WindowManagement: "window-management", Writer: "writer", XrSpatialTracking: "xr-spatial-tracking"});
1035
+ inspectorBackend.registerEnum("Page.PermissionsPolicyFeature", {Accelerometer: "accelerometer", AllScreensCapture: "all-screens-capture", AmbientLightSensor: "ambient-light-sensor", AriaNotify: "aria-notify", AttributionReporting: "attribution-reporting", Autofill: "autofill", Autoplay: "autoplay", Bluetooth: "bluetooth", BrowsingTopics: "browsing-topics", Camera: "camera", CapturedSurfaceControl: "captured-surface-control", ChDpr: "ch-dpr", ChDeviceMemory: "ch-device-memory", ChDownlink: "ch-downlink", ChEct: "ch-ect", ChPrefersColorScheme: "ch-prefers-color-scheme", ChPrefersReducedMotion: "ch-prefers-reduced-motion", ChPrefersReducedTransparency: "ch-prefers-reduced-transparency", ChRtt: "ch-rtt", ChSaveData: "ch-save-data", ChUa: "ch-ua", ChUaArch: "ch-ua-arch", ChUaBitness: "ch-ua-bitness", ChUaHighEntropyValues: "ch-ua-high-entropy-values", ChUaPlatform: "ch-ua-platform", ChUaModel: "ch-ua-model", ChUaMobile: "ch-ua-mobile", ChUaFormFactors: "ch-ua-form-factors", ChUaFullVersion: "ch-ua-full-version", ChUaFullVersionList: "ch-ua-full-version-list", ChUaPlatformVersion: "ch-ua-platform-version", ChUaWow64: "ch-ua-wow64", ChViewportHeight: "ch-viewport-height", ChViewportWidth: "ch-viewport-width", ChWidth: "ch-width", ClipboardRead: "clipboard-read", ClipboardWrite: "clipboard-write", ComputePressure: "compute-pressure", ControlledFrame: "controlled-frame", CrossOriginIsolated: "cross-origin-isolated", DeferredFetch: "deferred-fetch", DeferredFetchMinimal: "deferred-fetch-minimal", DeviceAttributes: "device-attributes", DigitalCredentialsCreate: "digital-credentials-create", DigitalCredentialsGet: "digital-credentials-get", DirectSockets: "direct-sockets", DirectSocketsMulticast: "direct-sockets-multicast", DirectSocketsPrivate: "direct-sockets-private", DisplayCapture: "display-capture", DocumentDomain: "document-domain", EncryptedMedia: "encrypted-media", ExecutionWhileOutOfViewport: "execution-while-out-of-viewport", ExecutionWhileNotRendered: "execution-while-not-rendered", FocusWithoutUserActivation: "focus-without-user-activation", Fullscreen: "fullscreen", Frobulate: "frobulate", Gamepad: "gamepad", Geolocation: "geolocation", Gyroscope: "gyroscope", Hid: "hid", IdentityCredentialsGet: "identity-credentials-get", IdleDetection: "idle-detection", InterestCohort: "interest-cohort", JoinAdInterestGroup: "join-ad-interest-group", KeyboardMap: "keyboard-map", LanguageDetector: "language-detector", LanguageModel: "language-model", LocalFonts: "local-fonts", LocalNetwork: "local-network", LocalNetworkAccess: "local-network-access", LoopbackNetwork: "loopback-network", Magnetometer: "magnetometer", ManualText: "manual-text", MediaPlaybackWhileNotVisible: "media-playback-while-not-visible", Microphone: "microphone", Midi: "midi", OnDeviceSpeechRecognition: "on-device-speech-recognition", OtpCredentials: "otp-credentials", Payment: "payment", PictureInPicture: "picture-in-picture", PrivateAggregation: "private-aggregation", PrivateStateTokenIssuance: "private-state-token-issuance", PrivateStateTokenRedemption: "private-state-token-redemption", PublickeyCredentialsCreate: "publickey-credentials-create", PublickeyCredentialsGet: "publickey-credentials-get", RecordAdAuctionEvents: "record-ad-auction-events", Rewriter: "rewriter", RunAdAuction: "run-ad-auction", ScreenWakeLock: "screen-wake-lock", Serial: "serial", SharedStorage: "shared-storage", SharedStorageSelectUrl: "shared-storage-select-url", SmartCard: "smart-card", SpeakerSelection: "speaker-selection", StorageAccess: "storage-access", SubApps: "sub-apps", Summarizer: "summarizer", SyncXhr: "sync-xhr", Tools: "tools", Translator: "translator", Unload: "unload", Usb: "usb", UsbUnrestricted: "usb-unrestricted", VerticalScroll: "vertical-scroll", WebAppInstallation: "web-app-installation", WebPrinting: "web-printing", WebShare: "web-share", WindowManagement: "window-management", Writer: "writer", XrSpatialTracking: "xr-spatial-tracking"});
1036
1036
  inspectorBackend.registerEnum("Page.PermissionsPolicyBlockReason", {Header: "Header", IframeAttribute: "IframeAttribute", InFencedFrameTree: "InFencedFrameTree", InIsolatedApp: "InIsolatedApp"});
1037
1037
  inspectorBackend.registerEnum("Page.OriginTrialTokenStatus", {Success: "Success", NotSupported: "NotSupported", Insecure: "Insecure", Expired: "Expired", WrongOrigin: "WrongOrigin", InvalidSignature: "InvalidSignature", Malformed: "Malformed", WrongVersion: "WrongVersion", FeatureDisabled: "FeatureDisabled", TokenDisabled: "TokenDisabled", FeatureDisabledForUser: "FeatureDisabledForUser", UnknownTrial: "UnknownTrial"});
1038
1038
  inspectorBackend.registerEnum("Page.OriginTrialStatus", {Enabled: "Enabled", ValidTokenNotProvided: "ValidTokenNotProvided", OSNotSupported: "OSNotSupported", TrialNotAllowed: "TrialNotAllowed"});
@@ -1076,7 +1076,7 @@ export const generatedProperties = [
1076
1076
  {
1077
1077
  "inherited": true,
1078
1078
  "keywords": [
1079
- "auto",
1079
+ "ellipsis",
1080
1080
  "no-ellipsis"
1081
1081
  ],
1082
1082
  "name": "block-ellipsis"
@@ -1945,7 +1945,7 @@ export const generatedProperties = [
1945
1945
  },
1946
1946
  {
1947
1947
  "keywords": [
1948
- "auto",
1948
+ "normal",
1949
1949
  "collapse",
1950
1950
  "-webkit-legacy"
1951
1951
  ],
@@ -3950,7 +3950,7 @@ export const generatedProperties = [
3950
3950
  "inherited": true,
3951
3951
  "keywords": [
3952
3952
  "auto",
3953
- "none"
3953
+ "spaces"
3954
3954
  ],
3955
3955
  "name": "ruby-overhang"
3956
3956
  },
@@ -5324,7 +5324,7 @@ export const generatedPropertyValues = {
5324
5324
  },
5325
5325
  "block-ellipsis": {
5326
5326
  "values": [
5327
- "auto",
5327
+ "ellipsis",
5328
5328
  "no-ellipsis"
5329
5329
  ]
5330
5330
  },
@@ -5767,7 +5767,7 @@ export const generatedPropertyValues = {
5767
5767
  },
5768
5768
  "continue": {
5769
5769
  "values": [
5770
- "auto",
5770
+ "normal",
5771
5771
  "collapse",
5772
5772
  "-webkit-legacy"
5773
5773
  ]
@@ -6885,7 +6885,7 @@ export const generatedPropertyValues = {
6885
6885
  "ruby-overhang": {
6886
6886
  "values": [
6887
6887
  "auto",
6888
- "none"
6888
+ "spaces"
6889
6889
  ]
6890
6890
  },
6891
6891
  "ruby-position": {
@@ -14509,6 +14509,7 @@ export namespace Page {
14509
14509
  SubApps = 'sub-apps',
14510
14510
  Summarizer = 'summarizer',
14511
14511
  SyncXhr = 'sync-xhr',
14512
+ Tools = 'tools',
14512
14513
  Translator = 'translator',
14513
14514
  Unload = 'unload',
14514
14515
  Usb = 'usb',