oak-general-business/lib/initialize.prod.js

31 lines
1.8 KiB
JavaScript

"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.initialize = void 0;
var tslib_1 = require("tslib");
var oak_app_domain_1 = require("./oak-app-domain");
var lodash_1 = require("oak-domain/lib/utils/lodash");
var initialize_prod_1 = require("oak-frontend-base/lib/initialize-prod");
var checkers_1 = tslib_1.__importDefault(require("./checkers"));
var features_1 = require("./features");
var selectionRewriter_1 = require("./utils/selectionRewriter");
function initialize(type, domain, storageSchema, frontendContextBuilder, connector, checkers, option) {
var checkers2 = checkers_1.default.concat(checkers || []);
var intersected;
if (option.actionDict) {
intersected = (0, lodash_1.intersection)(Object.keys(oak_app_domain_1.ActionDefDict), Object.keys(option.actionDict));
if (intersected.length > 0 && process.env.NODE_ENV === 'development') {
console.warn("\u7528\u6237\u5B9A\u4E49\u7684actionDict\u4E2D\u5B58\u5728\u548Cgeneral-business\u4E2D\u7684actionDict\u540C\u540D\uFF1A\u300C".concat(intersected.join(','), "\u300D\uFF0C\u5C06\u8986\u76D6general-business\u4E2D\u5B9A\u4E49\u7684actionDict\uFF0C\u8BF7\u786E\u4FDD\u903B\u8F91\u6B63\u786E"));
}
}
option.actionDict = Object.assign({}, oak_app_domain_1.ActionDefDict, option.actionDict);
var features = (0, initialize_prod_1.initialize)(storageSchema, frontendContextBuilder, connector, checkers2, option).features;
// 临时代码
features.cache.cacheStore.registerOperationRewriter(selectionRewriter_1.rewriteOperation);
features.cache.cacheStore.registerSelectionRewriter(selectionRewriter_1.rewriteSelection);
var generalFeatures = (0, features_1.initialize)(features, type, domain);
return {
features: Object.assign(features, generalFeatures),
};
}
exports.initialize = initialize;