osn-selenium 1.1.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 (418) hide show
  1. osn_selenium/_decorators.py +57 -0
  2. osn_selenium/_trio_threads_helpers.py +157 -0
  3. osn_selenium/_typehints.py +1 -1
  4. osn_selenium/abstract/webdriver/blink/base.py +14 -0
  5. osn_selenium/abstract/webdriver/blink/lifecycle.py +8 -8
  6. osn_selenium/abstract/webdriver/core/base.py +0 -14
  7. osn_selenium/abstract/webdriver/core/capture.py +4 -3
  8. osn_selenium/abstract/webdriver/core/lifecycle.py +8 -8
  9. osn_selenium/abstract/webdriver/core/script.py +5 -4
  10. osn_selenium/abstract/webdriver/core/window.py +11 -11
  11. osn_selenium/dev_tools/_decorators.py +1 -42
  12. osn_selenium/dev_tools/_functions.py +2 -4
  13. osn_selenium/dev_tools/domains/__init__.py +1 -1
  14. osn_selenium/dev_tools/domains/fetch.py +5 -7
  15. osn_selenium/dev_tools/domains_default/fetch.py +1 -1
  16. osn_selenium/dev_tools/logger/main.py +9 -9
  17. osn_selenium/dev_tools/logger/target.py +7 -7
  18. osn_selenium/dev_tools/manager/base.py +10 -19
  19. osn_selenium/dev_tools/manager/lifecycle.py +83 -74
  20. osn_selenium/dev_tools/manager/logging.py +1 -1
  21. osn_selenium/dev_tools/manager/targets.py +13 -5
  22. osn_selenium/dev_tools/settings.py +4 -4
  23. osn_selenium/dev_tools/target/base.py +18 -11
  24. osn_selenium/dev_tools/target/discovery.py +1 -1
  25. osn_selenium/dev_tools/target/events.py +2 -2
  26. osn_selenium/dev_tools/target/fingerprint.py +1 -1
  27. osn_selenium/dev_tools/target/lifecycle.py +103 -43
  28. osn_selenium/dev_tools/target/logging.py +1 -1
  29. osn_selenium/exceptions/__init__.py +0 -1
  30. osn_selenium/exceptions/base.py +28 -1
  31. osn_selenium/exceptions/bidi_bridge.py +59 -0
  32. osn_selenium/exceptions/configuration.py +1 -8
  33. osn_selenium/exceptions/dependencies.py +2 -2
  34. osn_selenium/exceptions/devtools.py +9 -39
  35. osn_selenium/exceptions/experimental.py +26 -0
  36. osn_selenium/exceptions/flags.py +0 -2
  37. osn_selenium/exceptions/instance.py +1 -9
  38. osn_selenium/exceptions/javascript.py +0 -2
  39. osn_selenium/exceptions/logic.py +0 -2
  40. osn_selenium/exceptions/path.py +1 -9
  41. osn_selenium/exceptions/platform.py +0 -2
  42. osn_selenium/exceptions/protocol.py +0 -3
  43. osn_selenium/exceptions/webdriver.py +1 -7
  44. osn_selenium/exceptions/window.py +1 -8
  45. osn_selenium/executors/sync/cdp.py +0 -5
  46. osn_selenium/executors/trio_bidi/cdp.py +101 -0
  47. osn_selenium/executors/trio_bidi/javascript.py +101 -0
  48. osn_selenium/executors/trio_threads/cdp.py +0 -5
  49. osn_selenium/flags/base.py +6 -4
  50. osn_selenium/flags/blink.py +2 -2
  51. osn_selenium/flags/chrome.py +6 -6
  52. osn_selenium/flags/edge.py +6 -6
  53. osn_selenium/instances/convert.py +44 -3
  54. osn_selenium/instances/protocols.py +47 -1
  55. osn_selenium/instances/sync/browsing_context.py +2 -2
  56. osn_selenium/instances/sync/script.py +7 -2
  57. osn_selenium/instances/sync/web_element.py +1 -1
  58. osn_selenium/instances/trio_bidi/__init__.py +1 -0
  59. osn_selenium/instances/trio_bidi/shadow_root.py +180 -0
  60. osn_selenium/instances/trio_bidi/switch_to.py +143 -0
  61. osn_selenium/instances/trio_bidi/web_driver_wait.py +124 -0
  62. osn_selenium/instances/trio_bidi/web_element.py +239 -0
  63. osn_selenium/instances/trio_threads/browsing_context.py +2 -2
  64. osn_selenium/instances/trio_threads/fedcm.py +1 -1
  65. osn_selenium/instances/trio_threads/network.py +1 -1
  66. osn_selenium/instances/trio_threads/script.py +7 -2
  67. osn_selenium/instances/trio_threads/web_extension.py +1 -1
  68. osn_selenium/instances/unified/browsing_context.py +2 -2
  69. osn_selenium/instances/unified/script.py +2 -2
  70. osn_selenium/instances/unified/web_element.py +3 -5
  71. osn_selenium/javascript/fingerprint/__init__.py +2 -1
  72. osn_selenium/trio_bidi/__init__.py +1 -0
  73. osn_selenium/trio_bidi/_context_vars.py +12 -0
  74. osn_selenium/trio_bidi/_error_mappings.py +123 -0
  75. osn_selenium/trio_bidi/_error_redirects.py +194 -0
  76. osn_selenium/trio_bidi/_file_functions.py +28 -0
  77. osn_selenium/trio_bidi/_internal_mappings.py +10 -0
  78. osn_selenium/trio_bidi/_models.py +199 -0
  79. osn_selenium/trio_bidi/_typehints.py +20 -0
  80. osn_selenium/trio_bidi/connection_pool.py +587 -0
  81. osn_selenium/trio_bidi/mapping/__init__.py +1 -0
  82. osn_selenium/trio_bidi/mapping/_constants.py +14 -0
  83. osn_selenium/trio_bidi/mapping/_js_snippets.py +285 -0
  84. osn_selenium/trio_bidi/mapping/_utils.py +4 -0
  85. osn_selenium/trio_bidi/mapping/request_functions/__init__.py +87 -0
  86. osn_selenium/trio_bidi/mapping/request_functions/_alert.py +102 -0
  87. osn_selenium/trio_bidi/mapping/request_functions/_args_helpers.py +225 -0
  88. osn_selenium/trio_bidi/mapping/request_functions/_capture.py +71 -0
  89. osn_selenium/trio_bidi/mapping/request_functions/_cdp.py +40 -0
  90. osn_selenium/trio_bidi/mapping/request_functions/_element.py +55 -0
  91. osn_selenium/trio_bidi/mapping/request_functions/_file.py +32 -0
  92. osn_selenium/trio_bidi/mapping/request_functions/_navigation.py +147 -0
  93. osn_selenium/trio_bidi/mapping/request_functions/_script.py +85 -0
  94. osn_selenium/trio_bidi/mapping/request_functions/_shadow_root.py +65 -0
  95. osn_selenium/trio_bidi/mapping/request_functions/_switch_to.py +59 -0
  96. osn_selenium/trio_bidi/mapping/request_functions/_web_element.py +448 -0
  97. osn_selenium/trio_bidi/mapping/request_functions/_window.py +125 -0
  98. osn_selenium/trio_bidi/mapping/response_functions/__init__.py +86 -0
  99. osn_selenium/trio_bidi/mapping/response_functions/_alert.py +81 -0
  100. osn_selenium/trio_bidi/mapping/response_functions/_args_helpers.py +183 -0
  101. osn_selenium/trio_bidi/mapping/response_functions/_args_validators.py +153 -0
  102. osn_selenium/trio_bidi/mapping/response_functions/_capture.py +71 -0
  103. osn_selenium/trio_bidi/mapping/response_functions/_cdp.py +26 -0
  104. osn_selenium/trio_bidi/mapping/response_functions/_element.py +58 -0
  105. osn_selenium/trio_bidi/mapping/response_functions/_file.py +30 -0
  106. osn_selenium/trio_bidi/mapping/response_functions/_navigation.py +120 -0
  107. osn_selenium/trio_bidi/mapping/response_functions/_script.py +57 -0
  108. osn_selenium/trio_bidi/mapping/response_functions/_shadow_root.py +58 -0
  109. osn_selenium/trio_bidi/mapping/response_functions/_switch_to.py +57 -0
  110. osn_selenium/trio_bidi/mapping/response_functions/_web_element.py +368 -0
  111. osn_selenium/trio_bidi/mapping/response_functions/_window.py +119 -0
  112. osn_selenium/trio_bidi/mixin.py +186 -0
  113. osn_selenium/trio_bidi/remote_connection.py +164 -0
  114. osn_selenium/trio_threads_mixin.py +22 -68
  115. osn_selenium/webdrivers/_args_helpers.py +118 -5
  116. osn_selenium/webdrivers/_typehints.py +9 -3
  117. osn_selenium/webdrivers/protocols.py +81 -1
  118. osn_selenium/webdrivers/sync/blink/base.py +10 -0
  119. osn_selenium/webdrivers/sync/blink/lifecycle.py +26 -8
  120. osn_selenium/webdrivers/sync/chrome/lifecycle.py +23 -5
  121. osn_selenium/webdrivers/sync/chrome/settings.py +6 -1
  122. osn_selenium/webdrivers/sync/core/base.py +3 -11
  123. osn_selenium/webdrivers/sync/core/capture.py +3 -2
  124. osn_selenium/webdrivers/sync/core/file.py +3 -2
  125. osn_selenium/webdrivers/sync/core/lifecycle.py +44 -10
  126. osn_selenium/webdrivers/sync/core/script.py +3 -2
  127. osn_selenium/webdrivers/sync/core/window.py +3 -3
  128. osn_selenium/webdrivers/sync/edge/lifecycle.py +23 -5
  129. osn_selenium/webdrivers/sync/edge/settings.py +6 -1
  130. osn_selenium/webdrivers/sync/yandex/lifecycle.py +23 -5
  131. osn_selenium/webdrivers/sync/yandex/settings.py +6 -1
  132. osn_selenium/webdrivers/trio_bidi/__init__.py +1 -0
  133. osn_selenium/webdrivers/trio_bidi/blink/__init__.py +132 -0
  134. osn_selenium/webdrivers/trio_bidi/blink/base.py +167 -0
  135. osn_selenium/webdrivers/trio_bidi/blink/lifecycle.py +89 -0
  136. osn_selenium/webdrivers/trio_bidi/blink/settings.py +63 -0
  137. osn_selenium/webdrivers/trio_bidi/chrome/__init__.py +114 -0
  138. osn_selenium/webdrivers/trio_bidi/chrome/base.py +127 -0
  139. osn_selenium/webdrivers/trio_bidi/chrome/lifecycle.py +85 -0
  140. osn_selenium/webdrivers/trio_bidi/chrome/settings.py +63 -0
  141. osn_selenium/webdrivers/trio_bidi/core/__init__.py +95 -0
  142. osn_selenium/webdrivers/trio_bidi/core/actions.py +70 -0
  143. osn_selenium/webdrivers/trio_bidi/core/base.py +200 -0
  144. osn_selenium/webdrivers/trio_bidi/core/capture.py +39 -0
  145. osn_selenium/webdrivers/trio_bidi/core/devtools.py +49 -0
  146. osn_selenium/webdrivers/trio_bidi/core/element.py +64 -0
  147. osn_selenium/webdrivers/trio_bidi/core/lifecycle.py +135 -0
  148. osn_selenium/webdrivers/trio_bidi/core/navigation.py +37 -0
  149. osn_selenium/webdrivers/trio_bidi/core/script.py +56 -0
  150. osn_selenium/webdrivers/trio_bidi/core/settings.py +36 -0
  151. osn_selenium/webdrivers/trio_bidi/core/window.py +134 -0
  152. osn_selenium/webdrivers/trio_bidi/edge/__init__.py +114 -0
  153. osn_selenium/webdrivers/trio_bidi/edge/base.py +123 -0
  154. osn_selenium/webdrivers/trio_bidi/edge/lifecycle.py +85 -0
  155. osn_selenium/webdrivers/trio_bidi/edge/settings.py +63 -0
  156. osn_selenium/webdrivers/trio_bidi/yandex/__init__.py +114 -0
  157. osn_selenium/webdrivers/trio_bidi/yandex/base.py +120 -0
  158. osn_selenium/webdrivers/trio_bidi/yandex/lifecycle.py +85 -0
  159. osn_selenium/webdrivers/trio_bidi/yandex/settings.py +63 -0
  160. osn_selenium/webdrivers/trio_threads/blink/__init__.py +7 -1
  161. osn_selenium/webdrivers/trio_threads/blink/base.py +14 -0
  162. osn_selenium/webdrivers/trio_threads/blink/lifecycle.py +26 -8
  163. osn_selenium/webdrivers/trio_threads/chrome/lifecycle.py +23 -5
  164. osn_selenium/webdrivers/trio_threads/chrome/settings.py +1 -1
  165. osn_selenium/webdrivers/trio_threads/core/__init__.py +0 -10
  166. osn_selenium/webdrivers/trio_threads/core/actions.py +1 -1
  167. osn_selenium/webdrivers/trio_threads/core/auth.py +1 -1
  168. osn_selenium/webdrivers/trio_threads/core/base.py +4 -16
  169. osn_selenium/webdrivers/trio_threads/core/capture.py +3 -2
  170. osn_selenium/webdrivers/trio_threads/core/file.py +3 -2
  171. osn_selenium/webdrivers/trio_threads/core/lifecycle.py +44 -10
  172. osn_selenium/webdrivers/trio_threads/core/script.py +3 -2
  173. osn_selenium/webdrivers/trio_threads/core/settings.py +1 -1
  174. osn_selenium/webdrivers/trio_threads/core/storage.py +1 -1
  175. osn_selenium/webdrivers/trio_threads/core/timeouts.py +1 -1
  176. osn_selenium/webdrivers/trio_threads/core/window.py +4 -4
  177. osn_selenium/webdrivers/trio_threads/edge/lifecycle.py +23 -5
  178. osn_selenium/webdrivers/trio_threads/edge/settings.py +1 -1
  179. osn_selenium/webdrivers/trio_threads/yandex/lifecycle.py +23 -5
  180. osn_selenium/webdrivers/trio_threads/yandex/settings.py +1 -1
  181. osn_selenium/webdrivers/unified/blink/base.py +5 -1
  182. osn_selenium/webdrivers/unified/blink/lifecycle.py +4 -2
  183. osn_selenium/webdrivers/unified/chrome/base.py +5 -1
  184. osn_selenium/webdrivers/unified/core/auth.py +4 -2
  185. osn_selenium/webdrivers/unified/core/base.py +16 -10
  186. osn_selenium/webdrivers/unified/core/capture.py +3 -2
  187. osn_selenium/webdrivers/unified/core/components.py +12 -7
  188. osn_selenium/webdrivers/unified/core/devtools.py +2 -1
  189. osn_selenium/webdrivers/unified/core/file.py +3 -2
  190. osn_selenium/webdrivers/unified/core/lifecycle.py +5 -3
  191. osn_selenium/webdrivers/unified/core/script.py +5 -3
  192. osn_selenium/webdrivers/unified/core/storage.py +2 -1
  193. osn_selenium/webdrivers/unified/core/window.py +9 -8
  194. osn_selenium/webdrivers/unified/edge/base.py +5 -1
  195. osn_selenium/webdrivers/unified/yandex/base.py +5 -1
  196. {osn_selenium-1.1.0.dist-info → osn_selenium-1.2.0.dist-info}/METADATA +3 -2
  197. osn_selenium-1.2.0.dist-info/RECORD +480 -0
  198. osn_selenium/abstract/executors/cdp/__init__.py +0 -435
  199. osn_selenium/abstract/executors/cdp/accessibility.py +0 -62
  200. osn_selenium/abstract/executors/cdp/animation.py +0 -47
  201. osn_selenium/abstract/executors/cdp/audits.py +0 -39
  202. osn_selenium/abstract/executors/cdp/autofill.py +0 -34
  203. osn_selenium/abstract/executors/cdp/background_service.py +0 -22
  204. osn_selenium/abstract/executors/cdp/bluetooth_emulation.py +0 -95
  205. osn_selenium/abstract/executors/cdp/browser.py +0 -122
  206. osn_selenium/abstract/executors/cdp/cache_storage.py +0 -49
  207. osn_selenium/abstract/executors/cdp/cast.py +0 -31
  208. osn_selenium/abstract/executors/cdp/console.py +0 -18
  209. osn_selenium/abstract/executors/cdp/css.py +0 -197
  210. osn_selenium/abstract/executors/cdp/debugger.py +0 -198
  211. osn_selenium/abstract/executors/cdp/device_access.py +0 -22
  212. osn_selenium/abstract/executors/cdp/device_orientation.py +0 -14
  213. osn_selenium/abstract/executors/cdp/dom.py +0 -305
  214. osn_selenium/abstract/executors/cdp/dom_debugger.py +0 -57
  215. osn_selenium/abstract/executors/cdp/dom_snapshot.py +0 -42
  216. osn_selenium/abstract/executors/cdp/dom_storage.py +0 -31
  217. osn_selenium/abstract/executors/cdp/emulation.py +0 -259
  218. osn_selenium/abstract/executors/cdp/event_breakpoints.py +0 -18
  219. osn_selenium/abstract/executors/cdp/extensions.py +0 -31
  220. osn_selenium/abstract/executors/cdp/fed_cm.py +0 -35
  221. osn_selenium/abstract/executors/cdp/fetch.py +0 -76
  222. osn_selenium/abstract/executors/cdp/file_system.py +0 -11
  223. osn_selenium/abstract/executors/cdp/headless_experimental.py +0 -30
  224. osn_selenium/abstract/executors/cdp/heap_profiler.py +0 -73
  225. osn_selenium/abstract/executors/cdp/indexed_db.py +0 -99
  226. osn_selenium/abstract/executors/cdp/input.py +0 -158
  227. osn_selenium/abstract/executors/cdp/inspector.py +0 -14
  228. osn_selenium/abstract/executors/cdp/io.py +0 -24
  229. osn_selenium/abstract/executors/cdp/layer_tree.py +0 -61
  230. osn_selenium/abstract/executors/cdp/log.py +0 -27
  231. osn_selenium/abstract/executors/cdp/media.py +0 -14
  232. osn_selenium/abstract/executors/cdp/memory.py +0 -61
  233. osn_selenium/abstract/executors/cdp/network.py +0 -252
  234. osn_selenium/abstract/executors/cdp/overlay.py +0 -166
  235. osn_selenium/abstract/executors/cdp/page.py +0 -347
  236. osn_selenium/abstract/executors/cdp/performance.py +0 -28
  237. osn_selenium/abstract/executors/cdp/performance_timeline.py +0 -11
  238. osn_selenium/abstract/executors/cdp/preload.py +0 -14
  239. osn_selenium/abstract/executors/cdp/profiler.py +0 -54
  240. osn_selenium/abstract/executors/cdp/pwa.py +0 -46
  241. osn_selenium/abstract/executors/cdp/runtime.py +0 -176
  242. osn_selenium/abstract/executors/cdp/schema.py +0 -11
  243. osn_selenium/abstract/executors/cdp/security.py +0 -26
  244. osn_selenium/abstract/executors/cdp/service_worker.py +0 -54
  245. osn_selenium/abstract/executors/cdp/storage.py +0 -175
  246. osn_selenium/abstract/executors/cdp/system_info.py +0 -24
  247. osn_selenium/abstract/executors/cdp/target.py +0 -125
  248. osn_selenium/abstract/executors/cdp/tethering.py +0 -14
  249. osn_selenium/abstract/executors/cdp/tracing.py +0 -48
  250. osn_selenium/abstract/executors/cdp/web_audio.py +0 -19
  251. osn_selenium/abstract/executors/cdp/web_authn.py +0 -76
  252. osn_selenium/base_mixin.py +0 -122
  253. osn_selenium/executors/sync/cdp/__init__.py +0 -550
  254. osn_selenium/executors/sync/cdp/accessibility.py +0 -74
  255. osn_selenium/executors/sync/cdp/animation.py +0 -50
  256. osn_selenium/executors/sync/cdp/audits.py +0 -48
  257. osn_selenium/executors/sync/cdp/autofill.py +0 -39
  258. osn_selenium/executors/sync/cdp/background_service.py +0 -30
  259. osn_selenium/executors/sync/cdp/bluetooth_emulation.py +0 -101
  260. osn_selenium/executors/sync/cdp/browser.py +0 -131
  261. osn_selenium/executors/sync/cdp/cache_storage.py +0 -66
  262. osn_selenium/executors/sync/cdp/cast.py +0 -38
  263. osn_selenium/executors/sync/cdp/console.py +0 -24
  264. osn_selenium/executors/sync/cdp/css.py +0 -187
  265. osn_selenium/executors/sync/cdp/debugger.py +0 -206
  266. osn_selenium/executors/sync/cdp/device_access.py +0 -27
  267. osn_selenium/executors/sync/cdp/device_orientation.py +0 -24
  268. osn_selenium/executors/sync/cdp/dom.py +0 -310
  269. osn_selenium/executors/sync/cdp/dom_debugger.py +0 -56
  270. osn_selenium/executors/sync/cdp/dom_snapshot.py +0 -58
  271. osn_selenium/executors/sync/cdp/dom_storage.py +0 -38
  272. osn_selenium/executors/sync/cdp/emulation.py +0 -270
  273. osn_selenium/executors/sync/cdp/event_breakpoints.py +0 -27
  274. osn_selenium/executors/sync/cdp/extensions.py +0 -39
  275. osn_selenium/executors/sync/cdp/fed_cm.py +0 -45
  276. osn_selenium/executors/sync/cdp/fetch.py +0 -96
  277. osn_selenium/executors/sync/cdp/file_system.py +0 -18
  278. osn_selenium/executors/sync/cdp/headless_experimental.py +0 -44
  279. osn_selenium/executors/sync/cdp/heap_profiler.py +0 -89
  280. osn_selenium/executors/sync/cdp/indexed_db.py +0 -142
  281. osn_selenium/executors/sync/cdp/input.py +0 -233
  282. osn_selenium/executors/sync/cdp/inspector.py +0 -21
  283. osn_selenium/executors/sync/cdp/io.py +0 -33
  284. osn_selenium/executors/sync/cdp/layer_tree.py +0 -71
  285. osn_selenium/executors/sync/cdp/log.py +0 -35
  286. osn_selenium/executors/sync/cdp/media.py +0 -21
  287. osn_selenium/executors/sync/cdp/memory.py +0 -62
  288. osn_selenium/executors/sync/cdp/network.py +0 -287
  289. osn_selenium/executors/sync/cdp/overlay.py +0 -174
  290. osn_selenium/executors/sync/cdp/page.py +0 -365
  291. osn_selenium/executors/sync/cdp/performance.py +0 -33
  292. osn_selenium/executors/sync/cdp/performance_timeline.py +0 -26
  293. osn_selenium/executors/sync/cdp/preload.py +0 -21
  294. osn_selenium/executors/sync/cdp/profiler.py +0 -58
  295. osn_selenium/executors/sync/cdp/pwa.py +0 -55
  296. osn_selenium/executors/sync/cdp/runtime.py +0 -221
  297. osn_selenium/executors/sync/cdp/schema.py +0 -23
  298. osn_selenium/executors/sync/cdp/security.py +0 -30
  299. osn_selenium/executors/sync/cdp/service_worker.py +0 -56
  300. osn_selenium/executors/sync/cdp/storage.py +0 -151
  301. osn_selenium/executors/sync/cdp/system_info.py +0 -30
  302. osn_selenium/executors/sync/cdp/target.py +0 -147
  303. osn_selenium/executors/sync/cdp/tethering.py +0 -21
  304. osn_selenium/executors/sync/cdp/tracing.py +0 -62
  305. osn_selenium/executors/sync/cdp/web_audio.py +0 -24
  306. osn_selenium/executors/sync/cdp/web_authn.py +0 -82
  307. osn_selenium/executors/trio_threads/cdp/__init__.py +0 -771
  308. osn_selenium/executors/trio_threads/cdp/accessibility.py +0 -87
  309. osn_selenium/executors/trio_threads/cdp/animation.py +0 -63
  310. osn_selenium/executors/trio_threads/cdp/audits.py +0 -57
  311. osn_selenium/executors/trio_threads/cdp/autofill.py +0 -52
  312. osn_selenium/executors/trio_threads/cdp/background_service.py +0 -40
  313. osn_selenium/executors/trio_threads/cdp/bluetooth_emulation.py +0 -111
  314. osn_selenium/executors/trio_threads/cdp/browser.py +0 -140
  315. osn_selenium/executors/trio_threads/cdp/cache_storage.py +0 -79
  316. osn_selenium/executors/trio_threads/cdp/cast.py +0 -47
  317. osn_selenium/executors/trio_threads/cdp/console.py +0 -33
  318. osn_selenium/executors/trio_threads/cdp/css.py +0 -196
  319. osn_selenium/executors/trio_threads/cdp/debugger.py +0 -219
  320. osn_selenium/executors/trio_threads/cdp/device_access.py +0 -40
  321. osn_selenium/executors/trio_threads/cdp/device_orientation.py +0 -34
  322. osn_selenium/executors/trio_threads/cdp/dom.py +0 -319
  323. osn_selenium/executors/trio_threads/cdp/dom_debugger.py +0 -69
  324. osn_selenium/executors/trio_threads/cdp/dom_snapshot.py +0 -71
  325. osn_selenium/executors/trio_threads/cdp/dom_storage.py +0 -51
  326. osn_selenium/executors/trio_threads/cdp/emulation.py +0 -283
  327. osn_selenium/executors/trio_threads/cdp/event_breakpoints.py +0 -37
  328. osn_selenium/executors/trio_threads/cdp/extensions.py +0 -52
  329. osn_selenium/executors/trio_threads/cdp/fed_cm.py +0 -54
  330. osn_selenium/executors/trio_threads/cdp/fetch.py +0 -105
  331. osn_selenium/executors/trio_threads/cdp/file_system.py +0 -31
  332. osn_selenium/executors/trio_threads/cdp/headless_experimental.py +0 -54
  333. osn_selenium/executors/trio_threads/cdp/heap_profiler.py +0 -102
  334. osn_selenium/executors/trio_threads/cdp/indexed_db.py +0 -155
  335. osn_selenium/executors/trio_threads/cdp/input.py +0 -242
  336. osn_selenium/executors/trio_threads/cdp/inspector.py +0 -34
  337. osn_selenium/executors/trio_threads/cdp/io.py +0 -42
  338. osn_selenium/executors/trio_threads/cdp/layer_tree.py +0 -84
  339. osn_selenium/executors/trio_threads/cdp/log.py +0 -44
  340. osn_selenium/executors/trio_threads/cdp/media.py +0 -30
  341. osn_selenium/executors/trio_threads/cdp/memory.py +0 -71
  342. osn_selenium/executors/trio_threads/cdp/network.py +0 -296
  343. osn_selenium/executors/trio_threads/cdp/overlay.py +0 -183
  344. osn_selenium/executors/trio_threads/cdp/page.py +0 -374
  345. osn_selenium/executors/trio_threads/cdp/performance.py +0 -46
  346. osn_selenium/executors/trio_threads/cdp/performance_timeline.py +0 -36
  347. osn_selenium/executors/trio_threads/cdp/preload.py +0 -30
  348. osn_selenium/executors/trio_threads/cdp/profiler.py +0 -71
  349. osn_selenium/executors/trio_threads/cdp/pwa.py +0 -64
  350. osn_selenium/executors/trio_threads/cdp/runtime.py +0 -230
  351. osn_selenium/executors/trio_threads/cdp/schema.py +0 -32
  352. osn_selenium/executors/trio_threads/cdp/security.py +0 -43
  353. osn_selenium/executors/trio_threads/cdp/service_worker.py +0 -69
  354. osn_selenium/executors/trio_threads/cdp/storage.py +0 -162
  355. osn_selenium/executors/trio_threads/cdp/system_info.py +0 -43
  356. osn_selenium/executors/trio_threads/cdp/target.py +0 -156
  357. osn_selenium/executors/trio_threads/cdp/tethering.py +0 -34
  358. osn_selenium/executors/trio_threads/cdp/tracing.py +0 -71
  359. osn_selenium/executors/trio_threads/cdp/web_audio.py +0 -37
  360. osn_selenium/executors/trio_threads/cdp/web_authn.py +0 -95
  361. osn_selenium/executors/unified/cdp/accessibility.py +0 -81
  362. osn_selenium/executors/unified/cdp/animation.py +0 -50
  363. osn_selenium/executors/unified/cdp/audits.py +0 -45
  364. osn_selenium/executors/unified/cdp/autofill.py +0 -41
  365. osn_selenium/executors/unified/cdp/background_service.py +0 -24
  366. osn_selenium/executors/unified/cdp/bluetooth_emulation.py +0 -132
  367. osn_selenium/executors/unified/cdp/browser.py +0 -143
  368. osn_selenium/executors/unified/cdp/cache_storage.py +0 -69
  369. osn_selenium/executors/unified/cdp/cast.py +0 -32
  370. osn_selenium/executors/unified/cdp/console.py +0 -18
  371. osn_selenium/executors/unified/cdp/css.py +0 -237
  372. osn_selenium/executors/unified/cdp/debugger.py +0 -243
  373. osn_selenium/executors/unified/cdp/device_access.py +0 -21
  374. osn_selenium/executors/unified/cdp/device_orientation.py +0 -18
  375. osn_selenium/executors/unified/cdp/dom.py +0 -380
  376. osn_selenium/executors/unified/cdp/dom_debugger.py +0 -65
  377. osn_selenium/executors/unified/cdp/dom_snapshot.py +0 -58
  378. osn_selenium/executors/unified/cdp/dom_storage.py +0 -38
  379. osn_selenium/executors/unified/cdp/emulation.py +0 -312
  380. osn_selenium/executors/unified/cdp/event_breakpoints.py +0 -24
  381. osn_selenium/executors/unified/cdp/extensions.py +0 -45
  382. osn_selenium/executors/unified/cdp/fed_cm.py +0 -51
  383. osn_selenium/executors/unified/cdp/fetch.py +0 -111
  384. osn_selenium/executors/unified/cdp/file_system.py +0 -15
  385. osn_selenium/executors/unified/cdp/headless_experimental.py +0 -38
  386. osn_selenium/executors/unified/cdp/heap_profiler.py +0 -101
  387. osn_selenium/executors/unified/cdp/indexed_db.py +0 -157
  388. osn_selenium/executors/unified/cdp/input.py +0 -254
  389. osn_selenium/executors/unified/cdp/inspector.py +0 -15
  390. osn_selenium/executors/unified/cdp/io.py +0 -29
  391. osn_selenium/executors/unified/cdp/layer_tree.py +0 -71
  392. osn_selenium/executors/unified/cdp/log.py +0 -29
  393. osn_selenium/executors/unified/cdp/media.py +0 -15
  394. osn_selenium/executors/unified/cdp/memory.py +0 -59
  395. osn_selenium/executors/unified/cdp/network.py +0 -323
  396. osn_selenium/executors/unified/cdp/overlay.py +0 -209
  397. osn_selenium/executors/unified/cdp/page.py +0 -410
  398. osn_selenium/executors/unified/cdp/performance.py +0 -27
  399. osn_selenium/executors/unified/cdp/performance_timeline.py +0 -17
  400. osn_selenium/executors/unified/cdp/preload.py +0 -15
  401. osn_selenium/executors/unified/cdp/profiler.py +0 -55
  402. osn_selenium/executors/unified/cdp/pwa.py +0 -55
  403. osn_selenium/executors/unified/cdp/runtime.py +0 -245
  404. osn_selenium/executors/unified/cdp/schema.py +0 -17
  405. osn_selenium/executors/unified/cdp/security.py +0 -27
  406. osn_selenium/executors/unified/cdp/service_worker.py +0 -62
  407. osn_selenium/executors/unified/cdp/storage.py +0 -178
  408. osn_selenium/executors/unified/cdp/system_info.py +0 -24
  409. osn_selenium/executors/unified/cdp/target.py +0 -165
  410. osn_selenium/executors/unified/cdp/tethering.py +0 -15
  411. osn_selenium/executors/unified/cdp/tracing.py +0 -62
  412. osn_selenium/executors/unified/cdp/web_audio.py +0 -18
  413. osn_selenium/executors/unified/cdp/web_authn.py +0 -103
  414. osn_selenium-1.1.0.dist-info/RECORD +0 -615
  415. /osn_selenium/{dev_tools/_exception_helpers.py → _exception_helpers.py} +0 -0
  416. /osn_selenium/executors/{unified/cdp → trio_bidi}/__init__.py +0 -0
  417. {osn_selenium-1.1.0.dist-info → osn_selenium-1.2.0.dist-info}/WHEEL +0 -0
  418. {osn_selenium-1.1.0.dist-info → osn_selenium-1.2.0.dist-info}/top_level.txt +0 -0
@@ -1,230 +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.runtime import (
12
- UnifiedRuntimeCDPExecutor
13
- )
14
- from osn_selenium.abstract.executors.cdp.runtime import (
15
- AbstractRuntimeCDPExecutor
16
- )
17
-
18
-
19
- __all__ = ["RuntimeCDPExecutor"]
20
-
21
-
22
- class RuntimeCDPExecutor(UnifiedRuntimeCDPExecutor, TrioThreadMixin, AbstractRuntimeCDPExecutor):
23
- def __init__(
24
- self,
25
- execute_function: Callable[[str, Dict[str, Any]], Any],
26
- lock: trio.Lock,
27
- limiter: trio.CapacityLimiter
28
- ):
29
- UnifiedRuntimeCDPExecutor.__init__(self, execute_function=execute_function)
30
-
31
- TrioThreadMixin.__init__(self, lock=lock, limiter=limiter)
32
-
33
- async def add_binding(
34
- self,
35
- name: str,
36
- execution_context_id: Optional[int] = None,
37
- execution_context_name: Optional[str] = None
38
- ) -> None:
39
- return await self.sync_to_trio(sync_function=self._add_binding_impl)(
40
- name=name,
41
- execution_context_id=execution_context_id,
42
- execution_context_name=execution_context_name
43
- )
44
-
45
- async def await_promise(
46
- self,
47
- promise_object_id: str,
48
- return_by_value: Optional[bool] = None,
49
- generate_preview: Optional[bool] = None
50
- ) -> Tuple[Dict[str, Any], Optional[Dict[str, Any]]]:
51
- return await self.sync_to_trio(sync_function=self._await_promise_impl)(
52
- promise_object_id=promise_object_id,
53
- return_by_value=return_by_value,
54
- generate_preview=generate_preview
55
- )
56
-
57
- async def call_function_on(
58
- self,
59
- function_declaration: str,
60
- object_id: Optional[str] = None,
61
- arguments: Optional[List[Dict[str, Any]]] = None,
62
- silent: Optional[bool] = None,
63
- return_by_value: Optional[bool] = None,
64
- generate_preview: Optional[bool] = None,
65
- user_gesture: Optional[bool] = None,
66
- await_promise: Optional[bool] = None,
67
- execution_context_id: Optional[int] = None,
68
- object_group: Optional[str] = None,
69
- throw_on_side_effect: Optional[bool] = None,
70
- unique_context_id: Optional[str] = None,
71
- serialization_options: Optional[Dict[str, Any]] = None
72
- ) -> Tuple[Dict[str, Any], Optional[Dict[str, Any]]]:
73
- return await self.sync_to_trio(sync_function=self._call_function_on_impl)(
74
- function_declaration=function_declaration,
75
- object_id=object_id,
76
- arguments=arguments,
77
- silent=silent,
78
- return_by_value=return_by_value,
79
- generate_preview=generate_preview,
80
- user_gesture=user_gesture,
81
- await_promise=await_promise,
82
- execution_context_id=execution_context_id,
83
- object_group=object_group,
84
- throw_on_side_effect=throw_on_side_effect,
85
- unique_context_id=unique_context_id,
86
- serialization_options=serialization_options
87
- )
88
-
89
- async def compile_script(
90
- self,
91
- expression: str,
92
- source_url: str,
93
- persist_script: bool,
94
- execution_context_id: Optional[int] = None
95
- ) -> Tuple[Optional[str], Optional[Dict[str, Any]]]:
96
- return await self.sync_to_trio(sync_function=self._compile_script_impl)(
97
- expression=expression,
98
- source_url=source_url,
99
- persist_script=persist_script,
100
- execution_context_id=execution_context_id
101
- )
102
-
103
- async def disable(self) -> None:
104
- return await self.sync_to_trio(sync_function=self._disable_impl)()
105
-
106
- async def discard_console_entries(self) -> None:
107
- return await self.sync_to_trio(sync_function=self._discard_console_entries_impl)()
108
-
109
- async def enable(self) -> None:
110
- return await self.sync_to_trio(sync_function=self._enable_impl)()
111
-
112
- async def evaluate(
113
- self,
114
- expression: str,
115
- object_group: Optional[str] = None,
116
- include_command_line_api: Optional[bool] = None,
117
- silent: Optional[bool] = None,
118
- context_id: Optional[int] = None,
119
- return_by_value: Optional[bool] = None,
120
- generate_preview: Optional[bool] = None,
121
- user_gesture: Optional[bool] = None,
122
- await_promise: Optional[bool] = None,
123
- throw_on_side_effect: Optional[bool] = None,
124
- timeout: Optional[float] = None,
125
- disable_breaks: Optional[bool] = None,
126
- repl_mode: Optional[bool] = None,
127
- allow_unsafe_eval_blocked_by_csp: Optional[bool] = None,
128
- unique_context_id: Optional[str] = None,
129
- serialization_options: Optional[Dict[str, Any]] = None
130
- ) -> Tuple[Dict[str, Any], Optional[Dict[str, Any]]]:
131
- return await self.sync_to_trio(sync_function=self._evaluate_impl)(
132
- expression=expression,
133
- object_group=object_group,
134
- include_command_line_api=include_command_line_api,
135
- silent=silent,
136
- context_id=context_id,
137
- return_by_value=return_by_value,
138
- generate_preview=generate_preview,
139
- user_gesture=user_gesture,
140
- await_promise=await_promise,
141
- throw_on_side_effect=throw_on_side_effect,
142
- timeout=timeout,
143
- disable_breaks=disable_breaks,
144
- repl_mode=repl_mode,
145
- allow_unsafe_eval_blocked_by_csp=allow_unsafe_eval_blocked_by_csp,
146
- unique_context_id=unique_context_id,
147
- serialization_options=serialization_options
148
- )
149
-
150
- async def get_exception_details(self, error_object_id: str) -> Optional[Dict[str, Any]]:
151
- return await self.sync_to_trio(sync_function=self._get_exception_details_impl)(error_object_id=error_object_id)
152
-
153
- async def get_heap_usage(self) -> Tuple[float, float, float, float]:
154
- return await self.sync_to_trio(sync_function=self._get_heap_usage_impl)()
155
-
156
- async def get_isolate_id(self) -> str:
157
- return await self.sync_to_trio(sync_function=self._get_isolate_id_impl)()
158
-
159
- async def get_properties(
160
- self,
161
- object_id: str,
162
- own_properties: Optional[bool] = None,
163
- accessor_properties_only: Optional[bool] = None,
164
- generate_preview: Optional[bool] = None,
165
- non_indexed_properties_only: Optional[bool] = None
166
- ) -> Tuple[
167
- List[Dict[str, Any]],
168
- Optional[List[Dict[str, Any]]],
169
- Optional[List[Dict[str, Any]]],
170
- Optional[Dict[str, Any]]
171
- ]:
172
- return await self.sync_to_trio(sync_function=self._get_properties_impl)(
173
- object_id=object_id,
174
- own_properties=own_properties,
175
- accessor_properties_only=accessor_properties_only,
176
- generate_preview=generate_preview,
177
- non_indexed_properties_only=non_indexed_properties_only
178
- )
179
-
180
- async def global_lexical_scope_names(self, execution_context_id: Optional[int] = None) -> List[str]:
181
- return await self.sync_to_trio(sync_function=self._global_lexical_scope_names_impl)(execution_context_id=execution_context_id)
182
-
183
- async def query_objects(self, prototype_object_id: str, object_group: Optional[str] = None) -> Dict[str, Any]:
184
- return await self.sync_to_trio(sync_function=self._query_objects_impl)(prototype_object_id=prototype_object_id, object_group=object_group)
185
-
186
- async def release_object(self, object_id: str) -> None:
187
- return await self.sync_to_trio(sync_function=self._release_object_impl)(object_id=object_id)
188
-
189
- async def release_object_group(self, object_group: str) -> None:
190
- return await self.sync_to_trio(sync_function=self._release_object_group_impl)(object_group=object_group)
191
-
192
- async def remove_binding(self, name: str) -> None:
193
- return await self.sync_to_trio(sync_function=self._remove_binding_impl)(name=name)
194
-
195
- async def run_if_waiting_for_debugger(self) -> None:
196
- return await self.sync_to_trio(sync_function=self._run_if_waiting_for_debugger_impl)()
197
-
198
- async def run_script(
199
- self,
200
- script_id: str,
201
- execution_context_id: Optional[int] = None,
202
- object_group: Optional[str] = None,
203
- silent: Optional[bool] = None,
204
- include_command_line_api: Optional[bool] = None,
205
- return_by_value: Optional[bool] = None,
206
- generate_preview: Optional[bool] = None,
207
- await_promise: Optional[bool] = None
208
- ) -> Tuple[Dict[str, Any], Optional[Dict[str, Any]]]:
209
- return await self.sync_to_trio(sync_function=self._run_script_impl)(
210
- script_id=script_id,
211
- execution_context_id=execution_context_id,
212
- object_group=object_group,
213
- silent=silent,
214
- include_command_line_api=include_command_line_api,
215
- return_by_value=return_by_value,
216
- generate_preview=generate_preview,
217
- await_promise=await_promise
218
- )
219
-
220
- async def set_async_call_stack_depth(self, max_depth: int) -> None:
221
- return await self.sync_to_trio(sync_function=self._set_async_call_stack_depth_impl)(max_depth=max_depth)
222
-
223
- async def set_custom_object_formatter_enabled(self, enabled: bool) -> None:
224
- return await self.sync_to_trio(sync_function=self._set_custom_object_formatter_enabled_impl)(enabled=enabled)
225
-
226
- async def set_max_call_stack_size_to_capture(self, size: int) -> None:
227
- return await self.sync_to_trio(sync_function=self._set_max_call_stack_size_to_capture_impl)(size=size)
228
-
229
- async def terminate_execution(self) -> None:
230
- return await self.sync_to_trio(sync_function=self._terminate_execution_impl)()
@@ -1,32 +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.schema import (
10
- UnifiedSchemaCDPExecutor
11
- )
12
- from osn_selenium.abstract.executors.cdp.schema import (
13
- AbstractSchemaCDPExecutor
14
- )
15
-
16
-
17
- __all__ = ["SchemaCDPExecutor"]
18
-
19
-
20
- class SchemaCDPExecutor(UnifiedSchemaCDPExecutor, TrioThreadMixin, AbstractSchemaCDPExecutor):
21
- def __init__(
22
- self,
23
- execute_function: Callable[[str, Dict[str, Any]], Any],
24
- lock: trio.Lock,
25
- limiter: trio.CapacityLimiter
26
- ):
27
- UnifiedSchemaCDPExecutor.__init__(self, execute_function=execute_function)
28
-
29
- TrioThreadMixin.__init__(self, lock=lock, limiter=limiter)
30
-
31
- async def get_domains(self) -> List[Dict[str, Any]]:
32
- return await self.sync_to_trio(sync_function=self._get_domains_impl)()
@@ -1,43 +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.security import (
5
- UnifiedSecurityCDPExecutor
6
- )
7
- from osn_selenium.abstract.executors.cdp.security import (
8
- AbstractSecurityCDPExecutor
9
- )
10
-
11
-
12
- __all__ = ["SecurityCDPExecutor"]
13
-
14
-
15
- class SecurityCDPExecutor(
16
- UnifiedSecurityCDPExecutor,
17
- TrioThreadMixin,
18
- AbstractSecurityCDPExecutor
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
- UnifiedSecurityCDPExecutor.__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 handle_certificate_error(self, event_id: int, action: str) -> None:
37
- return await self.sync_to_trio(sync_function=self._handle_certificate_error_impl)(event_id=event_id, action=action)
38
-
39
- async def set_ignore_certificate_errors(self, ignore: bool) -> None:
40
- return await self.sync_to_trio(sync_function=self._set_ignore_certificate_errors_impl)(ignore=ignore)
41
-
42
- async def set_override_certificate_errors(self, override: bool) -> None:
43
- return await self.sync_to_trio(sync_function=self._set_override_certificate_errors_impl)(override=override)
@@ -1,69 +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.service_worker import (
5
- UnifiedServiceWorkerCDPExecutor
6
- )
7
- from osn_selenium.abstract.executors.cdp.service_worker import (
8
- AbstractServiceWorkerCDPExecutor
9
- )
10
-
11
-
12
- __all__ = ["ServiceWorkerCDPExecutor"]
13
-
14
-
15
- class ServiceWorkerCDPExecutor(
16
- UnifiedServiceWorkerCDPExecutor,
17
- TrioThreadMixin,
18
- AbstractServiceWorkerCDPExecutor
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
- UnifiedServiceWorkerCDPExecutor.__init__(self, execute_function=execute_function)
27
-
28
- TrioThreadMixin.__init__(self, lock=lock, limiter=limiter)
29
-
30
- async def deliver_push_message(self, origin: str, registration_id: str, data: str) -> None:
31
- return await self.sync_to_trio(sync_function=self._deliver_push_message_impl)(origin=origin, registration_id=registration_id, data=data)
32
-
33
- async def disable(self) -> None:
34
- return await self.sync_to_trio(sync_function=self._disable_impl)()
35
-
36
- async def dispatch_periodic_sync_event(self, origin: str, registration_id: str, tag: str) -> None:
37
- return await self.sync_to_trio(sync_function=self._dispatch_periodic_sync_event_impl)(origin=origin, registration_id=registration_id, tag=tag)
38
-
39
- async def dispatch_sync_event(self, origin: str, registration_id: str, tag: str, last_chance: bool) -> None:
40
- return await self.sync_to_trio(sync_function=self._dispatch_sync_event_impl)(
41
- origin=origin,
42
- registration_id=registration_id,
43
- tag=tag,
44
- last_chance=last_chance
45
- )
46
-
47
- async def enable(self) -> None:
48
- return await self.sync_to_trio(sync_function=self._enable_impl)()
49
-
50
- async def set_force_update_on_page_load(self, force_update_on_page_load: bool) -> None:
51
- return await self.sync_to_trio(sync_function=self._set_force_update_on_page_load_impl)(force_update_on_page_load=force_update_on_page_load)
52
-
53
- async def skip_waiting(self, scope_url: str) -> None:
54
- return await self.sync_to_trio(sync_function=self._skip_waiting_impl)(scope_url=scope_url)
55
-
56
- async def start_worker(self, scope_url: str) -> None:
57
- return await self.sync_to_trio(sync_function=self._start_worker_impl)(scope_url=scope_url)
58
-
59
- async def stop_all_workers(self) -> None:
60
- return await self.sync_to_trio(sync_function=self._stop_all_workers_impl)()
61
-
62
- async def stop_worker(self, version_id: str) -> None:
63
- return await self.sync_to_trio(sync_function=self._stop_worker_impl)(version_id=version_id)
64
-
65
- async def unregister(self, scope_url: str) -> None:
66
- return await self.sync_to_trio(sync_function=self._unregister_impl)(scope_url=scope_url)
67
-
68
- async def update_registration(self, scope_url: str) -> None:
69
- return await self.sync_to_trio(sync_function=self._update_registration_impl)(scope_url=scope_url)
@@ -1,162 +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.storage import (
12
- UnifiedStorageCDPExecutor
13
- )
14
- from osn_selenium.abstract.executors.cdp.storage import (
15
- AbstractStorageCDPExecutor
16
- )
17
-
18
-
19
- __all__ = ["StorageCDPExecutor"]
20
-
21
-
22
- class StorageCDPExecutor(UnifiedStorageCDPExecutor, TrioThreadMixin, AbstractStorageCDPExecutor):
23
- def __init__(
24
- self,
25
- execute_function: Callable[[str, Dict[str, Any]], Any],
26
- lock: trio.Lock,
27
- limiter: trio.CapacityLimiter
28
- ):
29
- UnifiedStorageCDPExecutor.__init__(self, execute_function=execute_function)
30
-
31
- TrioThreadMixin.__init__(self, lock=lock, limiter=limiter)
32
-
33
- async def clear_cookies(self, browser_context_id: Optional[str] = None) -> None:
34
- return await self.sync_to_trio(sync_function=self._clear_cookies_impl)(browser_context_id=browser_context_id)
35
-
36
- async def clear_data_for_origin(self, origin: str, storage_types: str) -> None:
37
- return await self.sync_to_trio(sync_function=self._clear_data_for_origin_impl)(origin=origin, storage_types=storage_types)
38
-
39
- async def clear_data_for_storage_key(self, storage_key: str, storage_types: str) -> None:
40
- return await self.sync_to_trio(sync_function=self._clear_data_for_storage_key_impl)(storage_key=storage_key, storage_types=storage_types)
41
-
42
- async def clear_shared_storage_entries(self, owner_origin: str) -> None:
43
- return await self.sync_to_trio(sync_function=self._clear_shared_storage_entries_impl)(owner_origin=owner_origin)
44
-
45
- async def clear_trust_tokens(self, issuer_origin: str) -> bool:
46
- return await self.sync_to_trio(sync_function=self._clear_trust_tokens_impl)(issuer_origin=issuer_origin)
47
-
48
- async def delete_shared_storage_entry(self, owner_origin: str, key: str) -> None:
49
- return await self.sync_to_trio(sync_function=self._delete_shared_storage_entry_impl)(owner_origin=owner_origin, key=key)
50
-
51
- async def delete_storage_bucket(self, bucket: Dict[str, Any]) -> None:
52
- return await self.sync_to_trio(sync_function=self._delete_storage_bucket_impl)(bucket=bucket)
53
-
54
- async def get_affected_urls_for_third_party_cookie_metadata(self, first_party_url: str, third_party_urls: List[str]) -> List[str]:
55
- return await self.sync_to_trio(
56
- sync_function=self._get_affected_urls_for_third_party_cookie_metadata_impl
57
- )(first_party_url=first_party_url, third_party_urls=third_party_urls)
58
-
59
- async def get_cookies(self, browser_context_id: Optional[str] = None) -> List[Dict[str, Any]]:
60
- return await self.sync_to_trio(sync_function=self._get_cookies_impl)(browser_context_id=browser_context_id)
61
-
62
- async def get_interest_group_details(self, owner_origin: str, name: str) -> Any:
63
- return await self.sync_to_trio(sync_function=self._get_interest_group_details_impl)(owner_origin=owner_origin, name=name)
64
-
65
- async def get_related_website_sets(self) -> List[Dict[str, Any]]:
66
- return await self.sync_to_trio(sync_function=self._get_related_website_sets_impl)()
67
-
68
- async def get_shared_storage_entries(self, owner_origin: str) -> List[Dict[str, Any]]:
69
- return await self.sync_to_trio(sync_function=self._get_shared_storage_entries_impl)(owner_origin=owner_origin)
70
-
71
- async def get_shared_storage_metadata(self, owner_origin: str) -> Dict[str, Any]:
72
- return await self.sync_to_trio(sync_function=self._get_shared_storage_metadata_impl)(owner_origin=owner_origin)
73
-
74
- async def get_storage_key(self, frame_id: Optional[str] = None) -> str:
75
- return await self.sync_to_trio(sync_function=self._get_storage_key_impl)(frame_id=frame_id)
76
-
77
- async def get_storage_key_for_frame(self, frame_id: str) -> str:
78
- return await self.sync_to_trio(sync_function=self._get_storage_key_for_frame_impl)(frame_id=frame_id)
79
-
80
- async def get_trust_tokens(self) -> List[Dict[str, Any]]:
81
- return await self.sync_to_trio(sync_function=self._get_trust_tokens_impl)()
82
-
83
- async def get_usage_and_quota(self, origin: str) -> Tuple[float, float, bool, List[Dict[str, Any]]]:
84
- return await self.sync_to_trio(sync_function=self._get_usage_and_quota_impl)(origin=origin)
85
-
86
- async def override_quota_for_origin(self, origin: str, quota_size: Optional[float] = None) -> None:
87
- return await self.sync_to_trio(sync_function=self._override_quota_for_origin_impl)(origin=origin, quota_size=quota_size)
88
-
89
- async def reset_shared_storage_budget(self, owner_origin: str) -> None:
90
- return await self.sync_to_trio(sync_function=self._reset_shared_storage_budget_impl)(owner_origin=owner_origin)
91
-
92
- async def run_bounce_tracking_mitigations(self) -> List[str]:
93
- return await self.sync_to_trio(sync_function=self._run_bounce_tracking_mitigations_impl)()
94
-
95
- async def send_pending_attribution_reports(self) -> int:
96
- return await self.sync_to_trio(sync_function=self._send_pending_attribution_reports_impl)()
97
-
98
- async def set_attribution_reporting_local_testing_mode(self, enabled: bool) -> None:
99
- return await self.sync_to_trio(sync_function=self._set_attribution_reporting_local_testing_mode_impl)(enabled=enabled)
100
-
101
- async def set_attribution_reporting_tracking(self, enable: bool) -> None:
102
- return await self.sync_to_trio(sync_function=self._set_attribution_reporting_tracking_impl)(enable=enable)
103
-
104
- async def set_cookies(
105
- self,
106
- cookies: List[Dict[str, Any]],
107
- browser_context_id: Optional[str] = None
108
- ) -> None:
109
- return await self.sync_to_trio(sync_function=self._set_cookies_impl)(cookies=cookies, browser_context_id=browser_context_id)
110
-
111
- async def set_interest_group_auction_tracking(self, enable: bool) -> None:
112
- return await self.sync_to_trio(sync_function=self._set_interest_group_auction_tracking_impl)(enable=enable)
113
-
114
- async def set_interest_group_tracking(self, enable: bool) -> None:
115
- return await self.sync_to_trio(sync_function=self._set_interest_group_tracking_impl)(enable=enable)
116
-
117
- async def set_protected_audience_k_anonymity(self, owner: str, name: str, hashes: List[str]) -> None:
118
- return await self.sync_to_trio(sync_function=self._set_protected_audience_k_anonymity_impl)(owner=owner, name=name, hashes=hashes)
119
-
120
- async def set_shared_storage_entry(
121
- self,
122
- owner_origin: str,
123
- key: str,
124
- value: str,
125
- ignore_if_present: Optional[bool] = None
126
- ) -> None:
127
- return await self.sync_to_trio(sync_function=self._set_shared_storage_entry_impl)(
128
- owner_origin=owner_origin,
129
- key=key,
130
- value=value,
131
- ignore_if_present=ignore_if_present
132
- )
133
-
134
- async def set_shared_storage_tracking(self, enable: bool) -> None:
135
- return await self.sync_to_trio(sync_function=self._set_shared_storage_tracking_impl)(enable=enable)
136
-
137
- async def set_storage_bucket_tracking(self, storage_key: str, enable: bool) -> None:
138
- return await self.sync_to_trio(sync_function=self._set_storage_bucket_tracking_impl)(storage_key=storage_key, enable=enable)
139
-
140
- async def track_cache_storage_for_origin(self, origin: str) -> None:
141
- return await self.sync_to_trio(sync_function=self._track_cache_storage_for_origin_impl)(origin=origin)
142
-
143
- async def track_cache_storage_for_storage_key(self, storage_key: str) -> None:
144
- return await self.sync_to_trio(sync_function=self._track_cache_storage_for_storage_key_impl)(storage_key=storage_key)
145
-
146
- async def track_indexed_db_for_origin(self, origin: str) -> None:
147
- return await self.sync_to_trio(sync_function=self._track_indexed_db_for_origin_impl)(origin=origin)
148
-
149
- async def track_indexed_db_for_storage_key(self, storage_key: str) -> None:
150
- return await self.sync_to_trio(sync_function=self._track_indexed_db_for_storage_key_impl)(storage_key=storage_key)
151
-
152
- async def untrack_cache_storage_for_origin(self, origin: str) -> None:
153
- return await self.sync_to_trio(sync_function=self._untrack_cache_storage_for_origin_impl)(origin=origin)
154
-
155
- async def untrack_cache_storage_for_storage_key(self, storage_key: str) -> None:
156
- return await self.sync_to_trio(sync_function=self._untrack_cache_storage_for_storage_key_impl)(storage_key=storage_key)
157
-
158
- async def untrack_indexed_db_for_origin(self, origin: str) -> None:
159
- return await self.sync_to_trio(sync_function=self._untrack_indexed_db_for_origin_impl)(origin=origin)
160
-
161
- async def untrack_indexed_db_for_storage_key(self, storage_key: str) -> None:
162
- return await self.sync_to_trio(sync_function=self._untrack_indexed_db_for_storage_key_impl)(storage_key=storage_key)
@@ -1,43 +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
- Tuple
9
- )
10
- from osn_selenium.executors.unified.cdp.system_info import (
11
- UnifiedSystemInfoCDPExecutor
12
- )
13
- from osn_selenium.abstract.executors.cdp.system_info import (
14
- AbstractSystemInfoCDPExecutor
15
- )
16
-
17
-
18
- __all__ = ["SystemInfoCDPExecutor"]
19
-
20
-
21
- class SystemInfoCDPExecutor(
22
- UnifiedSystemInfoCDPExecutor,
23
- TrioThreadMixin,
24
- AbstractSystemInfoCDPExecutor
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
- UnifiedSystemInfoCDPExecutor.__init__(self, execute_function=execute_function)
33
-
34
- TrioThreadMixin.__init__(self, lock=lock, limiter=limiter)
35
-
36
- async def get_feature_state(self, feature_state: str) -> bool:
37
- return await self.sync_to_trio(sync_function=self._get_feature_state_impl)(feature_state=feature_state)
38
-
39
- async def get_info(self) -> Tuple[Dict[str, Any], str, str, str]:
40
- return await self.sync_to_trio(sync_function=self._get_info_impl)()
41
-
42
- async def get_process_info(self) -> List[Dict[str, Any]]:
43
- return await self.sync_to_trio(sync_function=self._get_process_info_impl)()