osn-selenium 1.0.0__py3-none-any.whl → 1.2.0__py3-none-any.whl

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 (475) hide show
  1. osn_selenium/_base_models.py +41 -0
  2. osn_selenium/_cdp_import.py +253 -0
  3. osn_selenium/_decorators.py +57 -0
  4. osn_selenium/_trio_threads_helpers.py +157 -0
  5. osn_selenium/_typehints.py +1 -1
  6. osn_selenium/abstract/executors/cdp.py +63 -0
  7. osn_selenium/abstract/webdriver/blink/base.py +14 -0
  8. osn_selenium/abstract/webdriver/blink/lifecycle.py +8 -8
  9. osn_selenium/abstract/webdriver/core/base.py +0 -14
  10. osn_selenium/abstract/webdriver/core/capture.py +4 -3
  11. osn_selenium/abstract/webdriver/core/lifecycle.py +8 -8
  12. osn_selenium/abstract/webdriver/core/script.py +5 -4
  13. osn_selenium/abstract/webdriver/core/window.py +11 -11
  14. osn_selenium/browsers_handler/models.py +1 -1
  15. osn_selenium/dev_tools/_decorators.py +19 -51
  16. osn_selenium/dev_tools/_functions.py +2 -4
  17. osn_selenium/dev_tools/_typehints.py +5 -2
  18. osn_selenium/dev_tools/_wrappers.py +0 -3
  19. osn_selenium/dev_tools/domains/__init__.py +2 -2
  20. osn_selenium/dev_tools/domains/abstract.py +1 -1
  21. osn_selenium/dev_tools/domains/fetch.py +6 -8
  22. osn_selenium/dev_tools/domains_default/fetch.py +2 -2
  23. osn_selenium/dev_tools/filters.py +1 -1
  24. osn_selenium/dev_tools/logger/main.py +9 -21
  25. osn_selenium/dev_tools/logger/models.py +1 -1
  26. osn_selenium/dev_tools/logger/target.py +49 -29
  27. osn_selenium/dev_tools/manager/base.py +10 -42
  28. osn_selenium/dev_tools/manager/lifecycle.py +84 -75
  29. osn_selenium/dev_tools/manager/logging.py +1 -1
  30. osn_selenium/dev_tools/manager/targets.py +13 -5
  31. osn_selenium/dev_tools/models.py +1 -1
  32. osn_selenium/dev_tools/settings.py +9 -5
  33. osn_selenium/dev_tools/target/base.py +30 -34
  34. osn_selenium/dev_tools/target/discovery.py +1 -1
  35. osn_selenium/dev_tools/target/events.py +2 -2
  36. osn_selenium/dev_tools/target/fingerprint.py +1 -1
  37. osn_selenium/dev_tools/target/lifecycle.py +103 -38
  38. osn_selenium/dev_tools/target/logging.py +11 -3
  39. osn_selenium/exceptions/__init__.py +0 -1
  40. osn_selenium/exceptions/base.py +28 -1
  41. osn_selenium/exceptions/bidi_bridge.py +59 -0
  42. osn_selenium/exceptions/configuration.py +1 -8
  43. osn_selenium/exceptions/dependencies.py +60 -0
  44. osn_selenium/exceptions/devtools.py +9 -39
  45. osn_selenium/exceptions/experimental.py +26 -0
  46. osn_selenium/exceptions/flags.py +0 -2
  47. osn_selenium/exceptions/instance.py +1 -9
  48. osn_selenium/exceptions/javascript.py +0 -2
  49. osn_selenium/exceptions/logic.py +0 -2
  50. osn_selenium/exceptions/path.py +1 -9
  51. osn_selenium/exceptions/platform.py +0 -2
  52. osn_selenium/exceptions/protocol.py +0 -3
  53. osn_selenium/exceptions/webdriver.py +1 -7
  54. osn_selenium/exceptions/window.py +1 -8
  55. osn_selenium/executors/sync/cdp.py +95 -0
  56. osn_selenium/executors/trio_bidi/cdp.py +101 -0
  57. osn_selenium/executors/trio_bidi/javascript.py +101 -0
  58. osn_selenium/executors/trio_threads/cdp.py +99 -0
  59. osn_selenium/executors/trio_threads/javascript.py +1 -1
  60. osn_selenium/executors/unified/javascript.py +0 -4
  61. osn_selenium/flags/base.py +7 -13
  62. osn_selenium/flags/blink.py +2 -8
  63. osn_selenium/flags/chrome.py +6 -6
  64. osn_selenium/flags/edge.py +6 -6
  65. osn_selenium/flags/models/base.py +4 -4
  66. osn_selenium/flags/models/blink.py +1 -1
  67. osn_selenium/flags/models/values.py +1 -1
  68. osn_selenium/instances/convert.py +44 -3
  69. osn_selenium/instances/protocols.py +47 -1
  70. osn_selenium/instances/sync/action_chains/__init__.py +6 -0
  71. osn_selenium/instances/sync/browsing_context.py +2 -2
  72. osn_selenium/instances/sync/script.py +7 -2
  73. osn_selenium/instances/sync/shadow_root.py +30 -8
  74. osn_selenium/instances/sync/web_element.py +1 -1
  75. osn_selenium/instances/trio_bidi/__init__.py +1 -0
  76. osn_selenium/instances/trio_bidi/shadow_root.py +180 -0
  77. osn_selenium/instances/trio_bidi/switch_to.py +143 -0
  78. osn_selenium/instances/trio_bidi/web_driver_wait.py +124 -0
  79. osn_selenium/instances/trio_bidi/web_element.py +239 -0
  80. osn_selenium/instances/trio_threads/action_chains/__init__.py +6 -0
  81. osn_selenium/instances/trio_threads/action_chains/base.py +1 -1
  82. osn_selenium/instances/trio_threads/alert.py +1 -1
  83. osn_selenium/instances/trio_threads/browser.py +1 -1
  84. osn_selenium/instances/trio_threads/browsing_context.py +3 -3
  85. osn_selenium/instances/trio_threads/dialog.py +1 -1
  86. osn_selenium/instances/trio_threads/fedcm.py +1 -1
  87. osn_selenium/instances/trio_threads/mobile.py +1 -1
  88. osn_selenium/instances/trio_threads/network.py +1 -1
  89. osn_selenium/instances/trio_threads/permissions.py +1 -1
  90. osn_selenium/instances/trio_threads/script.py +8 -3
  91. osn_selenium/instances/trio_threads/shadow_root.py +46 -15
  92. osn_selenium/instances/trio_threads/storage.py +1 -1
  93. osn_selenium/instances/trio_threads/switch_to.py +1 -1
  94. osn_selenium/instances/trio_threads/web_driver_wait.py +1 -1
  95. osn_selenium/instances/trio_threads/web_element.py +1 -1
  96. osn_selenium/instances/trio_threads/web_extension.py +1 -1
  97. osn_selenium/instances/unified/browsing_context.py +2 -2
  98. osn_selenium/instances/unified/script.py +2 -2
  99. osn_selenium/instances/unified/web_element.py +3 -5
  100. osn_selenium/javascript/fingerprint/__init__.py +3 -2
  101. osn_selenium/javascript/fingerprint/registry/models.py +1 -1
  102. osn_selenium/javascript/fingerprint/spoof/core_rules.py +1 -1
  103. osn_selenium/javascript/fingerprint/spoof/noise.py +1 -1
  104. osn_selenium/javascript/models.py +1 -1
  105. osn_selenium/models.py +2 -47
  106. osn_selenium/trio_bidi/__init__.py +1 -0
  107. osn_selenium/trio_bidi/_context_vars.py +12 -0
  108. osn_selenium/trio_bidi/_error_mappings.py +123 -0
  109. osn_selenium/trio_bidi/_error_redirects.py +194 -0
  110. osn_selenium/trio_bidi/_file_functions.py +28 -0
  111. osn_selenium/trio_bidi/_internal_mappings.py +10 -0
  112. osn_selenium/trio_bidi/_models.py +199 -0
  113. osn_selenium/trio_bidi/_typehints.py +20 -0
  114. osn_selenium/trio_bidi/connection_pool.py +587 -0
  115. osn_selenium/trio_bidi/mapping/__init__.py +1 -0
  116. osn_selenium/trio_bidi/mapping/_constants.py +14 -0
  117. osn_selenium/trio_bidi/mapping/_js_snippets.py +285 -0
  118. osn_selenium/trio_bidi/mapping/_utils.py +4 -0
  119. osn_selenium/trio_bidi/mapping/request_functions/__init__.py +87 -0
  120. osn_selenium/trio_bidi/mapping/request_functions/_alert.py +102 -0
  121. osn_selenium/trio_bidi/mapping/request_functions/_args_helpers.py +225 -0
  122. osn_selenium/trio_bidi/mapping/request_functions/_capture.py +71 -0
  123. osn_selenium/trio_bidi/mapping/request_functions/_cdp.py +40 -0
  124. osn_selenium/trio_bidi/mapping/request_functions/_element.py +55 -0
  125. osn_selenium/trio_bidi/mapping/request_functions/_file.py +32 -0
  126. osn_selenium/trio_bidi/mapping/request_functions/_navigation.py +147 -0
  127. osn_selenium/trio_bidi/mapping/request_functions/_script.py +85 -0
  128. osn_selenium/trio_bidi/mapping/request_functions/_shadow_root.py +65 -0
  129. osn_selenium/trio_bidi/mapping/request_functions/_switch_to.py +59 -0
  130. osn_selenium/trio_bidi/mapping/request_functions/_web_element.py +448 -0
  131. osn_selenium/trio_bidi/mapping/request_functions/_window.py +125 -0
  132. osn_selenium/trio_bidi/mapping/response_functions/__init__.py +86 -0
  133. osn_selenium/trio_bidi/mapping/response_functions/_alert.py +81 -0
  134. osn_selenium/trio_bidi/mapping/response_functions/_args_helpers.py +183 -0
  135. osn_selenium/trio_bidi/mapping/response_functions/_args_validators.py +153 -0
  136. osn_selenium/trio_bidi/mapping/response_functions/_capture.py +71 -0
  137. osn_selenium/trio_bidi/mapping/response_functions/_cdp.py +26 -0
  138. osn_selenium/trio_bidi/mapping/response_functions/_element.py +58 -0
  139. osn_selenium/trio_bidi/mapping/response_functions/_file.py +30 -0
  140. osn_selenium/trio_bidi/mapping/response_functions/_navigation.py +120 -0
  141. osn_selenium/trio_bidi/mapping/response_functions/_script.py +57 -0
  142. osn_selenium/trio_bidi/mapping/response_functions/_shadow_root.py +58 -0
  143. osn_selenium/trio_bidi/mapping/response_functions/_switch_to.py +57 -0
  144. osn_selenium/trio_bidi/mapping/response_functions/_web_element.py +368 -0
  145. osn_selenium/trio_bidi/mapping/response_functions/_window.py +119 -0
  146. osn_selenium/trio_bidi/mixin.py +186 -0
  147. osn_selenium/trio_bidi/remote_connection.py +164 -0
  148. osn_selenium/{base_mixin.py → trio_threads_mixin.py} +31 -40
  149. osn_selenium/webdrivers/_args_helpers.py +120 -7
  150. osn_selenium/webdrivers/_bridges.py +2 -2
  151. osn_selenium/webdrivers/_executable_tables/models.py +1 -1
  152. osn_selenium/webdrivers/_typehints.py +9 -3
  153. osn_selenium/webdrivers/protocols.py +81 -1
  154. osn_selenium/webdrivers/sync/blink/__init__.py +11 -1
  155. osn_selenium/webdrivers/sync/blink/base.py +23 -1
  156. osn_selenium/webdrivers/sync/blink/lifecycle.py +26 -8
  157. osn_selenium/webdrivers/sync/chrome/__init__.py +36 -1
  158. osn_selenium/webdrivers/sync/chrome/base.py +13 -1
  159. osn_selenium/webdrivers/sync/chrome/lifecycle.py +23 -5
  160. osn_selenium/webdrivers/sync/chrome/settings.py +6 -1
  161. osn_selenium/webdrivers/sync/core/__init__.py +10 -1
  162. osn_selenium/webdrivers/sync/core/base.py +18 -18
  163. osn_selenium/webdrivers/sync/core/capture.py +3 -2
  164. osn_selenium/webdrivers/sync/core/file.py +3 -2
  165. osn_selenium/webdrivers/sync/core/lifecycle.py +44 -10
  166. osn_selenium/webdrivers/sync/core/script.py +3 -2
  167. osn_selenium/webdrivers/sync/core/window.py +3 -3
  168. osn_selenium/webdrivers/sync/edge/__init__.py +36 -1
  169. osn_selenium/webdrivers/sync/edge/base.py +13 -1
  170. osn_selenium/webdrivers/sync/edge/lifecycle.py +23 -5
  171. osn_selenium/webdrivers/sync/edge/settings.py +6 -1
  172. osn_selenium/webdrivers/sync/yandex/__init__.py +36 -1
  173. osn_selenium/webdrivers/sync/yandex/base.py +13 -1
  174. osn_selenium/webdrivers/sync/yandex/lifecycle.py +23 -5
  175. osn_selenium/webdrivers/sync/yandex/settings.py +6 -1
  176. osn_selenium/webdrivers/trio_bidi/__init__.py +1 -0
  177. osn_selenium/webdrivers/trio_bidi/blink/__init__.py +132 -0
  178. osn_selenium/webdrivers/trio_bidi/blink/base.py +167 -0
  179. osn_selenium/webdrivers/trio_bidi/blink/lifecycle.py +89 -0
  180. osn_selenium/webdrivers/trio_bidi/blink/settings.py +63 -0
  181. osn_selenium/webdrivers/trio_bidi/chrome/__init__.py +114 -0
  182. osn_selenium/webdrivers/trio_bidi/chrome/base.py +127 -0
  183. osn_selenium/webdrivers/trio_bidi/chrome/lifecycle.py +85 -0
  184. osn_selenium/webdrivers/trio_bidi/chrome/settings.py +63 -0
  185. osn_selenium/webdrivers/trio_bidi/core/__init__.py +95 -0
  186. osn_selenium/webdrivers/trio_bidi/core/actions.py +70 -0
  187. osn_selenium/webdrivers/trio_bidi/core/base.py +200 -0
  188. osn_selenium/webdrivers/trio_bidi/core/capture.py +39 -0
  189. osn_selenium/webdrivers/trio_bidi/core/devtools.py +49 -0
  190. osn_selenium/webdrivers/trio_bidi/core/element.py +64 -0
  191. osn_selenium/webdrivers/trio_bidi/core/lifecycle.py +135 -0
  192. osn_selenium/webdrivers/trio_bidi/core/navigation.py +37 -0
  193. osn_selenium/webdrivers/trio_bidi/core/script.py +56 -0
  194. osn_selenium/webdrivers/trio_bidi/core/settings.py +36 -0
  195. osn_selenium/webdrivers/trio_bidi/core/window.py +134 -0
  196. osn_selenium/webdrivers/trio_bidi/edge/__init__.py +114 -0
  197. osn_selenium/webdrivers/trio_bidi/edge/base.py +123 -0
  198. osn_selenium/webdrivers/trio_bidi/edge/lifecycle.py +85 -0
  199. osn_selenium/webdrivers/trio_bidi/edge/settings.py +63 -0
  200. osn_selenium/webdrivers/trio_bidi/yandex/__init__.py +114 -0
  201. osn_selenium/webdrivers/trio_bidi/yandex/base.py +120 -0
  202. osn_selenium/webdrivers/trio_bidi/yandex/lifecycle.py +85 -0
  203. osn_selenium/webdrivers/trio_bidi/yandex/settings.py +63 -0
  204. osn_selenium/webdrivers/trio_threads/blink/__init__.py +18 -2
  205. osn_selenium/webdrivers/trio_threads/blink/base.py +25 -1
  206. osn_selenium/webdrivers/trio_threads/blink/casting.py +1 -1
  207. osn_selenium/webdrivers/trio_threads/blink/features.py +1 -1
  208. osn_selenium/webdrivers/trio_threads/blink/lifecycle.py +26 -8
  209. osn_selenium/webdrivers/trio_threads/blink/logging.py +1 -1
  210. osn_selenium/webdrivers/trio_threads/blink/network.py +1 -1
  211. osn_selenium/webdrivers/trio_threads/chrome/__init__.py +34 -1
  212. osn_selenium/webdrivers/trio_threads/chrome/base.py +14 -2
  213. osn_selenium/webdrivers/trio_threads/chrome/lifecycle.py +23 -5
  214. osn_selenium/webdrivers/trio_threads/chrome/settings.py +1 -1
  215. osn_selenium/webdrivers/trio_threads/core/__init__.py +10 -14
  216. osn_selenium/webdrivers/trio_threads/core/actions.py +1 -1
  217. osn_selenium/webdrivers/trio_threads/core/auth.py +1 -1
  218. osn_selenium/webdrivers/trio_threads/core/base.py +18 -22
  219. osn_selenium/webdrivers/trio_threads/core/capture.py +4 -3
  220. osn_selenium/webdrivers/trio_threads/core/comonents.py +1 -1
  221. osn_selenium/webdrivers/trio_threads/core/devtools.py +1 -1
  222. osn_selenium/webdrivers/trio_threads/core/element.py +1 -1
  223. osn_selenium/webdrivers/trio_threads/core/file.py +5 -4
  224. osn_selenium/webdrivers/trio_threads/core/lifecycle.py +45 -11
  225. osn_selenium/webdrivers/trio_threads/core/navigation.py +1 -1
  226. osn_selenium/webdrivers/trio_threads/core/script.py +4 -3
  227. osn_selenium/webdrivers/trio_threads/core/settings.py +1 -1
  228. osn_selenium/webdrivers/trio_threads/core/storage.py +1 -1
  229. osn_selenium/webdrivers/trio_threads/core/timeouts.py +1 -1
  230. osn_selenium/webdrivers/trio_threads/core/window.py +6 -6
  231. osn_selenium/webdrivers/trio_threads/edge/__init__.py +34 -1
  232. osn_selenium/webdrivers/trio_threads/edge/base.py +14 -2
  233. osn_selenium/webdrivers/trio_threads/edge/lifecycle.py +23 -5
  234. osn_selenium/webdrivers/trio_threads/edge/settings.py +1 -1
  235. osn_selenium/webdrivers/trio_threads/yandex/__init__.py +34 -1
  236. osn_selenium/webdrivers/trio_threads/yandex/base.py +14 -2
  237. osn_selenium/webdrivers/trio_threads/yandex/lifecycle.py +23 -5
  238. osn_selenium/webdrivers/trio_threads/yandex/settings.py +1 -1
  239. osn_selenium/webdrivers/unified/blink/base.py +9 -1
  240. osn_selenium/webdrivers/unified/blink/lifecycle.py +4 -2
  241. osn_selenium/webdrivers/unified/chrome/base.py +9 -1
  242. osn_selenium/webdrivers/unified/core/auth.py +4 -2
  243. osn_selenium/webdrivers/unified/core/base.py +19 -6
  244. osn_selenium/webdrivers/unified/core/capture.py +3 -2
  245. osn_selenium/webdrivers/unified/core/components.py +12 -7
  246. osn_selenium/webdrivers/unified/core/devtools.py +2 -1
  247. osn_selenium/webdrivers/unified/core/file.py +3 -2
  248. osn_selenium/webdrivers/unified/core/lifecycle.py +5 -3
  249. osn_selenium/webdrivers/unified/core/script.py +5 -3
  250. osn_selenium/webdrivers/unified/core/storage.py +2 -1
  251. osn_selenium/webdrivers/unified/core/window.py +9 -8
  252. osn_selenium/webdrivers/unified/edge/base.py +9 -1
  253. osn_selenium/webdrivers/unified/yandex/base.py +9 -1
  254. {osn_selenium-1.0.0.dist-info → osn_selenium-1.2.0.dist-info}/METADATA +24 -10
  255. osn_selenium-1.2.0.dist-info/RECORD +480 -0
  256. {osn_selenium-1.0.0.dist-info → osn_selenium-1.2.0.dist-info}/WHEEL +1 -1
  257. osn_selenium/abstract/executors/cdp/__init__.py +0 -435
  258. osn_selenium/abstract/executors/cdp/accessibility.py +0 -62
  259. osn_selenium/abstract/executors/cdp/animation.py +0 -47
  260. osn_selenium/abstract/executors/cdp/audits.py +0 -39
  261. osn_selenium/abstract/executors/cdp/autofill.py +0 -34
  262. osn_selenium/abstract/executors/cdp/background_service.py +0 -22
  263. osn_selenium/abstract/executors/cdp/bluetooth_emulation.py +0 -95
  264. osn_selenium/abstract/executors/cdp/browser.py +0 -122
  265. osn_selenium/abstract/executors/cdp/cache_storage.py +0 -49
  266. osn_selenium/abstract/executors/cdp/cast.py +0 -31
  267. osn_selenium/abstract/executors/cdp/console.py +0 -18
  268. osn_selenium/abstract/executors/cdp/css.py +0 -197
  269. osn_selenium/abstract/executors/cdp/debugger.py +0 -198
  270. osn_selenium/abstract/executors/cdp/device_access.py +0 -22
  271. osn_selenium/abstract/executors/cdp/device_orientation.py +0 -14
  272. osn_selenium/abstract/executors/cdp/dom.py +0 -305
  273. osn_selenium/abstract/executors/cdp/dom_debugger.py +0 -57
  274. osn_selenium/abstract/executors/cdp/dom_snapshot.py +0 -42
  275. osn_selenium/abstract/executors/cdp/dom_storage.py +0 -31
  276. osn_selenium/abstract/executors/cdp/emulation.py +0 -259
  277. osn_selenium/abstract/executors/cdp/event_breakpoints.py +0 -18
  278. osn_selenium/abstract/executors/cdp/extensions.py +0 -31
  279. osn_selenium/abstract/executors/cdp/fed_cm.py +0 -35
  280. osn_selenium/abstract/executors/cdp/fetch.py +0 -76
  281. osn_selenium/abstract/executors/cdp/file_system.py +0 -11
  282. osn_selenium/abstract/executors/cdp/headless_experimental.py +0 -30
  283. osn_selenium/abstract/executors/cdp/heap_profiler.py +0 -73
  284. osn_selenium/abstract/executors/cdp/indexed_db.py +0 -99
  285. osn_selenium/abstract/executors/cdp/input.py +0 -158
  286. osn_selenium/abstract/executors/cdp/inspector.py +0 -14
  287. osn_selenium/abstract/executors/cdp/io.py +0 -24
  288. osn_selenium/abstract/executors/cdp/layer_tree.py +0 -61
  289. osn_selenium/abstract/executors/cdp/log.py +0 -27
  290. osn_selenium/abstract/executors/cdp/media.py +0 -14
  291. osn_selenium/abstract/executors/cdp/memory.py +0 -61
  292. osn_selenium/abstract/executors/cdp/network.py +0 -252
  293. osn_selenium/abstract/executors/cdp/overlay.py +0 -166
  294. osn_selenium/abstract/executors/cdp/page.py +0 -347
  295. osn_selenium/abstract/executors/cdp/performance.py +0 -28
  296. osn_selenium/abstract/executors/cdp/performance_timeline.py +0 -11
  297. osn_selenium/abstract/executors/cdp/preload.py +0 -14
  298. osn_selenium/abstract/executors/cdp/profiler.py +0 -54
  299. osn_selenium/abstract/executors/cdp/pwa.py +0 -46
  300. osn_selenium/abstract/executors/cdp/runtime.py +0 -176
  301. osn_selenium/abstract/executors/cdp/schema.py +0 -11
  302. osn_selenium/abstract/executors/cdp/security.py +0 -26
  303. osn_selenium/abstract/executors/cdp/service_worker.py +0 -54
  304. osn_selenium/abstract/executors/cdp/storage.py +0 -175
  305. osn_selenium/abstract/executors/cdp/system_info.py +0 -24
  306. osn_selenium/abstract/executors/cdp/target.py +0 -125
  307. osn_selenium/abstract/executors/cdp/tethering.py +0 -14
  308. osn_selenium/abstract/executors/cdp/tracing.py +0 -48
  309. osn_selenium/abstract/executors/cdp/web_audio.py +0 -19
  310. osn_selenium/abstract/executors/cdp/web_authn.py +0 -76
  311. osn_selenium/executors/sync/cdp/__init__.py +0 -550
  312. osn_selenium/executors/sync/cdp/accessibility.py +0 -74
  313. osn_selenium/executors/sync/cdp/animation.py +0 -50
  314. osn_selenium/executors/sync/cdp/audits.py +0 -48
  315. osn_selenium/executors/sync/cdp/autofill.py +0 -39
  316. osn_selenium/executors/sync/cdp/background_service.py +0 -30
  317. osn_selenium/executors/sync/cdp/bluetooth_emulation.py +0 -101
  318. osn_selenium/executors/sync/cdp/browser.py +0 -131
  319. osn_selenium/executors/sync/cdp/cache_storage.py +0 -66
  320. osn_selenium/executors/sync/cdp/cast.py +0 -38
  321. osn_selenium/executors/sync/cdp/console.py +0 -24
  322. osn_selenium/executors/sync/cdp/css.py +0 -187
  323. osn_selenium/executors/sync/cdp/debugger.py +0 -206
  324. osn_selenium/executors/sync/cdp/device_access.py +0 -27
  325. osn_selenium/executors/sync/cdp/device_orientation.py +0 -24
  326. osn_selenium/executors/sync/cdp/dom.py +0 -310
  327. osn_selenium/executors/sync/cdp/dom_debugger.py +0 -56
  328. osn_selenium/executors/sync/cdp/dom_snapshot.py +0 -58
  329. osn_selenium/executors/sync/cdp/dom_storage.py +0 -38
  330. osn_selenium/executors/sync/cdp/emulation.py +0 -270
  331. osn_selenium/executors/sync/cdp/event_breakpoints.py +0 -27
  332. osn_selenium/executors/sync/cdp/extensions.py +0 -39
  333. osn_selenium/executors/sync/cdp/fed_cm.py +0 -45
  334. osn_selenium/executors/sync/cdp/fetch.py +0 -96
  335. osn_selenium/executors/sync/cdp/file_system.py +0 -18
  336. osn_selenium/executors/sync/cdp/headless_experimental.py +0 -44
  337. osn_selenium/executors/sync/cdp/heap_profiler.py +0 -89
  338. osn_selenium/executors/sync/cdp/indexed_db.py +0 -142
  339. osn_selenium/executors/sync/cdp/input.py +0 -233
  340. osn_selenium/executors/sync/cdp/inspector.py +0 -21
  341. osn_selenium/executors/sync/cdp/io.py +0 -33
  342. osn_selenium/executors/sync/cdp/layer_tree.py +0 -71
  343. osn_selenium/executors/sync/cdp/log.py +0 -35
  344. osn_selenium/executors/sync/cdp/media.py +0 -21
  345. osn_selenium/executors/sync/cdp/memory.py +0 -62
  346. osn_selenium/executors/sync/cdp/network.py +0 -287
  347. osn_selenium/executors/sync/cdp/overlay.py +0 -174
  348. osn_selenium/executors/sync/cdp/page.py +0 -365
  349. osn_selenium/executors/sync/cdp/performance.py +0 -33
  350. osn_selenium/executors/sync/cdp/performance_timeline.py +0 -26
  351. osn_selenium/executors/sync/cdp/preload.py +0 -21
  352. osn_selenium/executors/sync/cdp/profiler.py +0 -58
  353. osn_selenium/executors/sync/cdp/pwa.py +0 -55
  354. osn_selenium/executors/sync/cdp/runtime.py +0 -221
  355. osn_selenium/executors/sync/cdp/schema.py +0 -23
  356. osn_selenium/executors/sync/cdp/security.py +0 -30
  357. osn_selenium/executors/sync/cdp/service_worker.py +0 -56
  358. osn_selenium/executors/sync/cdp/storage.py +0 -151
  359. osn_selenium/executors/sync/cdp/system_info.py +0 -30
  360. osn_selenium/executors/sync/cdp/target.py +0 -147
  361. osn_selenium/executors/sync/cdp/tethering.py +0 -21
  362. osn_selenium/executors/sync/cdp/tracing.py +0 -62
  363. osn_selenium/executors/sync/cdp/web_audio.py +0 -24
  364. osn_selenium/executors/sync/cdp/web_authn.py +0 -82
  365. osn_selenium/executors/trio_threads/cdp/__init__.py +0 -771
  366. osn_selenium/executors/trio_threads/cdp/accessibility.py +0 -87
  367. osn_selenium/executors/trio_threads/cdp/animation.py +0 -63
  368. osn_selenium/executors/trio_threads/cdp/audits.py +0 -57
  369. osn_selenium/executors/trio_threads/cdp/autofill.py +0 -52
  370. osn_selenium/executors/trio_threads/cdp/background_service.py +0 -40
  371. osn_selenium/executors/trio_threads/cdp/bluetooth_emulation.py +0 -111
  372. osn_selenium/executors/trio_threads/cdp/browser.py +0 -140
  373. osn_selenium/executors/trio_threads/cdp/cache_storage.py +0 -79
  374. osn_selenium/executors/trio_threads/cdp/cast.py +0 -47
  375. osn_selenium/executors/trio_threads/cdp/console.py +0 -33
  376. osn_selenium/executors/trio_threads/cdp/css.py +0 -196
  377. osn_selenium/executors/trio_threads/cdp/debugger.py +0 -219
  378. osn_selenium/executors/trio_threads/cdp/device_access.py +0 -40
  379. osn_selenium/executors/trio_threads/cdp/device_orientation.py +0 -34
  380. osn_selenium/executors/trio_threads/cdp/dom.py +0 -319
  381. osn_selenium/executors/trio_threads/cdp/dom_debugger.py +0 -69
  382. osn_selenium/executors/trio_threads/cdp/dom_snapshot.py +0 -71
  383. osn_selenium/executors/trio_threads/cdp/dom_storage.py +0 -51
  384. osn_selenium/executors/trio_threads/cdp/emulation.py +0 -283
  385. osn_selenium/executors/trio_threads/cdp/event_breakpoints.py +0 -37
  386. osn_selenium/executors/trio_threads/cdp/extensions.py +0 -52
  387. osn_selenium/executors/trio_threads/cdp/fed_cm.py +0 -54
  388. osn_selenium/executors/trio_threads/cdp/fetch.py +0 -105
  389. osn_selenium/executors/trio_threads/cdp/file_system.py +0 -31
  390. osn_selenium/executors/trio_threads/cdp/headless_experimental.py +0 -54
  391. osn_selenium/executors/trio_threads/cdp/heap_profiler.py +0 -102
  392. osn_selenium/executors/trio_threads/cdp/indexed_db.py +0 -155
  393. osn_selenium/executors/trio_threads/cdp/input.py +0 -242
  394. osn_selenium/executors/trio_threads/cdp/inspector.py +0 -34
  395. osn_selenium/executors/trio_threads/cdp/io.py +0 -42
  396. osn_selenium/executors/trio_threads/cdp/layer_tree.py +0 -84
  397. osn_selenium/executors/trio_threads/cdp/log.py +0 -44
  398. osn_selenium/executors/trio_threads/cdp/media.py +0 -30
  399. osn_selenium/executors/trio_threads/cdp/memory.py +0 -71
  400. osn_selenium/executors/trio_threads/cdp/network.py +0 -296
  401. osn_selenium/executors/trio_threads/cdp/overlay.py +0 -183
  402. osn_selenium/executors/trio_threads/cdp/page.py +0 -374
  403. osn_selenium/executors/trio_threads/cdp/performance.py +0 -46
  404. osn_selenium/executors/trio_threads/cdp/performance_timeline.py +0 -36
  405. osn_selenium/executors/trio_threads/cdp/preload.py +0 -30
  406. osn_selenium/executors/trio_threads/cdp/profiler.py +0 -71
  407. osn_selenium/executors/trio_threads/cdp/pwa.py +0 -64
  408. osn_selenium/executors/trio_threads/cdp/runtime.py +0 -230
  409. osn_selenium/executors/trio_threads/cdp/schema.py +0 -32
  410. osn_selenium/executors/trio_threads/cdp/security.py +0 -43
  411. osn_selenium/executors/trio_threads/cdp/service_worker.py +0 -69
  412. osn_selenium/executors/trio_threads/cdp/storage.py +0 -162
  413. osn_selenium/executors/trio_threads/cdp/system_info.py +0 -43
  414. osn_selenium/executors/trio_threads/cdp/target.py +0 -156
  415. osn_selenium/executors/trio_threads/cdp/tethering.py +0 -34
  416. osn_selenium/executors/trio_threads/cdp/tracing.py +0 -71
  417. osn_selenium/executors/trio_threads/cdp/web_audio.py +0 -37
  418. osn_selenium/executors/trio_threads/cdp/web_authn.py +0 -95
  419. osn_selenium/executors/unified/cdp/accessibility.py +0 -81
  420. osn_selenium/executors/unified/cdp/animation.py +0 -50
  421. osn_selenium/executors/unified/cdp/audits.py +0 -45
  422. osn_selenium/executors/unified/cdp/autofill.py +0 -41
  423. osn_selenium/executors/unified/cdp/background_service.py +0 -24
  424. osn_selenium/executors/unified/cdp/bluetooth_emulation.py +0 -132
  425. osn_selenium/executors/unified/cdp/browser.py +0 -143
  426. osn_selenium/executors/unified/cdp/cache_storage.py +0 -69
  427. osn_selenium/executors/unified/cdp/cast.py +0 -32
  428. osn_selenium/executors/unified/cdp/console.py +0 -18
  429. osn_selenium/executors/unified/cdp/css.py +0 -237
  430. osn_selenium/executors/unified/cdp/debugger.py +0 -243
  431. osn_selenium/executors/unified/cdp/device_access.py +0 -21
  432. osn_selenium/executors/unified/cdp/device_orientation.py +0 -18
  433. osn_selenium/executors/unified/cdp/dom.py +0 -380
  434. osn_selenium/executors/unified/cdp/dom_debugger.py +0 -65
  435. osn_selenium/executors/unified/cdp/dom_snapshot.py +0 -58
  436. osn_selenium/executors/unified/cdp/dom_storage.py +0 -38
  437. osn_selenium/executors/unified/cdp/emulation.py +0 -312
  438. osn_selenium/executors/unified/cdp/event_breakpoints.py +0 -24
  439. osn_selenium/executors/unified/cdp/extensions.py +0 -45
  440. osn_selenium/executors/unified/cdp/fed_cm.py +0 -51
  441. osn_selenium/executors/unified/cdp/fetch.py +0 -111
  442. osn_selenium/executors/unified/cdp/file_system.py +0 -15
  443. osn_selenium/executors/unified/cdp/headless_experimental.py +0 -38
  444. osn_selenium/executors/unified/cdp/heap_profiler.py +0 -101
  445. osn_selenium/executors/unified/cdp/indexed_db.py +0 -157
  446. osn_selenium/executors/unified/cdp/input.py +0 -254
  447. osn_selenium/executors/unified/cdp/inspector.py +0 -15
  448. osn_selenium/executors/unified/cdp/io.py +0 -29
  449. osn_selenium/executors/unified/cdp/layer_tree.py +0 -71
  450. osn_selenium/executors/unified/cdp/log.py +0 -29
  451. osn_selenium/executors/unified/cdp/media.py +0 -15
  452. osn_selenium/executors/unified/cdp/memory.py +0 -59
  453. osn_selenium/executors/unified/cdp/network.py +0 -323
  454. osn_selenium/executors/unified/cdp/overlay.py +0 -209
  455. osn_selenium/executors/unified/cdp/page.py +0 -410
  456. osn_selenium/executors/unified/cdp/performance.py +0 -27
  457. osn_selenium/executors/unified/cdp/performance_timeline.py +0 -17
  458. osn_selenium/executors/unified/cdp/preload.py +0 -15
  459. osn_selenium/executors/unified/cdp/profiler.py +0 -55
  460. osn_selenium/executors/unified/cdp/pwa.py +0 -55
  461. osn_selenium/executors/unified/cdp/runtime.py +0 -245
  462. osn_selenium/executors/unified/cdp/schema.py +0 -17
  463. osn_selenium/executors/unified/cdp/security.py +0 -27
  464. osn_selenium/executors/unified/cdp/service_worker.py +0 -62
  465. osn_selenium/executors/unified/cdp/storage.py +0 -178
  466. osn_selenium/executors/unified/cdp/system_info.py +0 -24
  467. osn_selenium/executors/unified/cdp/target.py +0 -165
  468. osn_selenium/executors/unified/cdp/tethering.py +0 -15
  469. osn_selenium/executors/unified/cdp/tracing.py +0 -62
  470. osn_selenium/executors/unified/cdp/web_audio.py +0 -18
  471. osn_selenium/executors/unified/cdp/web_authn.py +0 -103
  472. osn_selenium-1.0.0.dist-info/RECORD +0 -608
  473. /osn_selenium/{dev_tools/_exception_helpers.py → _exception_helpers.py} +0 -0
  474. /osn_selenium/executors/{unified/cdp → trio_bidi}/__init__.py +0 -0
  475. {osn_selenium-1.0.0.dist-info → osn_selenium-1.2.0.dist-info}/top_level.txt +0 -0
@@ -1,156 +0,0 @@
1
- import trio
2
- from osn_selenium.base_mixin import TrioThreadMixin
3
- from typing import (
4
- Any,
5
- Callable,
6
- Dict,
7
- List,
8
- Optional
9
- )
10
- from osn_selenium.executors.unified.cdp.target import (
11
- UnifiedTargetCDPExecutor
12
- )
13
- from osn_selenium.abstract.executors.cdp.target import (
14
- AbstractTargetCDPExecutor
15
- )
16
-
17
-
18
- __all__ = ["TargetCDPExecutor"]
19
-
20
-
21
- class TargetCDPExecutor(UnifiedTargetCDPExecutor, TrioThreadMixin, AbstractTargetCDPExecutor):
22
- def __init__(
23
- self,
24
- execute_function: Callable[[str, Dict[str, Any]], Any],
25
- lock: trio.Lock,
26
- limiter: trio.CapacityLimiter
27
- ):
28
- UnifiedTargetCDPExecutor.__init__(self, execute_function=execute_function)
29
-
30
- TrioThreadMixin.__init__(self, lock=lock, limiter=limiter)
31
-
32
- async def activate_target(self, target_id: str) -> None:
33
- return await self.sync_to_trio(sync_function=self._activate_target_impl)(target_id=target_id)
34
-
35
- async def attach_to_browser_target(self) -> str:
36
- return await self.sync_to_trio(sync_function=self._attach_to_browser_target_impl)()
37
-
38
- async def attach_to_target(self, target_id: str, flatten: Optional[bool] = None) -> str:
39
- return await self.sync_to_trio(sync_function=self._attach_to_target_impl)(target_id=target_id, flatten=flatten)
40
-
41
- async def auto_attach_related(
42
- self,
43
- target_id: str,
44
- wait_for_debugger_on_start: bool,
45
- filter_: Optional[List[Dict[str, Any]]] = None
46
- ) -> None:
47
- return await self.sync_to_trio(sync_function=self._auto_attach_related_impl)(
48
- target_id=target_id,
49
- wait_for_debugger_on_start=wait_for_debugger_on_start,
50
- filter_=filter_
51
- )
52
-
53
- async def close_target(self, target_id: str) -> bool:
54
- return await self.sync_to_trio(sync_function=self._close_target_impl)(target_id=target_id)
55
-
56
- async def create_browser_context(
57
- self,
58
- dispose_on_detach: Optional[bool] = None,
59
- proxy_server: Optional[str] = None,
60
- proxy_bypass_list: Optional[str] = None,
61
- origins_with_universal_network_access: Optional[List[str]] = None
62
- ) -> str:
63
- return await self.sync_to_trio(sync_function=self._create_browser_context_impl)(
64
- dispose_on_detach=dispose_on_detach,
65
- proxy_server=proxy_server,
66
- proxy_bypass_list=proxy_bypass_list,
67
- origins_with_universal_network_access=origins_with_universal_network_access
68
- )
69
-
70
- async def create_target(
71
- self,
72
- url: str,
73
- left: Optional[int] = None,
74
- top: Optional[int] = None,
75
- width: Optional[int] = None,
76
- height: Optional[int] = None,
77
- window_state: Optional[str] = None,
78
- browser_context_id: Optional[str] = None,
79
- enable_begin_frame_control: Optional[bool] = None,
80
- new_window: Optional[bool] = None,
81
- background: Optional[bool] = None,
82
- for_tab: Optional[bool] = None,
83
- hidden: Optional[bool] = None
84
- ) -> str:
85
- return await self.sync_to_trio(sync_function=self._create_target_impl)(
86
- url=url,
87
- left=left,
88
- top=top,
89
- width=width,
90
- height=height,
91
- window_state=window_state,
92
- browser_context_id=browser_context_id,
93
- enable_begin_frame_control=enable_begin_frame_control,
94
- new_window=new_window,
95
- background=background,
96
- for_tab=for_tab,
97
- hidden=hidden
98
- )
99
-
100
- async def detach_from_target(self, session_id: Optional[str] = None, target_id: Optional[str] = None) -> None:
101
- return await self.sync_to_trio(sync_function=self._detach_from_target_impl)(session_id=session_id, target_id=target_id)
102
-
103
- async def dispose_browser_context(self, browser_context_id: str) -> None:
104
- return await self.sync_to_trio(sync_function=self._dispose_browser_context_impl)(browser_context_id=browser_context_id)
105
-
106
- async def expose_dev_tools_protocol(
107
- self,
108
- target_id: str,
109
- binding_name: Optional[str] = None,
110
- inherit_permissions: Optional[bool] = None
111
- ) -> None:
112
- return await self.sync_to_trio(sync_function=self._expose_dev_tools_protocol_impl)(
113
- target_id=target_id,
114
- binding_name=binding_name,
115
- inherit_permissions=inherit_permissions
116
- )
117
-
118
- async def get_browser_contexts(self) -> List[str]:
119
- return await self.sync_to_trio(sync_function=self._get_browser_contexts_impl)()
120
-
121
- async def get_target_info(self, target_id: Optional[str] = None) -> Dict[str, Any]:
122
- return await self.sync_to_trio(sync_function=self._get_target_info_impl)(target_id=target_id)
123
-
124
- async def get_targets(self, filter_: Optional[List[Dict[str, Any]]] = None) -> List[Dict[str, Any]]:
125
- return await self.sync_to_trio(sync_function=self._get_targets_impl)(filter_=filter_)
126
-
127
- async def open_dev_tools(self, target_id: str) -> str:
128
- return await self.sync_to_trio(sync_function=self._open_dev_tools_impl)(target_id=target_id)
129
-
130
- async def send_message_to_target(
131
- self,
132
- message: str,
133
- session_id: Optional[str] = None,
134
- target_id: Optional[str] = None
135
- ) -> None:
136
- return await self.sync_to_trio(sync_function=self._send_message_to_target_impl)(message=message, session_id=session_id, target_id=target_id)
137
-
138
- async def set_auto_attach(
139
- self,
140
- auto_attach: bool,
141
- wait_for_debugger_on_start: bool,
142
- flatten: Optional[bool] = None,
143
- filter_: Optional[List[Dict[str, Any]]] = None
144
- ) -> None:
145
- return await self.sync_to_trio(sync_function=self._set_auto_attach_impl)(
146
- auto_attach=auto_attach,
147
- wait_for_debugger_on_start=wait_for_debugger_on_start,
148
- flatten=flatten,
149
- filter_=filter_
150
- )
151
-
152
- async def set_discover_targets(self, discover: bool, filter_: Optional[List[Dict[str, Any]]] = None) -> None:
153
- return await self.sync_to_trio(sync_function=self._set_discover_targets_impl)(discover=discover, filter_=filter_)
154
-
155
- async def set_remote_locations(self, locations: List[Dict[str, Any]]) -> None:
156
- return await self.sync_to_trio(sync_function=self._set_remote_locations_impl)(locations=locations)
@@ -1,34 +0,0 @@
1
- import trio
2
- from typing import Any, Callable, Dict
3
- from osn_selenium.base_mixin import TrioThreadMixin
4
- from osn_selenium.executors.unified.cdp.tethering import (
5
- UnifiedTetheringCDPExecutor
6
- )
7
- from osn_selenium.abstract.executors.cdp.tethering import (
8
- AbstractTetheringCDPExecutor
9
- )
10
-
11
-
12
- __all__ = ["TetheringCDPExecutor"]
13
-
14
-
15
- class TetheringCDPExecutor(
16
- UnifiedTetheringCDPExecutor,
17
- TrioThreadMixin,
18
- AbstractTetheringCDPExecutor
19
- ):
20
- def __init__(
21
- self,
22
- execute_function: Callable[[str, Dict[str, Any]], Any],
23
- lock: trio.Lock,
24
- limiter: trio.CapacityLimiter
25
- ):
26
- UnifiedTetheringCDPExecutor.__init__(self, execute_function=execute_function)
27
-
28
- TrioThreadMixin.__init__(self, lock=lock, limiter=limiter)
29
-
30
- async def bind(self, port: int) -> None:
31
- return await self.sync_to_trio(sync_function=self._bind_impl)(port=port)
32
-
33
- async def unbind(self, port: int) -> None:
34
- return await self.sync_to_trio(sync_function=self._unbind_impl)(port=port)
@@ -1,71 +0,0 @@
1
- import trio
2
- from osn_selenium.base_mixin import TrioThreadMixin
3
- from typing import (
4
- Any,
5
- Callable,
6
- Dict,
7
- List,
8
- Optional,
9
- Tuple
10
- )
11
- from osn_selenium.executors.unified.cdp.tracing import (
12
- UnifiedTracingCDPExecutor
13
- )
14
- from osn_selenium.abstract.executors.cdp.tracing import (
15
- AbstractTracingCDPExecutor
16
- )
17
-
18
-
19
- __all__ = ["TracingCDPExecutor"]
20
-
21
-
22
- class TracingCDPExecutor(UnifiedTracingCDPExecutor, TrioThreadMixin, AbstractTracingCDPExecutor):
23
- def __init__(
24
- self,
25
- execute_function: Callable[[str, Dict[str, Any]], Any],
26
- lock: trio.Lock,
27
- limiter: trio.CapacityLimiter
28
- ):
29
- UnifiedTracingCDPExecutor.__init__(self, execute_function=execute_function)
30
-
31
- TrioThreadMixin.__init__(self, lock=lock, limiter=limiter)
32
-
33
- async def end(self) -> None:
34
- return await self.sync_to_trio(sync_function=self._end_impl)()
35
-
36
- async def get_categories(self) -> List[str]:
37
- return await self.sync_to_trio(sync_function=self._get_categories_impl)()
38
-
39
- async def record_clock_sync_marker(self, sync_id: str) -> None:
40
- return await self.sync_to_trio(sync_function=self._record_clock_sync_marker_impl)(sync_id=sync_id)
41
-
42
- async def request_memory_dump(
43
- self,
44
- deterministic: Optional[bool] = None,
45
- level_of_detail: Optional[str] = None
46
- ) -> Tuple[str, bool]:
47
- return await self.sync_to_trio(sync_function=self._request_memory_dump_impl)(deterministic=deterministic, level_of_detail=level_of_detail)
48
-
49
- async def start(
50
- self,
51
- categories: Optional[str] = None,
52
- options: Optional[str] = None,
53
- buffer_usage_reporting_interval: Optional[float] = None,
54
- transfer_mode: Optional[str] = None,
55
- stream_format: Optional[str] = None,
56
- stream_compression: Optional[str] = None,
57
- trace_config: Optional[Dict[str, Any]] = None,
58
- perfetto_config: Optional[str] = None,
59
- tracing_backend: Optional[str] = None
60
- ) -> None:
61
- return await self.sync_to_trio(sync_function=self._start_impl)(
62
- categories=categories,
63
- options=options,
64
- buffer_usage_reporting_interval=buffer_usage_reporting_interval,
65
- transfer_mode=transfer_mode,
66
- stream_format=stream_format,
67
- stream_compression=stream_compression,
68
- trace_config=trace_config,
69
- perfetto_config=perfetto_config,
70
- tracing_backend=tracing_backend
71
- )
@@ -1,37 +0,0 @@
1
- import trio
2
- from typing import Any, Callable, Dict
3
- from osn_selenium.base_mixin import TrioThreadMixin
4
- from osn_selenium.executors.unified.cdp.web_audio import (
5
- UnifiedWebAudioCDPExecutor
6
- )
7
- from osn_selenium.abstract.executors.cdp.web_audio import (
8
- AbstractWebAudioCDPExecutor
9
- )
10
-
11
-
12
- __all__ = ["WebAudioCDPExecutor"]
13
-
14
-
15
- class WebAudioCDPExecutor(
16
- UnifiedWebAudioCDPExecutor,
17
- TrioThreadMixin,
18
- AbstractWebAudioCDPExecutor
19
- ):
20
- def __init__(
21
- self,
22
- execute_function: Callable[[str, Dict[str, Any]], Any],
23
- lock: trio.Lock,
24
- limiter: trio.CapacityLimiter
25
- ):
26
- UnifiedWebAudioCDPExecutor.__init__(self, execute_function=execute_function)
27
-
28
- TrioThreadMixin.__init__(self, lock=lock, limiter=limiter)
29
-
30
- async def disable(self) -> None:
31
- return await self.sync_to_trio(sync_function=self._disable_impl)()
32
-
33
- async def enable(self) -> None:
34
- return await self.sync_to_trio(sync_function=self._enable_impl)()
35
-
36
- async def get_realtime_data(self, context_id: str) -> Dict[str, Any]:
37
- return await self.sync_to_trio(sync_function=self._get_realtime_data_impl)(context_id=context_id)
@@ -1,95 +0,0 @@
1
- import trio
2
- from osn_selenium.base_mixin import TrioThreadMixin
3
- from typing import (
4
- Any,
5
- Callable,
6
- Dict,
7
- List,
8
- Optional
9
- )
10
- from osn_selenium.executors.unified.cdp.web_authn import (
11
- UnifiedWebAuthnCDPExecutor
12
- )
13
- from osn_selenium.abstract.executors.cdp.web_authn import (
14
- AbstractWebAuthnCDPExecutor
15
- )
16
-
17
-
18
- __all__ = ["WebAuthnCDPExecutor"]
19
-
20
-
21
- class WebAuthnCDPExecutor(
22
- UnifiedWebAuthnCDPExecutor,
23
- TrioThreadMixin,
24
- AbstractWebAuthnCDPExecutor
25
- ):
26
- def __init__(
27
- self,
28
- execute_function: Callable[[str, Dict[str, Any]], Any],
29
- lock: trio.Lock,
30
- limiter: trio.CapacityLimiter
31
- ):
32
- UnifiedWebAuthnCDPExecutor.__init__(self, execute_function=execute_function)
33
-
34
- TrioThreadMixin.__init__(self, lock=lock, limiter=limiter)
35
-
36
- async def add_credential(self, authenticator_id: str, credential: Dict[str, Any]) -> None:
37
- return await self.sync_to_trio(sync_function=self._add_credential_impl)(authenticator_id=authenticator_id, credential=credential)
38
-
39
- async def add_virtual_authenticator(self, options: Dict[str, Any]) -> str:
40
- return await self.sync_to_trio(sync_function=self._add_virtual_authenticator_impl)(options=options)
41
-
42
- async def clear_credentials(self, authenticator_id: str) -> None:
43
- return await self.sync_to_trio(sync_function=self._clear_credentials_impl)(authenticator_id=authenticator_id)
44
-
45
- async def disable(self) -> None:
46
- return await self.sync_to_trio(sync_function=self._disable_impl)()
47
-
48
- async def enable(self, enable_ui: Optional[bool] = None) -> None:
49
- return await self.sync_to_trio(sync_function=self._enable_impl)(enable_ui=enable_ui)
50
-
51
- async def get_credential(self, authenticator_id: str, credential_id: str) -> Dict[str, Any]:
52
- return await self.sync_to_trio(sync_function=self._get_credential_impl)(authenticator_id=authenticator_id, credential_id=credential_id)
53
-
54
- async def get_credentials(self, authenticator_id: str) -> List[Dict[str, Any]]:
55
- return await self.sync_to_trio(sync_function=self._get_credentials_impl)(authenticator_id=authenticator_id)
56
-
57
- async def remove_credential(self, authenticator_id: str, credential_id: str) -> None:
58
- return await self.sync_to_trio(sync_function=self._remove_credential_impl)(authenticator_id=authenticator_id, credential_id=credential_id)
59
-
60
- async def remove_virtual_authenticator(self, authenticator_id: str) -> None:
61
- return await self.sync_to_trio(sync_function=self._remove_virtual_authenticator_impl)(authenticator_id=authenticator_id)
62
-
63
- async def set_automatic_presence_simulation(self, authenticator_id: str, enabled: bool) -> None:
64
- return await self.sync_to_trio(sync_function=self._set_automatic_presence_simulation_impl)(authenticator_id=authenticator_id, enabled=enabled)
65
-
66
- async def set_credential_properties(
67
- self,
68
- authenticator_id: str,
69
- credential_id: str,
70
- backup_eligibility: Optional[bool] = None,
71
- backup_state: Optional[bool] = None
72
- ) -> None:
73
- return await self.sync_to_trio(sync_function=self._set_credential_properties_impl)(
74
- authenticator_id=authenticator_id,
75
- credential_id=credential_id,
76
- backup_eligibility=backup_eligibility,
77
- backup_state=backup_state
78
- )
79
-
80
- async def set_response_override_bits(
81
- self,
82
- authenticator_id: str,
83
- is_bogus_signature: Optional[bool] = None,
84
- is_bad_uv: Optional[bool] = None,
85
- is_bad_up: Optional[bool] = None
86
- ) -> None:
87
- return await self.sync_to_trio(sync_function=self._set_response_override_bits_impl)(
88
- authenticator_id=authenticator_id,
89
- is_bogus_signature=is_bogus_signature,
90
- is_bad_uv=is_bad_uv,
91
- is_bad_up=is_bad_up
92
- )
93
-
94
- async def set_user_verified(self, authenticator_id: str, is_user_verified: bool) -> None:
95
- return await self.sync_to_trio(sync_function=self._set_user_verified_impl)(authenticator_id=authenticator_id, is_user_verified=is_user_verified)
@@ -1,81 +0,0 @@
1
- from typing import (
2
- Any,
3
- Callable,
4
- Dict,
5
- List,
6
- Optional
7
- )
8
-
9
-
10
- __all__ = ["UnifiedAccessibilityCDPExecutor"]
11
-
12
-
13
- class UnifiedAccessibilityCDPExecutor:
14
- def __init__(self, execute_function: Callable[[str, Dict[str, Any]], Any]):
15
- self._execute_function = execute_function
16
-
17
- def _disable_impl(self) -> None:
18
- return self._execute_function("Accessibility.disable", {})
19
-
20
- def _enable_impl(self) -> None:
21
- return self._execute_function("Accessibility.enable", {})
22
-
23
- def _get_ax_node_and_ancestors_impl(
24
- self,
25
- node_id: Optional[int] = None,
26
- backend_node_id: Optional[int] = None,
27
- object_id: Optional[str] = None
28
- ) -> List[Dict[str, Any]]:
29
- return self._execute_function(
30
- "Accessibility.getAXNodeAndAncestors",
31
- {
32
- "node_id": node_id,
33
- "backend_node_id": backend_node_id,
34
- "object_id": object_id
35
- }
36
- )
37
-
38
- def _get_child_ax_nodes_impl(self, id_: str, frame_id: Optional[str] = None) -> List[Dict[str, Any]]:
39
- return self._execute_function("Accessibility.getChildAXNodes", {"id_": id_, "frame_id": frame_id})
40
-
41
- def _get_full_ax_tree_impl(self, depth: Optional[int] = None, frame_id: Optional[str] = None) -> List[Dict[str, Any]]:
42
- return self._execute_function("Accessibility.getFullAXTree", {"depth": depth, "frame_id": frame_id})
43
-
44
- def _get_partial_ax_tree_impl(
45
- self,
46
- node_id: Optional[int] = None,
47
- backend_node_id: Optional[int] = None,
48
- object_id: Optional[str] = None,
49
- fetch_relatives: Optional[bool] = None
50
- ) -> List[Dict[str, Any]]:
51
- return self._execute_function(
52
- "Accessibility.getPartialAXTree",
53
- {
54
- "node_id": node_id,
55
- "backend_node_id": backend_node_id,
56
- "object_id": object_id,
57
- "fetch_relatives": fetch_relatives
58
- }
59
- )
60
-
61
- def _get_root_ax_node_impl(self, frame_id: Optional[str] = None) -> Dict[str, Any]:
62
- return self._execute_function("Accessibility.getRootAXNode", {"frame_id": frame_id})
63
-
64
- def _query_ax_tree_impl(
65
- self,
66
- node_id: Optional[int] = None,
67
- backend_node_id: Optional[int] = None,
68
- object_id: Optional[str] = None,
69
- accessible_name: Optional[str] = None,
70
- role: Optional[str] = None
71
- ) -> List[Dict[str, Any]]:
72
- return self._execute_function(
73
- "Accessibility.queryAXTree",
74
- {
75
- "node_id": node_id,
76
- "backend_node_id": backend_node_id,
77
- "object_id": object_id,
78
- "accessible_name": accessible_name,
79
- "role": role
80
- }
81
- )
@@ -1,50 +0,0 @@
1
- from typing import (
2
- Any,
3
- Callable,
4
- Dict,
5
- List
6
- )
7
-
8
-
9
- __all__ = ["UnifiedAnimationCDPExecutor"]
10
-
11
-
12
- class UnifiedAnimationCDPExecutor:
13
- def __init__(self, execute_function: Callable[[str, Dict[str, Any]], Any]):
14
- self._execute_function = execute_function
15
-
16
- def _disable_impl(self) -> None:
17
- return self._execute_function("Animation.disable", {})
18
-
19
- def _enable_impl(self) -> None:
20
- return self._execute_function("Animation.enable", {})
21
-
22
- def _get_current_time_impl(self, id_: str) -> float:
23
- return self._execute_function("Animation.getCurrentTime", {"id_": id_})
24
-
25
- def _get_playback_rate_impl(self) -> float:
26
- return self._execute_function("Animation.getPlaybackRate", {})
27
-
28
- def _release_animations_impl(self, animations: List[str]) -> None:
29
- return self._execute_function("Animation.releaseAnimations", {"animations": animations})
30
-
31
- def _resolve_animation_impl(self, animation_id: str) -> Dict[str, Any]:
32
- return self._execute_function("Animation.resolveAnimation", {"animation_id": animation_id})
33
-
34
- def _seek_animations_impl(self, animations: List[str], current_time: float) -> None:
35
- return self._execute_function(
36
- "Animation.seekAnimations",
37
- {"animations": animations, "current_time": current_time}
38
- )
39
-
40
- def _set_paused_impl(self, animations: List[str], paused: bool) -> None:
41
- return self._execute_function("Animation.setPaused", {"animations": animations, "paused": paused})
42
-
43
- def _set_playback_rate_impl(self, playback_rate: float) -> None:
44
- return self._execute_function("Animation.setPlaybackRate", {"playback_rate": playback_rate})
45
-
46
- def _set_timing_impl(self, animation_id: str, duration: float, delay: float) -> None:
47
- return self._execute_function(
48
- "Animation.setTiming",
49
- {"animation_id": animation_id, "duration": duration, "delay": delay}
50
- )
@@ -1,45 +0,0 @@
1
- from typing import (
2
- Any,
3
- Callable,
4
- Dict,
5
- List,
6
- Optional,
7
- Tuple
8
- )
9
-
10
-
11
- __all__ = ["UnifiedAuditsCDPExecutor"]
12
-
13
-
14
- class UnifiedAuditsCDPExecutor:
15
- def __init__(self, execute_function: Callable[[str, Dict[str, Any]], Any]):
16
- self._execute_function = execute_function
17
-
18
- def _check_contrast_impl(self, report_aaa: Optional[bool] = None) -> None:
19
- return self._execute_function("Audits.checkContrast", {"report_aaa": report_aaa})
20
-
21
- def _check_forms_issues_impl(self) -> List[Dict[str, Any]]:
22
- return self._execute_function("Audits.checkFormsIssues", {})
23
-
24
- def _disable_impl(self) -> None:
25
- return self._execute_function("Audits.disable", {})
26
-
27
- def _enable_impl(self) -> None:
28
- return self._execute_function("Audits.enable", {})
29
-
30
- def _get_encoded_response_impl(
31
- self,
32
- request_id: str,
33
- encoding: str,
34
- quality: Optional[float] = None,
35
- size_only: Optional[bool] = None
36
- ) -> Tuple[Optional[str], int, int]:
37
- return self._execute_function(
38
- "Audits.getEncodedResponse",
39
- {
40
- "request_id": request_id,
41
- "encoding": encoding,
42
- "quality": quality,
43
- "size_only": size_only
44
- }
45
- )
@@ -1,41 +0,0 @@
1
- from typing import (
2
- Any,
3
- Callable,
4
- Dict,
5
- List,
6
- Optional
7
- )
8
-
9
-
10
- __all__ = ["UnifiedAutofillCDPExecutor"]
11
-
12
-
13
- class UnifiedAutofillCDPExecutor:
14
- def __init__(self, execute_function: Callable[[str, Dict[str, Any]], Any]):
15
- self._execute_function = execute_function
16
-
17
- def _disable_impl(self) -> None:
18
- return self._execute_function("Autofill.disable", {})
19
-
20
- def _enable_impl(self) -> None:
21
- return self._execute_function("Autofill.enable", {})
22
-
23
- def _set_addresses_impl(self, addresses: List[Dict[str, Any]]) -> None:
24
- return self._execute_function("Autofill.setAddresses", {"addresses": addresses})
25
-
26
- def _trigger_impl(
27
- self,
28
- field_id: int,
29
- frame_id: Optional[str] = None,
30
- card: Optional[Dict[str, Any]] = None,
31
- address: Optional[Dict[str, Any]] = None
32
- ) -> None:
33
- return self._execute_function(
34
- "Autofill.trigger",
35
- {
36
- "field_id": field_id,
37
- "frame_id": frame_id,
38
- "card": card,
39
- "address": address
40
- }
41
- )
@@ -1,24 +0,0 @@
1
- from typing import Any, Callable, Dict
2
-
3
-
4
- __all__ = ["UnifiedBackgroundServiceCDPExecutor"]
5
-
6
-
7
- class UnifiedBackgroundServiceCDPExecutor:
8
- def __init__(self, execute_function: Callable[[str, Dict[str, Any]], Any]):
9
- self._execute_function = execute_function
10
-
11
- def _clear_events_impl(self, service: str) -> None:
12
- return self._execute_function("BackgroundService.clearEvents", {"service": service})
13
-
14
- def _set_recording_impl(self, should_record: bool, service: str) -> None:
15
- return self._execute_function(
16
- "BackgroundService.setRecording",
17
- {"should_record": should_record, "service": service}
18
- )
19
-
20
- def _start_observing_impl(self, service: str) -> None:
21
- return self._execute_function("BackgroundService.startObserving", {"service": service})
22
-
23
- def _stop_observing_impl(self, service: str) -> None:
24
- return self._execute_function("BackgroundService.stopObserving", {"service": service})