mirror of
https://github.com/Nikolay-Shirokov/cc-1c-skills.git
synced 2026-08-02 01:37:45 +03:00
Все 17 inline page.evaluate в engine/table/filter.mjs вынесены в
именованные dom-генераторы. Engine-модуль стал чистым orchestrator-ом.
Новое в dom/forms.mjs (shared с будущим S3 select-value):
- findSearchInputScript(formNum) — поиск SearchString/ПоискаСтроки input
- findNamedButtonScript(text) — кнопка a.press по innerText (Найти, OK)
- findCompareTypeRadioScript(form, idx) — радио CompareType#N#radio
- isFormVisibleScript(form) — есть ли видимые элементы form{N}
Новое в dom/filter.mjs:
- findFirstGridCellCoordsScript — координаты первой клетки грида
- findColumnFirstCellCoordsScript — клетка по имени колонки (fuzzy header
match с needDlb-fallback)
- readFieldSelectorInfoScript — FieldSelector value + DLB coords
- pickFieldInSelectorDropdownScript — выбор поля в FieldSelector DLB-edd
- readFilterDialogInfoScript — Pattern id+value+isDate+isRef
- findFilterBadgeCloseScript — × badge по имени поля
- findFirstFilterBadgeCloseScript — × первого видимого badge (для clear-all)
Попутно: добавлен импорт readSubmenuScript (был pre-existing broken
import в Еще-fallback ветке Alt+F).
Метрики filter.mjs: 390 → 256 LOC (−134, −34%), inline page.evaluate
17 → 0. Регресс 09-filter / 02-crud / 05-table — зелёный.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
63 lines
1.6 KiB
JavaScript
63 lines
1.6 KiB
JavaScript
// web-test dom v1.10 — facade re-exporting injectable DOM scripts from dom/
|
|
// Source: https://github.com/Nikolay-Shirokov/cc-1c-skills
|
|
/**
|
|
* Facade: re-exports DOM selector & semantic mapping script generators.
|
|
* Внутренности живут в dom/*. Публичный набор имён неизменен.
|
|
*
|
|
* All functions return JavaScript strings for page.evaluate().
|
|
* They produce clean semantic structures — no DOM IDs or CSS classes leak out.
|
|
* Only non-default property values are included to minimize response size.
|
|
*/
|
|
|
|
export {
|
|
detectFormScript,
|
|
readFormScript,
|
|
findClickTargetScript,
|
|
findFieldButtonScript,
|
|
resolveFieldsScript,
|
|
detectNewFormScript,
|
|
findSearchInputScript,
|
|
findNamedButtonScript,
|
|
findCompareTypeRadioScript,
|
|
isFormVisibleScript,
|
|
} from './dom/forms.mjs';
|
|
|
|
export {
|
|
findFirstGridCellCoordsScript,
|
|
findColumnFirstCellCoordsScript,
|
|
readFieldSelectorInfoScript,
|
|
pickFieldInSelectorDropdownScript,
|
|
readFilterDialogInfoScript,
|
|
findFilterBadgeCloseScript,
|
|
findFirstFilterBadgeCloseScript,
|
|
} from './dom/filter.mjs';
|
|
|
|
export {
|
|
isInputFocusedScript,
|
|
isInputFocusedInGridScript,
|
|
findOpenPopupScript,
|
|
} from './dom/edit-state.mjs';
|
|
|
|
export { getFormStateScript } from './dom/form-state.mjs';
|
|
|
|
export {
|
|
resolveGridScript,
|
|
readTableScript,
|
|
} from './dom/grid.mjs';
|
|
|
|
export {
|
|
readSectionsScript,
|
|
readTabsScript,
|
|
switchTabScript,
|
|
readCommandsScript,
|
|
navigateSectionScript,
|
|
openCommandScript,
|
|
} from './dom/nav.mjs';
|
|
|
|
export {
|
|
readSubmenuScript,
|
|
clickPopupItemScript,
|
|
} from './dom/submenu.mjs';
|
|
|
|
export { checkErrorsScript } from './dom/errors.mjs';
|