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,102 +0,0 @@
1
- import trio
2
- from osn_selenium.base_mixin import TrioThreadMixin
3
- from typing import (
4
- Any,
5
- Callable,
6
- Dict,
7
- Optional
8
- )
9
- from osn_selenium.executors.unified.cdp.heap_profiler import (
10
- UnifiedHeapProfilerCDPExecutor
11
- )
12
- from osn_selenium.abstract.executors.cdp.heap_profiler import (
13
- AbstractHeapProfilerCDPExecutor
14
- )
15
-
16
-
17
- __all__ = ["HeapProfilerCDPExecutor"]
18
-
19
-
20
- class HeapProfilerCDPExecutor(
21
- UnifiedHeapProfilerCDPExecutor,
22
- TrioThreadMixin,
23
- AbstractHeapProfilerCDPExecutor
24
- ):
25
- def __init__(
26
- self,
27
- execute_function: Callable[[str, Dict[str, Any]], Any],
28
- lock: trio.Lock,
29
- limiter: trio.CapacityLimiter
30
- ):
31
- UnifiedHeapProfilerCDPExecutor.__init__(self, execute_function=execute_function)
32
-
33
- TrioThreadMixin.__init__(self, lock=lock, limiter=limiter)
34
-
35
- async def add_inspected_heap_object(self, heap_object_id: str) -> None:
36
- return await self.sync_to_trio(sync_function=self._add_inspected_heap_object_impl)(heap_object_id=heap_object_id)
37
-
38
- async def collect_garbage(self) -> None:
39
- return await self.sync_to_trio(sync_function=self._collect_garbage_impl)()
40
-
41
- async def disable(self) -> None:
42
- return await self.sync_to_trio(sync_function=self._disable_impl)()
43
-
44
- async def enable(self) -> None:
45
- return await self.sync_to_trio(sync_function=self._enable_impl)()
46
-
47
- async def get_heap_object_id(self, object_id: str) -> str:
48
- return await self.sync_to_trio(sync_function=self._get_heap_object_id_impl)(object_id=object_id)
49
-
50
- async def get_object_by_heap_object_id(self, object_id: str, object_group: Optional[str] = None) -> Dict[str, Any]:
51
- return await self.sync_to_trio(sync_function=self._get_object_by_heap_object_id_impl)(object_id=object_id, object_group=object_group)
52
-
53
- async def get_sampling_profile(self) -> Dict[str, Any]:
54
- return await self.sync_to_trio(sync_function=self._get_sampling_profile_impl)()
55
-
56
- async def start_sampling(
57
- self,
58
- sampling_interval: Optional[float] = None,
59
- stack_depth: Optional[float] = None,
60
- include_objects_collected_by_major_gc: Optional[bool] = None,
61
- include_objects_collected_by_minor_gc: Optional[bool] = None
62
- ) -> None:
63
- return await self.sync_to_trio(sync_function=self._start_sampling_impl)(
64
- sampling_interval=sampling_interval,
65
- stack_depth=stack_depth,
66
- include_objects_collected_by_major_gc=include_objects_collected_by_major_gc,
67
- include_objects_collected_by_minor_gc=include_objects_collected_by_minor_gc
68
- )
69
-
70
- async def start_tracking_heap_objects(self, track_allocations: Optional[bool] = None) -> None:
71
- return await self.sync_to_trio(sync_function=self._start_tracking_heap_objects_impl)(track_allocations=track_allocations)
72
-
73
- async def stop_sampling(self) -> Dict[str, Any]:
74
- return await self.sync_to_trio(sync_function=self._stop_sampling_impl)()
75
-
76
- async def stop_tracking_heap_objects(
77
- self,
78
- report_progress: Optional[bool] = None,
79
- treat_global_objects_as_roots: Optional[bool] = None,
80
- capture_numeric_value: Optional[bool] = None,
81
- expose_internals: Optional[bool] = None
82
- ) -> None:
83
- return await self.sync_to_trio(sync_function=self._stop_tracking_heap_objects_impl)(
84
- report_progress=report_progress,
85
- treat_global_objects_as_roots=treat_global_objects_as_roots,
86
- capture_numeric_value=capture_numeric_value,
87
- expose_internals=expose_internals
88
- )
89
-
90
- async def take_heap_snapshot(
91
- self,
92
- report_progress: Optional[bool] = None,
93
- treat_global_objects_as_roots: Optional[bool] = None,
94
- capture_numeric_value: Optional[bool] = None,
95
- expose_internals: Optional[bool] = None
96
- ) -> None:
97
- return await self.sync_to_trio(sync_function=self._take_heap_snapshot_impl)(
98
- report_progress=report_progress,
99
- treat_global_objects_as_roots=treat_global_objects_as_roots,
100
- capture_numeric_value=capture_numeric_value,
101
- expose_internals=expose_internals
102
- )
@@ -1,155 +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.indexed_db import (
12
- UnifiedIndexedDbCDPExecutor
13
- )
14
- from osn_selenium.abstract.executors.cdp.indexed_db import (
15
- AbstractIndexedDbCDPExecutor
16
- )
17
-
18
-
19
- __all__ = ["IndexedDbCDPExecutor"]
20
-
21
-
22
- class IndexedDbCDPExecutor(
23
- UnifiedIndexedDbCDPExecutor,
24
- TrioThreadMixin,
25
- AbstractIndexedDbCDPExecutor
26
- ):
27
- def __init__(
28
- self,
29
- execute_function: Callable[[str, Dict[str, Any]], Any],
30
- lock: trio.Lock,
31
- limiter: trio.CapacityLimiter
32
- ):
33
- UnifiedIndexedDbCDPExecutor.__init__(self, execute_function=execute_function)
34
-
35
- TrioThreadMixin.__init__(self, lock=lock, limiter=limiter)
36
-
37
- async def clear_object_store(
38
- self,
39
- security_origin: Optional[str] = None,
40
- storage_key: Optional[str] = None,
41
- storage_bucket: Optional[Dict[str, Any]] = None,
42
- database_name: str = None,
43
- object_store_name: str = None
44
- ) -> None:
45
- return await self.sync_to_trio(sync_function=self._clear_object_store_impl)(
46
- security_origin=security_origin,
47
- storage_key=storage_key,
48
- storage_bucket=storage_bucket,
49
- database_name=database_name,
50
- object_store_name=object_store_name
51
- )
52
-
53
- async def delete_database(
54
- self,
55
- security_origin: Optional[str] = None,
56
- storage_key: Optional[str] = None,
57
- storage_bucket: Optional[Dict[str, Any]] = None,
58
- database_name: str = None
59
- ) -> None:
60
- return await self.sync_to_trio(sync_function=self._delete_database_impl)(
61
- security_origin=security_origin,
62
- storage_key=storage_key,
63
- storage_bucket=storage_bucket,
64
- database_name=database_name
65
- )
66
-
67
- async def delete_object_store_entries(
68
- self,
69
- security_origin: Optional[str] = None,
70
- storage_key: Optional[str] = None,
71
- storage_bucket: Optional[Dict[str, Any]] = None,
72
- database_name: str = None,
73
- object_store_name: str = None,
74
- key_range: Dict[str, Any] = None
75
- ) -> None:
76
- return await self.sync_to_trio(sync_function=self._delete_object_store_entries_impl)(
77
- security_origin=security_origin,
78
- storage_key=storage_key,
79
- storage_bucket=storage_bucket,
80
- database_name=database_name,
81
- object_store_name=object_store_name,
82
- key_range=key_range
83
- )
84
-
85
- async def disable(self) -> None:
86
- return await self.sync_to_trio(sync_function=self._disable_impl)()
87
-
88
- async def enable(self) -> None:
89
- return await self.sync_to_trio(sync_function=self._enable_impl)()
90
-
91
- async def get_metadata(
92
- self,
93
- security_origin: Optional[str] = None,
94
- storage_key: Optional[str] = None,
95
- storage_bucket: Optional[Dict[str, Any]] = None,
96
- database_name: str = None,
97
- object_store_name: str = None
98
- ) -> Tuple[float, float]:
99
- return await self.sync_to_trio(sync_function=self._get_metadata_impl)(
100
- security_origin=security_origin,
101
- storage_key=storage_key,
102
- storage_bucket=storage_bucket,
103
- database_name=database_name,
104
- object_store_name=object_store_name
105
- )
106
-
107
- async def request_data(
108
- self,
109
- security_origin: Optional[str] = None,
110
- storage_key: Optional[str] = None,
111
- storage_bucket: Optional[Dict[str, Any]] = None,
112
- database_name: str = None,
113
- object_store_name: str = None,
114
- index_name: Optional[str] = None,
115
- skip_count: int = None,
116
- page_size: int = None,
117
- key_range: Optional[Dict[str, Any]] = None
118
- ) -> Tuple[List[Dict[str, Any]], bool]:
119
- return await self.sync_to_trio(sync_function=self._request_data_impl)(
120
- security_origin=security_origin,
121
- storage_key=storage_key,
122
- storage_bucket=storage_bucket,
123
- database_name=database_name,
124
- object_store_name=object_store_name,
125
- index_name=index_name,
126
- skip_count=skip_count,
127
- page_size=page_size,
128
- key_range=key_range
129
- )
130
-
131
- async def request_database(
132
- self,
133
- security_origin: Optional[str] = None,
134
- storage_key: Optional[str] = None,
135
- storage_bucket: Optional[Dict[str, Any]] = None,
136
- database_name: str = None
137
- ) -> Dict[str, Any]:
138
- return await self.sync_to_trio(sync_function=self._request_database_impl)(
139
- security_origin=security_origin,
140
- storage_key=storage_key,
141
- storage_bucket=storage_bucket,
142
- database_name=database_name
143
- )
144
-
145
- async def request_database_names(
146
- self,
147
- security_origin: Optional[str] = None,
148
- storage_key: Optional[str] = None,
149
- storage_bucket: Optional[Dict[str, Any]] = None
150
- ) -> List[str]:
151
- return await self.sync_to_trio(sync_function=self._request_database_names_impl)(
152
- security_origin=security_origin,
153
- storage_key=storage_key,
154
- storage_bucket=storage_bucket
155
- )
@@ -1,242 +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.input import (
11
- UnifiedInputCDPExecutor
12
- )
13
- from osn_selenium.abstract.executors.cdp.input import (
14
- AbstractInputCDPExecutor
15
- )
16
-
17
-
18
- __all__ = ["InputCDPExecutor"]
19
-
20
-
21
- class InputCDPExecutor(UnifiedInputCDPExecutor, TrioThreadMixin, AbstractInputCDPExecutor):
22
- def __init__(
23
- self,
24
- execute_function: Callable[[str, Dict[str, Any]], Any],
25
- lock: trio.Lock,
26
- limiter: trio.CapacityLimiter
27
- ):
28
- UnifiedInputCDPExecutor.__init__(self, execute_function=execute_function)
29
-
30
- TrioThreadMixin.__init__(self, lock=lock, limiter=limiter)
31
-
32
- async def cancel_dragging(self) -> None:
33
- return await self.sync_to_trio(sync_function=self._cancel_dragging_impl)()
34
-
35
- async def dispatch_drag_event(
36
- self,
37
- type_: str,
38
- x: float,
39
- y: float,
40
- data: Dict[str, Any],
41
- modifiers: Optional[int] = None
42
- ) -> None:
43
- return await self.sync_to_trio(sync_function=self._dispatch_drag_event_impl)(type_=type_, x=x, y=y, data=data, modifiers=modifiers)
44
-
45
- async def dispatch_key_event(
46
- self,
47
- type_: str,
48
- modifiers: Optional[int] = None,
49
- timestamp: Optional[float] = None,
50
- text: Optional[str] = None,
51
- unmodified_text: Optional[str] = None,
52
- key_identifier: Optional[str] = None,
53
- code: Optional[str] = None,
54
- key: Optional[str] = None,
55
- windows_virtual_key_code: Optional[int] = None,
56
- native_virtual_key_code: Optional[int] = None,
57
- auto_repeat: Optional[bool] = None,
58
- is_keypad: Optional[bool] = None,
59
- is_system_key: Optional[bool] = None,
60
- location: Optional[int] = None,
61
- commands: Optional[List[str]] = None
62
- ) -> None:
63
- return await self.sync_to_trio(sync_function=self._dispatch_key_event_impl)(
64
- type_=type_,
65
- modifiers=modifiers,
66
- timestamp=timestamp,
67
- text=text,
68
- unmodified_text=unmodified_text,
69
- key_identifier=key_identifier,
70
- code=code,
71
- key=key,
72
- windows_virtual_key_code=windows_virtual_key_code,
73
- native_virtual_key_code=native_virtual_key_code,
74
- auto_repeat=auto_repeat,
75
- is_keypad=is_keypad,
76
- is_system_key=is_system_key,
77
- location=location,
78
- commands=commands
79
- )
80
-
81
- async def dispatch_mouse_event(
82
- self,
83
- type_: str,
84
- x: float,
85
- y: float,
86
- modifiers: Optional[int] = None,
87
- timestamp: Optional[float] = None,
88
- button: Optional[str] = None,
89
- buttons: Optional[int] = None,
90
- click_count: Optional[int] = None,
91
- force: Optional[float] = None,
92
- tangential_pressure: Optional[float] = None,
93
- tilt_x: Optional[float] = None,
94
- tilt_y: Optional[float] = None,
95
- twist: Optional[int] = None,
96
- delta_x: Optional[float] = None,
97
- delta_y: Optional[float] = None,
98
- pointer_type: Optional[str] = None
99
- ) -> None:
100
- return await self.sync_to_trio(sync_function=self._dispatch_mouse_event_impl)(
101
- type_=type_,
102
- x=x,
103
- y=y,
104
- modifiers=modifiers,
105
- timestamp=timestamp,
106
- button=button,
107
- buttons=buttons,
108
- click_count=click_count,
109
- force=force,
110
- tangential_pressure=tangential_pressure,
111
- tilt_x=tilt_x,
112
- tilt_y=tilt_y,
113
- twist=twist,
114
- delta_x=delta_x,
115
- delta_y=delta_y,
116
- pointer_type=pointer_type
117
- )
118
-
119
- async def dispatch_touch_event(
120
- self,
121
- type_: str,
122
- touch_points: List[Dict[str, Any]],
123
- modifiers: Optional[int] = None,
124
- timestamp: Optional[float] = None
125
- ) -> None:
126
- return await self.sync_to_trio(sync_function=self._dispatch_touch_event_impl)(
127
- type_=type_,
128
- touch_points=touch_points,
129
- modifiers=modifiers,
130
- timestamp=timestamp
131
- )
132
-
133
- async def emulate_touch_from_mouse_event(
134
- self,
135
- type_: str,
136
- x: int,
137
- y: int,
138
- button: str,
139
- timestamp: Optional[float] = None,
140
- delta_x: Optional[float] = None,
141
- delta_y: Optional[float] = None,
142
- modifiers: Optional[int] = None,
143
- click_count: Optional[int] = None
144
- ) -> None:
145
- return await self.sync_to_trio(sync_function=self._emulate_touch_from_mouse_event_impl)(
146
- type_=type_,
147
- x=x,
148
- y=y,
149
- button=button,
150
- timestamp=timestamp,
151
- delta_x=delta_x,
152
- delta_y=delta_y,
153
- modifiers=modifiers,
154
- click_count=click_count
155
- )
156
-
157
- async def ime_set_composition(
158
- self,
159
- text: str,
160
- selection_start: int,
161
- selection_end: int,
162
- replacement_start: Optional[int] = None,
163
- replacement_end: Optional[int] = None
164
- ) -> None:
165
- return await self.sync_to_trio(sync_function=self._ime_set_composition_impl)(
166
- text=text,
167
- selection_start=selection_start,
168
- selection_end=selection_end,
169
- replacement_start=replacement_start,
170
- replacement_end=replacement_end
171
- )
172
-
173
- async def insert_text(self, text: str) -> None:
174
- return await self.sync_to_trio(sync_function=self._insert_text_impl)(text=text)
175
-
176
- async def set_ignore_input_events(self, ignore: bool) -> None:
177
- return await self.sync_to_trio(sync_function=self._set_ignore_input_events_impl)(ignore=ignore)
178
-
179
- async def set_intercept_drags(self, enabled: bool) -> None:
180
- return await self.sync_to_trio(sync_function=self._set_intercept_drags_impl)(enabled=enabled)
181
-
182
- async def synthesize_pinch_gesture(
183
- self,
184
- x: float,
185
- y: float,
186
- scale_factor: float,
187
- relative_speed: Optional[int] = None,
188
- gesture_source_type: Optional[str] = None
189
- ) -> None:
190
- return await self.sync_to_trio(sync_function=self._synthesize_pinch_gesture_impl)(
191
- x=x,
192
- y=y,
193
- scale_factor=scale_factor,
194
- relative_speed=relative_speed,
195
- gesture_source_type=gesture_source_type
196
- )
197
-
198
- async def synthesize_scroll_gesture(
199
- self,
200
- x: float,
201
- y: float,
202
- x_distance: Optional[float] = None,
203
- y_distance: Optional[float] = None,
204
- x_overscroll: Optional[float] = None,
205
- y_overscroll: Optional[float] = None,
206
- prevent_fling: Optional[bool] = None,
207
- speed: Optional[int] = None,
208
- gesture_source_type: Optional[str] = None,
209
- repeat_count: Optional[int] = None,
210
- repeat_delay_ms: Optional[int] = None,
211
- interaction_marker_name: Optional[str] = None
212
- ) -> None:
213
- return await self.sync_to_trio(sync_function=self._synthesize_scroll_gesture_impl)(
214
- x=x,
215
- y=y,
216
- x_distance=x_distance,
217
- y_distance=y_distance,
218
- x_overscroll=x_overscroll,
219
- y_overscroll=y_overscroll,
220
- prevent_fling=prevent_fling,
221
- speed=speed,
222
- gesture_source_type=gesture_source_type,
223
- repeat_count=repeat_count,
224
- repeat_delay_ms=repeat_delay_ms,
225
- interaction_marker_name=interaction_marker_name
226
- )
227
-
228
- async def synthesize_tap_gesture(
229
- self,
230
- x: float,
231
- y: float,
232
- duration: Optional[int] = None,
233
- tap_count: Optional[int] = None,
234
- gesture_source_type: Optional[str] = None
235
- ) -> None:
236
- return await self.sync_to_trio(sync_function=self._synthesize_tap_gesture_impl)(
237
- x=x,
238
- y=y,
239
- duration=duration,
240
- tap_count=tap_count,
241
- gesture_source_type=gesture_source_type
242
- )
@@ -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.inspector import (
5
- UnifiedInspectorCDPExecutor
6
- )
7
- from osn_selenium.abstract.executors.cdp.inspector import (
8
- AbstractInspectorCDPExecutor
9
- )
10
-
11
-
12
- __all__ = ["InspectorCDPExecutor"]
13
-
14
-
15
- class InspectorCDPExecutor(
16
- UnifiedInspectorCDPExecutor,
17
- TrioThreadMixin,
18
- AbstractInspectorCDPExecutor
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
- UnifiedInspectorCDPExecutor.__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)()
@@ -1,42 +0,0 @@
1
- import trio
2
- from osn_selenium.base_mixin import TrioThreadMixin
3
- from typing import (
4
- Any,
5
- Callable,
6
- Dict,
7
- Optional,
8
- Tuple
9
- )
10
- from osn_selenium.executors.unified.cdp.io import UnifiedIoCDPExecutor
11
- from osn_selenium.abstract.executors.cdp.io import (
12
- AbstractIoCDPExecutor
13
- )
14
-
15
-
16
- __all__ = ["IoCDPExecutor"]
17
-
18
-
19
- class IoCDPExecutor(UnifiedIoCDPExecutor, TrioThreadMixin, AbstractIoCDPExecutor):
20
- def __init__(
21
- self,
22
- execute_function: Callable[[str, Dict[str, Any]], Any],
23
- lock: trio.Lock,
24
- limiter: trio.CapacityLimiter
25
- ):
26
- UnifiedIoCDPExecutor.__init__(self, execute_function=execute_function)
27
-
28
- TrioThreadMixin.__init__(self, lock=lock, limiter=limiter)
29
-
30
- async def close(self, handle: str) -> None:
31
- return await self.sync_to_trio(sync_function=self._close_impl)(handle=handle)
32
-
33
- async def read(
34
- self,
35
- handle: str,
36
- offset: Optional[int] = None,
37
- size: Optional[int] = None
38
- ) -> Tuple[Optional[bool], str, bool]:
39
- return await self.sync_to_trio(sync_function=self._read_impl)(handle=handle, offset=offset, size=size)
40
-
41
- async def resolve_blob(self, object_id: str) -> str:
42
- return await self.sync_to_trio(sync_function=self._resolve_blob_impl)(object_id=object_id)
@@ -1,84 +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.layer_tree import (
12
- UnifiedLayerTreeCDPExecutor
13
- )
14
- from osn_selenium.abstract.executors.cdp.layer_tree import (
15
- AbstractLayerTreeCDPExecutor
16
- )
17
-
18
-
19
- __all__ = ["LayerTreeCDPExecutor"]
20
-
21
-
22
- class LayerTreeCDPExecutor(
23
- UnifiedLayerTreeCDPExecutor,
24
- TrioThreadMixin,
25
- AbstractLayerTreeCDPExecutor
26
- ):
27
- def __init__(
28
- self,
29
- execute_function: Callable[[str, Dict[str, Any]], Any],
30
- lock: trio.Lock,
31
- limiter: trio.CapacityLimiter
32
- ):
33
- UnifiedLayerTreeCDPExecutor.__init__(self, execute_function=execute_function)
34
-
35
- TrioThreadMixin.__init__(self, lock=lock, limiter=limiter)
36
-
37
- async def compositing_reasons(self, layer_id: str) -> Tuple[List[str], List[str]]:
38
- return await self.sync_to_trio(sync_function=self._compositing_reasons_impl)(layer_id=layer_id)
39
-
40
- async def disable(self) -> None:
41
- return await self.sync_to_trio(sync_function=self._disable_impl)()
42
-
43
- async def enable(self) -> None:
44
- return await self.sync_to_trio(sync_function=self._enable_impl)()
45
-
46
- async def load_snapshot(self, tiles: List[Dict[str, Any]]) -> str:
47
- return await self.sync_to_trio(sync_function=self._load_snapshot_impl)(tiles=tiles)
48
-
49
- async def make_snapshot(self, layer_id: str) -> str:
50
- return await self.sync_to_trio(sync_function=self._make_snapshot_impl)(layer_id=layer_id)
51
-
52
- async def profile_snapshot(
53
- self,
54
- snapshot_id: str,
55
- min_repeat_count: Optional[int] = None,
56
- min_duration: Optional[float] = None,
57
- clip_rect: Optional[Dict[str, Any]] = None
58
- ) -> List[List[float]]:
59
- return await self.sync_to_trio(sync_function=self._profile_snapshot_impl)(
60
- snapshot_id=snapshot_id,
61
- min_repeat_count=min_repeat_count,
62
- min_duration=min_duration,
63
- clip_rect=clip_rect
64
- )
65
-
66
- async def release_snapshot(self, snapshot_id: str) -> None:
67
- return await self.sync_to_trio(sync_function=self._release_snapshot_impl)(snapshot_id=snapshot_id)
68
-
69
- async def replay_snapshot(
70
- self,
71
- snapshot_id: str,
72
- from_step: Optional[int] = None,
73
- to_step: Optional[int] = None,
74
- scale: Optional[float] = None
75
- ) -> str:
76
- return await self.sync_to_trio(sync_function=self._replay_snapshot_impl)(
77
- snapshot_id=snapshot_id,
78
- from_step=from_step,
79
- to_step=to_step,
80
- scale=scale
81
- )
82
-
83
- async def snapshot_command_log(self, snapshot_id: str) -> List[Any]:
84
- return await self.sync_to_trio(sync_function=self._snapshot_command_log_impl)(snapshot_id=snapshot_id)
@@ -1,44 +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
- )
9
- from osn_selenium.executors.unified.cdp.log import (
10
- UnifiedLogCDPExecutor
11
- )
12
- from osn_selenium.abstract.executors.cdp.log import (
13
- AbstractLogCDPExecutor
14
- )
15
-
16
-
17
- __all__ = ["LogCDPExecutor"]
18
-
19
-
20
- class LogCDPExecutor(UnifiedLogCDPExecutor, TrioThreadMixin, AbstractLogCDPExecutor):
21
- def __init__(
22
- self,
23
- execute_function: Callable[[str, Dict[str, Any]], Any],
24
- lock: trio.Lock,
25
- limiter: trio.CapacityLimiter
26
- ):
27
- UnifiedLogCDPExecutor.__init__(self, execute_function=execute_function)
28
-
29
- TrioThreadMixin.__init__(self, lock=lock, limiter=limiter)
30
-
31
- async def clear(self) -> None:
32
- return await self.sync_to_trio(sync_function=self._clear_impl)()
33
-
34
- async def disable(self) -> None:
35
- return await self.sync_to_trio(sync_function=self._disable_impl)()
36
-
37
- async def enable(self) -> None:
38
- return await self.sync_to_trio(sync_function=self._enable_impl)()
39
-
40
- async def start_violations_report(self, config: List[Dict[str, Any]]) -> None:
41
- return await self.sync_to_trio(sync_function=self._start_violations_report_impl)(config=config)
42
-
43
- async def stop_violations_report(self) -> None:
44
- return await self.sync_to_trio(sync_function=self._stop_violations_report_impl)()