@sitecore-jss/sitecore-jss-rendering-host
Version:
This module is provided as a part of Sitecore JavaScript Rendering SDK (JSS). It contains the rendering host implementation.
25 lines (24 loc) • 1.04 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.startRenderHostTunnel = startRenderHostTunnel;
const ngrok_1 = __importDefault(require("ngrok"));
/**
* @param {string} renderHostname
* @param {Ngrok.Options} options
*/
function startRenderHostTunnel(renderHostname, options = { port: 80, proto: 'http', quiet: false }) {
if (!renderHostname) {
throw new Error('Unable to start render host tunnel as no hostname for the rendering host was specified.');
}
const rewriteHost = `${renderHostname}:${options.port}`;
const finalOptions = Object.assign(Object.assign({}, options), { host_header: 'rewrite', addr: rewriteHost });
return ngrok_1.default.connect(finalOptions).then((url) => {
if (!options.quiet) {
console.log(`Tunnel started, forwarding '${url}' to '${rewriteHost}'`);
}
return url;
});
}