"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); const deprecate_1 = __importDefault(require("./deprecate")); /** Decode changes from a JS API to a page object. Only the content can be edited by plugin's hooks. @param {Output} output @param {Page} page: page instance to edit @param {Object} result: result from API @return {Page} */ function decodePage(output, page, result) { const originalContent = page.getContent(); // No returned value // Existing content will be used if (!result) { return page; } deprecate_1.default.disable("page.sections"); // GitBook/HonKit 3 // Use returned page.content if different from original content if (result.content != originalContent) { page = page.set("content", result.content); } // GitBook 2 compatibility // Finally, use page.sections else if (result.sections) { page = page.set("content", result.sections .map((section) => { return section.content; }) .join("\n")); } deprecate_1.default.enable("page.sections"); return page; } exports.default = decodePage;