osn-selenium 0.0.0__py3-none-any.whl → 1.1.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.
- osn_selenium/_base_models.py +41 -0
- osn_selenium/_cdp_import.py +253 -0
- osn_selenium/_functions.py +84 -0
- osn_selenium/_typehints.py +19 -0
- osn_selenium/abstract/executors/cdp/__init__.py +435 -0
- osn_selenium/abstract/executors/cdp/accessibility.py +62 -0
- osn_selenium/abstract/executors/cdp/animation.py +47 -0
- osn_selenium/abstract/executors/cdp/audits.py +39 -0
- osn_selenium/abstract/executors/cdp/autofill.py +34 -0
- osn_selenium/abstract/executors/cdp/background_service.py +22 -0
- osn_selenium/abstract/executors/cdp/bluetooth_emulation.py +95 -0
- osn_selenium/abstract/executors/cdp/browser.py +122 -0
- osn_selenium/abstract/executors/cdp/cache_storage.py +49 -0
- osn_selenium/abstract/executors/cdp/cast.py +31 -0
- osn_selenium/abstract/executors/cdp/console.py +18 -0
- osn_selenium/abstract/executors/cdp/css.py +197 -0
- osn_selenium/abstract/executors/cdp/debugger.py +198 -0
- osn_selenium/abstract/executors/cdp/device_access.py +22 -0
- osn_selenium/abstract/executors/cdp/device_orientation.py +14 -0
- osn_selenium/abstract/executors/cdp/dom.py +305 -0
- osn_selenium/abstract/executors/cdp/dom_debugger.py +57 -0
- osn_selenium/abstract/executors/cdp/dom_snapshot.py +42 -0
- osn_selenium/abstract/executors/cdp/dom_storage.py +31 -0
- osn_selenium/abstract/executors/cdp/emulation.py +259 -0
- osn_selenium/abstract/executors/cdp/event_breakpoints.py +18 -0
- osn_selenium/abstract/executors/cdp/extensions.py +31 -0
- osn_selenium/abstract/executors/cdp/fed_cm.py +35 -0
- osn_selenium/abstract/executors/cdp/fetch.py +76 -0
- osn_selenium/abstract/executors/cdp/file_system.py +11 -0
- osn_selenium/abstract/executors/cdp/headless_experimental.py +30 -0
- osn_selenium/abstract/executors/cdp/heap_profiler.py +73 -0
- osn_selenium/abstract/executors/cdp/indexed_db.py +99 -0
- osn_selenium/abstract/executors/cdp/input.py +158 -0
- osn_selenium/abstract/executors/cdp/inspector.py +14 -0
- osn_selenium/abstract/executors/cdp/io.py +24 -0
- osn_selenium/abstract/executors/cdp/layer_tree.py +61 -0
- osn_selenium/abstract/executors/cdp/log.py +27 -0
- osn_selenium/abstract/executors/cdp/media.py +14 -0
- osn_selenium/abstract/executors/cdp/memory.py +61 -0
- osn_selenium/abstract/executors/cdp/network.py +252 -0
- osn_selenium/abstract/executors/cdp/overlay.py +166 -0
- osn_selenium/abstract/executors/cdp/page.py +347 -0
- osn_selenium/abstract/executors/cdp/performance.py +28 -0
- osn_selenium/abstract/executors/cdp/performance_timeline.py +11 -0
- osn_selenium/abstract/executors/cdp/preload.py +14 -0
- osn_selenium/abstract/executors/cdp/profiler.py +54 -0
- osn_selenium/abstract/executors/cdp/pwa.py +46 -0
- osn_selenium/abstract/executors/cdp/runtime.py +176 -0
- osn_selenium/abstract/executors/cdp/schema.py +11 -0
- osn_selenium/abstract/executors/cdp/security.py +26 -0
- osn_selenium/abstract/executors/cdp/service_worker.py +54 -0
- osn_selenium/abstract/executors/cdp/storage.py +175 -0
- osn_selenium/abstract/executors/cdp/system_info.py +24 -0
- osn_selenium/abstract/executors/cdp/target.py +125 -0
- osn_selenium/abstract/executors/cdp/tethering.py +14 -0
- osn_selenium/abstract/executors/cdp/tracing.py +48 -0
- osn_selenium/abstract/executors/cdp/web_audio.py +19 -0
- osn_selenium/abstract/executors/cdp/web_authn.py +76 -0
- osn_selenium/abstract/executors/cdp.py +63 -0
- osn_selenium/abstract/executors/javascript.py +203 -0
- osn_selenium/abstract/instances/action_chains/__init__.py +12 -0
- osn_selenium/abstract/instances/action_chains/base.py +25 -0
- osn_selenium/abstract/instances/action_chains/click.py +93 -0
- osn_selenium/abstract/instances/action_chains/drag_and_drop.py +46 -0
- osn_selenium/abstract/instances/action_chains/hm_keyboard.py +44 -0
- osn_selenium/abstract/instances/action_chains/hm_move.py +104 -0
- osn_selenium/abstract/instances/action_chains/hm_scroll.py +75 -0
- osn_selenium/abstract/instances/action_chains/keyboard.py +79 -0
- osn_selenium/abstract/instances/action_chains/move.py +60 -0
- osn_selenium/abstract/instances/action_chains/scroll.py +61 -0
- osn_selenium/abstract/instances/action_chains/utils.py +44 -0
- osn_selenium/abstract/instances/alert.py +67 -0
- osn_selenium/abstract/instances/browser.py +76 -0
- osn_selenium/abstract/instances/browsing_context.py +310 -0
- osn_selenium/abstract/instances/dialog.py +107 -0
- osn_selenium/abstract/instances/fedcm.py +133 -0
- osn_selenium/abstract/instances/mobile.py +79 -0
- osn_selenium/abstract/instances/network.py +100 -0
- osn_selenium/abstract/instances/permissions.py +52 -0
- osn_selenium/abstract/instances/script.py +109 -0
- osn_selenium/abstract/instances/shadow_root.py +81 -0
- osn_selenium/abstract/instances/storage.py +98 -0
- osn_selenium/abstract/instances/switch_to.py +104 -0
- osn_selenium/abstract/instances/web_driver_wait.py +57 -0
- osn_selenium/abstract/instances/web_element.py +395 -0
- osn_selenium/abstract/instances/web_extension.py +70 -0
- osn_selenium/abstract/webdriver/blink/__init__.py +18 -0
- osn_selenium/abstract/webdriver/blink/base.py +80 -0
- osn_selenium/abstract/webdriver/blink/casting.py +82 -0
- osn_selenium/abstract/webdriver/blink/features.py +51 -0
- osn_selenium/abstract/webdriver/blink/lifecycle.py +76 -0
- osn_selenium/abstract/webdriver/blink/logging.py +40 -0
- osn_selenium/abstract/webdriver/blink/network.py +45 -0
- osn_selenium/abstract/webdriver/blink/settings.py +68 -0
- osn_selenium/abstract/webdriver/chrome/__init__.py +18 -0
- osn_selenium/abstract/webdriver/chrome/base.py +36 -0
- osn_selenium/abstract/webdriver/chrome/lifecycle.py +92 -0
- osn_selenium/abstract/webdriver/chrome/settings.py +110 -0
- osn_selenium/abstract/webdriver/core/__init__.py +16 -0
- osn_selenium/abstract/webdriver/core/actions.py +58 -0
- osn_selenium/abstract/webdriver/core/auth.py +145 -0
- osn_selenium/abstract/webdriver/core/base.py +298 -0
- osn_selenium/abstract/webdriver/core/capture.py +84 -0
- osn_selenium/abstract/webdriver/core/components.py +82 -0
- osn_selenium/abstract/webdriver/core/devtools.py +69 -0
- osn_selenium/abstract/webdriver/core/element.py +55 -0
- osn_selenium/abstract/webdriver/core/file.py +82 -0
- osn_selenium/abstract/webdriver/core/lifecycle.py +103 -0
- osn_selenium/abstract/webdriver/core/navigation.py +65 -0
- osn_selenium/abstract/webdriver/core/script.py +88 -0
- osn_selenium/abstract/webdriver/core/settings.py +43 -0
- osn_selenium/abstract/webdriver/core/storage.py +81 -0
- osn_selenium/abstract/webdriver/core/timeouts.py +101 -0
- osn_selenium/abstract/webdriver/core/window.py +237 -0
- osn_selenium/abstract/webdriver/edge/__init__.py +18 -0
- osn_selenium/abstract/webdriver/edge/base.py +36 -0
- osn_selenium/abstract/webdriver/edge/lifecycle.py +92 -0
- osn_selenium/abstract/webdriver/edge/settings.py +110 -0
- osn_selenium/abstract/webdriver/yandex/__init__.py +18 -0
- osn_selenium/abstract/webdriver/yandex/base.py +18 -0
- osn_selenium/abstract/webdriver/yandex/lifecycle.py +92 -0
- osn_selenium/abstract/webdriver/yandex/settings.py +110 -0
- osn_selenium/base_mixin.py +122 -0
- osn_selenium/browsers_handler/__init__.py +47 -17
- osn_selenium/browsers_handler/_linux.py +226 -0
- osn_selenium/browsers_handler/_windows.py +21 -14
- osn_selenium/browsers_handler/{types.py → models.py} +5 -2
- osn_selenium/dev_tools/_decorators.py +149 -0
- osn_selenium/dev_tools/_exception_helpers.py +116 -0
- osn_selenium/dev_tools/_functions.py +174 -0
- osn_selenium/dev_tools/_system_utils.py +35 -0
- osn_selenium/dev_tools/_typehints.py +35 -0
- osn_selenium/dev_tools/_validators.py +227 -0
- osn_selenium/dev_tools/_wrappers.py +92 -0
- osn_selenium/dev_tools/domains/__init__.py +7 -40
- osn_selenium/dev_tools/domains/abstract.py +98 -254
- osn_selenium/dev_tools/domains/fetch.py +229 -906
- osn_selenium/dev_tools/domains_default/fetch.py +40 -28
- osn_selenium/dev_tools/filters.py +40 -0
- osn_selenium/dev_tools/logger/main.py +214 -0
- osn_selenium/dev_tools/logger/models.py +232 -0
- osn_selenium/dev_tools/logger/target.py +278 -0
- osn_selenium/dev_tools/manager/__init__.py +16 -0
- osn_selenium/dev_tools/manager/base.py +124 -0
- osn_selenium/dev_tools/manager/lifecycle.py +236 -0
- osn_selenium/dev_tools/manager/logging.py +153 -0
- osn_selenium/dev_tools/manager/settings.py +89 -0
- osn_selenium/dev_tools/manager/targets.py +175 -0
- osn_selenium/dev_tools/models.py +49 -0
- osn_selenium/dev_tools/settings.py +139 -0
- osn_selenium/dev_tools/target/__init__.py +16 -0
- osn_selenium/dev_tools/target/base.py +427 -0
- osn_selenium/dev_tools/target/detach.py +54 -0
- osn_selenium/dev_tools/target/discovery.py +112 -0
- osn_selenium/dev_tools/target/events.py +120 -0
- osn_selenium/dev_tools/target/fingerprint.py +126 -0
- osn_selenium/dev_tools/target/lifecycle.py +184 -0
- osn_selenium/dev_tools/target/logging.py +163 -0
- osn_selenium/exceptions/__init__.py +1 -0
- osn_selenium/exceptions/base.py +9 -0
- osn_selenium/exceptions/configuration.py +84 -0
- osn_selenium/exceptions/dependencies.py +60 -0
- osn_selenium/exceptions/devtools.py +114 -0
- osn_selenium/exceptions/flags.py +45 -0
- osn_selenium/exceptions/instance.py +92 -0
- osn_selenium/exceptions/javascript.py +31 -0
- osn_selenium/exceptions/logic.py +31 -0
- osn_selenium/exceptions/path.py +77 -0
- osn_selenium/exceptions/platform.py +33 -0
- osn_selenium/exceptions/protocol.py +86 -0
- osn_selenium/exceptions/webdriver.py +44 -0
- osn_selenium/exceptions/window.py +63 -0
- osn_selenium/executors/__init__.py +1 -0
- osn_selenium/executors/sync/__init__.py +1 -0
- osn_selenium/executors/sync/cdp/__init__.py +550 -0
- osn_selenium/executors/sync/cdp/accessibility.py +74 -0
- osn_selenium/executors/sync/cdp/animation.py +50 -0
- osn_selenium/executors/sync/cdp/audits.py +48 -0
- osn_selenium/executors/sync/cdp/autofill.py +39 -0
- osn_selenium/executors/sync/cdp/background_service.py +30 -0
- osn_selenium/executors/sync/cdp/bluetooth_emulation.py +101 -0
- osn_selenium/executors/sync/cdp/browser.py +131 -0
- osn_selenium/executors/sync/cdp/cache_storage.py +66 -0
- osn_selenium/executors/sync/cdp/cast.py +38 -0
- osn_selenium/executors/sync/cdp/console.py +24 -0
- osn_selenium/executors/sync/cdp/css.py +187 -0
- osn_selenium/executors/sync/cdp/debugger.py +206 -0
- osn_selenium/executors/sync/cdp/device_access.py +27 -0
- osn_selenium/executors/sync/cdp/device_orientation.py +24 -0
- osn_selenium/executors/sync/cdp/dom.py +310 -0
- osn_selenium/executors/sync/cdp/dom_debugger.py +56 -0
- osn_selenium/executors/sync/cdp/dom_snapshot.py +58 -0
- osn_selenium/executors/sync/cdp/dom_storage.py +38 -0
- osn_selenium/executors/sync/cdp/emulation.py +270 -0
- osn_selenium/executors/sync/cdp/event_breakpoints.py +27 -0
- osn_selenium/executors/sync/cdp/extensions.py +39 -0
- osn_selenium/executors/sync/cdp/fed_cm.py +45 -0
- osn_selenium/executors/sync/cdp/fetch.py +96 -0
- osn_selenium/executors/sync/cdp/file_system.py +18 -0
- osn_selenium/executors/sync/cdp/headless_experimental.py +44 -0
- osn_selenium/executors/sync/cdp/heap_profiler.py +89 -0
- osn_selenium/executors/sync/cdp/indexed_db.py +142 -0
- osn_selenium/executors/sync/cdp/input.py +233 -0
- osn_selenium/executors/sync/cdp/inspector.py +21 -0
- osn_selenium/executors/sync/cdp/io.py +33 -0
- osn_selenium/executors/sync/cdp/layer_tree.py +71 -0
- osn_selenium/executors/sync/cdp/log.py +35 -0
- osn_selenium/executors/sync/cdp/media.py +21 -0
- osn_selenium/executors/sync/cdp/memory.py +62 -0
- osn_selenium/executors/sync/cdp/network.py +287 -0
- osn_selenium/executors/sync/cdp/overlay.py +174 -0
- osn_selenium/executors/sync/cdp/page.py +365 -0
- osn_selenium/executors/sync/cdp/performance.py +33 -0
- osn_selenium/executors/sync/cdp/performance_timeline.py +26 -0
- osn_selenium/executors/sync/cdp/preload.py +21 -0
- osn_selenium/executors/sync/cdp/profiler.py +58 -0
- osn_selenium/executors/sync/cdp/pwa.py +55 -0
- osn_selenium/executors/sync/cdp/runtime.py +221 -0
- osn_selenium/executors/sync/cdp/schema.py +23 -0
- osn_selenium/executors/sync/cdp/security.py +30 -0
- osn_selenium/executors/sync/cdp/service_worker.py +56 -0
- osn_selenium/executors/sync/cdp/storage.py +151 -0
- osn_selenium/executors/sync/cdp/system_info.py +30 -0
- osn_selenium/executors/sync/cdp/target.py +147 -0
- osn_selenium/executors/sync/cdp/tethering.py +21 -0
- osn_selenium/executors/sync/cdp/tracing.py +62 -0
- osn_selenium/executors/sync/cdp/web_audio.py +24 -0
- osn_selenium/executors/sync/cdp/web_authn.py +82 -0
- osn_selenium/executors/sync/cdp.py +100 -0
- osn_selenium/executors/sync/javascript.py +79 -0
- osn_selenium/executors/trio_threads/__init__.py +1 -0
- osn_selenium/executors/trio_threads/cdp/__init__.py +771 -0
- osn_selenium/executors/trio_threads/cdp/accessibility.py +87 -0
- osn_selenium/executors/trio_threads/cdp/animation.py +63 -0
- osn_selenium/executors/trio_threads/cdp/audits.py +57 -0
- osn_selenium/executors/trio_threads/cdp/autofill.py +52 -0
- osn_selenium/executors/trio_threads/cdp/background_service.py +40 -0
- osn_selenium/executors/trio_threads/cdp/bluetooth_emulation.py +111 -0
- osn_selenium/executors/trio_threads/cdp/browser.py +140 -0
- osn_selenium/executors/trio_threads/cdp/cache_storage.py +79 -0
- osn_selenium/executors/trio_threads/cdp/cast.py +47 -0
- osn_selenium/executors/trio_threads/cdp/console.py +33 -0
- osn_selenium/executors/trio_threads/cdp/css.py +196 -0
- osn_selenium/executors/trio_threads/cdp/debugger.py +219 -0
- osn_selenium/executors/trio_threads/cdp/device_access.py +40 -0
- osn_selenium/executors/trio_threads/cdp/device_orientation.py +34 -0
- osn_selenium/executors/trio_threads/cdp/dom.py +319 -0
- osn_selenium/executors/trio_threads/cdp/dom_debugger.py +69 -0
- osn_selenium/executors/trio_threads/cdp/dom_snapshot.py +71 -0
- osn_selenium/executors/trio_threads/cdp/dom_storage.py +51 -0
- osn_selenium/executors/trio_threads/cdp/emulation.py +283 -0
- osn_selenium/executors/trio_threads/cdp/event_breakpoints.py +37 -0
- osn_selenium/executors/trio_threads/cdp/extensions.py +52 -0
- osn_selenium/executors/trio_threads/cdp/fed_cm.py +54 -0
- osn_selenium/executors/trio_threads/cdp/fetch.py +105 -0
- osn_selenium/executors/trio_threads/cdp/file_system.py +31 -0
- osn_selenium/executors/trio_threads/cdp/headless_experimental.py +54 -0
- osn_selenium/executors/trio_threads/cdp/heap_profiler.py +102 -0
- osn_selenium/executors/trio_threads/cdp/indexed_db.py +155 -0
- osn_selenium/executors/trio_threads/cdp/input.py +242 -0
- osn_selenium/executors/trio_threads/cdp/inspector.py +34 -0
- osn_selenium/executors/trio_threads/cdp/io.py +42 -0
- osn_selenium/executors/trio_threads/cdp/layer_tree.py +84 -0
- osn_selenium/executors/trio_threads/cdp/log.py +44 -0
- osn_selenium/executors/trio_threads/cdp/media.py +30 -0
- osn_selenium/executors/trio_threads/cdp/memory.py +71 -0
- osn_selenium/executors/trio_threads/cdp/network.py +296 -0
- osn_selenium/executors/trio_threads/cdp/overlay.py +183 -0
- osn_selenium/executors/trio_threads/cdp/page.py +374 -0
- osn_selenium/executors/trio_threads/cdp/performance.py +46 -0
- osn_selenium/executors/trio_threads/cdp/performance_timeline.py +36 -0
- osn_selenium/executors/trio_threads/cdp/preload.py +30 -0
- osn_selenium/executors/trio_threads/cdp/profiler.py +71 -0
- osn_selenium/executors/trio_threads/cdp/pwa.py +64 -0
- osn_selenium/executors/trio_threads/cdp/runtime.py +230 -0
- osn_selenium/executors/trio_threads/cdp/schema.py +32 -0
- osn_selenium/executors/trio_threads/cdp/security.py +43 -0
- osn_selenium/executors/trio_threads/cdp/service_worker.py +69 -0
- osn_selenium/executors/trio_threads/cdp/storage.py +162 -0
- osn_selenium/executors/trio_threads/cdp/system_info.py +43 -0
- osn_selenium/executors/trio_threads/cdp/target.py +156 -0
- osn_selenium/executors/trio_threads/cdp/tethering.py +34 -0
- osn_selenium/executors/trio_threads/cdp/tracing.py +71 -0
- osn_selenium/executors/trio_threads/cdp/web_audio.py +37 -0
- osn_selenium/executors/trio_threads/cdp/web_authn.py +95 -0
- osn_selenium/executors/trio_threads/cdp.py +104 -0
- osn_selenium/executors/trio_threads/javascript.py +90 -0
- osn_selenium/executors/unified/__init__.py +1 -0
- osn_selenium/executors/unified/cdp/__init__.py +1 -0
- osn_selenium/executors/unified/cdp/accessibility.py +81 -0
- osn_selenium/executors/unified/cdp/animation.py +50 -0
- osn_selenium/executors/unified/cdp/audits.py +45 -0
- osn_selenium/executors/unified/cdp/autofill.py +41 -0
- osn_selenium/executors/unified/cdp/background_service.py +24 -0
- osn_selenium/executors/unified/cdp/bluetooth_emulation.py +132 -0
- osn_selenium/executors/unified/cdp/browser.py +143 -0
- osn_selenium/executors/unified/cdp/cache_storage.py +69 -0
- osn_selenium/executors/unified/cdp/cast.py +32 -0
- osn_selenium/executors/unified/cdp/console.py +18 -0
- osn_selenium/executors/unified/cdp/css.py +237 -0
- osn_selenium/executors/unified/cdp/debugger.py +243 -0
- osn_selenium/executors/unified/cdp/device_access.py +21 -0
- osn_selenium/executors/unified/cdp/device_orientation.py +18 -0
- osn_selenium/executors/unified/cdp/dom.py +380 -0
- osn_selenium/executors/unified/cdp/dom_debugger.py +65 -0
- osn_selenium/executors/unified/cdp/dom_snapshot.py +58 -0
- osn_selenium/executors/unified/cdp/dom_storage.py +38 -0
- osn_selenium/executors/unified/cdp/emulation.py +312 -0
- osn_selenium/executors/unified/cdp/event_breakpoints.py +24 -0
- osn_selenium/executors/unified/cdp/extensions.py +45 -0
- osn_selenium/executors/unified/cdp/fed_cm.py +51 -0
- osn_selenium/executors/unified/cdp/fetch.py +111 -0
- osn_selenium/executors/unified/cdp/file_system.py +15 -0
- osn_selenium/executors/unified/cdp/headless_experimental.py +38 -0
- osn_selenium/executors/unified/cdp/heap_profiler.py +101 -0
- osn_selenium/executors/unified/cdp/indexed_db.py +157 -0
- osn_selenium/executors/unified/cdp/input.py +254 -0
- osn_selenium/executors/unified/cdp/inspector.py +15 -0
- osn_selenium/executors/unified/cdp/io.py +29 -0
- osn_selenium/executors/unified/cdp/layer_tree.py +71 -0
- osn_selenium/executors/unified/cdp/log.py +29 -0
- osn_selenium/executors/unified/cdp/media.py +15 -0
- osn_selenium/executors/unified/cdp/memory.py +59 -0
- osn_selenium/executors/unified/cdp/network.py +323 -0
- osn_selenium/executors/unified/cdp/overlay.py +209 -0
- osn_selenium/executors/unified/cdp/page.py +410 -0
- osn_selenium/executors/unified/cdp/performance.py +27 -0
- osn_selenium/executors/unified/cdp/performance_timeline.py +17 -0
- osn_selenium/executors/unified/cdp/preload.py +15 -0
- osn_selenium/executors/unified/cdp/profiler.py +55 -0
- osn_selenium/executors/unified/cdp/pwa.py +55 -0
- osn_selenium/executors/unified/cdp/runtime.py +245 -0
- osn_selenium/executors/unified/cdp/schema.py +17 -0
- osn_selenium/executors/unified/cdp/security.py +27 -0
- osn_selenium/executors/unified/cdp/service_worker.py +62 -0
- osn_selenium/executors/unified/cdp/storage.py +178 -0
- osn_selenium/executors/unified/cdp/system_info.py +24 -0
- osn_selenium/executors/unified/cdp/target.py +165 -0
- osn_selenium/executors/unified/cdp/tethering.py +15 -0
- osn_selenium/executors/unified/cdp/tracing.py +62 -0
- osn_selenium/executors/unified/cdp/web_audio.py +18 -0
- osn_selenium/executors/unified/cdp/web_authn.py +103 -0
- osn_selenium/executors/unified/javascript.py +104 -0
- osn_selenium/flags/__init__.py +1 -0
- osn_selenium/flags/_functions.py +45 -0
- osn_selenium/flags/_typehints.py +34 -0
- osn_selenium/flags/_validators.py +101 -0
- osn_selenium/{webdrivers/BaseDriver/flags.py → flags/base.py} +159 -245
- osn_selenium/{webdrivers/Blink/flags.py → flags/blink.py} +130 -374
- osn_selenium/flags/chrome.py +259 -0
- osn_selenium/flags/edge.py +259 -0
- osn_selenium/flags/models/__init__.py +1 -0
- osn_selenium/flags/models/base.py +130 -0
- osn_selenium/flags/models/blink.py +263 -0
- osn_selenium/{webdrivers/Chrome/flags.py → flags/models/chrome.py} +25 -75
- osn_selenium/{webdrivers/Edge/flags.py → flags/models/edge.py} +25 -75
- osn_selenium/flags/models/values.py +44 -0
- osn_selenium/{webdrivers/Yandex/flags.py → flags/models/yandex.py} +26 -76
- osn_selenium/flags/yandex.py +259 -0
- osn_selenium/instances/__init__.py +1 -0
- osn_selenium/instances/_functions.py +242 -0
- osn_selenium/instances/_typehints.py +148 -0
- osn_selenium/instances/_utils.py +143 -0
- osn_selenium/instances/convert.py +287 -0
- osn_selenium/instances/protocols.py +105 -0
- osn_selenium/instances/sync/__init__.py +1 -0
- osn_selenium/instances/sync/action_chains/__init__.py +32 -0
- osn_selenium/instances/sync/action_chains/base.py +74 -0
- osn_selenium/instances/sync/action_chains/click.py +61 -0
- osn_selenium/instances/sync/action_chains/drag_and_drop.py +45 -0
- osn_selenium/instances/sync/action_chains/hm_keyboard.py +37 -0
- osn_selenium/instances/sync/action_chains/hm_move.py +81 -0
- osn_selenium/instances/sync/action_chains/hm_scroll.py +60 -0
- osn_selenium/instances/sync/action_chains/keyboard.py +55 -0
- osn_selenium/instances/sync/action_chains/move.py +46 -0
- osn_selenium/instances/sync/action_chains/scroll.py +43 -0
- osn_selenium/instances/sync/action_chains/utils.py +30 -0
- osn_selenium/instances/sync/alert.py +69 -0
- osn_selenium/instances/sync/browser.py +72 -0
- osn_selenium/instances/sync/browsing_context.py +193 -0
- osn_selenium/instances/sync/dialog.py +81 -0
- osn_selenium/instances/sync/fedcm.py +92 -0
- osn_selenium/instances/sync/mobile.py +75 -0
- osn_selenium/instances/sync/network.py +90 -0
- osn_selenium/instances/sync/permissions.py +80 -0
- osn_selenium/instances/sync/script.py +77 -0
- osn_selenium/instances/sync/shadow_root.py +113 -0
- osn_selenium/instances/sync/storage.py +91 -0
- osn_selenium/instances/sync/switch_to.py +92 -0
- osn_selenium/instances/sync/web_driver_wait.py +83 -0
- osn_selenium/instances/sync/web_element.py +179 -0
- osn_selenium/instances/sync/web_extension.py +77 -0
- osn_selenium/instances/trio_threads/__init__.py +1 -0
- osn_selenium/instances/trio_threads/action_chains/__init__.py +32 -0
- osn_selenium/instances/trio_threads/action_chains/base.py +88 -0
- osn_selenium/instances/trio_threads/action_chains/click.py +71 -0
- osn_selenium/instances/trio_threads/action_chains/drag_and_drop.py +49 -0
- osn_selenium/instances/trio_threads/action_chains/hm_keyboard.py +41 -0
- osn_selenium/instances/trio_threads/action_chains/hm_move.py +91 -0
- osn_selenium/instances/trio_threads/action_chains/hm_scroll.py +66 -0
- osn_selenium/instances/trio_threads/action_chains/keyboard.py +63 -0
- osn_selenium/instances/trio_threads/action_chains/move.py +52 -0
- osn_selenium/instances/trio_threads/action_chains/scroll.py +49 -0
- osn_selenium/instances/trio_threads/action_chains/utils.py +32 -0
- osn_selenium/instances/trio_threads/alert.py +87 -0
- osn_selenium/instances/trio_threads/browser.py +90 -0
- osn_selenium/instances/trio_threads/browsing_context.py +216 -0
- osn_selenium/instances/trio_threads/dialog.py +99 -0
- osn_selenium/instances/trio_threads/fedcm.py +110 -0
- osn_selenium/instances/trio_threads/mobile.py +93 -0
- osn_selenium/instances/trio_threads/network.py +108 -0
- osn_selenium/instances/trio_threads/permissions.py +102 -0
- osn_selenium/instances/trio_threads/script.py +95 -0
- osn_selenium/instances/trio_threads/shadow_root.py +154 -0
- osn_selenium/instances/trio_threads/storage.py +109 -0
- osn_selenium/instances/trio_threads/switch_to.py +124 -0
- osn_selenium/instances/trio_threads/web_driver_wait.py +101 -0
- osn_selenium/instances/trio_threads/web_element.py +217 -0
- osn_selenium/instances/trio_threads/web_extension.py +99 -0
- osn_selenium/instances/unified/__init__.py +1 -0
- osn_selenium/instances/unified/action_chains/__init__.py +22 -0
- osn_selenium/instances/unified/action_chains/base.py +31 -0
- osn_selenium/instances/unified/action_chains/click.py +27 -0
- osn_selenium/instances/unified/action_chains/drag_and_drop.py +24 -0
- osn_selenium/instances/unified/action_chains/hm_keyboard.py +30 -0
- osn_selenium/instances/unified/action_chains/hm_move.py +66 -0
- osn_selenium/instances/unified/action_chains/hm_scroll.py +79 -0
- osn_selenium/instances/unified/action_chains/keyboard.py +24 -0
- osn_selenium/instances/unified/action_chains/move.py +24 -0
- osn_selenium/instances/unified/action_chains/scroll.py +21 -0
- osn_selenium/instances/unified/action_chains/utils.py +19 -0
- osn_selenium/instances/unified/alert.py +29 -0
- osn_selenium/instances/unified/browser.py +33 -0
- osn_selenium/instances/unified/browsing_context.py +151 -0
- osn_selenium/instances/unified/dialog.py +42 -0
- osn_selenium/instances/unified/fedcm.py +48 -0
- osn_selenium/instances/unified/mobile.py +36 -0
- osn_selenium/instances/unified/network.py +50 -0
- osn_selenium/instances/unified/permissions.py +43 -0
- osn_selenium/instances/unified/script.py +38 -0
- osn_selenium/instances/unified/shadow_root.py +46 -0
- osn_selenium/instances/unified/storage.py +48 -0
- osn_selenium/instances/unified/switch_to.py +49 -0
- osn_selenium/instances/unified/web_driver_wait.py +45 -0
- osn_selenium/instances/unified/web_element.py +145 -0
- osn_selenium/instances/unified/web_extension.py +38 -0
- osn_selenium/javascript/__init__.py +1 -0
- osn_selenium/javascript/_functions.py +63 -0
- osn_selenium/javascript/fingerprint/__init__.py +120 -0
- osn_selenium/javascript/fingerprint/_decorators.py +41 -0
- osn_selenium/javascript/fingerprint/_detect/__init__.py +1 -0
- osn_selenium/javascript/fingerprint/_detect/functions.py +253 -0
- osn_selenium/javascript/fingerprint/_detect/templates.py +128 -0
- osn_selenium/javascript/fingerprint/_functions.py +35 -0
- osn_selenium/javascript/fingerprint/_typehints.py +27 -0
- osn_selenium/javascript/fingerprint/registry/__init__.py +7 -0
- osn_selenium/javascript/fingerprint/registry/_core_functions.py +236 -0
- osn_selenium/javascript/fingerprint/registry/_functions.py +923 -0
- osn_selenium/javascript/fingerprint/registry/_typehints.py +6 -0
- osn_selenium/javascript/fingerprint/registry/_utils.py +6 -0
- osn_selenium/javascript/fingerprint/registry/models.py +41 -0
- osn_selenium/javascript/fingerprint/spoof/__init__.py +1 -0
- osn_selenium/javascript/fingerprint/spoof/_functions.py +172 -0
- osn_selenium/javascript/fingerprint/spoof/_templates.py +134 -0
- osn_selenium/javascript/fingerprint/spoof/_typehints.py +22 -0
- osn_selenium/javascript/fingerprint/spoof/core_rules.py +141 -0
- osn_selenium/javascript/fingerprint/spoof/noise.py +51 -0
- osn_selenium/javascript/fingerprint/spoof/rules.py +313 -0
- osn_selenium/javascript/functions.py +44 -0
- osn_selenium/javascript/models.py +35 -0
- osn_selenium/javascript/scripts/start_fingerprint_detection.js +56 -0
- osn_selenium/models.py +94 -0
- osn_selenium/trio_threads_mixin.py +159 -0
- osn_selenium/webdrivers/_args_helpers.py +181 -0
- osn_selenium/webdrivers/_bridges.py +57 -0
- osn_selenium/webdrivers/_decorators.py +83 -0
- osn_selenium/webdrivers/_executable_tables/__init__.py +1 -0
- osn_selenium/webdrivers/_executable_tables/functions.py +113 -0
- osn_selenium/webdrivers/_executable_tables/models.py +19 -0
- osn_selenium/webdrivers/_typehints.py +10 -0
- osn_selenium/webdrivers/protocols.py +50 -0
- osn_selenium/webdrivers/sync/__init__.py +1 -0
- osn_selenium/webdrivers/sync/blink/__init__.py +124 -0
- osn_selenium/webdrivers/sync/blink/base.py +140 -0
- osn_selenium/webdrivers/sync/blink/casting.py +34 -0
- osn_selenium/webdrivers/sync/blink/features.py +28 -0
- osn_selenium/webdrivers/sync/blink/lifecycle.py +66 -0
- osn_selenium/webdrivers/sync/blink/logging.py +25 -0
- osn_selenium/webdrivers/sync/blink/network.py +28 -0
- osn_selenium/webdrivers/sync/blink/settings.py +63 -0
- osn_selenium/webdrivers/sync/chrome/__init__.py +102 -0
- osn_selenium/webdrivers/sync/chrome/base.py +118 -0
- osn_selenium/webdrivers/sync/chrome/lifecycle.py +63 -0
- osn_selenium/webdrivers/sync/chrome/settings.py +58 -0
- osn_selenium/webdrivers/sync/core/__init__.py +100 -0
- osn_selenium/webdrivers/sync/core/actions.py +59 -0
- osn_selenium/webdrivers/sync/core/auth.py +77 -0
- osn_selenium/webdrivers/sync/core/base.py +175 -0
- osn_selenium/webdrivers/sync/core/capture.py +37 -0
- osn_selenium/webdrivers/sync/core/comonents.py +57 -0
- osn_selenium/webdrivers/sync/core/devtools.py +47 -0
- osn_selenium/webdrivers/sync/core/element.py +42 -0
- osn_selenium/webdrivers/sync/core/file.py +40 -0
- osn_selenium/webdrivers/sync/core/lifecycle.py +59 -0
- osn_selenium/webdrivers/sync/core/navigation.py +36 -0
- osn_selenium/webdrivers/sync/core/script.py +53 -0
- osn_selenium/webdrivers/sync/core/settings.py +35 -0
- osn_selenium/webdrivers/sync/core/storage.py +48 -0
- osn_selenium/webdrivers/sync/core/timeouts.py +59 -0
- osn_selenium/webdrivers/sync/core/window.py +99 -0
- osn_selenium/webdrivers/sync/edge/__init__.py +102 -0
- osn_selenium/webdrivers/sync/edge/base.py +114 -0
- osn_selenium/webdrivers/sync/edge/lifecycle.py +63 -0
- osn_selenium/webdrivers/sync/edge/settings.py +58 -0
- osn_selenium/webdrivers/sync/yandex/__init__.py +102 -0
- osn_selenium/webdrivers/sync/yandex/base.py +111 -0
- osn_selenium/webdrivers/sync/yandex/lifecycle.py +63 -0
- osn_selenium/webdrivers/sync/yandex/settings.py +58 -0
- osn_selenium/webdrivers/trio_threads/__init__.py +1 -0
- osn_selenium/webdrivers/trio_threads/blink/__init__.py +134 -0
- osn_selenium/webdrivers/trio_threads/blink/base.py +143 -0
- osn_selenium/webdrivers/trio_threads/blink/casting.py +35 -0
- osn_selenium/webdrivers/trio_threads/blink/features.py +29 -0
- osn_selenium/webdrivers/trio_threads/blink/lifecycle.py +66 -0
- osn_selenium/webdrivers/trio_threads/blink/logging.py +26 -0
- osn_selenium/webdrivers/trio_threads/blink/network.py +29 -0
- osn_selenium/webdrivers/trio_threads/blink/settings.py +63 -0
- osn_selenium/webdrivers/trio_threads/chrome/__init__.py +114 -0
- osn_selenium/webdrivers/trio_threads/chrome/base.py +119 -0
- osn_selenium/webdrivers/trio_threads/chrome/lifecycle.py +63 -0
- osn_selenium/webdrivers/trio_threads/chrome/settings.py +63 -0
- osn_selenium/webdrivers/trio_threads/core/__init__.py +115 -0
- osn_selenium/webdrivers/trio_threads/core/actions.py +72 -0
- osn_selenium/webdrivers/trio_threads/core/auth.py +88 -0
- osn_selenium/webdrivers/trio_threads/core/base.py +199 -0
- osn_selenium/webdrivers/trio_threads/core/capture.py +38 -0
- osn_selenium/webdrivers/trio_threads/core/comonents.py +92 -0
- osn_selenium/webdrivers/trio_threads/core/devtools.py +53 -0
- osn_selenium/webdrivers/trio_threads/core/element.py +58 -0
- osn_selenium/webdrivers/trio_threads/core/file.py +45 -0
- osn_selenium/webdrivers/trio_threads/core/lifecycle.py +60 -0
- osn_selenium/webdrivers/trio_threads/core/navigation.py +41 -0
- osn_selenium/webdrivers/trio_threads/core/script.py +59 -0
- osn_selenium/webdrivers/trio_threads/core/settings.py +36 -0
- osn_selenium/webdrivers/trio_threads/core/storage.py +54 -0
- osn_selenium/webdrivers/trio_threads/core/timeouts.py +60 -0
- osn_selenium/webdrivers/trio_threads/core/window.py +105 -0
- osn_selenium/webdrivers/trio_threads/edge/__init__.py +114 -0
- osn_selenium/webdrivers/trio_threads/edge/base.py +115 -0
- osn_selenium/webdrivers/trio_threads/edge/lifecycle.py +63 -0
- osn_selenium/webdrivers/trio_threads/edge/settings.py +63 -0
- osn_selenium/webdrivers/trio_threads/yandex/__init__.py +114 -0
- osn_selenium/webdrivers/trio_threads/yandex/base.py +112 -0
- osn_selenium/webdrivers/trio_threads/yandex/lifecycle.py +63 -0
- osn_selenium/webdrivers/trio_threads/yandex/settings.py +63 -0
- osn_selenium/webdrivers/unified/__init__.py +1 -0
- osn_selenium/webdrivers/unified/blink/__init__.py +1 -0
- osn_selenium/webdrivers/unified/blink/base.py +135 -0
- osn_selenium/webdrivers/unified/blink/casting.py +30 -0
- osn_selenium/webdrivers/unified/blink/features.py +22 -0
- osn_selenium/webdrivers/unified/blink/lifecycle.py +114 -0
- osn_selenium/webdrivers/unified/blink/logging.py +18 -0
- osn_selenium/webdrivers/unified/blink/network.py +22 -0
- osn_selenium/webdrivers/unified/blink/settings.py +86 -0
- osn_selenium/webdrivers/unified/chrome/__init__.py +1 -0
- osn_selenium/webdrivers/unified/chrome/base.py +58 -0
- osn_selenium/webdrivers/unified/chrome/lifecycle.py +88 -0
- osn_selenium/webdrivers/unified/chrome/settings.py +48 -0
- osn_selenium/webdrivers/unified/core/__init__.py +1 -0
- osn_selenium/webdrivers/unified/core/actions.py +43 -0
- osn_selenium/webdrivers/unified/core/auth.py +70 -0
- osn_selenium/webdrivers/unified/core/base.py +139 -0
- osn_selenium/webdrivers/unified/core/capture.py +32 -0
- osn_selenium/webdrivers/unified/core/components.py +32 -0
- osn_selenium/webdrivers/unified/core/devtools.py +35 -0
- osn_selenium/webdrivers/unified/core/element.py +24 -0
- osn_selenium/webdrivers/unified/core/file.py +35 -0
- osn_selenium/webdrivers/unified/core/lifecycle.py +84 -0
- osn_selenium/webdrivers/unified/core/navigation.py +31 -0
- osn_selenium/webdrivers/unified/core/script.py +32 -0
- osn_selenium/webdrivers/unified/core/settings.py +44 -0
- osn_selenium/webdrivers/unified/core/storage.py +37 -0
- osn_selenium/webdrivers/unified/core/timeouts.py +56 -0
- osn_selenium/webdrivers/unified/core/window.py +135 -0
- osn_selenium/webdrivers/unified/edge/__init__.py +1 -0
- osn_selenium/webdrivers/unified/edge/base.py +56 -0
- osn_selenium/webdrivers/unified/edge/lifecycle.py +88 -0
- osn_selenium/webdrivers/unified/edge/settings.py +48 -0
- osn_selenium/webdrivers/unified/yandex/__init__.py +1 -0
- osn_selenium/webdrivers/unified/yandex/base.py +58 -0
- osn_selenium/webdrivers/unified/yandex/lifecycle.py +58 -0
- osn_selenium/webdrivers/unified/yandex/settings.py +48 -0
- osn_selenium-1.1.0.dist-info/METADATA +252 -0
- osn_selenium-1.1.0.dist-info/RECORD +615 -0
- {osn_selenium-0.0.0.dist-info → osn_selenium-1.1.0.dist-info}/WHEEL +1 -1
- osn_selenium/captcha_workers/__init__.py +0 -26
- osn_selenium/dev_tools/_types.py +0 -22
- osn_selenium/dev_tools/errors.py +0 -89
- osn_selenium/dev_tools/logger.py +0 -558
- osn_selenium/dev_tools/manager.py +0 -1551
- osn_selenium/dev_tools/utils.py +0 -509
- osn_selenium/errors.py +0 -16
- osn_selenium/types.py +0 -118
- osn_selenium/webdrivers/BaseDriver/_utils.py +0 -37
- osn_selenium/webdrivers/BaseDriver/protocols.py +0 -2135
- osn_selenium/webdrivers/BaseDriver/trio_wrapper.py +0 -71
- osn_selenium/webdrivers/BaseDriver/webdriver.py +0 -2626
- osn_selenium/webdrivers/Blink/protocols.py +0 -330
- osn_selenium/webdrivers/Blink/webdriver.py +0 -637
- osn_selenium/webdrivers/Chrome/protocols.py +0 -228
- osn_selenium/webdrivers/Chrome/webdriver.py +0 -394
- osn_selenium/webdrivers/Edge/protocols.py +0 -228
- osn_selenium/webdrivers/Edge/webdriver.py +0 -394
- osn_selenium/webdrivers/Yandex/protocols.py +0 -211
- osn_selenium/webdrivers/Yandex/webdriver.py +0 -350
- osn_selenium/webdrivers/_functions.py +0 -504
- osn_selenium/webdrivers/types.py +0 -390
- osn_selenium-0.0.0.dist-info/METADATA +0 -710
- osn_selenium-0.0.0.dist-info/RECORD +0 -57
- /osn_selenium/{webdrivers/BaseDriver → abstract}/__init__.py +0 -0
- /osn_selenium/{webdrivers/Blink → abstract/executors}/__init__.py +0 -0
- /osn_selenium/{webdrivers/Chrome → abstract/instances}/__init__.py +0 -0
- /osn_selenium/{webdrivers/Edge → abstract/webdriver}/__init__.py +0 -0
- /osn_selenium/{webdrivers/Yandex → dev_tools/logger}/__init__.py +0 -0
- /osn_selenium/{webdrivers/js_scripts → javascript/scripts}/check_element_in_viewport.js +0 -0
- /osn_selenium/{webdrivers/js_scripts → javascript/scripts}/get_document_scroll_size.js +0 -0
- /osn_selenium/{webdrivers/js_scripts → javascript/scripts}/get_element_css.js +0 -0
- /osn_selenium/{webdrivers/js_scripts → javascript/scripts}/get_element_rect_in_viewport.js +0 -0
- /osn_selenium/{webdrivers/js_scripts → javascript/scripts}/get_random_element_point_in_viewport.js +0 -0
- /osn_selenium/{webdrivers/js_scripts → javascript/scripts}/get_viewport_position.js +0 -0
- /osn_selenium/{webdrivers/js_scripts → javascript/scripts}/get_viewport_rect.js +0 -0
- /osn_selenium/{webdrivers/js_scripts → javascript/scripts}/get_viewport_size.js +0 -0
- /osn_selenium/{webdrivers/js_scripts → javascript/scripts}/open_new_tab.js +0 -0
- /osn_selenium/{webdrivers/js_scripts → javascript/scripts}/stop_window_loading.js +0 -0
- {osn_selenium-0.0.0.dist-info → osn_selenium-1.1.0.dist-info}/top_level.txt +0 -0
|
@@ -1,21 +1,70 @@
|
|
|
1
1
|
import trio
|
|
2
|
+
from osn_selenium._base_models import DictModel
|
|
2
3
|
from typing import (
|
|
3
4
|
Any,
|
|
4
|
-
Awaitable,
|
|
5
5
|
Callable,
|
|
6
|
+
Coroutine,
|
|
7
|
+
Dict,
|
|
6
8
|
Mapping,
|
|
7
9
|
Optional,
|
|
8
10
|
Sequence,
|
|
9
|
-
TYPE_CHECKING
|
|
10
|
-
TypedDict
|
|
11
|
+
TYPE_CHECKING
|
|
11
12
|
)
|
|
12
13
|
|
|
13
14
|
|
|
15
|
+
__all__ = [
|
|
16
|
+
"AbstractActionParametersHandlers",
|
|
17
|
+
"AbstractActionParametersHandlersSettings",
|
|
18
|
+
"AbstractActionSettings",
|
|
19
|
+
"AbstractDomainEnableKwargs",
|
|
20
|
+
"AbstractDomainEnableKwargsSettings",
|
|
21
|
+
"AbstractDomainHandlers",
|
|
22
|
+
"AbstractDomainHandlersSettings",
|
|
23
|
+
"AbstractDomainSettings",
|
|
24
|
+
"AbstractEventActions",
|
|
25
|
+
"AbstractEventActionsHandlerSettings",
|
|
26
|
+
"AbstractEventActionsSettings",
|
|
27
|
+
"AbstractEventSettings",
|
|
28
|
+
"AnyCallable",
|
|
29
|
+
"AnyMapping",
|
|
30
|
+
"ParameterHandler",
|
|
31
|
+
"build_kwargs_from_handlers_func_type",
|
|
32
|
+
"event_choose_action_func_type",
|
|
33
|
+
"handle_function",
|
|
34
|
+
"kwargs_output_type",
|
|
35
|
+
"kwargs_type",
|
|
36
|
+
"on_error_func_type",
|
|
37
|
+
"parameter_handler_type",
|
|
38
|
+
"response_handle_func_type"
|
|
39
|
+
]
|
|
40
|
+
|
|
14
41
|
if TYPE_CHECKING:
|
|
15
|
-
from osn_selenium.dev_tools.
|
|
42
|
+
from osn_selenium.dev_tools.target.base import BaseMixin as BaseTargetMixin
|
|
43
|
+
else:
|
|
44
|
+
BaseTargetMixin = Any
|
|
45
|
+
|
|
46
|
+
kwargs_type = Dict[str, Any]
|
|
47
|
+
kwargs_output_type = Coroutine[Any, Any, kwargs_type]
|
|
48
|
+
|
|
49
|
+
build_kwargs_from_handlers_func_type = Optional[
|
|
50
|
+
Callable[
|
|
51
|
+
[BaseTargetMixin, Mapping[str, Optional["ParameterHandler"]], Any],
|
|
52
|
+
kwargs_output_type
|
|
53
|
+
]
|
|
54
|
+
]
|
|
55
|
+
parameter_handler_type = Callable[
|
|
56
|
+
[BaseTargetMixin, trio.Event, Any, Any, Dict[str, Any]],
|
|
57
|
+
Coroutine[Any, Any, None]
|
|
58
|
+
]
|
|
59
|
+
event_choose_action_func_type = Callable[[BaseTargetMixin, Any], Sequence[str]]
|
|
60
|
+
handle_function = Callable[[BaseTargetMixin, Any, Any], Coroutine[Any, Any, None]]
|
|
61
|
+
response_handle_func_type = Optional[Callable[[BaseTargetMixin, Any], Coroutine[Any, Any, Any]]]
|
|
62
|
+
on_error_func_type = Optional[Callable[[BaseTargetMixin, Any, BaseException], None]]
|
|
63
|
+
AnyMapping = Mapping[str, Any]
|
|
64
|
+
AnyCallable = Callable[..., Any]
|
|
16
65
|
|
|
17
66
|
|
|
18
|
-
class ParameterHandler(
|
|
67
|
+
class ParameterHandler(DictModel):
|
|
19
68
|
"""
|
|
20
69
|
A dictionary defining a parameter handler function and its instances.
|
|
21
70
|
|
|
@@ -27,11 +76,11 @@ class ParameterHandler(TypedDict):
|
|
|
27
76
|
instances (Any): The data or configuration specific to this handler instance, passed as the `instances` argument to the `func`.
|
|
28
77
|
"""
|
|
29
78
|
|
|
30
|
-
func:
|
|
79
|
+
func: parameter_handler_type
|
|
31
80
|
instances: Any
|
|
32
81
|
|
|
33
82
|
|
|
34
|
-
class AbstractEventActionsSettings:
|
|
83
|
+
class AbstractEventActionsSettings(DictModel):
|
|
35
84
|
"""
|
|
36
85
|
Abstract base class for settings related to actions triggered by a specific event.
|
|
37
86
|
|
|
@@ -39,34 +88,10 @@ class AbstractEventActionsSettings:
|
|
|
39
88
|
for the event and implement the `to_dict` method.
|
|
40
89
|
"""
|
|
41
90
|
|
|
42
|
-
|
|
43
|
-
"""
|
|
44
|
-
Converts the settings object to its dictionary representation.
|
|
45
|
-
|
|
46
|
-
Returns:
|
|
47
|
-
AbstractEventActions: A dictionary mapping action names to their configurations.
|
|
48
|
-
"""
|
|
49
|
-
|
|
50
|
-
raise NotImplementedError("This method must be implemented in a subclass.")
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
class AbstractEventActionsHandler(TypedDict):
|
|
54
|
-
"""
|
|
55
|
-
Abstract TypedDict for the configuration of an event's actions handler.
|
|
56
|
-
|
|
57
|
-
This structure defines how to choose and configure the actions to take
|
|
58
|
-
when a specific DevTools event occurs.
|
|
59
|
-
|
|
60
|
-
Attributes:
|
|
61
|
-
choose_action_func (event_choose_action_func_type): A function that determines which actions (by name) should be executed for a given event.
|
|
62
|
-
actions (AnyMapping): A dictionary mapping action names (strings) to their full configurations (AbstractAction).
|
|
63
|
-
"""
|
|
64
|
-
|
|
65
|
-
choose_action_func: "event_choose_action_func_type"
|
|
66
|
-
actions: "AnyMapping"
|
|
91
|
+
pass
|
|
67
92
|
|
|
68
93
|
|
|
69
|
-
class AbstractEventActionsHandlerSettings:
|
|
94
|
+
class AbstractEventActionsHandlerSettings(DictModel):
|
|
70
95
|
"""
|
|
71
96
|
Abstract base class for settings related to an event's actions handler.
|
|
72
97
|
|
|
@@ -78,43 +103,11 @@ class AbstractEventActionsHandlerSettings:
|
|
|
78
103
|
actions (AbstractEventActionsSettings): Settings for the available actions.
|
|
79
104
|
"""
|
|
80
105
|
|
|
81
|
-
choose_action_func:
|
|
106
|
+
choose_action_func: event_choose_action_func_type
|
|
82
107
|
actions: AbstractEventActionsSettings
|
|
83
|
-
|
|
84
|
-
def to_dict(self) -> AbstractEventActionsHandler:
|
|
85
|
-
"""
|
|
86
|
-
Converts the settings object to its dictionary representation.
|
|
87
|
-
|
|
88
|
-
Returns:
|
|
89
|
-
AbstractEventActionsHandler: A dictionary representation of the actions handler settings.
|
|
90
|
-
"""
|
|
91
|
-
|
|
92
|
-
raise NotImplementedError("This method must be implemented in a subclass.")
|
|
93
108
|
|
|
94
109
|
|
|
95
|
-
class
|
|
96
|
-
"""
|
|
97
|
-
Abstract TypedDict representing the configuration for a CDP event listener.
|
|
98
|
-
|
|
99
|
-
This structure defines the common components needed to listen for and handle
|
|
100
|
-
a specific Chrome DevTools Protocol (CDP) event.
|
|
101
|
-
|
|
102
|
-
Attributes:
|
|
103
|
-
class_to_use_path (str): The dot-separated path to the CDP event class (e.g., "fetch.RequestPaused").
|
|
104
|
-
listen_buffer_size (int): The buffer size for the event listener channel.
|
|
105
|
-
handle_function (AnyCallable): The asynchronous function to execute when an event is received.
|
|
106
|
-
actions_handler (AnyMapping): A dictionary of callback functions and settings specific to the event handler.
|
|
107
|
-
on_error_func (on_error_func_type): An optional function to call if an error occurs during event handling.
|
|
108
|
-
"""
|
|
109
|
-
|
|
110
|
-
class_to_use_path: str
|
|
111
|
-
listen_buffer_size: int
|
|
112
|
-
handle_function: "AnyCallable"
|
|
113
|
-
actions_handler: "AnyMapping"
|
|
114
|
-
on_error_func: "on_error_func_type"
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
class AbstractEventSettings:
|
|
110
|
+
class AbstractEventSettings(DictModel):
|
|
118
111
|
"""
|
|
119
112
|
Abstract base class for settings related to a specific DevTools event listener.
|
|
120
113
|
|
|
@@ -122,49 +115,21 @@ class AbstractEventSettings:
|
|
|
122
115
|
and error function, and implement the abstract properties and `to_dict` method.
|
|
123
116
|
|
|
124
117
|
Attributes:
|
|
118
|
+
handle_function (handle_function): The function responsible for processing the event.
|
|
119
|
+
class_to_use_path (str): The dot-separated path to the CDP event class (e.g., "fetch.RequestPaused").
|
|
125
120
|
listen_buffer_size (int): The buffer size for the event listener channel.
|
|
126
121
|
actions_handler (AbstractEventActionsHandlerSettings): Configuration for the event's actions handler.
|
|
127
122
|
on_error_func (on_error_func_type): An optional function to call if an error occurs during event handling.
|
|
128
123
|
"""
|
|
129
124
|
|
|
125
|
+
handle_function: handle_function
|
|
126
|
+
class_to_use_path: str
|
|
130
127
|
listen_buffer_size: int
|
|
131
128
|
actions_handler: AbstractEventActionsHandlerSettings
|
|
132
|
-
on_error_func:
|
|
133
|
-
|
|
134
|
-
@property
|
|
135
|
-
def class_to_use_path(self) -> str:
|
|
136
|
-
"""
|
|
137
|
-
Returns the dot-separated path to the corresponding CDP event class.
|
|
138
|
-
|
|
139
|
-
Returns:
|
|
140
|
-
str: The path string.
|
|
141
|
-
"""
|
|
142
|
-
|
|
143
|
-
raise NotImplementedError("This method must be implemented in a subclass.")
|
|
144
|
-
|
|
145
|
-
@property
|
|
146
|
-
def handle_function(self) -> "handle_function":
|
|
147
|
-
"""
|
|
148
|
-
Returns the main asynchronous handler function for this event.
|
|
149
|
-
|
|
150
|
-
Returns:
|
|
151
|
-
handle_function: The handler function.
|
|
152
|
-
"""
|
|
153
|
-
|
|
154
|
-
raise NotImplementedError("This method must be implemented in a subclass.")
|
|
155
|
-
|
|
156
|
-
def to_dict(self) -> AbstractEvent:
|
|
157
|
-
"""
|
|
158
|
-
Converts the settings object to its dictionary representation.
|
|
159
|
-
|
|
160
|
-
Returns:
|
|
161
|
-
AbstractEvent: A dictionary representation of the event settings.
|
|
162
|
-
"""
|
|
163
|
-
|
|
164
|
-
raise NotImplementedError("This method must be implemented in a subclass.")
|
|
129
|
+
on_error_func: on_error_func_type
|
|
165
130
|
|
|
166
131
|
|
|
167
|
-
class AbstractDomainHandlersSettings:
|
|
132
|
+
class AbstractDomainHandlersSettings(DictModel):
|
|
168
133
|
"""
|
|
169
134
|
Abstract base class for container of all handler settings within a DevTools domain.
|
|
170
135
|
|
|
@@ -172,18 +137,10 @@ class AbstractDomainHandlersSettings:
|
|
|
172
137
|
and implement the `to_dict` method.
|
|
173
138
|
"""
|
|
174
139
|
|
|
175
|
-
|
|
176
|
-
"""
|
|
177
|
-
Converts the settings object to its dictionary representation.
|
|
140
|
+
pass
|
|
178
141
|
|
|
179
|
-
Returns:
|
|
180
|
-
AbstractDomainHandlers: A dictionary mapping event names to their handler configurations.
|
|
181
|
-
"""
|
|
182
|
-
|
|
183
|
-
raise NotImplementedError("This method must be implemented in a subclass.")
|
|
184
142
|
|
|
185
|
-
|
|
186
|
-
class AbstractDomainEnableKwargsSettings:
|
|
143
|
+
class AbstractDomainEnableKwargsSettings(DictModel):
|
|
187
144
|
"""
|
|
188
145
|
Abstract base class for keyword arguments used to enable a DevTools domain.
|
|
189
146
|
|
|
@@ -191,40 +148,10 @@ class AbstractDomainEnableKwargsSettings:
|
|
|
191
148
|
of the domain's enable function and implement the `to_dict` method.
|
|
192
149
|
"""
|
|
193
150
|
|
|
194
|
-
|
|
195
|
-
"""
|
|
196
|
-
Converts the settings object to its dictionary representation.
|
|
197
|
-
|
|
198
|
-
Returns:
|
|
199
|
-
AbstractDomainEnableKwargs: A dictionary of keyword arguments for the enable function.
|
|
200
|
-
"""
|
|
201
|
-
|
|
202
|
-
raise NotImplementedError("This method must be implemented in a subclass.")
|
|
203
|
-
|
|
151
|
+
pass
|
|
204
152
|
|
|
205
|
-
class AbstractDomain(TypedDict):
|
|
206
|
-
"""
|
|
207
|
-
Abstract TypedDict for the complete configuration of a DevTools domain.
|
|
208
|
-
|
|
209
|
-
This structure is used internally by the DevTools manager to configure a
|
|
210
|
-
specific domain, including how to enable/disable it and what event handlers to use.
|
|
211
153
|
|
|
212
|
-
|
|
213
|
-
name (str): The name of the domain (e.g., 'fetch').
|
|
214
|
-
enable_func_path (str): The dot-separated path to the function to enable the domain (e.g., "fetch.enable").
|
|
215
|
-
enable_func_kwargs (Optional[AnyMapping]): Keyword arguments for the enable function.
|
|
216
|
-
disable_func_path (str): The dot-separated path to the function to disable the domain (e.g., "fetch.disable").
|
|
217
|
-
handlers (AnyMapping): A dictionary mapping event names to their configured handlers (AbstractEvent).
|
|
218
|
-
"""
|
|
219
|
-
|
|
220
|
-
name: str
|
|
221
|
-
enable_func_path: str
|
|
222
|
-
enable_func_kwargs: Optional["AnyMapping"]
|
|
223
|
-
disable_func_path: str
|
|
224
|
-
handlers: "AnyMapping"
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
class AbstractDomainSettings:
|
|
154
|
+
class AbstractDomainSettings(DictModel):
|
|
228
155
|
"""
|
|
229
156
|
Abstract base class for the top-level configuration of a DevTools domain.
|
|
230
157
|
|
|
@@ -232,58 +159,25 @@ class AbstractDomainSettings:
|
|
|
232
159
|
and implement the abstract properties and `to_dict` method.
|
|
233
160
|
|
|
234
161
|
Attributes:
|
|
162
|
+
name (str): The name of the domain (e.g., "fetch").
|
|
163
|
+
disable_func_path (str): The path to the CDP command used to disable the domain.
|
|
164
|
+
enable_func_path (str): The path to the CDP command used to enable the domain.
|
|
165
|
+
exclude_target_types (Sequence[str]): List of target types to exclude from this domain's activation.
|
|
166
|
+
include_target_types (Sequence[str]): List of target types to specifically include for this domain's activation.
|
|
235
167
|
enable_func_kwargs (Optional[AbstractDomainEnableKwargsSettings]): Keyword arguments for enabling the domain.
|
|
236
168
|
handlers (AbstractDomainHandlersSettings): Container for all handler settings within the domain.
|
|
237
169
|
"""
|
|
238
170
|
|
|
171
|
+
name: str
|
|
172
|
+
disable_func_path: str
|
|
173
|
+
enable_func_path: str
|
|
174
|
+
exclude_target_types: Sequence[str]
|
|
175
|
+
include_target_types: Sequence[str]
|
|
239
176
|
enable_func_kwargs: Optional[AbstractDomainEnableKwargsSettings]
|
|
240
177
|
handlers: AbstractDomainHandlersSettings
|
|
241
|
-
|
|
242
|
-
@property
|
|
243
|
-
def disable_func_path(self) -> str:
|
|
244
|
-
"""
|
|
245
|
-
Returns the dot-separated path to the function used to disable the domain.
|
|
246
|
-
|
|
247
|
-
Returns:
|
|
248
|
-
str: The path string.
|
|
249
|
-
"""
|
|
250
|
-
|
|
251
|
-
raise NotImplementedError("This method must be implemented in a subclass.")
|
|
252
|
-
|
|
253
|
-
@property
|
|
254
|
-
def enable_func_path(self) -> str:
|
|
255
|
-
"""
|
|
256
|
-
Returns the dot-separated path to the function used to enable the domain.
|
|
257
|
-
|
|
258
|
-
Returns:
|
|
259
|
-
str: The path string.
|
|
260
|
-
"""
|
|
261
|
-
|
|
262
|
-
raise NotImplementedError("This method must be implemented in a subclass.")
|
|
263
|
-
|
|
264
|
-
@property
|
|
265
|
-
def name(self) -> str:
|
|
266
|
-
"""
|
|
267
|
-
Returns the name of the DevTools domain.
|
|
268
|
-
|
|
269
|
-
Returns:
|
|
270
|
-
str: The domain name.
|
|
271
|
-
"""
|
|
272
|
-
|
|
273
|
-
raise NotImplementedError("This method must be implemented in a subclass.")
|
|
274
|
-
|
|
275
|
-
def to_dict(self) -> AbstractDomain:
|
|
276
|
-
"""
|
|
277
|
-
Converts the settings object to its dictionary representation.
|
|
278
|
-
|
|
279
|
-
Returns:
|
|
280
|
-
AbstractDomain: A dictionary representation of the domain settings.
|
|
281
|
-
"""
|
|
282
|
-
|
|
283
|
-
raise NotImplementedError("This method must be implemented in a subclass.")
|
|
284
178
|
|
|
285
179
|
|
|
286
|
-
class AbstractActionParametersHandlersSettings:
|
|
180
|
+
class AbstractActionParametersHandlersSettings(DictModel):
|
|
287
181
|
"""
|
|
288
182
|
Abstract base class for settings related to parameter handlers for a specific action.
|
|
289
183
|
|
|
@@ -291,36 +185,10 @@ class AbstractActionParametersHandlersSettings:
|
|
|
291
185
|
of the action's CDP command and implement the `to_dict` method.
|
|
292
186
|
"""
|
|
293
187
|
|
|
294
|
-
|
|
295
|
-
"""
|
|
296
|
-
Converts the settings object to its dictionary representation.
|
|
188
|
+
pass
|
|
297
189
|
|
|
298
|
-
Returns:
|
|
299
|
-
AbstractActionParametersHandlers: A dictionary mapping parameter names to their handler configurations.
|
|
300
|
-
"""
|
|
301
|
-
|
|
302
|
-
raise NotImplementedError("This method must be implemented in a subclass.")
|
|
303
190
|
|
|
304
|
-
|
|
305
|
-
class AbstractAction(TypedDict):
|
|
306
|
-
"""
|
|
307
|
-
Abstract TypedDict for the configuration of a specific action triggered by an event.
|
|
308
|
-
|
|
309
|
-
This structure defines how to build the arguments for a CDP command
|
|
310
|
-
and how to handle its response.
|
|
311
|
-
|
|
312
|
-
Attributes:
|
|
313
|
-
kwargs_func (build_kwargs_from_handlers_func_type): Function to build keyword arguments for the CDP command.
|
|
314
|
-
response_handle_func (response_handle_func_type): An optional function to process the response from the CDP command.
|
|
315
|
-
parameters_handlers (AnyMapping): A dictionary mapping parameter names to their handler configurations (ParameterHandler).
|
|
316
|
-
"""
|
|
317
|
-
|
|
318
|
-
kwargs_func: "build_kwargs_from_handlers_func_type"
|
|
319
|
-
response_handle_func: "response_handle_func_type"
|
|
320
|
-
parameters_handlers: "AnyMapping"
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
class AbstractActionSettings:
|
|
191
|
+
class AbstractActionSettings(DictModel):
|
|
324
192
|
"""
|
|
325
193
|
Abstract base class for settings related to a specific action triggered by an event.
|
|
326
194
|
|
|
@@ -328,51 +196,27 @@ class AbstractActionSettings:
|
|
|
328
196
|
and implement the abstract property and `to_dict` method.
|
|
329
197
|
|
|
330
198
|
Attributes:
|
|
199
|
+
kwargs_func (build_kwargs_from_handlers_func_type): Function to build keyword arguments for the action from handlers.
|
|
331
200
|
response_handle_func (response_handle_func_type): An optional function to process the response from the CDP command.
|
|
332
201
|
parameters_handlers (AbstractActionParametersHandlersSettings): Settings for the action's parameter handlers.
|
|
333
202
|
"""
|
|
334
203
|
|
|
335
|
-
|
|
204
|
+
kwargs_func: build_kwargs_from_handlers_func_type
|
|
205
|
+
response_handle_func: response_handle_func_type
|
|
336
206
|
parameters_handlers: AbstractActionParametersHandlersSettings
|
|
337
|
-
|
|
338
|
-
@property
|
|
339
|
-
def kwargs_func(self) -> "build_kwargs_from_handlers_func_type":
|
|
340
|
-
"""
|
|
341
|
-
Returns the function used to build keyword arguments for the action's CDP command.
|
|
342
|
-
|
|
343
|
-
Returns:
|
|
344
|
-
build_kwargs_from_handlers_func_type: The kwargs building function.
|
|
345
|
-
"""
|
|
346
|
-
|
|
347
|
-
raise NotImplementedError("This method must be implemented in a subclass.")
|
|
348
|
-
|
|
349
|
-
def to_dict(self) -> AbstractAction:
|
|
350
|
-
"""
|
|
351
|
-
Converts the settings object to its dictionary representation.
|
|
352
|
-
|
|
353
|
-
Returns:
|
|
354
|
-
AbstractAction: A dictionary representation of the action settings.
|
|
355
|
-
"""
|
|
356
|
-
|
|
357
|
-
raise NotImplementedError("This method must be implemented in a subclass.")
|
|
358
207
|
|
|
359
208
|
|
|
360
|
-
|
|
361
|
-
kwargs_output_type = Awaitable[kwargs_type]
|
|
362
|
-
build_kwargs_from_handlers_func_type = Optional[
|
|
363
|
-
Callable[
|
|
364
|
-
["DevToolsTarget", Mapping[str, Optional[ParameterHandler]], Any],
|
|
365
|
-
kwargs_output_type
|
|
366
|
-
]
|
|
367
|
-
]
|
|
368
|
-
parameter_handler_type = Callable[["DevToolsTarget", trio.Event, Any, Any, dict[str, Any]], Awaitable[None]]
|
|
369
|
-
event_choose_action_func_type = Callable[["DevToolsTarget", Any], Sequence[str]]
|
|
370
|
-
handle_function = Callable[["DevToolsTarget", Any, Any], Awaitable[None]]
|
|
371
|
-
response_handle_func_type = Optional[Callable[["DevToolsTarget", Any], Awaitable[Any]]]
|
|
372
|
-
on_error_func_type = Optional[Callable[["DevToolsTarget", Any, BaseException], None]]
|
|
373
|
-
AnyMapping = Mapping[str, Any]
|
|
374
|
-
AnyCallable = Callable[..., Any]
|
|
375
|
-
AbstractDomainHandlers = Mapping[str, AbstractEvent]
|
|
209
|
+
AbstractDomainHandlers = Mapping[str, AbstractEventSettings]
|
|
376
210
|
AbstractDomainEnableKwargs = Mapping[str, Any]
|
|
377
|
-
AbstractEventActions = Mapping[str,
|
|
211
|
+
AbstractEventActions = Mapping[str, AbstractActionSettings]
|
|
378
212
|
AbstractActionParametersHandlers = Mapping[str, ParameterHandler]
|
|
213
|
+
|
|
214
|
+
AbstractActionParametersHandlersSettings.model_rebuild()
|
|
215
|
+
AbstractActionSettings.model_rebuild()
|
|
216
|
+
ParameterHandler.model_rebuild()
|
|
217
|
+
AbstractEventActionsSettings.model_rebuild()
|
|
218
|
+
AbstractEventActionsHandlerSettings.model_rebuild()
|
|
219
|
+
AbstractEventSettings.model_rebuild()
|
|
220
|
+
AbstractDomainHandlersSettings.model_rebuild()
|
|
221
|
+
AbstractDomainEnableKwargsSettings.model_rebuild()
|
|
222
|
+
AbstractDomainSettings.model_rebuild()
|