ok-script 2.0.0b2__tar.gz → 2.0.0b3__tar.gz
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.
- {ok_script-2.0.0b2/ok_script.egg-info → ok_script-2.0.0b3}/PKG-INFO +36 -5
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/README.md +13 -3
- {ok_script-2.0.0b2 → ok_script-2.0.0b3/ok_script.egg-info}/PKG-INFO +36 -5
- ok_script-2.0.0b3/ok_script.egg-info/requires.txt +42 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/pyproject.toml +38 -10
- ok_script-2.0.0b3/tests/test_package_metadata.py +35 -0
- ok_script-2.0.0b2/ok_script.egg-info/requires.txt +0 -17
- ok_script-2.0.0b2/tests/test_package_metadata.py +0 -27
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/LICENSE.txt +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/MANIFEST.in +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/diagnostics/qq_trace.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/__init__.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/__main__.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/alas/__init__.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/alas/emulator_base.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/alas/emulator_windows.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/alas/platform_windows.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/alas/utils.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/capture/__init__.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/capture/adb/__init__.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/capture/adb/deep.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/capture/adb/minitouch.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/capture/adb/nemu_ipc.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/capture/adb/nemu_utils.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/capture/adb/pool.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/capture/adb/timer.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/capture/adb/util.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/capture/windows/__init__.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/capture/windows/d3d11.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/capture/windows/dump.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/cli.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/core/__init__.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/core/config_schema.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/core/downloads.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/core/events.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/core/icons.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/core/notifications.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/core/screenshot.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/core/script_editing.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/core/script_packager.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/core/script_templates.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/core/start_controller.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/core/task_manager.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/core/template_store.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/core/translation.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/core/ui_config.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/device/DeviceManager.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/device/__init__.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/device/capture.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/device/capture_methods/__init__.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/device/capture_methods/adb.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/device/capture_methods/base.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/device/capture_methods/bitblt.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/device/capture_methods/bitblt_utils.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/device/capture_methods/browser.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/device/capture_methods/desktop_duplication.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/device/capture_methods/hwnd_window.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/device/capture_methods/image.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/device/capture_methods/nemu_ipc.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/device/capture_methods/types.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/device/capture_methods/update.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/device/capture_methods/windows_graphics.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/device/interaction.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/device/interaction_methods/__init__.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/device/interaction_methods/adb.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/device/interaction_methods/base.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/device/interaction_methods/browser.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/device/interaction_methods/do_nothing.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/device/interaction_methods/foreground_post_message.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/device/interaction_methods/genshin.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/device/interaction_methods/keys.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/device/interaction_methods/post_message.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/device/interaction_methods/pydirect.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/device/interaction_methods/pynput.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/device/interaction_methods/swipe.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/device/intercation.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/feature/Box.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/feature/Feature.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/feature/FeatureSet.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/feature/__init__.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/gui/__init__.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/gui/util/pyappify_startup.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/notification/__init__.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/notification/manager.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/notification/messenger_images.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/notification/pipeline.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/notification/ppocr.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/notification/providers.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/notification/system.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/notification/windows_messenger.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ocr/__init__.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ocr/download_paddle_model.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/rotypes/Windows/Foundation/Collections.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/rotypes/Windows/Foundation/__init__.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/rotypes/Windows/Globalization/__init__.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/rotypes/Windows/Graphics/Capture/__init__.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/rotypes/Windows/Graphics/DirectX/Direct3D11/__init__.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/rotypes/Windows/Graphics/DirectX/__init__.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/rotypes/Windows/Graphics/Imaging/__init__.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/rotypes/Windows/Graphics/__init__.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/rotypes/Windows/Media/Ocr/__init__.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/rotypes/Windows/Media/__init__.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/rotypes/Windows/Security/Cryptography/__init__.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/rotypes/Windows/Security/__init__.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/rotypes/Windows/Storage/Streams/__init__.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/rotypes/Windows/Storage/__init__.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/rotypes/Windows/UI/ViewManagement/__init__.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/rotypes/Windows/UI/__init__.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/rotypes/Windows/__init__.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/rotypes/__init__.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/rotypes/delegate.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/rotypes/export.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/rotypes/idldsl.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/rotypes/inspectable.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/rotypes/roapi.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/rotypes/types.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/rotypes/winstring.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/task/DiagnosisTask.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/task/TaskExecutor.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/task/__init__.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/task/exceptions.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/task/task.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/task/web.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/test/OKTestRunner.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/test/RunTests.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/test/TaskTestCase.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/test/__init__.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/third_party/__init__.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/third_party/paperclip.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/__init__.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/overlay/__init__.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/overlay/win32_gdi.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/Communicate.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/MainWindow.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/MessageWindow.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/StartController.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/TabTitles.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/__init__.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/about/AboutTab.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/about/HttpTextEdit.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/about/LinksBar.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/about/ProjectCard.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/about/VersionCard.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/about/__init__.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/common/OKIcon.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/common/__init__.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/common/accent_color.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/common/config.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/common/design_system.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/common/icons.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/common/style_sheet.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/debug/DebugTab.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/debug/OverlayWidget.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/debug/RunCodeTab.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/debug/Screenshot.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/debug/__init__.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/events.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/i18n/GettextTranslator.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/i18n/__init__.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/i18n/en_US.qm +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/i18n/en_US.ts +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/i18n/es_ES.qm +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/i18n/es_ES.ts +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/i18n/ja_JP.qm +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/i18n/ja_JP.ts +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/i18n/ko_KR.qm +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/i18n/ko_KR.ts +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/i18n/path.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/i18n/update.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/i18n/zh_CN.qm +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/i18n/zh_CN.ts +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/i18n/zh_TW.qm +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/i18n/zh_TW.ts +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/overlay/OverlayWindow.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/overlay/__init__.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/qss/__init__.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/qss/dark/card.qss +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/qss/dark/discord.svg +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/qss/dark/heart.svg +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/qss/dark/message_window.qss +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/qss/dark/setting_interface.qss +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/qss/dark/status_bar.qss +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/qss/dark/stop.svg +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/qss/dark/tab.qss +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/qss/light/card.qss +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/qss/light/discord.svg +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/qss/light/heart.svg +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/qss/light/message_window.qss +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/qss/light/setting_interface.qss +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/qss/light/status_bar.qss +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/qss/light/stop.svg +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/qss/light/tab.qss +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/qt.qrc +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/resources.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/settings/GlobalConfigCard.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/settings/GlobalConfigTab.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/settings/SettingTab.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/settings/__init__.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/start/LogWindow.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/start/SelectCaptureListView.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/start/SelectInteractionListView.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/start/StartCard.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/start/StartTab.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/start/__init__.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/tasks/ConfigCard.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/tasks/ConfigItemFactory.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/tasks/ConfigLabelAndWidget.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/tasks/EditTaskTab.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/tasks/LabelAndButtons.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/tasks/LabelAndDoubleSpinBox.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/tasks/LabelAndDropDown.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/tasks/LabelAndFileSelector.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/tasks/LabelAndGlobal.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/tasks/LabelAndLineEdit.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/tasks/LabelAndList.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/tasks/LabelAndMultiSelection.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/tasks/LabelAndSpinBox.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/tasks/LabelAndSwitchButton.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/tasks/LabelAndTextEdit.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/tasks/LabelAndWidget.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/tasks/MarkUpWindow.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/tasks/ModifyListDialog.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/tasks/ModifyListItem.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/tasks/OneTimeTaskTab.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/tasks/PythonHighlighter.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/tasks/RecordScript.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/tasks/ScheduleTaskTab.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/tasks/ScriptPackager.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/tasks/StartButton.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/tasks/TaskCard.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/tasks/TaskManger.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/tasks/TaskOpButton.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/tasks/TaskTab.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/tasks/TemplateFactory.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/tasks/TemplateTab.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/tasks/TooltipTableWidget.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/tasks/TriggerTaskTab.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/tasks/__init__.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/util/Alert.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/util/InitWorker.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/util/__init__.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/util/app.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/util/download.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/util/pip_util.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/util/pyappify_startup.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/util/touch_scroll.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/util/windows_thumbnail.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/widget/BaseLoading.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/widget/BaseWindow.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/widget/Card.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/widget/CustomTab.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/widget/EmptyCard.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/widget/ExpandCardLayout.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/widget/FlowLayout.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/widget/FramelessDialog.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/widget/ImageWidget.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/widget/ListTableWidgetItem.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/widget/NumericTableWidgetItem.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/widget/OkCompactSpinBox.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/widget/SortingTableWidgetItem.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/widget/StartLoadingDialog.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/widget/StatusBar.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/widget/Tab.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/widget/TabWidget.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/widget/UpdateConfigWidgetItem.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/widget/WidgetWithVLabel.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/widget/YesNonWidgetItem.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/qt/widget/__init__.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/web/__init__.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/web/app.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/web/server.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/web/static/app.js +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/web/static/chunk-fluent.js +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/web/static/chunk-react.js +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/web/static/index.css +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/ui/web/static/index.html +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/update/__init__.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/update/copy_ok_folder.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/update/inline_ok_requirements.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/util/Analytics.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/util/GlobalConfig.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/util/__init__.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/util/blur.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/util/clazz.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/util/collection.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/util/color.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/util/config.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/util/explorer.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/util/file.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/util/gpu_driver_settings.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/util/handler.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/util/i18n.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/util/logger.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/util/partial_sync_repo.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/util/print_hwnd.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/util/process.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/util/window.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/util/windows_schedule.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok_script.egg-info/SOURCES.txt +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok_script.egg-info/dependency_links.txt +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok_script.egg-info/entry_points.txt +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok_script.egg-info/not-zip-safe +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok_script.egg-info/top_level.txt +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/scripts/generate_web_i18n.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/setup.cfg +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/setup.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/tests/test_accent_color.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/tests/test_app.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/tests/test_base_interaction.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/tests/test_blur.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/tests/test_box.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/tests/test_capture_update.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/tests/test_cli.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/tests/test_config_card.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/tests/test_core_events.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/tests/test_core_ui_services.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/tests/test_device_manager.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/tests/test_expand_card_layout.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/tests/test_explorer.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/tests/test_global_config.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/tests/test_gpu_driver_settings.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/tests/test_headless_imports.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/tests/test_inline_ok_requirements.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/tests/test_logger.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/tests/test_main_window_notifications.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/tests/test_main_window_startup_tab.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/tests/test_main_window_system_theme.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/tests/test_missing_frame.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/tests/test_navigation_state.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/tests/test_nemu_ipc_capture.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/tests/test_notifications.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/tests/test_ok_mutex.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/tests/test_overlay_custom_draw.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/tests/test_process.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/tests/test_pyappify_startup_update.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/tests/test_qt_events.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/tests/test_qt_legacy_imports.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/tests/test_runtime_startup.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/tests/test_start_controller.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/tests/test_task_executor_queue.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/tests/test_task_ui.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/tests/test_template_tab.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/tests/test_touch_scroll.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/tests/test_translation_fallback.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/tests/test_ui_config.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/tests/test_web_app.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/tests/test_web_i18n.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/tests/test_web_server.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/tests/test_web_task_tabs.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/tests/test_web_ui_pages.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/tests/test_web_ui_tasks.py +0 -0
- {ok_script-2.0.0b2 → ok_script-2.0.0b3}/tests/test_windows_graphics_capture.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: ok-script
|
|
3
|
-
Version: 2.0.
|
|
3
|
+
Version: 2.0.0b3
|
|
4
4
|
Summary: Automation with Computer Vision for Python
|
|
5
5
|
Author-email: ok-oldking <firedcto@gmail.com>
|
|
6
6
|
Project-URL: Homepage, https://github.com/ok-oldking/ok-script
|
|
@@ -23,13 +23,34 @@ Requires-Dist: psutil>=6.0.0
|
|
|
23
23
|
Requires-Dist: pydirectinput==1.0.4
|
|
24
24
|
Requires-Dist: pycaw==20240210
|
|
25
25
|
Requires-Dist: mouse==0.7.1
|
|
26
|
+
Requires-Dist: pynput>=1.8.1
|
|
27
|
+
Provides-Extra: default
|
|
28
|
+
Requires-Dist: numpy>=1.26.4; extra == "default"
|
|
29
|
+
Requires-Dist: Pillow>=10.0; extra == "default"
|
|
30
|
+
Requires-Dist: ok-d3dshot>=0.1.5; extra == "default"
|
|
31
|
+
Requires-Dist: OpenCC==1.2.0; extra == "default"
|
|
26
32
|
Provides-Extra: web
|
|
27
33
|
Requires-Dist: fastapi>=0.115.0; extra == "web"
|
|
28
34
|
Requires-Dist: uvicorn[standard]>=0.30.0; extra == "web"
|
|
29
35
|
Requires-Dist: pywebview>=5.4; extra == "web"
|
|
30
36
|
Provides-Extra: qt
|
|
37
|
+
Requires-Dist: PySide6-Essentials>=6.7.0; extra == "qt"
|
|
38
|
+
Requires-Dist: PySideSix-Frameless-Window>=0.3.12; extra == "qt"
|
|
39
|
+
Requires-Dist: darkdetect>=0.8.0; extra == "qt"
|
|
31
40
|
Requires-Dist: PySide6-Fluent-Widgets>=1.8.3; extra == "qt"
|
|
32
|
-
|
|
41
|
+
Provides-Extra: adb
|
|
42
|
+
Requires-Dist: adbutils>=2.2.1; extra == "adb"
|
|
43
|
+
Provides-Extra: ocr
|
|
44
|
+
Requires-Dist: onnxocr-ppocrv5; extra == "ocr"
|
|
45
|
+
Provides-Extra: dev
|
|
46
|
+
Requires-Dist: pytest>=8.0; extra == "dev"
|
|
47
|
+
Requires-Dist: mypy>=1.10; extra == "dev"
|
|
48
|
+
Requires-Dist: build>=1.2; extra == "dev"
|
|
49
|
+
Requires-Dist: twine>=5.0; extra == "dev"
|
|
50
|
+
Requires-Dist: setuptools>=77; extra == "dev"
|
|
51
|
+
Requires-Dist: wheel; extra == "dev"
|
|
52
|
+
Requires-Dist: get-pypi-latest-version; extra == "dev"
|
|
53
|
+
Requires-Dist: mkdocs-material==9.7.7; extra == "dev"
|
|
33
54
|
Dynamic: license-file
|
|
34
55
|
|
|
35
56
|
# ok-script
|
|
@@ -67,17 +88,27 @@ ok-script 支持 Python 3.11 及以上版本,推荐使用 Python 3.12。
|
|
|
67
88
|
python -m pip install ok-script
|
|
68
89
|
```
|
|
69
90
|
|
|
70
|
-
|
|
91
|
+
只安装应用所需的依赖配置。`default` 为无界面模式,Web、Qt、ADB 和 OCR
|
|
92
|
+
能力分别按需安装:
|
|
71
93
|
|
|
72
94
|
```powershell
|
|
95
|
+
python -m pip install "ok-script[default]"
|
|
73
96
|
python -m pip install "ok-script[qt]"
|
|
74
97
|
python -m pip install "ok-script[web]"
|
|
98
|
+
python -m pip install "ok-script[adb]"
|
|
99
|
+
python -m pip install "ok-script[ocr]"
|
|
75
100
|
```
|
|
76
101
|
|
|
77
|
-
|
|
102
|
+
ok-script 不会自动选择 OpenCV。用户必须根据自己的应用选择版本,并且只安装
|
|
103
|
+
一个变体:`opencv-python`、`opencv-contrib-python`、`opencv-python-headless`
|
|
104
|
+
或 `opencv-contrib-python-headless`。
|
|
105
|
+
|
|
106
|
+
以无界面模式开发本仓库时,同时安装 `pyproject.toml` 中的 `default` 和 `dev`
|
|
107
|
+
依赖组;再根据需要添加 `--group web`、`--group qt`、`--group adb` 或
|
|
108
|
+
`--group ocr`:
|
|
78
109
|
|
|
79
110
|
```powershell
|
|
80
|
-
python -m pip install --editable . --group default
|
|
111
|
+
python -m pip install --editable . --group default --group dev
|
|
81
112
|
```
|
|
82
113
|
|
|
83
114
|
如果要创建完整的自动化项目,建议从 [`ok-script-app`](https://github.com/ok-oldking/ok-script-app) 模板开始,而不是直接在本仓库中编写业务脚本。
|
|
@@ -33,17 +33,27 @@ ok-script 支持 Python 3.11 及以上版本,推荐使用 Python 3.12。
|
|
|
33
33
|
python -m pip install ok-script
|
|
34
34
|
```
|
|
35
35
|
|
|
36
|
-
|
|
36
|
+
只安装应用所需的依赖配置。`default` 为无界面模式,Web、Qt、ADB 和 OCR
|
|
37
|
+
能力分别按需安装:
|
|
37
38
|
|
|
38
39
|
```powershell
|
|
40
|
+
python -m pip install "ok-script[default]"
|
|
39
41
|
python -m pip install "ok-script[qt]"
|
|
40
42
|
python -m pip install "ok-script[web]"
|
|
43
|
+
python -m pip install "ok-script[adb]"
|
|
44
|
+
python -m pip install "ok-script[ocr]"
|
|
41
45
|
```
|
|
42
46
|
|
|
43
|
-
|
|
47
|
+
ok-script 不会自动选择 OpenCV。用户必须根据自己的应用选择版本,并且只安装
|
|
48
|
+
一个变体:`opencv-python`、`opencv-contrib-python`、`opencv-python-headless`
|
|
49
|
+
或 `opencv-contrib-python-headless`。
|
|
50
|
+
|
|
51
|
+
以无界面模式开发本仓库时,同时安装 `pyproject.toml` 中的 `default` 和 `dev`
|
|
52
|
+
依赖组;再根据需要添加 `--group web`、`--group qt`、`--group adb` 或
|
|
53
|
+
`--group ocr`:
|
|
44
54
|
|
|
45
55
|
```powershell
|
|
46
|
-
python -m pip install --editable . --group default
|
|
56
|
+
python -m pip install --editable . --group default --group dev
|
|
47
57
|
```
|
|
48
58
|
|
|
49
59
|
如果要创建完整的自动化项目,建议从 [`ok-script-app`](https://github.com/ok-oldking/ok-script-app) 模板开始,而不是直接在本仓库中编写业务脚本。
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: ok-script
|
|
3
|
-
Version: 2.0.
|
|
3
|
+
Version: 2.0.0b3
|
|
4
4
|
Summary: Automation with Computer Vision for Python
|
|
5
5
|
Author-email: ok-oldking <firedcto@gmail.com>
|
|
6
6
|
Project-URL: Homepage, https://github.com/ok-oldking/ok-script
|
|
@@ -23,13 +23,34 @@ Requires-Dist: psutil>=6.0.0
|
|
|
23
23
|
Requires-Dist: pydirectinput==1.0.4
|
|
24
24
|
Requires-Dist: pycaw==20240210
|
|
25
25
|
Requires-Dist: mouse==0.7.1
|
|
26
|
+
Requires-Dist: pynput>=1.8.1
|
|
27
|
+
Provides-Extra: default
|
|
28
|
+
Requires-Dist: numpy>=1.26.4; extra == "default"
|
|
29
|
+
Requires-Dist: Pillow>=10.0; extra == "default"
|
|
30
|
+
Requires-Dist: ok-d3dshot>=0.1.5; extra == "default"
|
|
31
|
+
Requires-Dist: OpenCC==1.2.0; extra == "default"
|
|
26
32
|
Provides-Extra: web
|
|
27
33
|
Requires-Dist: fastapi>=0.115.0; extra == "web"
|
|
28
34
|
Requires-Dist: uvicorn[standard]>=0.30.0; extra == "web"
|
|
29
35
|
Requires-Dist: pywebview>=5.4; extra == "web"
|
|
30
36
|
Provides-Extra: qt
|
|
37
|
+
Requires-Dist: PySide6-Essentials>=6.7.0; extra == "qt"
|
|
38
|
+
Requires-Dist: PySideSix-Frameless-Window>=0.3.12; extra == "qt"
|
|
39
|
+
Requires-Dist: darkdetect>=0.8.0; extra == "qt"
|
|
31
40
|
Requires-Dist: PySide6-Fluent-Widgets>=1.8.3; extra == "qt"
|
|
32
|
-
|
|
41
|
+
Provides-Extra: adb
|
|
42
|
+
Requires-Dist: adbutils>=2.2.1; extra == "adb"
|
|
43
|
+
Provides-Extra: ocr
|
|
44
|
+
Requires-Dist: onnxocr-ppocrv5; extra == "ocr"
|
|
45
|
+
Provides-Extra: dev
|
|
46
|
+
Requires-Dist: pytest>=8.0; extra == "dev"
|
|
47
|
+
Requires-Dist: mypy>=1.10; extra == "dev"
|
|
48
|
+
Requires-Dist: build>=1.2; extra == "dev"
|
|
49
|
+
Requires-Dist: twine>=5.0; extra == "dev"
|
|
50
|
+
Requires-Dist: setuptools>=77; extra == "dev"
|
|
51
|
+
Requires-Dist: wheel; extra == "dev"
|
|
52
|
+
Requires-Dist: get-pypi-latest-version; extra == "dev"
|
|
53
|
+
Requires-Dist: mkdocs-material==9.7.7; extra == "dev"
|
|
33
54
|
Dynamic: license-file
|
|
34
55
|
|
|
35
56
|
# ok-script
|
|
@@ -67,17 +88,27 @@ ok-script 支持 Python 3.11 及以上版本,推荐使用 Python 3.12。
|
|
|
67
88
|
python -m pip install ok-script
|
|
68
89
|
```
|
|
69
90
|
|
|
70
|
-
|
|
91
|
+
只安装应用所需的依赖配置。`default` 为无界面模式,Web、Qt、ADB 和 OCR
|
|
92
|
+
能力分别按需安装:
|
|
71
93
|
|
|
72
94
|
```powershell
|
|
95
|
+
python -m pip install "ok-script[default]"
|
|
73
96
|
python -m pip install "ok-script[qt]"
|
|
74
97
|
python -m pip install "ok-script[web]"
|
|
98
|
+
python -m pip install "ok-script[adb]"
|
|
99
|
+
python -m pip install "ok-script[ocr]"
|
|
75
100
|
```
|
|
76
101
|
|
|
77
|
-
|
|
102
|
+
ok-script 不会自动选择 OpenCV。用户必须根据自己的应用选择版本,并且只安装
|
|
103
|
+
一个变体:`opencv-python`、`opencv-contrib-python`、`opencv-python-headless`
|
|
104
|
+
或 `opencv-contrib-python-headless`。
|
|
105
|
+
|
|
106
|
+
以无界面模式开发本仓库时,同时安装 `pyproject.toml` 中的 `default` 和 `dev`
|
|
107
|
+
依赖组;再根据需要添加 `--group web`、`--group qt`、`--group adb` 或
|
|
108
|
+
`--group ocr`:
|
|
78
109
|
|
|
79
110
|
```powershell
|
|
80
|
-
python -m pip install --editable . --group default
|
|
111
|
+
python -m pip install --editable . --group default --group dev
|
|
81
112
|
```
|
|
82
113
|
|
|
83
114
|
如果要创建完整的自动化项目,建议从 [`ok-script-app`](https://github.com/ok-oldking/ok-script-app) 模板开始,而不是直接在本仓库中编写业务脚本。
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
pywin32>=306
|
|
2
|
+
pyappify>=1.0.6
|
|
3
|
+
typing-extensions>=4.11.0
|
|
4
|
+
requests>=2.32.3
|
|
5
|
+
psutil>=6.0.0
|
|
6
|
+
pydirectinput==1.0.4
|
|
7
|
+
pycaw==20240210
|
|
8
|
+
mouse==0.7.1
|
|
9
|
+
pynput>=1.8.1
|
|
10
|
+
|
|
11
|
+
[adb]
|
|
12
|
+
adbutils>=2.2.1
|
|
13
|
+
|
|
14
|
+
[default]
|
|
15
|
+
numpy>=1.26.4
|
|
16
|
+
Pillow>=10.0
|
|
17
|
+
ok-d3dshot>=0.1.5
|
|
18
|
+
OpenCC==1.2.0
|
|
19
|
+
|
|
20
|
+
[dev]
|
|
21
|
+
pytest>=8.0
|
|
22
|
+
mypy>=1.10
|
|
23
|
+
build>=1.2
|
|
24
|
+
twine>=5.0
|
|
25
|
+
setuptools>=77
|
|
26
|
+
wheel
|
|
27
|
+
get-pypi-latest-version
|
|
28
|
+
mkdocs-material==9.7.7
|
|
29
|
+
|
|
30
|
+
[ocr]
|
|
31
|
+
onnxocr-ppocrv5
|
|
32
|
+
|
|
33
|
+
[qt]
|
|
34
|
+
PySide6-Essentials>=6.7.0
|
|
35
|
+
PySideSix-Frameless-Window>=0.3.12
|
|
36
|
+
darkdetect>=0.8.0
|
|
37
|
+
PySide6-Fluent-Widgets>=1.8.3
|
|
38
|
+
|
|
39
|
+
[web]
|
|
40
|
+
fastapi>=0.115.0
|
|
41
|
+
uvicorn[standard]>=0.30.0
|
|
42
|
+
pywebview>=5.4
|
|
@@ -34,17 +34,42 @@ dependencies = [
|
|
|
34
34
|
"pydirectinput==1.0.4",
|
|
35
35
|
"pycaw==20240210",
|
|
36
36
|
"mouse==0.7.1",
|
|
37
|
+
"pynput>=1.8.1",
|
|
37
38
|
]
|
|
38
39
|
|
|
39
40
|
[project.optional-dependencies]
|
|
41
|
+
default = [
|
|
42
|
+
"numpy>=1.26.4",
|
|
43
|
+
"Pillow>=10.0",
|
|
44
|
+
"ok-d3dshot>=0.1.5",
|
|
45
|
+
"OpenCC==1.2.0",
|
|
46
|
+
]
|
|
40
47
|
web = [
|
|
41
48
|
"fastapi>=0.115.0",
|
|
42
49
|
"uvicorn[standard]>=0.30.0",
|
|
43
50
|
"pywebview>=5.4",
|
|
44
51
|
]
|
|
45
52
|
qt = [
|
|
53
|
+
"PySide6-Essentials>=6.7.0",
|
|
54
|
+
"PySideSix-Frameless-Window>=0.3.12",
|
|
55
|
+
"darkdetect>=0.8.0",
|
|
46
56
|
"PySide6-Fluent-Widgets>=1.8.3",
|
|
47
|
-
|
|
57
|
+
]
|
|
58
|
+
adb = [
|
|
59
|
+
"adbutils>=2.2.1",
|
|
60
|
+
]
|
|
61
|
+
ocr = [
|
|
62
|
+
"onnxocr-ppocrv5",
|
|
63
|
+
]
|
|
64
|
+
dev = [
|
|
65
|
+
"pytest>=8.0",
|
|
66
|
+
"mypy>=1.10",
|
|
67
|
+
"build>=1.2",
|
|
68
|
+
"twine>=5.0",
|
|
69
|
+
"setuptools>=77",
|
|
70
|
+
"wheel",
|
|
71
|
+
"get-pypi-latest-version",
|
|
72
|
+
"mkdocs-material==9.7.7",
|
|
48
73
|
]
|
|
49
74
|
|
|
50
75
|
[project.urls]
|
|
@@ -55,6 +80,12 @@ Repository = "https://github.com/ok-oldking/ok-script"
|
|
|
55
80
|
ok = "ok.cli:main"
|
|
56
81
|
|
|
57
82
|
[dependency-groups]
|
|
83
|
+
default = [
|
|
84
|
+
"numpy>=1.26.4",
|
|
85
|
+
"Pillow>=10.0",
|
|
86
|
+
"ok-d3dshot>=0.1.5",
|
|
87
|
+
"OpenCC==1.2.0",
|
|
88
|
+
]
|
|
58
89
|
web = [
|
|
59
90
|
"fastapi>=0.115.0",
|
|
60
91
|
"uvicorn[standard]>=0.30.0",
|
|
@@ -65,17 +96,14 @@ qt = [
|
|
|
65
96
|
"PySideSix-Frameless-Window>=0.3.12",
|
|
66
97
|
"darkdetect>=0.8.0",
|
|
67
98
|
"PySide6-Fluent-Widgets>=1.8.3",
|
|
68
|
-
"pynput>=1.8.1",
|
|
69
99
|
]
|
|
70
|
-
|
|
71
|
-
{ include-group = "web" },
|
|
72
|
-
{ include-group = "qt" },
|
|
73
|
-
"numpy>=1.26.4",
|
|
74
|
-
"opencv-python>=4.9.0.80",
|
|
75
|
-
"Pillow>=10.0",
|
|
100
|
+
adb = [
|
|
76
101
|
"adbutils>=2.2.1",
|
|
77
|
-
|
|
78
|
-
|
|
102
|
+
]
|
|
103
|
+
ocr = [
|
|
104
|
+
"onnxocr-ppocrv5",
|
|
105
|
+
]
|
|
106
|
+
dev = [
|
|
79
107
|
"pytest>=8.0",
|
|
80
108
|
"mypy>=1.10",
|
|
81
109
|
"build>=1.2",
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import tomllib
|
|
2
|
+
from pathlib import Path
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
ROOT = Path(__file__).parents[1]
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
def test_pyproject_profiles_are_consistent_and_headless_by_default():
|
|
9
|
+
metadata = tomllib.loads((ROOT / "pyproject.toml").read_text(encoding="utf-8"))
|
|
10
|
+
project = metadata["project"]
|
|
11
|
+
extras = project["optional-dependencies"]
|
|
12
|
+
groups = metadata["dependency-groups"]
|
|
13
|
+
|
|
14
|
+
assert set(extras) == {"default", "web", "qt", "adb", "ocr", "dev"}
|
|
15
|
+
assert extras == groups
|
|
16
|
+
assert extras["adb"] == ["adbutils>=2.2.1"]
|
|
17
|
+
assert extras["ocr"] == ["onnxocr-ppocrv5"]
|
|
18
|
+
assert not any(
|
|
19
|
+
requirement.startswith(("fastapi", "PySide6"))
|
|
20
|
+
for requirement in extras["default"]
|
|
21
|
+
)
|
|
22
|
+
assert any(requirement.startswith("pytest") for requirement in extras["dev"])
|
|
23
|
+
assert not any(requirement.startswith("pytest") for requirement in project["dependencies"])
|
|
24
|
+
assert "pynput>=1.8.1" in project["dependencies"]
|
|
25
|
+
|
|
26
|
+
managed_requirements = [
|
|
27
|
+
*project["dependencies"],
|
|
28
|
+
*(requirement for profile in extras.values() for requirement in profile),
|
|
29
|
+
]
|
|
30
|
+
assert not any("opencv" in requirement.lower() for requirement in managed_requirements)
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
def test_legacy_requirements_files_are_replaced_by_pyproject_groups():
|
|
34
|
+
assert not (ROOT / "requirements.txt").exists()
|
|
35
|
+
assert not (ROOT / "requirements-docs.txt").exists()
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
pywin32>=306
|
|
2
|
-
pyappify>=1.0.6
|
|
3
|
-
typing-extensions>=4.11.0
|
|
4
|
-
requests>=2.32.3
|
|
5
|
-
psutil>=6.0.0
|
|
6
|
-
pydirectinput==1.0.4
|
|
7
|
-
pycaw==20240210
|
|
8
|
-
mouse==0.7.1
|
|
9
|
-
|
|
10
|
-
[qt]
|
|
11
|
-
PySide6-Fluent-Widgets>=1.8.3
|
|
12
|
-
pynput>=1.8.1
|
|
13
|
-
|
|
14
|
-
[web]
|
|
15
|
-
fastapi>=0.115.0
|
|
16
|
-
uvicorn[standard]>=0.30.0
|
|
17
|
-
pywebview>=5.4
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
import tomllib
|
|
2
|
-
from pathlib import Path
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
ROOT = Path(__file__).parents[1]
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
def test_pyproject_keeps_runtime_and_development_dependencies_separate():
|
|
9
|
-
metadata = tomllib.loads((ROOT / "pyproject.toml").read_text(encoding="utf-8"))
|
|
10
|
-
project = metadata["project"]
|
|
11
|
-
extras = project["optional-dependencies"]
|
|
12
|
-
groups = metadata["dependency-groups"]
|
|
13
|
-
|
|
14
|
-
assert set(extras) == {"web", "qt"}
|
|
15
|
-
assert {item["include-group"] for item in groups["default"] if isinstance(item, dict)} == {
|
|
16
|
-
"web", "qt",
|
|
17
|
-
}
|
|
18
|
-
assert any(
|
|
19
|
-
isinstance(requirement, str) and requirement.startswith("pytest")
|
|
20
|
-
for requirement in groups["default"]
|
|
21
|
-
)
|
|
22
|
-
assert not any(requirement.startswith("pytest") for requirement in project["dependencies"])
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
def test_legacy_requirements_files_are_replaced_by_pyproject_groups():
|
|
26
|
-
assert not (ROOT / "requirements.txt").exists()
|
|
27
|
-
assert not (ROOT / "requirements-docs.txt").exists()
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/device/interaction_methods/foreground_post_message.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/rotypes/Windows/Graphics/DirectX/Direct3D11/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ok_script-2.0.0b2 → ok_script-2.0.0b3}/ok/rotypes/Windows/Security/Cryptography/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|