selenium-webdriver 4.48.0 → 4.50.0

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 (217) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGES +21 -0
  3. data/Gemfile +0 -0
  4. data/LICENSE +0 -0
  5. data/NOTICE +0 -0
  6. data/README.md +0 -0
  7. data/bin/linux-arm64/selenium-manager +0 -0
  8. data/bin/{linux → linux-x86_64}/selenium-manager +0 -0
  9. data/bin/macos/selenium-manager +0 -0
  10. data/bin/selenium-manager-THIRD-PARTY-NOTICES.txt +327 -51
  11. data/bin/selenium-manager.cdx.json +491 -491
  12. data/bin/windows/selenium-manager.exe +0 -0
  13. data/lib/selenium/server.rb +0 -0
  14. data/lib/selenium/webdriver/atoms/findElements.js +14 -2
  15. data/lib/selenium/webdriver/atoms.rb +0 -0
  16. data/lib/selenium/webdriver/bidi/browser.rb +0 -0
  17. data/lib/selenium/webdriver/bidi/browsing_context.rb +0 -0
  18. data/lib/selenium/webdriver/bidi/error.rb +0 -0
  19. data/lib/selenium/webdriver/bidi/log_handler.rb +0 -0
  20. data/lib/selenium/webdriver/bidi/network/cookies.rb +0 -0
  21. data/lib/selenium/webdriver/bidi/network/credentials.rb +0 -0
  22. data/lib/selenium/webdriver/bidi/network/headers.rb +0 -0
  23. data/lib/selenium/webdriver/bidi/network/intercepted_auth.rb +0 -0
  24. data/lib/selenium/webdriver/bidi/network/intercepted_item.rb +0 -0
  25. data/lib/selenium/webdriver/bidi/network/intercepted_request.rb +0 -0
  26. data/lib/selenium/webdriver/bidi/network/intercepted_response.rb +0 -0
  27. data/lib/selenium/webdriver/bidi/network/url_pattern.rb +0 -0
  28. data/lib/selenium/webdriver/bidi/network.rb +0 -0
  29. data/lib/selenium/webdriver/bidi/protocol/bluetooth.rb +27 -23
  30. data/lib/selenium/webdriver/bidi/protocol/browser.rb +0 -0
  31. data/lib/selenium/webdriver/bidi/protocol/browsing_context.rb +78 -7
  32. data/lib/selenium/webdriver/bidi/protocol/digital_credentials.rb +69 -0
  33. data/lib/selenium/webdriver/bidi/protocol/domain.rb +0 -0
  34. data/lib/selenium/webdriver/bidi/protocol/emulation.rb +303 -6
  35. data/lib/selenium/webdriver/bidi/protocol/error_code.rb +0 -0
  36. data/lib/selenium/webdriver/bidi/protocol/input.rb +0 -0
  37. data/lib/selenium/webdriver/bidi/protocol/log.rb +0 -0
  38. data/lib/selenium/webdriver/bidi/protocol/moz_debugging.rb +334 -0
  39. data/lib/selenium/webdriver/bidi/protocol/moz_profiler.rb +108 -0
  40. data/lib/selenium/webdriver/bidi/protocol/network.rb +0 -0
  41. data/lib/selenium/webdriver/bidi/protocol/permissions.rb +0 -0
  42. data/lib/selenium/webdriver/bidi/protocol/script.rb +0 -0
  43. data/lib/selenium/webdriver/bidi/protocol/session.rb +0 -0
  44. data/lib/selenium/webdriver/bidi/protocol/speculation.rb +0 -0
  45. data/lib/selenium/webdriver/bidi/protocol/storage.rb +0 -0
  46. data/lib/selenium/webdriver/bidi/protocol/user_agent_client_hints.rb +0 -0
  47. data/lib/selenium/webdriver/bidi/protocol/web_extension.rb +41 -5
  48. data/lib/selenium/webdriver/bidi/protocol.rb +3 -0
  49. data/lib/selenium/webdriver/bidi/serialization/record.rb +0 -0
  50. data/lib/selenium/webdriver/bidi/serialization/union.rb +0 -0
  51. data/lib/selenium/webdriver/bidi/serialization.rb +0 -0
  52. data/lib/selenium/webdriver/bidi/session.rb +0 -0
  53. data/lib/selenium/webdriver/bidi/struct.rb +0 -0
  54. data/lib/selenium/webdriver/bidi/support/bidi_generate.rb +175 -50
  55. data/lib/selenium/webdriver/bidi/support/check_generated.rb +0 -0
  56. data/lib/selenium/webdriver/bidi/transport.rb +0 -0
  57. data/lib/selenium/webdriver/bidi.rb +0 -0
  58. data/lib/selenium/webdriver/chrome/driver.rb +0 -0
  59. data/lib/selenium/webdriver/chrome/features.rb +0 -0
  60. data/lib/selenium/webdriver/chrome/options.rb +0 -0
  61. data/lib/selenium/webdriver/chrome/profile.rb +0 -0
  62. data/lib/selenium/webdriver/chrome/service.rb +0 -0
  63. data/lib/selenium/webdriver/chrome.rb +0 -0
  64. data/lib/selenium/webdriver/chromium/driver.rb +0 -0
  65. data/lib/selenium/webdriver/chromium/features.rb +0 -0
  66. data/lib/selenium/webdriver/chromium/options.rb +0 -0
  67. data/lib/selenium/webdriver/chromium/profile.rb +0 -0
  68. data/lib/selenium/webdriver/chromium.rb +0 -0
  69. data/lib/selenium/webdriver/common/action_builder.rb +0 -0
  70. data/lib/selenium/webdriver/common/alert.rb +0 -0
  71. data/lib/selenium/webdriver/common/child_process.rb +0 -0
  72. data/lib/selenium/webdriver/common/client_config.rb +0 -0
  73. data/lib/selenium/webdriver/common/driver.rb +24 -0
  74. data/lib/selenium/webdriver/common/driver_extensions/downloads_files.rb +0 -0
  75. data/lib/selenium/webdriver/common/driver_extensions/full_page_screenshot.rb +0 -0
  76. data/lib/selenium/webdriver/common/driver_extensions/has_addons.rb +2 -0
  77. data/lib/selenium/webdriver/common/driver_extensions/has_apple_permissions.rb +0 -0
  78. data/lib/selenium/webdriver/common/driver_extensions/has_authentication.rb +0 -0
  79. data/lib/selenium/webdriver/common/driver_extensions/has_casting.rb +0 -0
  80. data/lib/selenium/webdriver/common/driver_extensions/has_cdp.rb +0 -0
  81. data/lib/selenium/webdriver/common/driver_extensions/has_context.rb +0 -0
  82. data/lib/selenium/webdriver/common/driver_extensions/has_debugger.rb +0 -0
  83. data/lib/selenium/webdriver/common/driver_extensions/has_devtools.rb +0 -0
  84. data/lib/selenium/webdriver/common/driver_extensions/has_fedcm_dialog.rb +0 -0
  85. data/lib/selenium/webdriver/common/driver_extensions/has_file_downloads.rb +0 -0
  86. data/lib/selenium/webdriver/common/driver_extensions/has_launching.rb +0 -0
  87. data/lib/selenium/webdriver/common/driver_extensions/has_log_events.rb +0 -0
  88. data/lib/selenium/webdriver/common/driver_extensions/has_logs.rb +0 -0
  89. data/lib/selenium/webdriver/common/driver_extensions/has_network_conditions.rb +0 -0
  90. data/lib/selenium/webdriver/common/driver_extensions/has_network_interception.rb +0 -0
  91. data/lib/selenium/webdriver/common/driver_extensions/has_permissions.rb +0 -0
  92. data/lib/selenium/webdriver/common/driver_extensions/has_pinned_scripts.rb +0 -0
  93. data/lib/selenium/webdriver/common/driver_extensions/has_session_events.rb +0 -0
  94. data/lib/selenium/webdriver/common/driver_extensions/has_session_id.rb +0 -0
  95. data/lib/selenium/webdriver/common/driver_extensions/prints_page.rb +0 -0
  96. data/lib/selenium/webdriver/common/driver_extensions/uploads_files.rb +0 -0
  97. data/lib/selenium/webdriver/common/driver_finder.rb +0 -0
  98. data/lib/selenium/webdriver/common/element.rb +0 -0
  99. data/lib/selenium/webdriver/common/error.rb +0 -0
  100. data/lib/selenium/webdriver/common/fedcm/account.rb +0 -0
  101. data/lib/selenium/webdriver/common/fedcm/dialog.rb +0 -0
  102. data/lib/selenium/webdriver/common/fedcm.rb +0 -0
  103. data/lib/selenium/webdriver/common/file_reaper.rb +0 -0
  104. data/lib/selenium/webdriver/common/interactions/input_device.rb +0 -0
  105. data/lib/selenium/webdriver/common/interactions/interaction.rb +0 -0
  106. data/lib/selenium/webdriver/common/interactions/interactions.rb +0 -0
  107. data/lib/selenium/webdriver/common/interactions/key_actions.rb +0 -0
  108. data/lib/selenium/webdriver/common/interactions/key_input.rb +0 -0
  109. data/lib/selenium/webdriver/common/interactions/none_input.rb +0 -0
  110. data/lib/selenium/webdriver/common/interactions/pause.rb +0 -0
  111. data/lib/selenium/webdriver/common/interactions/pointer_actions.rb +0 -0
  112. data/lib/selenium/webdriver/common/interactions/pointer_cancel.rb +0 -0
  113. data/lib/selenium/webdriver/common/interactions/pointer_event_properties.rb +0 -0
  114. data/lib/selenium/webdriver/common/interactions/pointer_input.rb +0 -0
  115. data/lib/selenium/webdriver/common/interactions/pointer_move.rb +0 -0
  116. data/lib/selenium/webdriver/common/interactions/pointer_press.rb +0 -0
  117. data/lib/selenium/webdriver/common/interactions/scroll.rb +0 -0
  118. data/lib/selenium/webdriver/common/interactions/scroll_origin.rb +0 -0
  119. data/lib/selenium/webdriver/common/interactions/typing_interaction.rb +0 -0
  120. data/lib/selenium/webdriver/common/interactions/wheel_actions.rb +0 -0
  121. data/lib/selenium/webdriver/common/interactions/wheel_input.rb +0 -0
  122. data/lib/selenium/webdriver/common/keys.rb +0 -0
  123. data/lib/selenium/webdriver/common/local_driver.rb +0 -0
  124. data/lib/selenium/webdriver/common/log_entry.rb +0 -0
  125. data/lib/selenium/webdriver/common/logger.rb +0 -0
  126. data/lib/selenium/webdriver/common/logs.rb +0 -0
  127. data/lib/selenium/webdriver/common/manager.rb +0 -0
  128. data/lib/selenium/webdriver/common/navigation.rb +0 -0
  129. data/lib/selenium/webdriver/common/network.rb +0 -0
  130. data/lib/selenium/webdriver/common/options.rb +0 -0
  131. data/lib/selenium/webdriver/common/platform.rb +0 -0
  132. data/lib/selenium/webdriver/common/port_prober.rb +0 -0
  133. data/lib/selenium/webdriver/common/print_options.rb +0 -0
  134. data/lib/selenium/webdriver/common/profile_helper.rb +0 -0
  135. data/lib/selenium/webdriver/common/proxy.rb +0 -0
  136. data/lib/selenium/webdriver/common/script.rb +0 -0
  137. data/lib/selenium/webdriver/common/search_context.rb +0 -0
  138. data/lib/selenium/webdriver/common/selenium_manager.rb +6 -2
  139. data/lib/selenium/webdriver/common/service.rb +0 -0
  140. data/lib/selenium/webdriver/common/service_manager.rb +0 -0
  141. data/lib/selenium/webdriver/common/shadow_root.rb +0 -0
  142. data/lib/selenium/webdriver/common/socket_lock.rb +0 -0
  143. data/lib/selenium/webdriver/common/socket_poller.rb +0 -0
  144. data/lib/selenium/webdriver/common/takes_screenshot.rb +0 -0
  145. data/lib/selenium/webdriver/common/target_locator.rb +0 -0
  146. data/lib/selenium/webdriver/common/timeouts.rb +0 -0
  147. data/lib/selenium/webdriver/common/virtual_authenticator/credential.rb +0 -0
  148. data/lib/selenium/webdriver/common/virtual_authenticator/virtual_authenticator.rb +0 -0
  149. data/lib/selenium/webdriver/common/virtual_authenticator/virtual_authenticator_options.rb +0 -0
  150. data/lib/selenium/webdriver/common/wait.rb +0 -0
  151. data/lib/selenium/webdriver/common/web_extension.rb +42 -0
  152. data/lib/selenium/webdriver/common/websocket_connection.rb +2 -2
  153. data/lib/selenium/webdriver/common/window.rb +0 -0
  154. data/lib/selenium/webdriver/common/zipper.rb +15 -11
  155. data/lib/selenium/webdriver/common.rb +1 -0
  156. data/lib/selenium/webdriver/devtools/console_event.rb +0 -0
  157. data/lib/selenium/webdriver/devtools/exception_event.rb +0 -0
  158. data/lib/selenium/webdriver/devtools/mutation_event.rb +0 -0
  159. data/lib/selenium/webdriver/devtools/network_interceptor.rb +0 -0
  160. data/lib/selenium/webdriver/devtools/pinned_script.rb +0 -0
  161. data/lib/selenium/webdriver/devtools/request.rb +0 -0
  162. data/lib/selenium/webdriver/devtools/response.rb +0 -0
  163. data/lib/selenium/webdriver/devtools.rb +0 -0
  164. data/lib/selenium/webdriver/edge/driver.rb +0 -0
  165. data/lib/selenium/webdriver/edge/features.rb +0 -0
  166. data/lib/selenium/webdriver/edge/options.rb +0 -0
  167. data/lib/selenium/webdriver/edge/profile.rb +0 -0
  168. data/lib/selenium/webdriver/edge/service.rb +0 -0
  169. data/lib/selenium/webdriver/edge.rb +0 -0
  170. data/lib/selenium/webdriver/firefox/driver.rb +0 -0
  171. data/lib/selenium/webdriver/firefox/features.rb +18 -7
  172. data/lib/selenium/webdriver/firefox/options.rb +0 -0
  173. data/lib/selenium/webdriver/firefox/profile.rb +0 -37
  174. data/lib/selenium/webdriver/firefox/profiles_ini.rb +0 -0
  175. data/lib/selenium/webdriver/firefox/service.rb +0 -0
  176. data/lib/selenium/webdriver/firefox/util.rb +0 -0
  177. data/lib/selenium/webdriver/firefox.rb +0 -2
  178. data/lib/selenium/webdriver/ie/driver.rb +0 -0
  179. data/lib/selenium/webdriver/ie/features.rb +0 -0
  180. data/lib/selenium/webdriver/ie/options.rb +0 -0
  181. data/lib/selenium/webdriver/ie/service.rb +0 -0
  182. data/lib/selenium/webdriver/ie.rb +0 -0
  183. data/lib/selenium/webdriver/remote/bidi_bridge.rb +23 -0
  184. data/lib/selenium/webdriver/remote/bridge/commands.rb +0 -0
  185. data/lib/selenium/webdriver/remote/bridge/locator_converter.rb +0 -0
  186. data/lib/selenium/webdriver/remote/bridge.rb +20 -6
  187. data/lib/selenium/webdriver/remote/capabilities.rb +0 -0
  188. data/lib/selenium/webdriver/remote/driver.rb +0 -0
  189. data/lib/selenium/webdriver/remote/features.rb +9 -8
  190. data/lib/selenium/webdriver/remote/http/common.rb +0 -0
  191. data/lib/selenium/webdriver/remote/http/curb.rb +0 -0
  192. data/lib/selenium/webdriver/remote/http/default.rb +0 -0
  193. data/lib/selenium/webdriver/remote/response.rb +0 -0
  194. data/lib/selenium/webdriver/remote/server_error.rb +0 -0
  195. data/lib/selenium/webdriver/remote.rb +0 -0
  196. data/lib/selenium/webdriver/safari/driver.rb +0 -0
  197. data/lib/selenium/webdriver/safari/features.rb +0 -0
  198. data/lib/selenium/webdriver/safari/options.rb +0 -0
  199. data/lib/selenium/webdriver/safari/service.rb +0 -0
  200. data/lib/selenium/webdriver/safari.rb +0 -0
  201. data/lib/selenium/webdriver/support/abstract_event_listener.rb +0 -0
  202. data/lib/selenium/webdriver/support/block_event_listener.rb +0 -0
  203. data/lib/selenium/webdriver/support/color.rb +0 -0
  204. data/lib/selenium/webdriver/support/escaper.rb +0 -0
  205. data/lib/selenium/webdriver/support/event_firing_bridge.rb +0 -0
  206. data/lib/selenium/webdriver/support/guards/guard.rb +0 -0
  207. data/lib/selenium/webdriver/support/guards/guard_condition.rb +0 -0
  208. data/lib/selenium/webdriver/support/guards.rb +0 -0
  209. data/lib/selenium/webdriver/support/relative_locator.rb +0 -0
  210. data/lib/selenium/webdriver/support/select.rb +0 -0
  211. data/lib/selenium/webdriver/support.rb +0 -0
  212. data/lib/selenium/webdriver/version.rb +1 -1
  213. data/lib/selenium/webdriver.rb +0 -0
  214. data/lib/selenium-webdriver.rb +0 -0
  215. data/selenium-webdriver.gemspec +0 -1
  216. metadata +9 -28
  217. data/lib/selenium/webdriver/firefox/extension.rb +0 -103
@@ -48,6 +48,145 @@ module Selenium
48
48
  landscape_secondary: 'landscape-secondary'
49
49
  }.freeze
50
50
 
51
+ # @see https://w3c.github.io/webdriver-bidi/#cddl-type-emulationtextlayoutmode
52
+ TEXT_LAYOUT_MODE = {
53
+ mobile: 'mobile'
54
+ }.freeze
55
+
56
+ MEDIA_FEATURES_ANY_HOVER = {
57
+ none: 'none',
58
+ hover: 'hover'
59
+ }.freeze
60
+
61
+ MEDIA_FEATURES_ANY_POINTER = {
62
+ none: 'none',
63
+ coarse: 'coarse',
64
+ fine: 'fine'
65
+ }.freeze
66
+
67
+ MEDIA_FEATURES_COLOR_GAMUT = {
68
+ srgb: 'srgb',
69
+ p3: 'p3',
70
+ rec2020: 'rec2020'
71
+ }.freeze
72
+
73
+ MEDIA_FEATURES_DISPLAY_MODE = {
74
+ fullscreen: 'fullscreen',
75
+ standalone: 'standalone',
76
+ minimal_ui: 'minimal-ui',
77
+ browser: 'browser',
78
+ picture_in_picture: 'picture-in-picture'
79
+ }.freeze
80
+
81
+ MEDIA_FEATURES_DYNAMIC_RANGE = {
82
+ standard: 'standard',
83
+ high: 'high'
84
+ }.freeze
85
+
86
+ MEDIA_FEATURES_ENVIRONMENT_BLENDING = {
87
+ opaque: 'opaque',
88
+ additive: 'additive',
89
+ subtractive: 'subtractive'
90
+ }.freeze
91
+
92
+ MEDIA_FEATURES_FORCED_COLORS = {
93
+ none: 'none',
94
+ active: 'active'
95
+ }.freeze
96
+
97
+ MEDIA_FEATURES_GRID = {
98
+ _0: 0,
99
+ _1: 1
100
+ }.freeze
101
+
102
+ MEDIA_FEATURES_HOVER = {
103
+ none: 'none',
104
+ hover: 'hover'
105
+ }.freeze
106
+
107
+ MEDIA_FEATURES_INVERTED_COLORS = {
108
+ none: 'none',
109
+ inverted: 'inverted'
110
+ }.freeze
111
+
112
+ MEDIA_FEATURES_NAV_CONTROLS = {
113
+ none: 'none',
114
+ back: 'back'
115
+ }.freeze
116
+
117
+ MEDIA_FEATURES_OVERFLOW_BLOCK = {
118
+ none: 'none',
119
+ scroll: 'scroll',
120
+ optional_paged: 'optional-paged',
121
+ paged: 'paged'
122
+ }.freeze
123
+
124
+ MEDIA_FEATURES_OVERFLOW_INLINE = {
125
+ none: 'none',
126
+ scroll: 'scroll'
127
+ }.freeze
128
+
129
+ MEDIA_FEATURES_POINTER = {
130
+ none: 'none',
131
+ coarse: 'coarse',
132
+ fine: 'fine'
133
+ }.freeze
134
+
135
+ MEDIA_FEATURES_PREFERS_COLOR_SCHEME = {
136
+ light: 'light',
137
+ dark: 'dark'
138
+ }.freeze
139
+
140
+ MEDIA_FEATURES_PREFERS_CONTRAST = {
141
+ no_preference: 'no-preference',
142
+ more: 'more',
143
+ less: 'less',
144
+ custom: 'custom'
145
+ }.freeze
146
+
147
+ MEDIA_FEATURES_PREFERS_REDUCED_DATA = {
148
+ no_preference: 'no-preference',
149
+ reduce: 'reduce'
150
+ }.freeze
151
+
152
+ MEDIA_FEATURES_PREFERS_REDUCED_MOTION = {
153
+ no_preference: 'no-preference',
154
+ reduce: 'reduce'
155
+ }.freeze
156
+
157
+ MEDIA_FEATURES_PREFERS_REDUCED_TRANSPARENCY = {
158
+ no_preference: 'no-preference',
159
+ reduce: 'reduce'
160
+ }.freeze
161
+
162
+ MEDIA_FEATURES_SCAN = {
163
+ interlace: 'interlace',
164
+ progressive: 'progressive'
165
+ }.freeze
166
+
167
+ MEDIA_FEATURES_SCRIPTING = {
168
+ none: 'none',
169
+ initial_only: 'initial-only',
170
+ enabled: 'enabled'
171
+ }.freeze
172
+
173
+ MEDIA_FEATURES_UPDATE = {
174
+ none: 'none',
175
+ slow: 'slow',
176
+ fast: 'fast'
177
+ }.freeze
178
+
179
+ MEDIA_FEATURES_VIDEO_COLOR_GAMUT = {
180
+ srgb: 'srgb',
181
+ p3: 'p3',
182
+ rec2020: 'rec2020'
183
+ }.freeze
184
+
185
+ MEDIA_FEATURES_VIDEO_DYNAMIC_RANGE = {
186
+ standard: 'standard',
187
+ high: 'high'
188
+ }.freeze
189
+
51
190
  SET_SCROLLBAR_TYPE_OVERRIDE_PARAMETERS_SCROLLBAR_TYPE = {
52
191
  classic: 'classic',
53
192
  overlay: 'overlay'
@@ -120,17 +259,149 @@ module Selenium
120
259
  # @see https://www.selenium.dev/documentation/warnings/bidi-implementation/
121
260
  # @see https://w3c.github.io/webdriver-bidi/#cddl-type-emulationsetmediafeaturesoverrideparameters
122
261
  SetMediaFeaturesOverrideParameters = Serialization::Record.define(
123
- features: {wire_key: 'features', nullable: true, ref: 'Emulation::MediaFeature', list: true},
262
+ features: {wire_key: 'features', nullable: true, ref: 'Emulation::MediaFeatures'},
124
263
  contexts: {wire_key: 'contexts', required: false, list: true},
125
264
  user_contexts: {wire_key: 'userContexts', required: false, list: true}
126
265
  )
127
266
 
128
267
  # @api private
129
268
  # @see https://www.selenium.dev/documentation/warnings/bidi-implementation/
130
- # @see https://w3c.github.io/webdriver-bidi/#cddl-type-emulationmediafeature
131
- MediaFeature = Serialization::Record.define(
132
- name: {wire_key: 'name', primitive: 'string'},
133
- value: {wire_key: 'value', primitive: 'string'}
269
+ # @see https://w3c.github.io/webdriver-bidi/#cddl-type-emulationmediafeatures
270
+ MediaFeatures = Serialization::Record.define(
271
+ any_hover: {
272
+ wire_key: 'any-hover',
273
+ required: false,
274
+ nullable: true,
275
+ enum: 'Emulation::MEDIA_FEATURES_ANY_HOVER'
276
+ },
277
+ any_pointer: {
278
+ wire_key: 'any-pointer',
279
+ required: false,
280
+ nullable: true,
281
+ enum: 'Emulation::MEDIA_FEATURES_ANY_POINTER'
282
+ },
283
+ color: {wire_key: 'color', required: false, nullable: true, primitive: 'integer'},
284
+ color_gamut: {
285
+ wire_key: 'color-gamut',
286
+ required: false,
287
+ nullable: true,
288
+ enum: 'Emulation::MEDIA_FEATURES_COLOR_GAMUT'
289
+ },
290
+ color_index: {wire_key: 'color-index', required: false, nullable: true, primitive: 'integer'},
291
+ display_mode: {
292
+ wire_key: 'display-mode',
293
+ required: false,
294
+ nullable: true,
295
+ enum: 'Emulation::MEDIA_FEATURES_DISPLAY_MODE'
296
+ },
297
+ dynamic_range: {
298
+ wire_key: 'dynamic-range',
299
+ required: false,
300
+ nullable: true,
301
+ enum: 'Emulation::MEDIA_FEATURES_DYNAMIC_RANGE'
302
+ },
303
+ environment_blending: {
304
+ wire_key: 'environment-blending',
305
+ required: false,
306
+ nullable: true,
307
+ enum: 'Emulation::MEDIA_FEATURES_ENVIRONMENT_BLENDING'
308
+ },
309
+ forced_colors: {
310
+ wire_key: 'forced-colors',
311
+ required: false,
312
+ nullable: true,
313
+ enum: 'Emulation::MEDIA_FEATURES_FORCED_COLORS'
314
+ },
315
+ grid: {wire_key: 'grid', required: false, nullable: true, enum: 'Emulation::MEDIA_FEATURES_GRID'},
316
+ horizontal_viewport_segments: {
317
+ wire_key: 'horizontal-viewport-segments',
318
+ required: false,
319
+ nullable: true,
320
+ primitive: 'integer'
321
+ },
322
+ hover: {wire_key: 'hover', required: false, nullable: true, enum: 'Emulation::MEDIA_FEATURES_HOVER'},
323
+ inverted_colors: {
324
+ wire_key: 'inverted-colors',
325
+ required: false,
326
+ nullable: true,
327
+ enum: 'Emulation::MEDIA_FEATURES_INVERTED_COLORS'
328
+ },
329
+ monochrome: {wire_key: 'monochrome', required: false, nullable: true, primitive: 'integer'},
330
+ nav_controls: {
331
+ wire_key: 'nav-controls',
332
+ required: false,
333
+ nullable: true,
334
+ enum: 'Emulation::MEDIA_FEATURES_NAV_CONTROLS'
335
+ },
336
+ overflow_block: {
337
+ wire_key: 'overflow-block',
338
+ required: false,
339
+ nullable: true,
340
+ enum: 'Emulation::MEDIA_FEATURES_OVERFLOW_BLOCK'
341
+ },
342
+ overflow_inline: {
343
+ wire_key: 'overflow-inline',
344
+ required: false,
345
+ nullable: true,
346
+ enum: 'Emulation::MEDIA_FEATURES_OVERFLOW_INLINE'
347
+ },
348
+ pointer: {wire_key: 'pointer', required: false, nullable: true, enum: 'Emulation::MEDIA_FEATURES_POINTER'},
349
+ prefers_color_scheme: {
350
+ wire_key: 'prefers-color-scheme',
351
+ required: false,
352
+ nullable: true,
353
+ enum: 'Emulation::MEDIA_FEATURES_PREFERS_COLOR_SCHEME'
354
+ },
355
+ prefers_contrast: {
356
+ wire_key: 'prefers-contrast',
357
+ required: false,
358
+ nullable: true,
359
+ enum: 'Emulation::MEDIA_FEATURES_PREFERS_CONTRAST'
360
+ },
361
+ prefers_reduced_data: {
362
+ wire_key: 'prefers-reduced-data',
363
+ required: false,
364
+ nullable: true,
365
+ enum: 'Emulation::MEDIA_FEATURES_PREFERS_REDUCED_DATA'
366
+ },
367
+ prefers_reduced_motion: {
368
+ wire_key: 'prefers-reduced-motion',
369
+ required: false,
370
+ nullable: true,
371
+ enum: 'Emulation::MEDIA_FEATURES_PREFERS_REDUCED_MOTION'
372
+ },
373
+ prefers_reduced_transparency: {
374
+ wire_key: 'prefers-reduced-transparency',
375
+ required: false,
376
+ nullable: true,
377
+ enum: 'Emulation::MEDIA_FEATURES_PREFERS_REDUCED_TRANSPARENCY'
378
+ },
379
+ scan: {wire_key: 'scan', required: false, nullable: true, enum: 'Emulation::MEDIA_FEATURES_SCAN'},
380
+ scripting: {
381
+ wire_key: 'scripting',
382
+ required: false,
383
+ nullable: true,
384
+ enum: 'Emulation::MEDIA_FEATURES_SCRIPTING'
385
+ },
386
+ update: {wire_key: 'update', required: false, nullable: true, enum: 'Emulation::MEDIA_FEATURES_UPDATE'},
387
+ vertical_viewport_segments: {
388
+ wire_key: 'vertical-viewport-segments',
389
+ required: false,
390
+ nullable: true,
391
+ primitive: 'integer'
392
+ },
393
+ video_color_gamut: {
394
+ wire_key: 'video-color-gamut',
395
+ required: false,
396
+ nullable: true,
397
+ enum: 'Emulation::MEDIA_FEATURES_VIDEO_COLOR_GAMUT'
398
+ },
399
+ video_dynamic_range: {
400
+ wire_key: 'video-dynamic-range',
401
+ required: false,
402
+ nullable: true,
403
+ enum: 'Emulation::MEDIA_FEATURES_VIDEO_DYNAMIC_RANGE'
404
+ }
134
405
  )
135
406
 
136
407
  # @api private
@@ -225,6 +496,15 @@ module Selenium
225
496
  user_contexts: {wire_key: 'userContexts', required: false, list: true}
226
497
  )
227
498
 
499
+ # @api private
500
+ # @see https://www.selenium.dev/documentation/warnings/bidi-implementation/
501
+ # @see https://w3c.github.io/webdriver-bidi/#cddl-type-emulationsettextlayoutmodeoverrideparameters
502
+ SetTextLayoutModeOverrideParameters = Serialization::Record.define(
503
+ text_layout_mode: {wire_key: 'textLayoutMode', nullable: true, enum: 'Emulation::TEXT_LAYOUT_MODE'},
504
+ contexts: {wire_key: 'contexts', required: false, list: true},
505
+ user_contexts: {wire_key: 'userContexts', required: false, list: true}
506
+ )
507
+
228
508
  # @api private
229
509
  # @see https://www.selenium.dev/documentation/warnings/bidi-implementation/
230
510
  # @see https://w3c.github.io/webdriver-bidi/#cddl-type-emulationsettimezoneoverrideparameters
@@ -245,7 +525,7 @@ module Selenium
245
525
 
246
526
  def geolocation_coordinates(**) = GeolocationCoordinates.new(**)
247
527
  def geolocation_position_error(**) = GeolocationPositionError.new(**)
248
- def media_feature(**) = MediaFeature.new(**)
528
+ def media_features(**) = MediaFeatures.new(**)
249
529
  def network_conditions_offline(**) = NetworkConditionsOffline.new(**)
250
530
  def screen_area(**) = ScreenArea.new(**)
251
531
  def screen_orientation(**) = ScreenOrientation.new(**)
@@ -390,6 +670,23 @@ module Selenium
390
670
  execute(cmd: 'emulation.setScrollbarTypeOverride', params: params)
391
671
  end
392
672
 
673
+ # @api private
674
+ # @see https://www.selenium.dev/documentation/warnings/bidi-implementation/
675
+ # @see https://w3c.github.io/webdriver-bidi/#command-emulation-setTextLayoutModeOverride
676
+ def set_text_layout_mode_override(
677
+ text_layout_mode:,
678
+ contexts: Serialization::UNSET,
679
+ user_contexts: Serialization::UNSET
680
+ )
681
+ Serialization.validate!('textLayoutMode', text_layout_mode, Emulation::TEXT_LAYOUT_MODE)
682
+ params = SetTextLayoutModeOverrideParameters.new(
683
+ text_layout_mode: text_layout_mode,
684
+ contexts: contexts,
685
+ user_contexts: user_contexts
686
+ )
687
+ execute(cmd: 'emulation.setTextLayoutModeOverride', params: params)
688
+ end
689
+
393
690
  # @api private
394
691
  # @see https://www.selenium.dev/documentation/warnings/bidi-implementation/
395
692
  # @see https://w3c.github.io/webdriver-bidi/#command-emulation-setTimezoneOverride
File without changes
File without changes
File without changes