feat: core improvements + local fs provider + UI fixes
This commit is contained in:
		@@ -16,7 +16,7 @@ module.exports = {
 | 
			
		||||
  },
 | 
			
		||||
  AuthenticationQuery: {
 | 
			
		||||
    async strategies(obj, args, context, info) {
 | 
			
		||||
      let strategies = await WIKI.db.authentication.getStrategies()
 | 
			
		||||
      let strategies = await WIKI.models.authentication.getStrategies()
 | 
			
		||||
      strategies = strategies.map(stg => ({
 | 
			
		||||
        ...stg,
 | 
			
		||||
        config: _.sortBy(_.transform(stg.config, (res, value, key) => {
 | 
			
		||||
@@ -31,7 +31,7 @@ module.exports = {
 | 
			
		||||
  AuthenticationMutation: {
 | 
			
		||||
    async login(obj, args, context) {
 | 
			
		||||
      try {
 | 
			
		||||
        let authResult = await WIKI.db.users.login(args, context)
 | 
			
		||||
        let authResult = await WIKI.models.users.login(args, context)
 | 
			
		||||
        return {
 | 
			
		||||
          ...authResult,
 | 
			
		||||
          responseResult: graphHelper.generateSuccess('Login success')
 | 
			
		||||
@@ -42,7 +42,7 @@ module.exports = {
 | 
			
		||||
    },
 | 
			
		||||
    async loginTFA(obj, args, context) {
 | 
			
		||||
      try {
 | 
			
		||||
        let authResult = await WIKI.db.users.loginTFA(args, context)
 | 
			
		||||
        let authResult = await WIKI.models.users.loginTFA(args, context)
 | 
			
		||||
        return {
 | 
			
		||||
          ...authResult,
 | 
			
		||||
          responseResult: graphHelper.generateSuccess('TFA success')
 | 
			
		||||
@@ -54,7 +54,7 @@ module.exports = {
 | 
			
		||||
    async updateStrategies(obj, args, context) {
 | 
			
		||||
      try {
 | 
			
		||||
        for (let str of args.strategies) {
 | 
			
		||||
          await WIKI.db.authentication.query().patch({
 | 
			
		||||
          await WIKI.models.authentication.query().patch({
 | 
			
		||||
            isEnabled: str.isEnabled,
 | 
			
		||||
            config: _.reduce(str.config, (result, value, key) => {
 | 
			
		||||
              _.set(result, `${value.key}.value`, value.value)
 | 
			
		||||
 
 | 
			
		||||
@@ -4,19 +4,19 @@
 | 
			
		||||
module.exports = {
 | 
			
		||||
  Query: {
 | 
			
		||||
    comments(obj, args, context, info) {
 | 
			
		||||
      return WIKI.db.Comment.findAll({ where: args })
 | 
			
		||||
      return WIKI.models.Comment.findAll({ where: args })
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  Mutation: {
 | 
			
		||||
    createComment(obj, args) {
 | 
			
		||||
      return WIKI.db.Comment.create({
 | 
			
		||||
      return WIKI.models.Comment.create({
 | 
			
		||||
        content: args.content,
 | 
			
		||||
        author: args.userId,
 | 
			
		||||
        document: args.documentId
 | 
			
		||||
      })
 | 
			
		||||
    },
 | 
			
		||||
    deleteComment(obj, args) {
 | 
			
		||||
      return WIKI.db.Comment.destroy({
 | 
			
		||||
      return WIKI.models.Comment.destroy({
 | 
			
		||||
        where: {
 | 
			
		||||
          id: args.id
 | 
			
		||||
        },
 | 
			
		||||
@@ -24,7 +24,7 @@ module.exports = {
 | 
			
		||||
      })
 | 
			
		||||
    },
 | 
			
		||||
    modifyComment(obj, args) {
 | 
			
		||||
      return WIKI.db.Comment.update({
 | 
			
		||||
      return WIKI.models.Comment.update({
 | 
			
		||||
        content: args.content
 | 
			
		||||
      }, {
 | 
			
		||||
        where: { id: args.id }
 | 
			
		||||
 
 | 
			
		||||
@@ -4,15 +4,15 @@
 | 
			
		||||
module.exports = {
 | 
			
		||||
  Query: {
 | 
			
		||||
    documents(obj, args, context, info) {
 | 
			
		||||
      return WIKI.db.Document.findAll({ where: args })
 | 
			
		||||
      return WIKI.models.Document.findAll({ where: args })
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  Mutation: {
 | 
			
		||||
    createDocument(obj, args) {
 | 
			
		||||
      return WIKI.db.Document.create(args)
 | 
			
		||||
      return WIKI.models.Document.create(args)
 | 
			
		||||
    },
 | 
			
		||||
    deleteDocument(obj, args) {
 | 
			
		||||
      return WIKI.db.Document.destroy({
 | 
			
		||||
      return WIKI.models.Document.destroy({
 | 
			
		||||
        where: {
 | 
			
		||||
          id: args.id
 | 
			
		||||
        },
 | 
			
		||||
@@ -20,7 +20,7 @@ module.exports = {
 | 
			
		||||
      })
 | 
			
		||||
    },
 | 
			
		||||
    modifyDocument(obj, args) {
 | 
			
		||||
      return WIKI.db.Document.update({
 | 
			
		||||
      return WIKI.models.Document.update({
 | 
			
		||||
        title: args.title,
 | 
			
		||||
        subtitle: args.subtitle
 | 
			
		||||
      }, {
 | 
			
		||||
@@ -28,7 +28,7 @@ module.exports = {
 | 
			
		||||
      })
 | 
			
		||||
    },
 | 
			
		||||
    moveDocument(obj, args) {
 | 
			
		||||
      return WIKI.db.Document.update({
 | 
			
		||||
      return WIKI.models.Document.update({
 | 
			
		||||
        path: args.path
 | 
			
		||||
      }, {
 | 
			
		||||
        where: { id: args.id }
 | 
			
		||||
 
 | 
			
		||||
@@ -6,16 +6,16 @@ const gql = require('graphql')
 | 
			
		||||
module.exports = {
 | 
			
		||||
  Query: {
 | 
			
		||||
    files(obj, args, context, info) {
 | 
			
		||||
      return WIKI.db.File.findAll({ where: args })
 | 
			
		||||
      return WIKI.models.File.findAll({ where: args })
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  Mutation: {
 | 
			
		||||
    uploadFile(obj, args) {
 | 
			
		||||
      // todo
 | 
			
		||||
      return WIKI.db.File.create(args)
 | 
			
		||||
      return WIKI.models.File.create(args)
 | 
			
		||||
    },
 | 
			
		||||
    deleteFile(obj, args) {
 | 
			
		||||
      return WIKI.db.File.destroy({
 | 
			
		||||
      return WIKI.models.File.destroy({
 | 
			
		||||
        where: {
 | 
			
		||||
          id: args.id
 | 
			
		||||
        },
 | 
			
		||||
@@ -23,18 +23,18 @@ module.exports = {
 | 
			
		||||
      })
 | 
			
		||||
    },
 | 
			
		||||
    renameFile(obj, args) {
 | 
			
		||||
      return WIKI.db.File.update({
 | 
			
		||||
      return WIKI.models.File.update({
 | 
			
		||||
        filename: args.filename
 | 
			
		||||
      }, {
 | 
			
		||||
        where: { id: args.id }
 | 
			
		||||
      })
 | 
			
		||||
    },
 | 
			
		||||
    moveFile(obj, args) {
 | 
			
		||||
      return WIKI.db.File.findById(args.fileId).then(fl => {
 | 
			
		||||
      return WIKI.models.File.findById(args.fileId).then(fl => {
 | 
			
		||||
        if (!fl) {
 | 
			
		||||
          throw new gql.GraphQLError('Invalid File ID')
 | 
			
		||||
        }
 | 
			
		||||
        return WIKI.db.Folder.findById(args.folderId).then(fld => {
 | 
			
		||||
        return WIKI.models.Folder.findById(args.folderId).then(fld => {
 | 
			
		||||
          if (!fld) {
 | 
			
		||||
            throw new gql.GraphQLError('Invalid Folder ID')
 | 
			
		||||
          }
 | 
			
		||||
 
 | 
			
		||||
@@ -4,15 +4,15 @@
 | 
			
		||||
module.exports = {
 | 
			
		||||
  Query: {
 | 
			
		||||
    folders(obj, args, context, info) {
 | 
			
		||||
      return WIKI.db.Folder.findAll({ where: args })
 | 
			
		||||
      return WIKI.models.Folder.findAll({ where: args })
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  Mutation: {
 | 
			
		||||
    createFolder(obj, args) {
 | 
			
		||||
      return WIKI.db.Folder.create(args)
 | 
			
		||||
      return WIKI.models.Folder.create(args)
 | 
			
		||||
    },
 | 
			
		||||
    deleteFolder(obj, args) {
 | 
			
		||||
      return WIKI.db.Folder.destroy({
 | 
			
		||||
      return WIKI.models.Folder.destroy({
 | 
			
		||||
        where: {
 | 
			
		||||
          id: args.id
 | 
			
		||||
        },
 | 
			
		||||
@@ -20,7 +20,7 @@ module.exports = {
 | 
			
		||||
      })
 | 
			
		||||
    },
 | 
			
		||||
    renameFolder(obj, args) {
 | 
			
		||||
      return WIKI.db.Folder.update({
 | 
			
		||||
      return WIKI.models.Folder.update({
 | 
			
		||||
        name: args.name
 | 
			
		||||
      }, {
 | 
			
		||||
        where: { id: args.id }
 | 
			
		||||
 
 | 
			
		||||
@@ -13,22 +13,22 @@ module.exports = {
 | 
			
		||||
  },
 | 
			
		||||
  GroupQuery: {
 | 
			
		||||
    async list(obj, args, context, info) {
 | 
			
		||||
      return WIKI.db.groups.query().select(
 | 
			
		||||
      return WIKI.models.groups.query().select(
 | 
			
		||||
        'groups.*',
 | 
			
		||||
        WIKI.db.groups.relatedQuery('users').count().as('userCount')
 | 
			
		||||
        WIKI.models.groups.relatedQuery('users').count().as('userCount')
 | 
			
		||||
      )
 | 
			
		||||
    },
 | 
			
		||||
    async single(obj, args, context, info) {
 | 
			
		||||
      return WIKI.db.groups.query().findById(args.id)
 | 
			
		||||
      return WIKI.models.groups.query().findById(args.id)
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  GroupMutation: {
 | 
			
		||||
    async assignUser(obj, args) {
 | 
			
		||||
      const grp = await WIKI.db.groups.query().findById(args.groupId)
 | 
			
		||||
      const grp = await WIKI.models.groups.query().findById(args.groupId)
 | 
			
		||||
      if (!grp) {
 | 
			
		||||
        throw new gql.GraphQLError('Invalid Group ID')
 | 
			
		||||
      }
 | 
			
		||||
      const usr = await WIKI.db.users.query().findById(args.userId)
 | 
			
		||||
      const usr = await WIKI.models.users.query().findById(args.userId)
 | 
			
		||||
      if (!usr) {
 | 
			
		||||
        throw new gql.GraphQLError('Invalid User ID')
 | 
			
		||||
      }
 | 
			
		||||
@@ -38,7 +38,7 @@ module.exports = {
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    async create(obj, args) {
 | 
			
		||||
      const group = await WIKI.db.groups.query().insertAndFetch({
 | 
			
		||||
      const group = await WIKI.models.groups.query().insertAndFetch({
 | 
			
		||||
        name: args.name
 | 
			
		||||
      })
 | 
			
		||||
      return {
 | 
			
		||||
@@ -47,17 +47,17 @@ module.exports = {
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    async delete(obj, args) {
 | 
			
		||||
      await WIKI.db.groups.query().deleteById(args.id)
 | 
			
		||||
      await WIKI.models.groups.query().deleteById(args.id)
 | 
			
		||||
      return {
 | 
			
		||||
        responseResult: graphHelper.generateSuccess('Group has been deleted.')
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    async unassignUser(obj, args) {
 | 
			
		||||
      const grp = await WIKI.db.groups.query().findById(args.groupId)
 | 
			
		||||
      const grp = await WIKI.models.groups.query().findById(args.groupId)
 | 
			
		||||
      if (!grp) {
 | 
			
		||||
        throw new gql.GraphQLError('Invalid Group ID')
 | 
			
		||||
      }
 | 
			
		||||
      const usr = await WIKI.db.users.query().findById(args.userId)
 | 
			
		||||
      const usr = await WIKI.models.users.query().findById(args.userId)
 | 
			
		||||
      if (!usr) {
 | 
			
		||||
        throw new gql.GraphQLError('Invalid User ID')
 | 
			
		||||
      }
 | 
			
		||||
@@ -67,7 +67,7 @@ module.exports = {
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    async update(obj, args) {
 | 
			
		||||
      await WIKI.db.groups.query().patch({ name: args.name }).where('id', args.id)
 | 
			
		||||
      await WIKI.models.groups.query().patch({ name: args.name }).where('id', args.id)
 | 
			
		||||
      return {
 | 
			
		||||
        responseResult: graphHelper.generateSuccess('Group has been updated.')
 | 
			
		||||
      }
 | 
			
		||||
 
 | 
			
		||||
@@ -13,7 +13,7 @@ module.exports = {
 | 
			
		||||
  LocalizationQuery: {
 | 
			
		||||
    async locales(obj, args, context, info) {
 | 
			
		||||
      let remoteLocales = await WIKI.redis.get('locales')
 | 
			
		||||
      let localLocales = await WIKI.db.locales.query().select('id', 'code', 'isRTL', 'name', 'nativeName', 'createdAt', 'updatedAt')
 | 
			
		||||
      let localLocales = await WIKI.models.locales.query().select('id', 'code', 'isRTL', 'name', 'nativeName', 'createdAt', 'updatedAt')
 | 
			
		||||
      remoteLocales = (remoteLocales) ? JSON.parse(remoteLocales) : localLocales
 | 
			
		||||
      return _.map(remoteLocales, rl => {
 | 
			
		||||
        let isInstalled = _.some(localLocales, ['code', rl.code])
 | 
			
		||||
 
 | 
			
		||||
@@ -11,18 +11,18 @@ module.exports = {
 | 
			
		||||
  },
 | 
			
		||||
  PageQuery: {
 | 
			
		||||
    async list(obj, args, context, info) {
 | 
			
		||||
      return WIKI.db.pages.query().select(
 | 
			
		||||
      return WIKI.models.pages.query().select(
 | 
			
		||||
        'pages.*',
 | 
			
		||||
        WIKI.db.pages.relatedQuery('users').count().as('userCount')
 | 
			
		||||
        WIKI.models.pages.relatedQuery('users').count().as('userCount')
 | 
			
		||||
      )
 | 
			
		||||
    },
 | 
			
		||||
    async single(obj, args, context, info) {
 | 
			
		||||
      return WIKI.db.pages.query().findById(args.id)
 | 
			
		||||
      return WIKI.models.pages.query().findById(args.id)
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  PageMutation: {
 | 
			
		||||
    async create(obj, args, context) {
 | 
			
		||||
      const page = await WIKI.db.pages.createPage({
 | 
			
		||||
      const page = await WIKI.models.pages.createPage({
 | 
			
		||||
        ...args,
 | 
			
		||||
        authorId: context.req.user.id
 | 
			
		||||
      })
 | 
			
		||||
@@ -32,13 +32,13 @@ module.exports = {
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    async delete(obj, args) {
 | 
			
		||||
      await WIKI.db.groups.query().deleteById(args.id)
 | 
			
		||||
      await WIKI.models.groups.query().deleteById(args.id)
 | 
			
		||||
      return {
 | 
			
		||||
        responseResult: graphHelper.generateSuccess('Page has been deleted.')
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    async update(obj, args, context) {
 | 
			
		||||
      const page = await WIKI.db.pages.updatePage({
 | 
			
		||||
      const page = await WIKI.models.pages.updatePage({
 | 
			
		||||
        ...args,
 | 
			
		||||
        authorId: context.req.user.id
 | 
			
		||||
      })
 | 
			
		||||
 
 | 
			
		||||
@@ -6,16 +6,16 @@ const gql = require('graphql')
 | 
			
		||||
module.exports = {
 | 
			
		||||
  Query: {
 | 
			
		||||
    rights(obj, args, context, info) {
 | 
			
		||||
      return WIKI.db.Right.findAll({ where: args })
 | 
			
		||||
      return WIKI.models.Right.findAll({ where: args })
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  Mutation: {
 | 
			
		||||
    addRightToGroup(obj, args) {
 | 
			
		||||
      return WIKI.db.Group.findById(args.groupId).then(grp => {
 | 
			
		||||
      return WIKI.models.Group.findById(args.groupId).then(grp => {
 | 
			
		||||
        if (!grp) {
 | 
			
		||||
          throw new gql.GraphQLError('Invalid Group ID')
 | 
			
		||||
        }
 | 
			
		||||
        return WIKI.db.Right.create({
 | 
			
		||||
        return WIKI.models.Right.create({
 | 
			
		||||
          path: args.path,
 | 
			
		||||
          role: args.role,
 | 
			
		||||
          exact: args.exact,
 | 
			
		||||
@@ -25,7 +25,7 @@ module.exports = {
 | 
			
		||||
      })
 | 
			
		||||
    },
 | 
			
		||||
    removeRightFromGroup(obj, args) {
 | 
			
		||||
      return WIKI.db.Right.destroy({
 | 
			
		||||
      return WIKI.models.Right.destroy({
 | 
			
		||||
        where: {
 | 
			
		||||
          id: args.rightId
 | 
			
		||||
        },
 | 
			
		||||
@@ -33,7 +33,7 @@ module.exports = {
 | 
			
		||||
      })
 | 
			
		||||
    },
 | 
			
		||||
    modifyRight(obj, args) {
 | 
			
		||||
      return WIKI.db.Right.update({
 | 
			
		||||
      return WIKI.models.Right.update({
 | 
			
		||||
        path: args.path,
 | 
			
		||||
        role: args.role,
 | 
			
		||||
        exact: args.exact,
 | 
			
		||||
 
 | 
			
		||||
@@ -6,7 +6,7 @@ const _ = require('lodash')
 | 
			
		||||
module.exports = {
 | 
			
		||||
  Query: {
 | 
			
		||||
    settings(obj, args, context, info) {
 | 
			
		||||
      return WIKI.db.Setting.findAll({ where: args, raw: true }).then(entries => {
 | 
			
		||||
      return WIKI.models.Setting.findAll({ where: args, raw: true }).then(entries => {
 | 
			
		||||
        return _.map(entries, entry => {
 | 
			
		||||
          entry.config = JSON.stringify(entry.config)
 | 
			
		||||
          return entry
 | 
			
		||||
@@ -16,7 +16,7 @@ module.exports = {
 | 
			
		||||
  },
 | 
			
		||||
  Mutation: {
 | 
			
		||||
    setConfigEntry(obj, args) {
 | 
			
		||||
      return WIKI.db.Setting.update({
 | 
			
		||||
      return WIKI.models.Setting.update({
 | 
			
		||||
        value: args.value
 | 
			
		||||
      }, { where: { key: args.key } })
 | 
			
		||||
    }
 | 
			
		||||
 
 | 
			
		||||
@@ -12,13 +12,24 @@ module.exports = {
 | 
			
		||||
  },
 | 
			
		||||
  StorageQuery: {
 | 
			
		||||
    async targets(obj, args, context, info) {
 | 
			
		||||
      let targets = await WIKI.db.storage.getTargets()
 | 
			
		||||
      targets = targets.map(tgt => ({
 | 
			
		||||
        ...tgt,
 | 
			
		||||
        config: _.sortBy(_.transform(tgt.config, (res, value, key) => {
 | 
			
		||||
          res.push({ key, value: JSON.stringify(value) })
 | 
			
		||||
        }, []), 'key')
 | 
			
		||||
      }))
 | 
			
		||||
      let targets = await WIKI.models.storage.getTargets()
 | 
			
		||||
      targets = targets.map(tgt => {
 | 
			
		||||
        const targetInfo = _.find(WIKI.data.storage, ['key', tgt.key]) || {}
 | 
			
		||||
        console.info(targetInfo)
 | 
			
		||||
        return {
 | 
			
		||||
          ...tgt,
 | 
			
		||||
          config: _.sortBy(_.transform(tgt.config, (res, value, key) => {
 | 
			
		||||
            const configData = _.get(targetInfo.props, key, {})
 | 
			
		||||
            res.push({
 | 
			
		||||
              key,
 | 
			
		||||
              value: JSON.stringify({
 | 
			
		||||
                ...configData,
 | 
			
		||||
                value
 | 
			
		||||
              })
 | 
			
		||||
            })
 | 
			
		||||
          }, []), 'key')
 | 
			
		||||
        }
 | 
			
		||||
      })
 | 
			
		||||
      if (args.filter) { targets = graphHelper.filter(targets, args.filter) }
 | 
			
		||||
      if (args.orderBy) { targets = graphHelper.orderBy(targets, args.orderBy) }
 | 
			
		||||
      return targets
 | 
			
		||||
@@ -28,11 +39,11 @@ module.exports = {
 | 
			
		||||
    async updateTargets(obj, args, context) {
 | 
			
		||||
      try {
 | 
			
		||||
        for (let tgt of args.targets) {
 | 
			
		||||
          await WIKI.db.storage.query().patch({
 | 
			
		||||
          await WIKI.models.storage.query().patch({
 | 
			
		||||
            isEnabled: tgt.isEnabled,
 | 
			
		||||
            mode: tgt.mode,
 | 
			
		||||
            config: _.reduce(tgt.config, (result, value, key) => {
 | 
			
		||||
              _.set(result, `${value.key}.value`, value.value)
 | 
			
		||||
              _.set(result, `${value.key}`, value.value)
 | 
			
		||||
              return result
 | 
			
		||||
            }, {})
 | 
			
		||||
          }).where('key', tgt.key)
 | 
			
		||||
 
 | 
			
		||||
@@ -33,7 +33,7 @@ module.exports = {
 | 
			
		||||
        configFile: path.join(process.cwd(), 'config.yml'),
 | 
			
		||||
        currentVersion: WIKI.version,
 | 
			
		||||
        dbType: _.get(dbTypes, WIKI.config.db.type, 'Unknown DB'),
 | 
			
		||||
        dbVersion: _.get(WIKI.db, 'knex.client.version', 'Unknown version'),
 | 
			
		||||
        dbVersion: _.get(WIKI.models, 'knex.client.version', 'Unknown version'),
 | 
			
		||||
        dbHost: WIKI.config.db.host,
 | 
			
		||||
        latestVersion: WIKI.version, // TODO
 | 
			
		||||
        latestVersionReleaseDate: new Date(), // TODO
 | 
			
		||||
 
 | 
			
		||||
@@ -6,16 +6,16 @@ const gql = require('graphql')
 | 
			
		||||
module.exports = {
 | 
			
		||||
  Query: {
 | 
			
		||||
    tags(obj, args, context, info) {
 | 
			
		||||
      return WIKI.db.Tag.findAll({ where: args })
 | 
			
		||||
      return WIKI.models.Tag.findAll({ where: args })
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  Mutation: {
 | 
			
		||||
    assignTagToDocument(obj, args) {
 | 
			
		||||
      return WIKI.db.Tag.findById(args.tagId).then(tag => {
 | 
			
		||||
      return WIKI.models.Tag.findById(args.tagId).then(tag => {
 | 
			
		||||
        if (!tag) {
 | 
			
		||||
          throw new gql.GraphQLError('Invalid Tag ID')
 | 
			
		||||
        }
 | 
			
		||||
        return WIKI.db.Document.findById(args.documentId).then(doc => {
 | 
			
		||||
        return WIKI.models.Document.findById(args.documentId).then(doc => {
 | 
			
		||||
          if (!doc) {
 | 
			
		||||
            throw new gql.GraphQLError('Invalid Document ID')
 | 
			
		||||
          }
 | 
			
		||||
@@ -24,10 +24,10 @@ module.exports = {
 | 
			
		||||
      })
 | 
			
		||||
    },
 | 
			
		||||
    createTag(obj, args) {
 | 
			
		||||
      return WIKI.db.Tag.create(args)
 | 
			
		||||
      return WIKI.models.Tag.create(args)
 | 
			
		||||
    },
 | 
			
		||||
    deleteTag(obj, args) {
 | 
			
		||||
      return WIKI.db.Tag.destroy({
 | 
			
		||||
      return WIKI.models.Tag.destroy({
 | 
			
		||||
        where: {
 | 
			
		||||
          id: args.id
 | 
			
		||||
        },
 | 
			
		||||
@@ -35,11 +35,11 @@ module.exports = {
 | 
			
		||||
      })
 | 
			
		||||
    },
 | 
			
		||||
    removeTagFromDocument(obj, args) {
 | 
			
		||||
      return WIKI.db.Tag.findById(args.tagId).then(tag => {
 | 
			
		||||
      return WIKI.models.Tag.findById(args.tagId).then(tag => {
 | 
			
		||||
        if (!tag) {
 | 
			
		||||
          throw new gql.GraphQLError('Invalid Tag ID')
 | 
			
		||||
        }
 | 
			
		||||
        return WIKI.db.Document.findById(args.documentId).then(doc => {
 | 
			
		||||
        return WIKI.models.Document.findById(args.documentId).then(doc => {
 | 
			
		||||
          if (!doc) {
 | 
			
		||||
            throw new gql.GraphQLError('Invalid Document ID')
 | 
			
		||||
          }
 | 
			
		||||
@@ -48,7 +48,7 @@ module.exports = {
 | 
			
		||||
      })
 | 
			
		||||
    },
 | 
			
		||||
    renameTag(obj, args) {
 | 
			
		||||
      return WIKI.db.Group.update({
 | 
			
		||||
      return WIKI.models.Group.update({
 | 
			
		||||
        key: args.key
 | 
			
		||||
      }, {
 | 
			
		||||
        where: { id: args.id }
 | 
			
		||||
 
 | 
			
		||||
@@ -10,18 +10,18 @@ module.exports = {
 | 
			
		||||
  },
 | 
			
		||||
  UserQuery: {
 | 
			
		||||
    async list(obj, args, context, info) {
 | 
			
		||||
      return WIKI.db.users.query()
 | 
			
		||||
      return WIKI.models.users.query()
 | 
			
		||||
        .select('id', 'email', 'name', 'provider', 'role', 'createdAt', 'updatedAt')
 | 
			
		||||
    },
 | 
			
		||||
    async search(obj, args, context, info) {
 | 
			
		||||
      return WIKI.db.users.query()
 | 
			
		||||
      return WIKI.models.users.query()
 | 
			
		||||
        .where('email', 'like', `%${args.query}%`)
 | 
			
		||||
        .orWhere('name', 'like', `%${args.query}%`)
 | 
			
		||||
        .limit(10)
 | 
			
		||||
        .select('id', 'email', 'name', 'provider', 'role', 'createdAt', 'updatedAt')
 | 
			
		||||
    },
 | 
			
		||||
    async single(obj, args, context, info) {
 | 
			
		||||
      let usr = await WIKI.db.users.query().findById(args.id)
 | 
			
		||||
      let usr = await WIKI.models.users.query().findById(args.id)
 | 
			
		||||
      usr.password = ''
 | 
			
		||||
      usr.tfaSecret = ''
 | 
			
		||||
      return usr
 | 
			
		||||
@@ -29,13 +29,13 @@ module.exports = {
 | 
			
		||||
  },
 | 
			
		||||
  UserMutation: {
 | 
			
		||||
    create(obj, args) {
 | 
			
		||||
      return WIKI.db.users.query().insertAndFetch(args)
 | 
			
		||||
      return WIKI.models.users.query().insertAndFetch(args)
 | 
			
		||||
    },
 | 
			
		||||
    delete(obj, args) {
 | 
			
		||||
      return WIKI.db.users.query().deleteById(args.id)
 | 
			
		||||
      return WIKI.models.users.query().deleteById(args.id)
 | 
			
		||||
    },
 | 
			
		||||
    update(obj, args) {
 | 
			
		||||
      return WIKI.db.users.query().patch({
 | 
			
		||||
      return WIKI.models.users.query().patch({
 | 
			
		||||
        email: args.email,
 | 
			
		||||
        name: args.name,
 | 
			
		||||
        provider: args.provider,
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user