summaryrefslogtreecommitdiffstats
path: root/packages/gitbook/src/output/callPageHook.js
blob: f68e4a3678aa83c811646e112305213bbaac0c94 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
const Api = require('../api');
const callHook = require('./callHook');

/**
 * Call a hook for a specific page.
 *
 * @param {String} name
 * @param {Output} output
 * @param {Page} page
 * @return {Promise<Page>}
 */
function callPageHook(name, output, page) {
    return callHook(
        name,

        (out) => {
            return Api.encodePage(out, page);
        },

        (out, result) => {
            return Api.decodePage(out, page, result);
        },

        output
    );
}

module.exports = callPageHook;