Skip to content

Commit

Permalink
Merge pull request #2 from fabrix-app/v1.1
Browse files Browse the repository at this point in the history
[feat] use instance app
  • Loading branch information
scott-wyatt committed Aug 1, 2018
2 parents 884ab7b + 9034297 commit 4ff3026
Show file tree
Hide file tree
Showing 4 changed files with 33 additions and 30 deletions.
15 changes: 9 additions & 6 deletions lib/api/models/User.ts
Original file line number Diff line number Diff line change
Expand Up @@ -6,10 +6,6 @@ import {
import { merge, defaultsDeep } from 'lodash'
import { queryDefaults } from '../utils'

export interface User {
resolveRoles(app: FabrixApp, options): any
}

export class UserResolver extends PassportUserResolver {
findByIdDefault(criteria, options = {}) {
options = merge(options, queryDefaults.User.default(this.app))
Expand Down Expand Up @@ -73,10 +69,17 @@ export class User extends PassportUser {

}

User.prototype.resolveRoles = function(app, options = {}) {
export interface User {
resolveRoles(options): any
}

/**
*
*/
User.prototype.resolveRoles = function(options = {}) {
if (
this.roles
&& this.roles.every(t => t instanceof app.models['Role'].resolver.sequelizeModel)
&& this.roles.every(t => t instanceof this.app.models['Role'].instance)
&& options.reload !== true
) {
return Promise.resolve(this)
Expand Down
6 changes: 3 additions & 3 deletions lib/api/services/PermissionsService.ts
Original file line number Diff line number Diff line change
Expand Up @@ -140,7 +140,7 @@ export class PermissionsService extends Service {
return User.resolve(reqUser, { transaction: options.transaction || null })
.then(user => {
resUser = user
return resUser.resolveRoles(this.app, {transaction: options.transaction || null})
return resUser.resolveRoles({transaction: options.transaction || null})
})
.then(() => {
return resUser.hasRole(roleName, {transaction: options.transaction || null})
Expand Down Expand Up @@ -169,7 +169,7 @@ export class PermissionsService extends Service {
return User.resolve(reqUser, { transaction: options.transaction || null })
.then(user => {
resUser = user
return resUser.resolveRoles(this.app, {transaction: options.transaction || null})
return resUser.resolveRoles({transaction: options.transaction || null})
})
.then(() => {
return resUser.hasRole(roleName, {transaction: options.transaction || null})
Expand Down Expand Up @@ -198,7 +198,7 @@ export class PermissionsService extends Service {
return this.app.models['User'].resolve(req.user, {transaction: options.transaction || null})
.then(user => {
resUser = user
return resUser.resolveRoles(this.app, {transaction: options.transaction || null})
return resUser.resolveRoles({transaction: options.transaction || null})
})
.then(() => {
return resUser.roles.map(r => r.name)
Expand Down
28 changes: 14 additions & 14 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

14 changes: 7 additions & 7 deletions package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@fabrix/spool-permissions",
"version": "1.1.1",
"version": "1.1.2",
"description": "Spool: Permissions (ACL) for Fabrix using Spool-Passport",
"homepage": "https://fabrix.app",
"author": {
Expand Down Expand Up @@ -46,14 +46,14 @@
"shortid": "^2.2.12"
},
"devDependencies": {
"@fabrix/fabrix": "^1.1.2",
"@fabrix/fabrix": "^1.1.3",
"@fabrix/lint": "^1.0.0-alpha.3",
"@fabrix/spool-email": "^1.1.0",
"@fabrix/spool-express": "^1.1.4",
"@fabrix/spool-i18n": "^1.1.0",
"@fabrix/spool-passport": "^1.1.4",
"@fabrix/spool-passport": "^1.1.5",
"@fabrix/spool-router": "^1.1.3",
"@fabrix/spool-sequelize": "^1.1.1",
"@fabrix/spool-sequelize": "^1.1.4",
"@fabrix/spool-tapestries": "^1.1.3",
"@types/lodash": "^4.14.109",
"@types/node": "~10.3.4",
Expand All @@ -73,13 +73,13 @@
"typescript": "~2.8.1"
},
"peerDependencies": {
"@fabrix/fabrix": "^1.1.2",
"@fabrix/fabrix": "^1.1.3",
"@fabrix/spool-express": "^1.1.4",
"@fabrix/spool-router": "^1.1.3",
"@fabrix/spool-i18n": "^1.1.0",
"@fabrix/spool-sequelize": "^1.1.1",
"@fabrix/spool-sequelize": "^1.1.4",
"@fabrix/spool-email": "^1.1.0",
"@fabrix/spool-passport": "^1.1.4"
"@fabrix/spool-passport": "^1.1.5"
},
"engines": {
"node": ">= 7.6.0"
Expand Down

0 comments on commit 4ff3026

Please sign in to comment.