Программные API — JZ и JUSTZIX
JustZix предоставляет в скрипте каждого правила два готовых вспомогательных глобальных объекта. <code>JZ</code> управляет кнопками действий, а <code>JUSTZIX</code> пишет прямо в окно Output Console — без самодельной обвязки DOM.
Что такое встроенный вспомогательный API
Каждый фрагмент JavaScript в правиле JustZix — и код за каждой кнопкой действия — выполняется в контексте, где вас уже ждут два готовых глобальных объекта: window.JZ и window.JUSTZIX. Ничего не нужно импортировать или загружать; они доступны с первой строки скрипта.
Это намеренно небольшой API. Вместо сотен методов он даёт две надёжные точки опоры: одну для управления кнопками действий, другую для логирования. Всё остальное вы делаете обычным JavaScript страницы.
JZ — управление кнопками действий
Объект JZ связывает ваш код с кнопками действий расширения. Ключевые методы:
JZ.click('LBL')— программно нажимает кнопку действия с меткой «LBL».JZ.action('LBL')— возвращает DOM-элемент кнопки, чтобы вы могли его стилизовать или проверить атрибуты.JZ.actions()— массив всех видимых кнопок действий.JZ.labels()— массив исходных меток с сохранённым регистром.
Поиск меток не учитывает регистр — JZ.click('btn') и JZ.click('BTN') попадают в одну и ту же кнопку.
JUSTZIX — логирование в Output Console
Объект JUSTZIX — это логгер, пишущий прямо в окно Output Console расширения. Он предлагает JUSTZIX.log(), .warn(), .error(), .info() и .debug() — каждый добавляет запись на соответствующем уровне. Под рукой также есть псевдонимы __JUSTZIX__ и JZ.log.
Так вы отслеживаете, что делает правило, не открывая DevTools. Сообщения попадают в одно спокойное место, отделённое от шума консоли браузера.
Почему стабильный API лучше самодельной обвязки DOM
Вы могли бы искать кнопки по селектору и рассылать собственные события, но такой код ломается, как только меняется вёрстка расширения. JZ и JUSTZIX дают устойчивый контракт: одно и то же имя метода работает независимо от того, как меняется внутренняя реализация.
Соедините это с mutation observer — и получите настоящий workflow: правило ждёт элемент, нажимает серию действий и сообщает результат:
// Действие «AUTO» — сцепляет три других действия
JZ.click('LOAD');
setTimeout(() => JZ.click('PROC'), 500);
setTimeout(() => { JZ.click('SAVE'); JUSTZIX.info('готово'); }, 1500);
Похожие статьи блога
Статьи, которые раскрывают эту тему подробнее.