devtools-protocol 0.0.1591961 → 0.0.1594462

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.
@@ -1806,7 +1806,8 @@
1806
1806
  "NavigationEntryMarkedSkippable",
1807
1807
  "AutofillAndManualTextPolicyControlledFeaturesInfo",
1808
1808
  "AutofillPolicyControlledFeatureInfo",
1809
- "ManualTextPolicyControlledFeatureInfo"
1809
+ "ManualTextPolicyControlledFeatureInfo",
1810
+ "FormModelContextParameterMissingTitleAndDescription"
1810
1811
  ]
1811
1812
  },
1812
1813
  {
@@ -4632,6 +4633,16 @@
4632
4633
  "items": {
4633
4634
  "$ref": "CSSStartingStyle"
4634
4635
  }
4636
+ },
4637
+ {
4638
+ "name": "navigations",
4639
+ "description": "@navigation CSS at-rule array.\nThe array enumerates @navigation at-rules starting with the innermost one, going outwards.",
4640
+ "experimental": true,
4641
+ "optional": true,
4642
+ "type": "array",
4643
+ "items": {
4644
+ "$ref": "CSSNavigation"
4645
+ }
4635
4646
  }
4636
4647
  ]
4637
4648
  },
@@ -4647,7 +4658,8 @@
4647
4658
  "LayerRule",
4648
4659
  "ScopeRule",
4649
4660
  "StyleRule",
4650
- "StartingStyleRule"
4661
+ "StartingStyleRule",
4662
+ "NavigationRule"
4651
4663
  ]
4652
4664
  },
4653
4665
  {
@@ -5047,6 +5059,37 @@
5047
5059
  }
5048
5060
  ]
5049
5061
  },
5062
+ {
5063
+ "id": "CSSNavigation",
5064
+ "description": "CSS Navigation at-rule descriptor.",
5065
+ "experimental": true,
5066
+ "type": "object",
5067
+ "properties": [
5068
+ {
5069
+ "name": "text",
5070
+ "description": "Navigation rule text.",
5071
+ "type": "string"
5072
+ },
5073
+ {
5074
+ "name": "active",
5075
+ "description": "Whether the navigation condition is satisfied.",
5076
+ "optional": true,
5077
+ "type": "boolean"
5078
+ },
5079
+ {
5080
+ "name": "range",
5081
+ "description": "The associated rule header range in the enclosing stylesheet (if\navailable).",
5082
+ "optional": true,
5083
+ "$ref": "SourceRange"
5084
+ },
5085
+ {
5086
+ "name": "styleSheetId",
5087
+ "description": "Identifier of the stylesheet containing this object (if exists).",
5088
+ "optional": true,
5089
+ "$ref": "DOM.StyleSheetId"
5090
+ }
5091
+ ]
5092
+ },
5050
5093
  {
5051
5094
  "id": "CSSScope",
5052
5095
  "description": "CSS Scope at-rule descriptor.",
@@ -5484,6 +5527,12 @@
5484
5527
  "optional": true,
5485
5528
  "$ref": "CSSSupports"
5486
5529
  },
5530
+ {
5531
+ "name": "navigation",
5532
+ "description": "@navigation condition. Only one type of condition should be set.",
5533
+ "optional": true,
5534
+ "$ref": "CSSNavigation"
5535
+ },
5487
5536
  {
5488
5537
  "name": "children",
5489
5538
  "description": "Block body.",
@@ -6338,6 +6387,32 @@
6338
6387
  }
6339
6388
  ]
6340
6389
  },
6390
+ {
6391
+ "name": "setNavigationText",
6392
+ "description": "Modifies the expression of a navigation at-rule.",
6393
+ "experimental": true,
6394
+ "parameters": [
6395
+ {
6396
+ "name": "styleSheetId",
6397
+ "$ref": "DOM.StyleSheetId"
6398
+ },
6399
+ {
6400
+ "name": "range",
6401
+ "$ref": "SourceRange"
6402
+ },
6403
+ {
6404
+ "name": "text",
6405
+ "type": "string"
6406
+ }
6407
+ ],
6408
+ "returns": [
6409
+ {
6410
+ "name": "navigation",
6411
+ "description": "The resulting CSS Navigation rule after modification.",
6412
+ "$ref": "CSSNavigation"
6413
+ }
6414
+ ]
6415
+ },
6341
6416
  {
6342
6417
  "name": "setScopeText",
6343
6418
  "description": "Modifies the expression of a scope at-rule.",
@@ -11068,6 +11143,13 @@
11068
11143
  "overlay",
11069
11144
  "default"
11070
11145
  ]
11146
+ },
11147
+ {
11148
+ "name": "screenOrientationLockEmulation",
11149
+ "description": "If set to true, enables screen orientation lock emulation, which\nintercepts screen.orientation.lock() calls from the page and reports\norientation changes via screenOrientationLockChanged events. This is\nuseful for emulating mobile device orientation lock behavior in\nresponsive design mode.",
11150
+ "experimental": true,
11151
+ "optional": true,
11152
+ "type": "boolean"
11071
11153
  }
11072
11154
  ]
11073
11155
  },
@@ -11681,6 +11763,84 @@
11681
11763
  }
11682
11764
  ]
11683
11765
  },
11766
+ {
11767
+ "name": "updateScreen",
11768
+ "description": "Updates specified screen parameters. Only supported in headless mode.",
11769
+ "experimental": true,
11770
+ "parameters": [
11771
+ {
11772
+ "name": "screenId",
11773
+ "description": "Target screen identifier.",
11774
+ "$ref": "ScreenId"
11775
+ },
11776
+ {
11777
+ "name": "left",
11778
+ "description": "Offset of the left edge of the screen in pixels.",
11779
+ "optional": true,
11780
+ "type": "integer"
11781
+ },
11782
+ {
11783
+ "name": "top",
11784
+ "description": "Offset of the top edge of the screen in pixels.",
11785
+ "optional": true,
11786
+ "type": "integer"
11787
+ },
11788
+ {
11789
+ "name": "width",
11790
+ "description": "The width of the screen in pixels.",
11791
+ "optional": true,
11792
+ "type": "integer"
11793
+ },
11794
+ {
11795
+ "name": "height",
11796
+ "description": "The height of the screen in pixels.",
11797
+ "optional": true,
11798
+ "type": "integer"
11799
+ },
11800
+ {
11801
+ "name": "workAreaInsets",
11802
+ "description": "Specifies the screen's work area.",
11803
+ "optional": true,
11804
+ "$ref": "WorkAreaInsets"
11805
+ },
11806
+ {
11807
+ "name": "devicePixelRatio",
11808
+ "description": "Specifies the screen's device pixel ratio.",
11809
+ "optional": true,
11810
+ "type": "number"
11811
+ },
11812
+ {
11813
+ "name": "rotation",
11814
+ "description": "Specifies the screen's rotation angle. Available values are 0, 90, 180 and 270.",
11815
+ "optional": true,
11816
+ "type": "integer"
11817
+ },
11818
+ {
11819
+ "name": "colorDepth",
11820
+ "description": "Specifies the screen's color depth in bits.",
11821
+ "optional": true,
11822
+ "type": "integer"
11823
+ },
11824
+ {
11825
+ "name": "label",
11826
+ "description": "Specifies the descriptive label for the screen.",
11827
+ "optional": true,
11828
+ "type": "string"
11829
+ },
11830
+ {
11831
+ "name": "isInternal",
11832
+ "description": "Indicates whether the screen is internal to the device or external, attached to the device. Default is false.",
11833
+ "optional": true,
11834
+ "type": "boolean"
11835
+ }
11836
+ ],
11837
+ "returns": [
11838
+ {
11839
+ "name": "screenInfo",
11840
+ "$ref": "ScreenInfo"
11841
+ }
11842
+ ]
11843
+ },
11684
11844
  {
11685
11845
  "name": "removeScreen",
11686
11846
  "description": "Remove screen from the device. Only supported in headless mode.",
@@ -11709,6 +11869,24 @@
11709
11869
  "name": "virtualTimeBudgetExpired",
11710
11870
  "description": "Notification sent after the virtual time budget for the current VirtualTimePolicy has run out.",
11711
11871
  "experimental": true
11872
+ },
11873
+ {
11874
+ "name": "screenOrientationLockChanged",
11875
+ "description": "Fired when a page calls screen.orientation.lock() or screen.orientation.unlock()\nwhile device emulation is enabled. This allows the DevTools frontend to update the\nemulated device orientation accordingly.",
11876
+ "experimental": true,
11877
+ "parameters": [
11878
+ {
11879
+ "name": "locked",
11880
+ "description": "Whether the screen orientation is currently locked.",
11881
+ "type": "boolean"
11882
+ },
11883
+ {
11884
+ "name": "orientation",
11885
+ "description": "The orientation lock type requested by the page. Only set when locked is true.",
11886
+ "optional": true,
11887
+ "$ref": "ScreenOrientation"
11888
+ }
11889
+ ]
11712
11890
  }
11713
11891
  ]
11714
11892
  },
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "devtools-protocol",
3
- "version": "0.0.1591961",
3
+ "version": "0.0.1594462",
4
4
  "description": "The Chrome DevTools Protocol JSON",
5
5
  "repository": "https://github.com/ChromeDevTools/devtools-protocol",
6
6
  "author": "The Chromium Authors",
@@ -438,6 +438,7 @@ experimental domain Audits
438
438
  AutofillAndManualTextPolicyControlledFeaturesInfo
439
439
  AutofillPolicyControlledFeatureInfo
440
440
  ManualTextPolicyControlledFeatureInfo
441
+ FormModelContextParameterMissingTitleAndDescription
441
442
 
442
443
  # Depending on the concrete errorType, different properties are set.
443
444
  type GenericIssueDetails extends object
@@ -185,6 +185,9 @@ experimental domain CSS
185
185
  # @starting-style CSS at-rule array.
186
186
  # The array enumerates @starting-style at-rules starting with the innermost one, going outwards.
187
187
  experimental optional array of CSSStartingStyle startingStyles
188
+ # @navigation CSS at-rule array.
189
+ # The array enumerates @navigation at-rules starting with the innermost one, going outwards.
190
+ experimental optional array of CSSNavigation navigations
188
191
 
189
192
  # Enum indicating the type of a CSS rule, used to represent the order of a style rule's ancestors.
190
193
  # This list only contains rule types that are collected during the ancestor rule collection.
@@ -197,6 +200,7 @@ experimental domain CSS
197
200
  ScopeRule
198
201
  StyleRule
199
202
  StartingStyleRule
203
+ NavigationRule
200
204
 
201
205
  # CSS coverage information.
202
206
  type RuleUsage extends object
@@ -364,6 +368,19 @@ experimental domain CSS
364
368
  # Identifier of the stylesheet containing this object (if exists).
365
369
  optional DOM.StyleSheetId styleSheetId
366
370
 
371
+ # CSS Navigation at-rule descriptor.
372
+ experimental type CSSNavigation extends object
373
+ properties
374
+ # Navigation rule text.
375
+ string text
376
+ # Whether the navigation condition is satisfied.
377
+ optional boolean active
378
+ # The associated rule header range in the enclosing stylesheet (if
379
+ # available).
380
+ optional SourceRange range
381
+ # Identifier of the stylesheet containing this object (if exists).
382
+ optional DOM.StyleSheetId styleSheetId
383
+
367
384
  # CSS Scope at-rule descriptor.
368
385
  experimental type CSSScope extends object
369
386
  properties
@@ -556,6 +573,8 @@ experimental domain CSS
556
573
  optional CSSContainerQuery containerQueries
557
574
  # @supports CSS at-rule condition. Only one type of condition should be set.
558
575
  optional CSSSupports supports
576
+ # @navigation condition. Only one type of condition should be set.
577
+ optional CSSNavigation navigation
559
578
  # Block body.
560
579
  array of CSSFunctionNode children
561
580
  # The condition text.
@@ -924,6 +943,16 @@ experimental domain CSS
924
943
  # The resulting CSS Supports rule after modification.
925
944
  CSSSupports supports
926
945
 
946
+ # Modifies the expression of a navigation at-rule.
947
+ experimental command setNavigationText
948
+ parameters
949
+ DOM.StyleSheetId styleSheetId
950
+ SourceRange range
951
+ string text
952
+ returns
953
+ # The resulting CSS Navigation rule after modification.
954
+ CSSNavigation navigation
955
+
927
956
  # Modifies the expression of a scope at-rule.
928
957
  experimental command setScopeText
929
958
  parameters
@@ -306,6 +306,12 @@ domain Emulation
306
306
  # classic (occupying space within the layout) or overlay, depending
307
307
  # on the platform. Note: if `mobile` is `true`, the default scrollbar type is `overlay`.
308
308
  default
309
+ # If set to true, enables screen orientation lock emulation, which
310
+ # intercepts screen.orientation.lock() calls from the page and reports
311
+ # orientation changes via screenOrientationLockChanged events. This is
312
+ # useful for emulating mobile device orientation lock behavior in
313
+ # responsive design mode.
314
+ experimental optional boolean screenOrientationLockEmulation
309
315
 
310
316
  # Start reporting the given posture value to the Device Posture API.
311
317
  # This override can also be set in setDeviceMetricsOverride().
@@ -530,6 +536,16 @@ domain Emulation
530
536
  # Notification sent after the virtual time budget for the current VirtualTimePolicy has run out.
531
537
  experimental event virtualTimeBudgetExpired
532
538
 
539
+ # Fired when a page calls screen.orientation.lock() or screen.orientation.unlock()
540
+ # while device emulation is enabled. This allows the DevTools frontend to update the
541
+ # emulated device orientation accordingly.
542
+ experimental event screenOrientationLockChanged
543
+ parameters
544
+ # Whether the screen orientation is currently locked.
545
+ boolean locked
546
+ # The orientation lock type requested by the page. Only set when locked is true.
547
+ optional ScreenOrientation orientation
548
+
533
549
  # Enum of image types that can be disabled.
534
550
  experimental type DisabledImageType extends string
535
551
  enum
@@ -613,6 +629,34 @@ domain Emulation
613
629
  returns
614
630
  ScreenInfo screenInfo
615
631
 
632
+ # Updates specified screen parameters. Only supported in headless mode.
633
+ experimental command updateScreen
634
+ parameters
635
+ # Target screen identifier.
636
+ ScreenId screenId
637
+ # Offset of the left edge of the screen in pixels.
638
+ optional integer left
639
+ # Offset of the top edge of the screen in pixels.
640
+ optional integer top
641
+ # The width of the screen in pixels.
642
+ optional integer width
643
+ # The height of the screen in pixels.
644
+ optional integer height
645
+ # Specifies the screen's work area.
646
+ optional WorkAreaInsets workAreaInsets
647
+ # Specifies the screen's device pixel ratio.
648
+ optional number devicePixelRatio
649
+ # Specifies the screen's rotation angle. Available values are 0, 90, 180 and 270.
650
+ optional integer rotation
651
+ # Specifies the screen's color depth in bits.
652
+ optional integer colorDepth
653
+ # Specifies the descriptive label for the screen.
654
+ optional string label
655
+ # Indicates whether the screen is internal to the device or external, attached to the device. Default is false.
656
+ optional boolean isInternal
657
+ returns
658
+ ScreenInfo screenInfo
659
+
616
660
  # Remove screen from the device. Only supported in headless mode.
617
661
  experimental command removeScreen
618
662
  parameters
@@ -306,6 +306,13 @@ export namespace ProtocolMapping {
306
306
  * @experimental
307
307
  */
308
308
  'Emulation.virtualTimeBudgetExpired': [];
309
+ /**
310
+ * Fired when a page calls screen.orientation.lock() or screen.orientation.unlock()
311
+ * while device emulation is enabled. This allows the DevTools frontend to update the
312
+ * emulated device orientation accordingly.
313
+ * @experimental
314
+ */
315
+ 'Emulation.screenOrientationLockChanged': [Protocol.Emulation.ScreenOrientationLockChangedEvent];
309
316
  'FedCm.dialogShown': [Protocol.FedCm.DialogShownEvent];
310
317
  /**
311
318
  * Triggered when a dialog is closed, either by user action, JS abort,
@@ -2461,6 +2468,14 @@ export namespace ProtocolMapping {
2461
2468
  paramsType: [Protocol.CSS.SetSupportsTextRequest];
2462
2469
  returnType: Protocol.CSS.SetSupportsTextResponse;
2463
2470
  };
2471
+ /**
2472
+ * Modifies the expression of a navigation at-rule.
2473
+ * @experimental
2474
+ */
2475
+ 'CSS.setNavigationText': {
2476
+ paramsType: [Protocol.CSS.SetNavigationTextRequest];
2477
+ returnType: Protocol.CSS.SetNavigationTextResponse;
2478
+ };
2464
2479
  /**
2465
2480
  * Modifies the expression of a scope at-rule.
2466
2481
  * @experimental
@@ -3583,6 +3598,14 @@ export namespace ProtocolMapping {
3583
3598
  paramsType: [Protocol.Emulation.AddScreenRequest];
3584
3599
  returnType: Protocol.Emulation.AddScreenResponse;
3585
3600
  };
3601
+ /**
3602
+ * Updates specified screen parameters. Only supported in headless mode.
3603
+ * @experimental
3604
+ */
3605
+ 'Emulation.updateScreen': {
3606
+ paramsType: [Protocol.Emulation.UpdateScreenRequest];
3607
+ returnType: Protocol.Emulation.UpdateScreenResponse;
3608
+ };
3586
3609
  /**
3587
3610
  * Remove screen from the device. Only supported in headless mode.
3588
3611
  * @experimental
@@ -1356,6 +1356,12 @@ export namespace ProtocolProxyApi {
1356
1356
  */
1357
1357
  setSupportsText(params: Protocol.CSS.SetSupportsTextRequest): Promise<Protocol.CSS.SetSupportsTextResponse>;
1358
1358
 
1359
+ /**
1360
+ * Modifies the expression of a navigation at-rule.
1361
+ * @experimental
1362
+ */
1363
+ setNavigationText(params: Protocol.CSS.SetNavigationTextRequest): Promise<Protocol.CSS.SetNavigationTextResponse>;
1364
+
1359
1365
  /**
1360
1366
  * Modifies the expression of a scope at-rule.
1361
1367
  * @experimental
@@ -2384,6 +2390,12 @@ export namespace ProtocolProxyApi {
2384
2390
  */
2385
2391
  addScreen(params: Protocol.Emulation.AddScreenRequest): Promise<Protocol.Emulation.AddScreenResponse>;
2386
2392
 
2393
+ /**
2394
+ * Updates specified screen parameters. Only supported in headless mode.
2395
+ * @experimental
2396
+ */
2397
+ updateScreen(params: Protocol.Emulation.UpdateScreenRequest): Promise<Protocol.Emulation.UpdateScreenResponse>;
2398
+
2387
2399
  /**
2388
2400
  * Remove screen from the device. Only supported in headless mode.
2389
2401
  * @experimental
@@ -2405,6 +2417,14 @@ export namespace ProtocolProxyApi {
2405
2417
  */
2406
2418
  on(event: 'virtualTimeBudgetExpired', listener: () => void): void;
2407
2419
 
2420
+ /**
2421
+ * Fired when a page calls screen.orientation.lock() or screen.orientation.unlock()
2422
+ * while device emulation is enabled. This allows the DevTools frontend to update the
2423
+ * emulated device orientation accordingly.
2424
+ * @experimental
2425
+ */
2426
+ on(event: 'screenOrientationLockChanged', listener: (params: Protocol.Emulation.ScreenOrientationLockChangedEvent) => void): void;
2427
+
2408
2428
  }
2409
2429
 
2410
2430
  export interface EventBreakpointsApi {
@@ -1430,6 +1430,12 @@ export namespace ProtocolTestsProxyApi {
1430
1430
  */
1431
1431
  setSupportsText(params: Protocol.CSS.SetSupportsTextRequest): Promise<{id: number, result: Protocol.CSS.SetSupportsTextResponse, sessionId: string}>;
1432
1432
 
1433
+ /**
1434
+ * Modifies the expression of a navigation at-rule.
1435
+ * @experimental
1436
+ */
1437
+ setNavigationText(params: Protocol.CSS.SetNavigationTextRequest): Promise<{id: number, result: Protocol.CSS.SetNavigationTextResponse, sessionId: string}>;
1438
+
1433
1439
  /**
1434
1440
  * Modifies the expression of a scope at-rule.
1435
1441
  * @experimental
@@ -2522,6 +2528,12 @@ export namespace ProtocolTestsProxyApi {
2522
2528
  */
2523
2529
  addScreen(params: Protocol.Emulation.AddScreenRequest): Promise<{id: number, result: Protocol.Emulation.AddScreenResponse, sessionId: string}>;
2524
2530
 
2531
+ /**
2532
+ * Updates specified screen parameters. Only supported in headless mode.
2533
+ * @experimental
2534
+ */
2535
+ updateScreen(params: Protocol.Emulation.UpdateScreenRequest): Promise<{id: number, result: Protocol.Emulation.UpdateScreenResponse, sessionId: string}>;
2536
+
2525
2537
  /**
2526
2538
  * Remove screen from the device. Only supported in headless mode.
2527
2539
  * @experimental
@@ -2545,6 +2557,16 @@ export namespace ProtocolTestsProxyApi {
2545
2557
  offVirtualTimeBudgetExpired(listener: () => void): void;
2546
2558
  onceVirtualTimeBudgetExpired(eventMatcher?: () => boolean): Promise<void>;
2547
2559
 
2560
+ /**
2561
+ * Fired when a page calls screen.orientation.lock() or screen.orientation.unlock()
2562
+ * while device emulation is enabled. This allows the DevTools frontend to update the
2563
+ * emulated device orientation accordingly.
2564
+ * @experimental
2565
+ */
2566
+ onScreenOrientationLockChanged(listener: (event: { params: Protocol.Emulation.ScreenOrientationLockChangedEvent }) => void): void;
2567
+ offScreenOrientationLockChanged(listener: (event: { params: Protocol.Emulation.ScreenOrientationLockChangedEvent }) => void): void;
2568
+ onceScreenOrientationLockChanged(eventMatcher?: (event: { params: Protocol.Emulation.ScreenOrientationLockChangedEvent }) => boolean): Promise<{ params: Protocol.Emulation.ScreenOrientationLockChangedEvent }>;
2569
+
2548
2570
  }
2549
2571
 
2550
2572
  export interface EventBreakpointsApi {
@@ -3715,7 +3715,7 @@ export namespace Protocol {
3715
3715
  request: AffectedRequest;
3716
3716
  }
3717
3717
 
3718
- export type GenericIssueErrorType = ('FormLabelForNameError' | 'FormDuplicateIdForInputError' | 'FormInputWithNoLabelError' | 'FormAutocompleteAttributeEmptyError' | 'FormEmptyIdAndNameAttributesForInputError' | 'FormAriaLabelledByToNonExistingIdError' | 'FormInputAssignedAutocompleteValueToIdOrNameAttributeError' | 'FormLabelHasNeitherForNorNestedInputError' | 'FormLabelForMatchesNonExistingIdError' | 'FormInputHasWrongButWellIntendedAutocompleteValueError' | 'ResponseWasBlockedByORB' | 'NavigationEntryMarkedSkippable' | 'AutofillAndManualTextPolicyControlledFeaturesInfo' | 'AutofillPolicyControlledFeatureInfo' | 'ManualTextPolicyControlledFeatureInfo');
3718
+ export type GenericIssueErrorType = ('FormLabelForNameError' | 'FormDuplicateIdForInputError' | 'FormInputWithNoLabelError' | 'FormAutocompleteAttributeEmptyError' | 'FormEmptyIdAndNameAttributesForInputError' | 'FormAriaLabelledByToNonExistingIdError' | 'FormInputAssignedAutocompleteValueToIdOrNameAttributeError' | 'FormLabelHasNeitherForNorNestedInputError' | 'FormLabelForMatchesNonExistingIdError' | 'FormInputHasWrongButWellIntendedAutocompleteValueError' | 'ResponseWasBlockedByORB' | 'NavigationEntryMarkedSkippable' | 'AutofillAndManualTextPolicyControlledFeaturesInfo' | 'AutofillPolicyControlledFeatureInfo' | 'ManualTextPolicyControlledFeatureInfo' | 'FormModelContextParameterMissingTitleAndDescription');
3719
3719
 
3720
3720
  /**
3721
3721
  * Depending on the concrete errorType, different properties are set.
@@ -5345,6 +5345,12 @@ export namespace Protocol {
5345
5345
  * @experimental
5346
5346
  */
5347
5347
  startingStyles?: CSSStartingStyle[];
5348
+ /**
5349
+ * @navigation CSS at-rule array.
5350
+ * The array enumerates @navigation at-rules starting with the innermost one, going outwards.
5351
+ * @experimental
5352
+ */
5353
+ navigations?: CSSNavigation[];
5348
5354
  }
5349
5355
 
5350
5356
  /**
@@ -5352,7 +5358,7 @@ export namespace Protocol {
5352
5358
  * This list only contains rule types that are collected during the ancestor rule collection.
5353
5359
  * @experimental
5354
5360
  */
5355
- export type CSSRuleType = ('MediaRule' | 'SupportsRule' | 'ContainerRule' | 'LayerRule' | 'ScopeRule' | 'StyleRule' | 'StartingStyleRule');
5361
+ export type CSSRuleType = ('MediaRule' | 'SupportsRule' | 'ContainerRule' | 'LayerRule' | 'ScopeRule' | 'StyleRule' | 'StartingStyleRule' | 'NavigationRule');
5356
5362
 
5357
5363
  /**
5358
5364
  * CSS coverage information.
@@ -5653,6 +5659,30 @@ export namespace Protocol {
5653
5659
  styleSheetId?: DOM.StyleSheetId;
5654
5660
  }
5655
5661
 
5662
+ /**
5663
+ * CSS Navigation at-rule descriptor.
5664
+ * @experimental
5665
+ */
5666
+ export interface CSSNavigation {
5667
+ /**
5668
+ * Navigation rule text.
5669
+ */
5670
+ text: string;
5671
+ /**
5672
+ * Whether the navigation condition is satisfied.
5673
+ */
5674
+ active?: boolean;
5675
+ /**
5676
+ * The associated rule header range in the enclosing stylesheet (if
5677
+ * available).
5678
+ */
5679
+ range?: SourceRange;
5680
+ /**
5681
+ * Identifier of the stylesheet containing this object (if exists).
5682
+ */
5683
+ styleSheetId?: DOM.StyleSheetId;
5684
+ }
5685
+
5656
5686
  /**
5657
5687
  * CSS Scope at-rule descriptor.
5658
5688
  * @experimental
@@ -5990,6 +6020,10 @@ export namespace Protocol {
5990
6020
  * @supports CSS at-rule condition. Only one type of condition should be set.
5991
6021
  */
5992
6022
  supports?: CSSSupports;
6023
+ /**
6024
+ * @navigation condition. Only one type of condition should be set.
6025
+ */
6026
+ navigation?: CSSNavigation;
5993
6027
  /**
5994
6028
  * Block body.
5995
6029
  */
@@ -6483,6 +6517,19 @@ export namespace Protocol {
6483
6517
  supports: CSSSupports;
6484
6518
  }
6485
6519
 
6520
+ export interface SetNavigationTextRequest {
6521
+ styleSheetId: DOM.StyleSheetId;
6522
+ range: SourceRange;
6523
+ text: string;
6524
+ }
6525
+
6526
+ export interface SetNavigationTextResponse {
6527
+ /**
6528
+ * The resulting CSS Navigation rule after modification.
6529
+ */
6530
+ navigation: CSSNavigation;
6531
+ }
6532
+
6486
6533
  export interface SetScopeTextRequest {
6487
6534
  styleSheetId: DOM.StyleSheetId;
6488
6535
  range: SourceRange;
@@ -9522,6 +9569,15 @@ export namespace Protocol {
9522
9569
  * @experimental
9523
9570
  */
9524
9571
  scrollbarType?: ('overlay' | 'default');
9572
+ /**
9573
+ * If set to true, enables screen orientation lock emulation, which
9574
+ * intercepts screen.orientation.lock() calls from the page and reports
9575
+ * orientation changes via screenOrientationLockChanged events. This is
9576
+ * useful for emulating mobile device orientation lock behavior in
9577
+ * responsive design mode.
9578
+ * @experimental
9579
+ */
9580
+ screenOrientationLockEmulation?: boolean;
9525
9581
  }
9526
9582
 
9527
9583
  export interface SetDevicePostureOverrideRequest {
@@ -9865,6 +9921,57 @@ export namespace Protocol {
9865
9921
  screenInfo: ScreenInfo;
9866
9922
  }
9867
9923
 
9924
+ export interface UpdateScreenRequest {
9925
+ /**
9926
+ * Target screen identifier.
9927
+ */
9928
+ screenId: ScreenId;
9929
+ /**
9930
+ * Offset of the left edge of the screen in pixels.
9931
+ */
9932
+ left?: integer;
9933
+ /**
9934
+ * Offset of the top edge of the screen in pixels.
9935
+ */
9936
+ top?: integer;
9937
+ /**
9938
+ * The width of the screen in pixels.
9939
+ */
9940
+ width?: integer;
9941
+ /**
9942
+ * The height of the screen in pixels.
9943
+ */
9944
+ height?: integer;
9945
+ /**
9946
+ * Specifies the screen's work area.
9947
+ */
9948
+ workAreaInsets?: WorkAreaInsets;
9949
+ /**
9950
+ * Specifies the screen's device pixel ratio.
9951
+ */
9952
+ devicePixelRatio?: number;
9953
+ /**
9954
+ * Specifies the screen's rotation angle. Available values are 0, 90, 180 and 270.
9955
+ */
9956
+ rotation?: integer;
9957
+ /**
9958
+ * Specifies the screen's color depth in bits.
9959
+ */
9960
+ colorDepth?: integer;
9961
+ /**
9962
+ * Specifies the descriptive label for the screen.
9963
+ */
9964
+ label?: string;
9965
+ /**
9966
+ * Indicates whether the screen is internal to the device or external, attached to the device. Default is false.
9967
+ */
9968
+ isInternal?: boolean;
9969
+ }
9970
+
9971
+ export interface UpdateScreenResponse {
9972
+ screenInfo: ScreenInfo;
9973
+ }
9974
+
9868
9975
  export interface RemoveScreenRequest {
9869
9976
  screenId: ScreenId;
9870
9977
  }
@@ -9872,6 +9979,23 @@ export namespace Protocol {
9872
9979
  export interface SetPrimaryScreenRequest {
9873
9980
  screenId: ScreenId;
9874
9981
  }
9982
+
9983
+ /**
9984
+ * Fired when a page calls screen.orientation.lock() or screen.orientation.unlock()
9985
+ * while device emulation is enabled. This allows the DevTools frontend to update the
9986
+ * emulated device orientation accordingly.
9987
+ * @experimental
9988
+ */
9989
+ export interface ScreenOrientationLockChangedEvent {
9990
+ /**
9991
+ * Whether the screen orientation is currently locked.
9992
+ */
9993
+ locked: boolean;
9994
+ /**
9995
+ * The orientation lock type requested by the page. Only set when locked is true.
9996
+ */
9997
+ orientation?: ScreenOrientation;
9998
+ }
9875
9999
  }
9876
10000
 
9877
10001
  /**