UNPKG

1.67 kBJavaScriptView Raw
1'use strict';
2
3
4/**
5 * @module Permission
6 * @name Permission
7 * @description An entity that defines permits(access rights) that are
8 * assignable to role(s) to control what role(s) can see and do
9 *
10 * @author lally elias <lallyelias87@gmail.com>
11 * @licence MIT
12 * @since 0.1.0
13 * @version 0.2.0
14 * @example
15 *
16 * const { app } = require('@lykmapipo/permission');
17 * app.start();
18 *
19 */
20
21
22/* dependencies */
23const { pkg } = require('@lykmapipo/common');
24const { include } = require('@lykmapipo/include');
25const { apiVersion } = require('@lykmapipo/env');
26const Permission = include(__dirname, 'lib', 'permission.model');
27const permissionRouter = include(__dirname, 'lib', 'permission.http.router');
28
29
30/**
31 * @name info
32 * @description package information
33 * @type {Object}
34 *
35 * @author lally elias <lallyelias87@gmail.com>
36 * @since 1.0.0
37 * @version 0.1.0
38 */
39exports.info = pkg(
40 `${__dirname}/package.json`,
41 'name', 'description', 'version', 'license',
42 'homepage', 'repository', 'bugs', 'sandbox', 'contributors'
43);
44
45
46/**
47 * @name Permission
48 * @description Permission model
49 * @type {mongoose.Model}
50 *
51 * @author lally elias <lallyelias87@gmail.com>
52 * @since 0.1.0
53 * @version 0.1.0
54 */
55exports.Permission = Permission;
56
57
58/**
59 * @name permissionRouter
60 * @description permission http router
61 * @type {express.Router}
62 *
63 * @author lally elias <lallyelias87@gmail.com>
64 * @since 0.1.0
65 * @version 0.1.0
66 */
67exports.permissionRouter = permissionRouter;
68
69
70/**
71 * @name apiVersion
72 * @description http router api version
73 * @type {String}
74 *
75 * @author lally elias <lallyelias87@gmail.com>
76 * @since 0.1.0
77 * @version 0.1.0
78 */
79exports.apiVersion = apiVersion();