1
0
forked from BRT/arc
Commit Graph

111 Commits

Author SHA1 Message Date
slava
a8d41baab7 Improve "Other Bank" button handling in PayByPhoneScript by ensuring full visibility with enhanced bounds checks and increased scroll attempts. 2026-05-14 19:33:44 +07:00
slava
7e5f90a450 Improve package state probing and logging in AdbUtils and enhance "Other Bank" button handling in PayByPhoneScript. 2026-05-14 18:36:33 +07:00
slava
ff4a468b35 Synchronize material statuses by setting MaterialStatus::Off in card info scripts and adding state enforcement logic to postMaterial in NetworkService. 2026-05-13 21:29:07 +07:00
slava
98f1d0f9d6 Simplify sum field detection in PayByCardScript by removing resource-id-based strategies and relying on DOM order. 2026-05-13 17:08:14 +07:00
slava
72d582f0ab Add closeGooglePlayBannerIfVisible helper to handle update banners and permission dialogs. Integrate into card info scripts for automated dismissal during screen parsing. Extend ScreenXmlParser with methods to detect specific UI elements. 2026-05-13 16:01:26 +07:00
slava
3751406c36 Add PAN field detection and account number UI updates.
- Extend `ScreenXmlParser` with `findPanCardNumberInput` for detecting empty PAN fields in Ozon WebView.
- Update `PayByCardScript` to handle missing hints for recipient card input.
- Temporarily disable advanced account number parsing in `GetCardInfoScript`.
- Add `patchMaterial` method to `NetworkService` for updating account details.
- Update card management UI with refined "Switch" button logic and label changes.
2026-05-13 02:03:20 +07:00
slava
52d261a060 Integrate TaskDumpRecorder into scripts for enhanced error tracking and proper handling of nested scopes. 2026-05-11 20:16:05 +07:00
slava
377844e94b Add account number parsing and database integration:
- Extend `ScreenXmlParser` with methods for detecting and extracting account numbers from multiple screens.
- Update database schema and DAO to support `account_number` field.
- Modify card information scripts to collect, save, and utilize account numbers.
- Enhance `GetCardInfoScript` logic to fetch account numbers via screen parsing and interaction.
2026-05-08 20:29:00 +07:00
slava
daa0123f7f Refine sum field detection logic in findSumEditText to account for an additional EditText above the anchor. 2026-05-07 23:09:56 +07:00
slava
9c2ec74f76 - Add findSumEditText to ScreenXmlParser for enhanced sum field detection.
- Update `PayByPhoneScript` and `PayByCardScript` to use `findSumEditText` as a fallback.
- Enhance `FileLogWindow` to export logs and database files to backend via `NetworkService`.
- Add `networkService` getter in `TaskDumpRecorder` for centralizing access to `NetworkService`.
2026-05-07 22:54:06 +07:00
slava
558e881c75 Update ScreenXmlParser to use startsWith for handling multi-line "Идентифицирован" content-desc 2026-05-06 23:32:16 +07:00
slava
c144305240 Handle declined transactions and enhance payment scripts:
- Add unique `bank_transaction_id` generation for declined transactions in `EventHandler`.
- Extend timeout and iteration logic to better handle intermediate statuses ("Выполняется") in `PayByPhoneScript` and `PayByCardScript`.
- Update
2026-04-30 23:41:06 +07:00
slava
d58100083f Switch Tesseract initialization to memory-based loading of rus.traineddata to fix issues with paths containing Cyrillic characters (Windows). 2026-04-30 19:52:07 +07:00
slava
f611639532 Add OCR utilities and backend integration for enhanced screen dump analysis:
- Introduce `OcrUtils` with fuzzy-matching logic for text recognition on screenshots.
- Implement dual-pass OCR to handle light-on-dark and dark-on-light text cases.
- Replace hardcoded "Подтверждаю" button tap logic with OCR-based detection and fallback geometry.
- Update `TaskDumpRecorder` to utilize `NetworkService` for uploading screen dumps, images, and metadata to the backend.
- Add support for `/monitoring/dump` endpoint in `NetworkService`.
- Enhance UI functionality with new error handling and progress feedback during dump creation and upload.
2026-04-30 19:39:21 +07:00
slava
11e8f00e42 Add OCR utilities and backend integration for enhanced screen dump analysis:
- Introduce `OcrUtils` with fuzzy-matching logic for text recognition on screenshots.
- Implement dual-pass OCR to handle light-on-dark and dark-on-light text cases.
- Replace hardcoded "Подтверждаю" button tap logic with OCR-based detection and fallback geometry.
- Update `TaskDumpRecorder` to utilize `NetworkService` for uploading screen dumps, images, and metadata to the backend.
- Add support for `/monitoring/dump` endpoint in `NetworkService`.
- Enhance UI functionality with new error handling and progress feedback during dump creation and upload.
2026-04-30 19:17:17 +07:00
slava
6de3751a60 Add logic to refresh balance on the home screen:
- Introduce `findRefreshButtonOnHomeScreen` in `ScreenXmlParser` for locating the refresh button.
- Update `GetProfileInfoScript` to tap refresh button and retry balance parsing when balance is zero.
- Extend mock server profiles with additional test data.
2026-04-29 22:02:53 +07:00
slava
d37acd5347 Handle closing of ad bottom sheets in CommonScript:
- Add detection and dismissal logic for ad banners on the homepage.
- Introduce retry mechanism with back button fallback for persistent ads.
2026-04-27 21:45:53 +07:00
slava
f7a187ec88 Add getRawScreenDumpAsXml to capture 2026-04-27 20:41:16 +07:00
slava
052f9051e1 Improve "Показать" button scrolling in GetCardInfoScript to handle devices with short screen heights:
- Add logic to scroll WebView until the button is in the visible top-third of the screen.
- Account for bottom navigation obstruction and ensure reliable tapping.
2026-04-27 18:19:10 +07:00
slava
44e60fc09f Introduce TaskDumpRecorder for centralized task dump management:
- Add TaskDumpRecorder to save task-related XML dumps and upload failure info to Telegram.
- Integrate TaskDumpRecorder into `PayByPhoneScript` and `PayByCardScript` for Dushanbe and Ozon banks.
- Extend ADB utilities to record XML dumps with TaskDumpRecorder and refine keyboard dismissal logic.
- Enhance freeze detection with consecutive dump checks in CommonScript and payment scripts.
- Update mock server profiles and scenario configurations with new material IDs.
2026-04-26 19:22:40 +07:00
slava
cd1828e2b5 Optimize button verification in payment scripts:
- Refactor retry logic for visibility and tappability of key payment buttons.
- Enhance error messaging for obstructed or missing buttons.
2026-04-24 22:22:24 +07:00
slava
a92610f9e5 Improve "Перевести" button handling in PayByCardScript:
- Add keyboard dismissal and retry logic to ensure button visibility and tappability.
- Update error messages to differentiate between missing or obstructed button scenarios.
2026-04-24 22:10:06 +07:00
slava
af47dc5888 Improve "Продолжить" button handling in PayByPhoneScript:
- Add keyboard dismissal and retry logic to ensure button visibility and tappability.
2026-04-24 22:07:34 +07:00
slava
f5be380292 Improve ADB Keyboard activation reliability:
- Add retries for `ime enable` to handle delayed IME registration after installation.
- Introduce flag to distinguish newly installed keyboards for adaptive retry logic.
2026-04-24 21:56:20 +07:00
slava
ac8b5922ad Enable reliable activation of ADB Keyboard and improve fallback handling:
- Add comprehensive verification and logging for IME activation steps in `AdbUtils`.
- Update `PayByPhoneScript` to handle IME activation failures with error reporting.
- Improve edit text detection in `ScreenXmlParser` for devices with missing hint attributes.
2026-04-24 21:31:37 +07:00
slava
f200eae2bd Add closeGooglePlayBannerIfVisible to handle Google Play update banners across scripts:
- Integrate banner dismissal in retry loops for XML parsing in payment and profile scripts.
- Add detection logic for permission deny buttons and update banner handling in `ScreenXmlParser`.
- Ensure reliable operation during input field detection, transactions fetching, and confirmation screens.
2026-04-24 16:39:38 +07:00
slava
d480cc51b0 Enhance input field detection and retry logic across payment scripts:
- Add retry loops for input fields in `PayByPhoneScript` and `PayByCardScript` to improve reliability.
- Update window title in `MainWindow` with version info from `config.ini`.
2026-04-24 16:09:36 +07:00
slava
8c2be04787 Improve button loading and error handling in PayByCardScript:
- Add checks for the "По номеру карты" button on the payments screen.
- Refine error messages to distinguish missing button vs. incomplete screen load.
2026-04-23 21:13:31 +07:00
slava
0a460d10a0 Add exclusive material activation logic to MaterialDAO and improve card selection in BankSetupWizard. 2026-04-23 20:44:44 +07:00
slava
a2c9118c82 Increase maxScrolls limit to 30 in GetLastTransactionsScript for better transaction fetching. 2026-04-19 09:00:10 +07:00
slava
248fae6061 Improve scroll recovery logic in GetLastTransactionsScript:
- Add upward scroll handling to recover header visibility when the target header scrolls out of view.
2026-04-18 20:08:45 +07:00
slava
bac36aa5d2 Refine date header visibility logic and scroll behavior in GetLastTransactionsScript:
- Add `computeDateYCount` to detect overlapping date headers and improve visibility checks.
- Adjust swipe logic for better handling of target and older dates during transaction fetching.
-
2026-04-18 19:46:06 +07:00
slava
779e3cd74c Fix for windows 2026-04-18 19:23:56 +07:00
slava
d59bf51416 Add closeGooglePlayBannerIfVisible to handle Google Play update banners:
- Ensure banners are closed during transaction fetching in `GetLastTransactionsScript`.
- Update XML parsing workflow to accommodate banner dismissal logic.
2026-04-18 18:52:28 +07:00
slava
d0330a509a Refine transaction amount parsing and improve banner closing in Ozon scripts:
- Handle fractional amounts during transaction parsing in mock server.
- Add support for closing Google Play update banners in `Ozon` homepage handling logic.
2026-04-18 17:27:12 +07:00
slava
d9479cd3ea Refactor EventHandler and Dushanbe scripts to centralize screenshot handling:
- Introduce `connectScreenshotDushanbe` for consistent signal-slot connections in `EventHandler`.
- Emit screenshots via `CommonScript` across `PayByCard`, `PayByPhone`, and `GetLastTransactions`.
- Eliminate redundant screenshot signals in `GetLastTransactionsScript`.
2026-04-17 11:17:59 +07:00
slava
312e0b37dd Simplify adb broadcast command construction in AdbUtils for cleaner and more concise execution logic. 2026-04-16 17:29:20 +07:00
slava
899f4ff6d6 Add support for mock server state persistence, error tracking, and screenshot handling. Extend bootstrapping logic and monitoring endpoints for enhanced debugging and task management. 2026-04-14 18:46:34 +07:00
slava
628323184f Refine transaction fetching and parsing:
- Add date header parsing and swipe functionality for streamlined `Ozon` transactions list processing.
- Improve deduplication logic, date assignment, and scroll behavior in `Dushanbe` and `Ozon` scripts.
- Introduce screenshot handling for debugging transaction fetching workflows.
- Add cancellation logic by `materialId` in `EventDAO`.
- Update mock server for enhanced filename generation and PATCH support for bank profiles.
2026-04-13 22:41:15 +07:00
slava
e5e8500534 Improve logging and control flow in NetworkService and EventHandler; fix tapped assignment in GetLastTransactionsScript. 2026-04-13 18:55:08 +07:00
slava
db88cf373e Add currency mapping logic to GetCardInfoScript in all platforms and update .gitignore for mock server scenarios 2026-04-13 18:37:01 +07:00
slava
967397b5d5 Add scenarios for "FETCH_TRANSACTIONS" testing and improve bank-specific bootstrapping logic in mock server. 2026-04-12 17:29:48 +07:00
slava
dfbe1cbf72 Fix for windows 2026-04-12 16:54:34 +07:00
slava
0ab71db506 Fix for windows 2026-04-12 15:52:19 +07:00
slava
c2fc0104c6 Fix for windows 2026-04-12 15:17:28 +07:00
slava
23c3f366b1 Add mock server for local ARC backend integration tests, update config.ini for local API usage. 2026-04-12 12:11:39 +07:00
slava
d235508c70 Emit parsed transaction data as a signal to streamline GetLastTransactionsScript integration with EventHandler. 2026-04-11 19:29:47 +07:00
slava
33c8420910 Refine transaction parsing and handling logic:
- Add fast path for avoiding unnecessary app restarts if already on the home or PIN screen.
- Improve PIN code and home screen detection with fallback mechanisms.
- Implement URL and error sanitization for network messages to hide sensitive data from logs.
- Add embedded transaction parsing from content description with adjusted tap positioning logic.
- Refactor transaction fetching to use direct signal-based parsed data instead of database queries.
2026-04-11 16:37:14 +07:00
slava
d79dd93514 Refine transaction filtering logic by adjusting time-based pre-filtering with wraparound midnight support and improving detail parsing for extracting transaction metadata. 2026-04-10 19:03:35 +07:00
slava
ffb206303e Refine transaction ID generation by replacing history-based retrieval with timestamp-based fallback logic. Adjust source card selection and transaction grouping in payment scripts. 2026-04-10 18:46:33 +07:00