@nocobase/plugin-users 0.7.0-alpha.7 → 0.7.0-alpha.72
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.
- package/lib/actions/users.js +279 -163
- package/lib/collections/roles-users.js +12 -5
- package/lib/collections/users.js +87 -86
- package/lib/index.d.ts +1 -0
- package/lib/index.js +19 -8
- package/lib/jwt-service.js +50 -29
- package/lib/locale/en-US.d.ts +5 -0
- package/lib/locale/en-US.js +11 -0
- package/lib/locale/index.d.ts +2 -0
- package/lib/locale/index.js +23 -0
- package/lib/locale/zh-CN.d.ts +6 -0
- package/lib/locale/zh-CN.js +12 -0
- package/lib/middlewares/check.js +28 -23
- package/lib/middlewares/index.js +20 -7
- package/lib/middlewares/parseToken.js +86 -62
- package/lib/models/UserModel.d.ts +2 -2
- package/lib/models/UserModel.js +68 -53
- package/lib/server.d.ts +5 -10
- package/lib/server.js +261 -149
- package/package.json +3 -8
- package/esm/actions/users.d.ts +0 -11
- package/esm/actions/users.js +0 -165
- package/esm/actions/users.js.map +0 -1
- package/esm/collections/roles-users.d.ts +0 -3
- package/esm/collections/roles-users.js +0 -5
- package/esm/collections/roles-users.js.map +0 -1
- package/esm/collections/users.d.ts +0 -3
- package/esm/collections/users.js +0 -86
- package/esm/collections/users.js.map +0 -1
- package/esm/index.d.ts +0 -1
- package/esm/index.js +0 -2
- package/esm/index.js.map +0 -1
- package/esm/jwt-service.d.ts +0 -12
- package/esm/jwt-service.js +0 -26
- package/esm/jwt-service.js.map +0 -1
- package/esm/middlewares/check.d.ts +0 -1
- package/esm/middlewares/check.js +0 -22
- package/esm/middlewares/check.js.map +0 -1
- package/esm/middlewares/index.d.ts +0 -2
- package/esm/middlewares/index.js +0 -3
- package/esm/middlewares/index.js.map +0 -1
- package/esm/middlewares/parseToken.d.ts +0 -6
- package/esm/middlewares/parseToken.js +0 -64
- package/esm/middlewares/parseToken.js.map +0 -1
- package/esm/models/UserModel.d.ts +0 -4
- package/esm/models/UserModel.js +0 -53
- package/esm/models/UserModel.js.map +0 -1
- package/esm/server.d.ts +0 -23
- package/esm/server.js +0 -133
- package/esm/server.js.map +0 -1
- package/lib/actions/users.js.map +0 -1
- package/lib/collections/roles-users.js.map +0 -1
- package/lib/collections/users.js.map +0 -1
- package/lib/index.js.map +0 -1
- package/lib/jwt-service.js.map +0 -1
- package/lib/middlewares/check.js.map +0 -1
- package/lib/middlewares/index.js.map +0 -1
- package/lib/middlewares/parseToken.js.map +0 -1
- package/lib/models/UserModel.js.map +0 -1
- package/lib/server.js.map +0 -1
- package/tsconfig.build.json +0 -9
package/lib/server.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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","sourcesContent":["import { Collection, Op } from '@nocobase/database';\nimport { Plugin } from '@nocobase/server';\nimport { resolve } from 'path';\nimport * as actions from './actions/users';\nimport { JwtOptions, JwtService } from './jwt-service';\nimport * as middlewares from './middlewares';\nimport { UserModel } from './models/UserModel';\n\nexport interface UserPluginConfig {\n jwt: JwtOptions;\n\n installing?: {\n adminNickname: string;\n adminEmail: string;\n adminPassword: string;\n };\n}\n\nexport default class UsersPlugin extends Plugin<UserPluginConfig> {\n public jwtService: JwtService;\n\n constructor(app, options) {\n super(app, options);\n this.jwtService = new JwtService(options?.jwt);\n }\n\n async beforeLoad() {\n this.db.registerOperators({\n $isCurrentUser(_, ctx) {\n return {\n [Op.eq]: ctx?.app?.ctx?.state?.currentUser?.id || -1,\n };\n },\n });\n this.db.registerModels({ UserModel });\n this.db.on('users.afterCreateWithAssociations', async (model, options) => {\n const { transaction } = options;\n const repository = this.app.db.getRepository('roles');\n if (!repository) {\n return;\n }\n const defaultRole = await repository.findOne({\n filter: {\n default: true,\n },\n transaction,\n });\n if (defaultRole && (await model.countRoles({ transaction })) == 0) {\n await model.addRoles(defaultRole, { transaction });\n }\n });\n\n this.db.on('afterDefineCollection', (collection: Collection) => {\n let { createdBy, updatedBy } = collection.options;\n if (createdBy === true) {\n collection.setField('createdById', {\n type: 'context',\n dataType: 'integer',\n dataIndex: 'state.currentUser.id',\n createOnly: true,\n visible: true,\n onDelete: 'SET NULL',\n onUpdate: 'CASCADE',\n });\n collection.setField('createdBy', {\n type: 'belongsTo',\n target: 'users',\n foreignKey: 'createdById',\n targetKey: 'id',\n });\n }\n if (updatedBy === true) {\n collection.setField('updatedById', {\n type: 'context',\n dataType: 'integer',\n dataIndex: 'state.currentUser.id',\n visible: true,\n onDelete: 'SET NULL',\n onUpdate: 'CASCADE',\n });\n collection.setField('updatedBy', {\n type: 'belongsTo',\n target: 'users',\n foreignKey: 'updatedById',\n targetKey: 'id',\n });\n }\n });\n\n for (const [key, action] of Object.entries(actions)) {\n this.app.resourcer.registerActionHandler(`users:${key}`, action);\n }\n\n this.app.resourcer.use(middlewares.parseToken({ plugin: this }));\n\n const publicActions = ['check', 'signin', 'signup', 'lostpassword', 'resetpassword', 'getUserByResetToken'];\n const loggedInActions = ['signout', 'updateProfile', 'changePassword', 'setDefaultRole'];\n\n publicActions.forEach((action) => this.app.acl.allow('users', action));\n loggedInActions.forEach((action) => this.app.acl.allow('users', action, 'loggedIn'));\n }\n\n async load() {\n await this.db.import({\n directory: resolve(__dirname, 'collections'),\n });\n }\n\n getRootUserInfo() {\n const {\n adminNickname = 'Super Admin',\n adminEmail = 'admin@nocobase.com',\n adminPassword = 'admin123',\n } = this.options.installing || {};\n\n return {\n adminNickname,\n adminEmail,\n adminPassword,\n };\n }\n\n async install() {\n const { adminNickname, adminPassword, adminEmail } = this.getRootUserInfo();\n\n const User = this.db.getCollection('users');\n const user = await User.repository.create<UserModel>({\n values: {\n nickname: adminNickname,\n email: adminEmail,\n password: adminPassword,\n roles: ['root', 'admin'],\n },\n });\n\n await user.setDefaultRole('root');\n\n const repo = this.db.getRepository<any>('collections');\n if (repo) {\n await repo.db2cm('users');\n }\n }\n\n getName(): string {\n return this.getPackageName(__dirname);\n }\n}\n"]}
|
package/tsconfig.build.json
DELETED