Browse Source

Merge branch 'feature/draft-apps' into admin/user-management-ui

pull/1491/head
Keviin Åberg Kultalahti 5 years ago
parent
commit
771467fba1
  1. 4
      packages/auth/src/db/utils.js
  2. 9
      packages/auth/src/security/roles.js
  3. 5
      packages/server/src/api/controllers/application.js
  4. 5
      packages/server/src/api/routes/permission.js
  5. 2
      packages/server/src/api/routes/tests/utilities/TestFunctions.js
  6. 4
      packages/server/src/tests/utilities/structures.js
  7. 5
      packages/server/src/utilities/security.js
  8. 2
      packages/worker/src/api/controllers/admin/roles.js
  9. 1
      packages/worker/src/api/routes/admin/roles.js
  10. 2
      packages/worker/src/api/routes/index.js

4
packages/auth/src/db/utils.js

@ -147,7 +147,9 @@ exports.getRoleParams = (roleId = null, otherProps = {}) => {
exports.getAllApps = async (devApps = false) => {
const CouchDB = getCouch()
let allDbs = await CouchDB.allDbs()
const appDbNames = allDbs.filter(dbName => dbName.startsWith(exports.APP_PREFIX))
const appDbNames = allDbs.filter(dbName =>
dbName.startsWith(exports.APP_PREFIX)
)
const appPromises = appDbNames.map(db => new CouchDB(db).get(db))
if (appPromises.length === 0) {
return []

9
packages/auth/src/security/roles.js

@ -1,7 +1,12 @@
const { getDB } = require("../db")
const { cloneDeep } = require("lodash/fp")
const { BUILTIN_PERMISSION_IDS, higherPermission } = require("./permissions")
const { generateRoleID, getRoleParams, DocumentTypes, SEPARATOR } = require("../db/utils")
const {
generateRoleID,
getRoleParams,
DocumentTypes,
SEPARATOR,
} = require("../db/utils")
const BUILTIN_IDS = {
ADMIN: "ADMIN",
@ -153,7 +158,7 @@ async function getAllUserRoles(appId, userRoleId) {
currentRole &&
currentRole.inherits &&
roleIds.indexOf(currentRole.inherits) === -1
) {
) {
roleIds.push(currentRole.inherits)
currentRole = await exports.getRole(appId, currentRole.inherits)
roles.push(currentRole)

5
packages/server/src/api/controllers/application.js

@ -20,10 +20,7 @@ const {
DocumentTypes,
AppStatus,
} = require("../../db/utils")
const {
BUILTIN_ROLE_IDS,
AccessController,
} = require("@budibase/auth/roles")
const { BUILTIN_ROLE_IDS, AccessController } = require("@budibase/auth/roles")
const { BASE_LAYOUTS } = require("../../constants/layouts")
const {
createHomeScreen,

5
packages/server/src/api/routes/permission.js

@ -1,10 +1,7 @@
const Router = require("@koa/router")
const controller = require("../controllers/permission")
const authorized = require("../../middleware/authorized")
const {
BUILDER,
PermissionLevels,
} = require("@budibase/auth/permissions")
const { BUILDER, PermissionLevels } = require("@budibase/auth/permissions")
const Joi = require("joi")
const joiValidator = require("../../middleware/joi-validator")

2
packages/server/src/api/routes/tests/utilities/TestFunctions.js

@ -14,7 +14,7 @@ exports.getAllTableRows = async config => {
}
exports.clearAllApps = async () => {
const req = { query: { status: "dev"} }
const req = { query: { status: "dev" } }
await appController.fetch(req)
const apps = req.body
if (!apps || apps.length <= 0) {

4
packages/server/src/tests/utilities/structures.js

@ -1,7 +1,5 @@
const { BUILTIN_ROLE_IDS } = require("@budibase/auth/roles")
const {
BUILTIN_PERMISSION_IDS,
} = require("@budibase/auth/permissions")
const { BUILTIN_PERMISSION_IDS } = require("@budibase/auth/permissions")
const { createHomeScreen } = require("../../constants/screens")
const { EMPTY_LAYOUT } = require("../../constants/layouts")
const { cloneDeep } = require("lodash/fp")

5
packages/server/src/utilities/security.js

@ -4,10 +4,7 @@ const {
getBuiltinPermissionByID,
isPermissionLevelHigherThanRead,
} = require("@budibase/auth/permissions")
const {
lowerBuiltinRoleID,
getBuiltinRoles,
} = require("@budibase/auth/roles")
const { lowerBuiltinRoleID, getBuiltinRoles } = require("@budibase/auth/roles")
const { DocumentTypes } = require("../db/utils")
const CURRENTLY_SUPPORTED_LEVELS = [

2
packages/worker/src/api/controllers/admin/roles.js

@ -19,6 +19,6 @@ exports.fetch = async ctx => {
exports.find = async ctx => {
const appId = ctx.params.appId
ctx.body = {
roles: await getAllRoles(appId)
roles: await getAllRoles(appId),
}
}

1
packages/worker/src/api/routes/admin/roles.js

@ -3,7 +3,6 @@ const controller = require("../../controllers/admin/roles")
const router = Router()
router
.get("/api/admin/roles", controller.fetch)
.get("/api/admin/roles/:appId", controller.find)

2
packages/worker/src/api/routes/index.js

@ -4,6 +4,7 @@ const groupRoutes = require("./admin/groups")
const templateRoutes = require("./admin/templates")
const emailRoutes = require("./admin/email")
const authRoutes = require("./admin/auth")
const roleRoutes = require("./admin/roles")
const appRoutes = require("./app")
exports.routes = [
@ -14,4 +15,5 @@ exports.routes = [
appRoutes,
templateRoutes,
emailRoutes,
roleRoutes,
]

Loading…
Cancel
Save