34 lines
1.3 KiB
JavaScript
34 lines
1.3 KiB
JavaScript
"use strict";
|
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
};
|
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
const json_1 = __importDefault(require("../json"));
|
|
const deprecate_1 = __importDefault(require("./deprecate"));
|
|
const encodeProgress_1 = __importDefault(require("./encodeProgress"));
|
|
/**
|
|
Encode a page in a context to a JS API
|
|
*/
|
|
function encodePage(output, page) {
|
|
const book = output.getBook();
|
|
const summary = book.getSummary();
|
|
const fs = book.getContentFS();
|
|
const file = page.getFile();
|
|
// JS Page is based on the JSON output
|
|
const result = json_1.default.encodePage(page, summary);
|
|
result.type = file.getType();
|
|
result.path = file.getPath();
|
|
result.rawPath = fs.resolve(result.path);
|
|
deprecate_1.default.field(output, "page.progress", result, "progress", () => {
|
|
return (0, encodeProgress_1.default)(output, page);
|
|
}, '"page.progress" property is deprecated');
|
|
deprecate_1.default.field(output, "page.sections", result, "sections", [
|
|
{
|
|
content: result.content,
|
|
type: "normal"
|
|
}
|
|
], '"sections" property is deprecated, use page.content instead');
|
|
return result;
|
|
}
|
|
exports.default = encodePage;
|