@nocobase/plugin-users 0.7.0-alpha.9 → 0.7.1-alpha.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (61) hide show
  1. package/lib/actions/users.js +279 -163
  2. package/lib/collections/roles-users.js +12 -5
  3. package/lib/collections/users.js +88 -86
  4. package/lib/index.d.ts +1 -0
  5. package/lib/index.js +19 -8
  6. package/lib/jwt-service.js +50 -29
  7. package/lib/locale/en-US.d.ts +5 -0
  8. package/lib/locale/en-US.js +11 -0
  9. package/lib/locale/index.d.ts +2 -0
  10. package/lib/locale/index.js +23 -0
  11. package/lib/locale/zh-CN.d.ts +6 -0
  12. package/lib/locale/zh-CN.js +12 -0
  13. package/lib/middlewares/check.js +28 -23
  14. package/lib/middlewares/index.js +20 -7
  15. package/lib/middlewares/parseToken.js +86 -62
  16. package/lib/models/UserModel.d.ts +2 -2
  17. package/lib/models/UserModel.js +68 -53
  18. package/lib/server.d.ts +5 -10
  19. package/lib/server.js +261 -149
  20. package/package.json +3 -8
  21. package/esm/actions/users.d.ts +0 -11
  22. package/esm/actions/users.js +0 -165
  23. package/esm/actions/users.js.map +0 -1
  24. package/esm/collections/roles-users.d.ts +0 -3
  25. package/esm/collections/roles-users.js +0 -5
  26. package/esm/collections/roles-users.js.map +0 -1
  27. package/esm/collections/users.d.ts +0 -3
  28. package/esm/collections/users.js +0 -86
  29. package/esm/collections/users.js.map +0 -1
  30. package/esm/index.d.ts +0 -1
  31. package/esm/index.js +0 -2
  32. package/esm/index.js.map +0 -1
  33. package/esm/jwt-service.d.ts +0 -12
  34. package/esm/jwt-service.js +0 -26
  35. package/esm/jwt-service.js.map +0 -1
  36. package/esm/middlewares/check.d.ts +0 -1
  37. package/esm/middlewares/check.js +0 -22
  38. package/esm/middlewares/check.js.map +0 -1
  39. package/esm/middlewares/index.d.ts +0 -2
  40. package/esm/middlewares/index.js +0 -3
  41. package/esm/middlewares/index.js.map +0 -1
  42. package/esm/middlewares/parseToken.d.ts +0 -6
  43. package/esm/middlewares/parseToken.js +0 -64
  44. package/esm/middlewares/parseToken.js.map +0 -1
  45. package/esm/models/UserModel.d.ts +0 -4
  46. package/esm/models/UserModel.js +0 -53
  47. package/esm/models/UserModel.js.map +0 -1
  48. package/esm/server.d.ts +0 -23
  49. package/esm/server.js +0 -133
  50. package/esm/server.js.map +0 -1
  51. package/lib/actions/users.js.map +0 -1
  52. package/lib/collections/roles-users.js.map +0 -1
  53. package/lib/collections/users.js.map +0 -1
  54. package/lib/index.js.map +0 -1
  55. package/lib/jwt-service.js.map +0 -1
  56. package/lib/middlewares/check.js.map +0 -1
  57. package/lib/middlewares/index.js.map +0 -1
  58. package/lib/middlewares/parseToken.js.map +0 -1
  59. package/lib/models/UserModel.js.map +0 -1
  60. package/lib/server.js.map +0 -1
  61. package/tsconfig.build.json +0 -9
package/lib/index.js CHANGED
@@ -1,9 +1,20 @@
1
1
  "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.default = void 0;
7
- var server_1 = require("./server");
8
- Object.defineProperty(exports, "default", { enumerable: true, get: function () { return __importDefault(server_1).default; } });
9
- //# sourceMappingURL=index.js.map
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ Object.defineProperty(exports, "default", {
7
+ enumerable: true,
8
+ get: function get() {
9
+ return _server.default;
10
+ }
11
+ });
12
+ exports.namespace = void 0;
13
+
14
+ var _server = _interopRequireDefault(require("./server"));
15
+
16
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
17
+
18
+ const namespace = require('../package.json').name;
19
+
20
+ exports.namespace = namespace;
@@ -1,33 +1,54 @@
1
1
  "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
6
  exports.JwtService = void 0;
7
- const jsonwebtoken_1 = __importDefault(require("jsonwebtoken"));
7
+
8
+ function _jsonwebtoken() {
9
+ const data = _interopRequireDefault(require("jsonwebtoken"));
10
+
11
+ _jsonwebtoken = function _jsonwebtoken() {
12
+ return data;
13
+ };
14
+
15
+ return data;
16
+ }
17
+
18
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
19
+
8
20
  class JwtService {
9
- constructor(options) {
10
- this.options = options;
11
- }
12
- expiresIn() {
13
- return this.options.expiresIn || '7d';
14
- }
15
- secret() {
16
- return this.options.secret;
17
- }
18
- sign(payload) {
19
- return jsonwebtoken_1.default.sign(payload, this.secret(), { expiresIn: this.expiresIn() });
20
- }
21
- decode(token) {
22
- return new Promise((resolve, reject) => {
23
- jsonwebtoken_1.default.verify(token, this.secret(), (err, decoded) => {
24
- if (err) {
25
- return reject(err);
26
- }
27
- resolve(decoded);
28
- });
29
- });
30
- }
21
+ constructor(options) {
22
+ this.options = void 0;
23
+ this.options = options;
24
+ }
25
+
26
+ expiresIn() {
27
+ return this.options.expiresIn || '7d';
28
+ }
29
+
30
+ secret() {
31
+ return this.options.secret || process.env.APP_KEY;
32
+ }
33
+
34
+ sign(payload) {
35
+ return _jsonwebtoken().default.sign(payload, this.secret(), {
36
+ expiresIn: this.expiresIn()
37
+ });
38
+ }
39
+
40
+ decode(token) {
41
+ return new Promise((resolve, reject) => {
42
+ _jsonwebtoken().default.verify(token, this.secret(), (err, decoded) => {
43
+ if (err) {
44
+ return reject(err);
45
+ }
46
+
47
+ resolve(decoded);
48
+ });
49
+ });
50
+ }
51
+
31
52
  }
32
- exports.JwtService = JwtService;
33
- //# sourceMappingURL=jwt-service.js.map
53
+
54
+ exports.JwtService = JwtService;
@@ -0,0 +1,5 @@
1
+ declare const _default: {
2
+ 'Please fill in your email address': string;
3
+ 'The password is incorrect, please re-enter': string;
4
+ };
5
+ export default _default;
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ var _default = {
8
+ 'Please fill in your email address': 'Please fill in your email address',
9
+ 'The password is incorrect, please re-enter': 'The password is incorrect, please re-enter'
10
+ };
11
+ exports.default = _default;
@@ -0,0 +1,2 @@
1
+ export { default as enUS } from './en-US';
2
+ export { default as zhCN } from './zh-CN';
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ Object.defineProperty(exports, "enUS", {
7
+ enumerable: true,
8
+ get: function get() {
9
+ return _enUS.default;
10
+ }
11
+ });
12
+ Object.defineProperty(exports, "zhCN", {
13
+ enumerable: true,
14
+ get: function get() {
15
+ return _zhCN.default;
16
+ }
17
+ });
18
+
19
+ var _enUS = _interopRequireDefault(require("./en-US"));
20
+
21
+ var _zhCN = _interopRequireDefault(require("./zh-CN"));
22
+
23
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
@@ -0,0 +1,6 @@
1
+ declare const _default: {
2
+ 'The email is incorrect, please re-enter': string;
3
+ 'Please fill in your email address': string;
4
+ 'The password is incorrect, please re-enter': string;
5
+ };
6
+ export default _default;
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ var _default = {
8
+ 'The email is incorrect, please re-enter': '邮箱错误,请重新输入',
9
+ 'Please fill in your email address': '请填写密码',
10
+ 'The password is incorrect, please re-enter': '密码错误,请重新输入'
11
+ };
12
+ exports.default = _default;
@@ -1,26 +1,31 @@
1
1
  "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.check = void 0;
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.check = check;
7
+
8
+ function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
9
+
10
+ function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
11
+
13
12
  // TODO(usage): 拦截用户的处理暂时作为一个中间件导出,应用需要的时候可以直接使用这个中间件
14
13
  function check(options) {
15
- return function check(ctx, next) {
16
- return __awaiter(this, void 0, void 0, function* () {
17
- const { currentUser } = ctx.state;
18
- if (!currentUser) {
19
- return ctx.throw(401, 'Unauthorized');
20
- }
21
- return next();
22
- });
23
- };
24
- }
25
- exports.check = check;
26
- //# sourceMappingURL=check.js.map
14
+ return /*#__PURE__*/function () {
15
+ var _check = _asyncToGenerator(function* (ctx, next) {
16
+ const currentUser = ctx.state.currentUser;
17
+
18
+ if (!currentUser) {
19
+ return ctx.throw(401, 'Unauthorized');
20
+ }
21
+
22
+ return next();
23
+ });
24
+
25
+ function check(_x, _x2) {
26
+ return _check.apply(this, arguments);
27
+ }
28
+
29
+ return check;
30
+ }();
31
+ }
@@ -1,8 +1,21 @@
1
1
  "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.parseToken = exports.check = void 0;
4
- var check_1 = require("./check");
5
- Object.defineProperty(exports, "check", { enumerable: true, get: function () { return check_1.check; } });
6
- var parseToken_1 = require("./parseToken");
7
- Object.defineProperty(exports, "parseToken", { enumerable: true, get: function () { return parseToken_1.parseToken; } });
8
- //# sourceMappingURL=index.js.map
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ Object.defineProperty(exports, "check", {
7
+ enumerable: true,
8
+ get: function get() {
9
+ return _check.check;
10
+ }
11
+ });
12
+ Object.defineProperty(exports, "parseToken", {
13
+ enumerable: true,
14
+ get: function get() {
15
+ return _parseToken.parseToken;
16
+ }
17
+ });
18
+
19
+ var _check = require("./check");
20
+
21
+ var _parseToken = require("./parseToken");
@@ -1,69 +1,93 @@
1
1
  "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.setCurrentRole = exports.parseToken = void 0;
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.parseToken = parseToken;
7
+ exports.setCurrentRole = setCurrentRole;
8
+
9
+ function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
10
+
11
+ function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
12
+
13
13
  function parseToken(options) {
14
- return function parseToken(ctx, next) {
15
- return __awaiter(this, void 0, void 0, function* () {
16
- const user = yield findUserByToken(ctx, options.plugin);
17
- if (user) {
18
- ctx.state.currentUser = user;
19
- setCurrentRole(ctx);
20
- }
21
- return next();
22
- });
23
- };
14
+ return /*#__PURE__*/function () {
15
+ var _parseToken = _asyncToGenerator(function* (ctx, next) {
16
+ const user = yield findUserByToken(ctx, options.plugin);
17
+
18
+ if (user) {
19
+ ctx.state.currentUser = user;
20
+ setCurrentRole(ctx);
21
+ }
22
+
23
+ return next();
24
+ });
25
+
26
+ function parseToken(_x, _x2) {
27
+ return _parseToken.apply(this, arguments);
28
+ }
29
+
30
+ return parseToken;
31
+ }();
24
32
  }
25
- exports.parseToken = parseToken;
33
+
26
34
  function setCurrentRole(ctx) {
27
- var _a;
28
- let currentRole = ctx.get('X-Role');
29
- if (currentRole === 'anonymous') {
30
- ctx.state.currentRole = currentRole;
31
- return;
32
- }
33
- const userRoles = ctx.state.currentUser.roles;
34
- if (userRoles.length == 1) {
35
- currentRole = userRoles[0].name;
36
- }
37
- else if (userRoles.length > 1) {
38
- const role = userRoles.find((role) => role.name === currentRole);
39
- if (!role) {
40
- const defaultRole = userRoles.find((role) => { var _a; return (_a = role === null || role === void 0 ? void 0 : role.rolesUsers) === null || _a === void 0 ? void 0 : _a.default; });
41
- currentRole = (_a = (defaultRole || userRoles[0])) === null || _a === void 0 ? void 0 : _a.name;
42
- }
43
- }
44
- if (currentRole) {
45
- ctx.state.currentRole = currentRole;
35
+ let currentRole = ctx.get('X-Role');
36
+
37
+ if (currentRole === 'anonymous') {
38
+ ctx.state.currentRole = currentRole;
39
+ return;
40
+ }
41
+
42
+ const userRoles = ctx.state.currentUser.roles;
43
+
44
+ if (userRoles.length == 1) {
45
+ currentRole = userRoles[0].name;
46
+ } else if (userRoles.length > 1) {
47
+ const role = userRoles.find(role => role.name === currentRole);
48
+
49
+ if (!role) {
50
+ var _ref;
51
+
52
+ const defaultRole = userRoles.find(role => {
53
+ var _role$rolesUsers;
54
+
55
+ return role === null || role === void 0 ? void 0 : (_role$rolesUsers = role.rolesUsers) === null || _role$rolesUsers === void 0 ? void 0 : _role$rolesUsers.default;
56
+ });
57
+ currentRole = (_ref = defaultRole || userRoles[0]) === null || _ref === void 0 ? void 0 : _ref.name;
46
58
  }
59
+ }
60
+
61
+ if (currentRole) {
62
+ ctx.state.currentRole = currentRole;
63
+ }
47
64
  }
48
- exports.setCurrentRole = setCurrentRole;
49
- function findUserByToken(ctx, plugin) {
50
- return __awaiter(this, void 0, void 0, function* () {
51
- const token = ctx.getBearerToken();
52
- if (!token) {
53
- return null;
54
- }
55
- try {
56
- const { userId } = yield plugin.jwtService.decode(token);
57
- return yield ctx.db.getRepository('users').findOne({
58
- filter: {
59
- id: userId,
60
- },
61
- appends: ['roles'],
62
- });
63
- }
64
- catch (error) {
65
- console.warn(error);
66
- }
67
- });
65
+
66
+ function findUserByToken(_x3, _x4) {
67
+ return _findUserByToken.apply(this, arguments);
68
68
  }
69
- //# sourceMappingURL=parseToken.js.map
69
+
70
+ function _findUserByToken() {
71
+ _findUserByToken = _asyncToGenerator(function* (ctx, plugin) {
72
+ const token = ctx.getBearerToken();
73
+
74
+ if (!token) {
75
+ return null;
76
+ }
77
+
78
+ try {
79
+ const _yield$plugin$jwtServ = yield plugin.jwtService.decode(token),
80
+ userId = _yield$plugin$jwtServ.userId;
81
+
82
+ return yield ctx.db.getRepository('users').findOne({
83
+ filter: {
84
+ id: userId
85
+ },
86
+ appends: ['roles']
87
+ });
88
+ } catch (error) {
89
+ return null;
90
+ }
91
+ });
92
+ return _findUserByToken.apply(this, arguments);
93
+ }
@@ -1,4 +1,4 @@
1
- import { Model, TransactionAble } from '@nocobase/database';
1
+ import { Model, Transactionable } from '@nocobase/database';
2
2
  export declare class UserModel extends Model {
3
- setDefaultRole(roleName: string, options?: TransactionAble): Promise<boolean>;
3
+ setDefaultRole(roleName: string, options?: Transactionable): Promise<boolean>;
4
4
  }
@@ -1,57 +1,72 @@
1
1
  "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- Object.defineProperty(exports, "__esModule", { value: true });
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
12
6
  exports.UserModel = void 0;
13
- const database_1 = require("@nocobase/database");
14
- class UserModel extends database_1.Model {
15
- setDefaultRole(roleName, options = {}) {
16
- return __awaiter(this, void 0, void 0, function* () {
17
- if (roleName == 'anonymous') {
18
- return false;
19
- }
20
- const db = this.constructor.database;
21
- const repository = db.getRepository('rolesUsers');
22
- if (!repository) {
23
- return false;
24
- }
25
- const transaction = options.transaction || (yield db.sequelize.transaction());
26
- try {
27
- yield repository.update({
28
- filter: {
29
- userId: this.get('id'),
30
- },
31
- values: {
32
- default: false,
33
- },
34
- transaction,
35
- });
36
- yield repository.update({
37
- filter: {
38
- userId: this.get('id'),
39
- roleName,
40
- },
41
- values: {
42
- default: true,
43
- },
44
- transaction,
45
- });
46
- yield transaction.commit();
47
- }
48
- catch (error) {
49
- yield transaction.rollback();
50
- throw error;
51
- }
52
- return true;
7
+
8
+ function _database() {
9
+ const data = require("@nocobase/database");
10
+
11
+ _database = function _database() {
12
+ return data;
13
+ };
14
+
15
+ return data;
16
+ }
17
+
18
+ function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
19
+
20
+ function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
21
+
22
+ class UserModel extends _database().Model {
23
+ setDefaultRole(roleName, options = {}) {
24
+ var _this = this;
25
+
26
+ return _asyncToGenerator(function* () {
27
+ if (roleName == 'anonymous') {
28
+ return false;
29
+ }
30
+
31
+ const db = _this.constructor.database;
32
+ const repository = db.getRepository('rolesUsers');
33
+
34
+ if (!repository) {
35
+ return false;
36
+ }
37
+
38
+ const transaction = options.transaction || (yield db.sequelize.transaction());
39
+
40
+ try {
41
+ yield repository.update({
42
+ filter: {
43
+ userId: _this.get('id')
44
+ },
45
+ values: {
46
+ default: false
47
+ },
48
+ transaction
49
+ });
50
+ yield repository.update({
51
+ filter: {
52
+ userId: _this.get('id'),
53
+ roleName
54
+ },
55
+ values: {
56
+ default: true
57
+ },
58
+ transaction
53
59
  });
54
- }
60
+ yield transaction.commit();
61
+ } catch (error) {
62
+ yield transaction.rollback();
63
+ throw error;
64
+ }
65
+
66
+ return true;
67
+ })();
68
+ }
69
+
55
70
  }
56
- exports.UserModel = UserModel;
57
- //# sourceMappingURL=UserModel.js.map
71
+
72
+ exports.UserModel = UserModel;
package/lib/server.d.ts CHANGED
@@ -2,22 +2,17 @@ import { Plugin } from '@nocobase/server';
2
2
  import { JwtOptions, JwtService } from './jwt-service';
3
3
  export interface UserPluginConfig {
4
4
  jwt: JwtOptions;
5
- installing?: {
6
- adminNickname: string;
7
- adminEmail: string;
8
- adminPassword: string;
9
- };
10
5
  }
11
6
  export default class UsersPlugin extends Plugin<UserPluginConfig> {
12
7
  jwtService: JwtService;
13
8
  constructor(app: any, options: any);
14
9
  beforeLoad(): Promise<void>;
15
10
  load(): Promise<void>;
16
- getRootUserInfo(): {
17
- adminNickname: string;
18
- adminEmail: string;
19
- adminPassword: string;
11
+ getInstallingData(options?: any): {
12
+ rootEmail: any;
13
+ rootPassword: any;
14
+ rootNickname: any;
20
15
  };
21
- install(): Promise<void>;
16
+ install(options: any): Promise<void>;
22
17
  getName(): string;
23
18
  }