| 12345678910111213141516171819202122232425262728293031323334353637383940414243 |
- const _ = require('lodash')
- const permissions = []
- const permissionDescriptions = {}
- const register = (perm, description) => {
- if (!permissions.includes(perm)) {
- permissions.push(perm)
- permissions.sort()
- }
- if (description) {
- permissionDescriptions[perm] = description
- }
- }
- const list = async (req, res) => {
- res.status(200).send(
- _.chain(await getPermissions())
- .sort()
- .map(key => ({
- key,
- description: permissionDescriptions[key]
- }))
- .value()
- )
- }
- const getPermissions = async () => {
- if (module.exports.generatePermissions) {
- console.log('findme')
- await module.exports.generatePermissions(register)
- }
- return permissions
- }
- module.exports = {
- register,
- list,
- getPermissions
- }
|