@foxpage/foxpage-node-sdk
Version:
foxpage node sdk
43 lines (42 loc) • 1.48 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.RenderContextInstance = void 0;
const foxpage_shared_1 = require("@foxpage/foxpage-shared");
const common_1 = require("../common");
const logger_1 = require("../logger");
/**
* render context in node
*
* @export
* @class RenderContextInstance
* @extends {RenderContextBase}
* @implements {Context}
*/
class RenderContextInstance extends foxpage_shared_1.ContextInstance {
constructor(app) {
var _a;
super(app);
this.tags = [];
this.packages = [];
this.componentMap = new Map();
this.structureMap = new Map();
this.frameworkResource = common_1.frameworkResources;
this.options = {
renderMethod: 'hydrate',
};
this.plugins = ((_a = app.pluginManager) === null || _a === void 0 ? void 0 : _a.getPlugins()) || [];
// init get hook proxy
this.getHooks = () => { var _a; return (_a = app.pluginManager) === null || _a === void 0 ? void 0 : _a.getHooks(); };
this.logger = (0, logger_1.loggerCreate)('render process');
this.performanceLogger = (0, foxpage_shared_1.createPerformanceLogger)(this.logger, this.performance);
}
get hooks() {
return (this.getHooks() || []);
}
setRenderMethod(render) {
if (render) {
this.options.renderMethod = 'render';
}
}
}
exports.RenderContextInstance = RenderContextInstance;