Перейти к содержимому
FastOffice

Объекты window внутри Electron A4

Что доступно в доверенном renderer настольного A4, зачем это нужно и почему внутренний preload не является публичным SDK.

Объект Назначение Примеры методов
window.fastdocShell Документ, команды редактора, состояние, сохранение, меню getState(), getCurrentDocumentTruth(), openDocxPath(), onStateChanged()
window.a4Update Обновления приложения status(), check(), start(), dismiss(), reveal(), openNotes(), onState()
window.a4Help Версия и поддержка version(), reportProblem(), supportBundle(), checkUpdates(), reportBadge(), onReportBadge()
window.a4Vizor Внутренние заметки Vizor onNote()
const state = await window.fastdocShell.getState();
const truth = await window.fastdocShell.getCurrentDocumentTruth();
const version = await window.a4Help.version();
const stopState = window.fastdocShell.onStateChanged((next) => {
console.log("document state", next);
});
const stopUpdate = window.a4Update.onState((next) => {
console.log("update state", next);
});
await window.a4Update.check();
// При размонтировании компонента обязательно отписаться.
stopState();
stopUpdate();

Вы пишете своё desktop-приложение или серверную обвязку → fastdoc-cli serve (JSONL).

Ваш shell написан на Web-технологиях и нужен асинхронный транспорт → serve –ws 0.

Нужен готовый редактор внутри вашего окна → surface + webview/iframe.

Вы модифицируете сам A4 renderer → trusted Electron preload, с согласованием внутреннего контракта.

СПРАВОЧНИК

Ассистент документации

Ответ собран из документации и может быть неточным — сверяйтесь с источниками.