You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
63 lines
2.1 KiB
63 lines
2.1 KiB
"use strict";
|
|
|
|
Object.defineProperty(exports, "__esModule", {
|
|
value: true
|
|
});
|
|
exports.initializeStore = exports.default = void 0;
|
|
|
|
var _store = _interopRequireDefault(require("./store"));
|
|
|
|
var _actions = require("./actions");
|
|
|
|
var _pagesToStore = _interopRequireDefault(require("./pages-to-store"));
|
|
|
|
var _optionsParser = require("../../backend/utils/options-parser/options-parser");
|
|
|
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
|
|
const initializeStore = async (admin, currentAdmin) => {
|
|
const store = (0, _store.default)();
|
|
const AdminClass = admin.constructor;
|
|
const adminVersion = AdminClass.VERSION;
|
|
store.dispatch((0, _actions.initializeLocale)(admin.locale));
|
|
store.dispatch((0, _actions.initializeResources)(admin.resources.map(resource => {
|
|
try {
|
|
return resource.decorate().toJSON(currentAdmin);
|
|
} catch (e) {
|
|
// eslint-disable-next-line no-console
|
|
console.log('error', resource._decorated);
|
|
throw e;
|
|
}
|
|
})));
|
|
const branding = await (0, _optionsParser.getBranding)(admin, currentAdmin);
|
|
const assets = await (0, _optionsParser.getAssets)(admin, currentAdmin);
|
|
store.dispatch((0, _actions.initializeBranding)(branding || {}));
|
|
store.dispatch((0, _actions.initializeAssets)(assets || {}));
|
|
const {
|
|
loginPath,
|
|
logoutPath,
|
|
rootPath,
|
|
dashboard,
|
|
pages,
|
|
assetsCDN
|
|
} = admin.options;
|
|
const pagesArray = (0, _pagesToStore.default)(pages);
|
|
store.dispatch((0, _actions.initializePages)(pagesArray));
|
|
store.dispatch((0, _actions.initializePaths)({
|
|
loginPath,
|
|
logoutPath,
|
|
rootPath,
|
|
assetsCDN
|
|
}));
|
|
store.dispatch((0, _actions.setCurrentAdmin)(currentAdmin));
|
|
store.dispatch((0, _actions.initializeDashboard)(dashboard));
|
|
store.dispatch((0, _actions.initializeVersions)({
|
|
app: admin.options.version && admin.options.version.app,
|
|
admin: admin.options.version && admin.options.version.admin ? adminVersion : undefined
|
|
}));
|
|
return store;
|
|
};
|
|
|
|
exports.initializeStore = initializeStore;
|
|
var _default = initializeStore;
|
|
exports.default = _default; |