UNPKG

meteor-interface

Version:

Simple Content Management System to generate your administration interface for Meteor and React.

55 lines (45 loc) 1.47 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _configuration = _interopRequireDefault(require("../../lib/configuration")); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } // Global Config var createRoles = function createRoles() { var config = _configuration.default.get(); var _config$roles = config.roles, roles = _config$roles === void 0 ? [] : _config$roles, logs = config.logs; logs && console.log('------ ROLES INIT ------'); if (!roles || !roles[0]) { logs && console.log('There are no roles in your config file. Please add at least one role to have an administration security!'); } else { roles.map(function (role) { var isExisting = Meteor.roles.findOne({ name: role }); if (!isExisting) { var newRole = Roles.createRole(role); logs && console.log('Role created: ' + role); } }); Meteor.roles.find().map(function (role) { var isExisting = false; roles.map(function (baseRole) { if (baseRole === role.name) { isExisting = true; } }); if (!isExisting) { Meteor.roles.remove({ _id: role._id }); logs && console.log('Role deleted: ' + role); } }); } logs && console.log('------ ROLES FINISHED ------'); }; var _default = createRoles; exports.default = _default;