Импорт и упрощение
ImportReport содержит html и warnings; ImportWarning имеет code: unsupported-tag / unsupported-attribute / unsafe-url и detail. ContentImportError.report содержит безопасный результат и предупреждения. По умолчанию потери отклоняются, рабочий документ сохраняется.
import { ContentImportError } from '@vitext-ru/editor';
try {
await editor.setContent(incomingHTML);
} catch (error) {
if (error instanceof ContentImportError) {
console.log(error.report.warnings);
// Покажите пользователю безопасный результат/предупреждения.
// Только после его осознанного решения:
// await editor.setContent(incomingHTML, { allowLossy: true });
} else throw error;
}
allowLossy не разрешает скрипты и не отключает очистку. Сообщение «можно вставить как обычный текст» даёт безопасный обход форматирования, не игнорирование ошибки.
Остальные ошибки
CSSValidationError отклоняет всю таблицу CSS. StaleDocumentError означает, что захваченная ревизия уже изменена: обновите диапазон/данные, не применяйте старый ответ автоматически. AbortError завершает отменённую загрузку; RangeError — неверные диапазоны/размеры. TypeError — неверные опции/схема/контракт.
Исходник и ресурсы
Синтаксическая ошибка указывает строку и блокирует смену режима. Исправьте текст или сбросьте исходник; последняя корректная версия доступна getter-методами. Source/codecs 404 требуют исправления путей и полной поставки. Promise whenReady/whenSourceReady/импорта всегда обрабатывайте через catch.