summaryrefslogtreecommitdiffstats
path: root/packages/gitbook/src/output/callPageHook.js
blob: 0c7adfac38c1bd60fa00f5a0f70b01016702ff31 (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,

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

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

        output
    );
}

module.exports = callPageHook;