mirror of
https://github.com/Permissionless-Software-Foundation/bch-dex.git
synced 2026-09-21 16:52:00 -07:00
Moved DB models into localdb adapter
This commit is contained in:
+28
-18
@@ -1,5 +1,5 @@
|
||||
const passport = require('koa-passport')
|
||||
const User = require('../src/models/users')
|
||||
const User = require('../src/adapters/localdb/models/users')
|
||||
const Strategy = require('passport-local')
|
||||
|
||||
passport.serializeUser((user, done) => {
|
||||
@@ -15,24 +15,34 @@ passport.deserializeUser(async (id, done) => {
|
||||
}
|
||||
})
|
||||
|
||||
passport.use('local', new Strategy({
|
||||
usernameField: 'email',
|
||||
passwordField: 'password'
|
||||
}, async (email, password, done) => {
|
||||
try {
|
||||
const user = await User.findOne({ email })
|
||||
if (!user) { return done(null, false) }
|
||||
passport.use(
|
||||
'local',
|
||||
new Strategy(
|
||||
{
|
||||
usernameField: 'email',
|
||||
passwordField: 'password'
|
||||
},
|
||||
async (email, password, done) => {
|
||||
try {
|
||||
const user = await User.findOne({ email })
|
||||
if (!user) {
|
||||
return done(null, false)
|
||||
}
|
||||
|
||||
try {
|
||||
const isMatch = await user.validatePassword(password)
|
||||
try {
|
||||
const isMatch = await user.validatePassword(password)
|
||||
|
||||
if (!isMatch) { return done(null, false) }
|
||||
if (!isMatch) {
|
||||
return done(null, false)
|
||||
}
|
||||
|
||||
done(null, user)
|
||||
} catch (err) {
|
||||
done(err)
|
||||
done(null, user)
|
||||
} catch (err) {
|
||||
done(err)
|
||||
}
|
||||
} catch (err) {
|
||||
return done(err)
|
||||
}
|
||||
}
|
||||
} catch (err) {
|
||||
return done(err)
|
||||
}
|
||||
}))
|
||||
)
|
||||
)
|
||||
|
||||
@@ -4,8 +4,12 @@
|
||||
https://troutsblog.com/blog/clean-architecture
|
||||
*/
|
||||
|
||||
// Individual adapter libraries.
|
||||
// Load individual adapter libraries.
|
||||
const IPFSAdapter = require('./ipfs')
|
||||
const ipfs = new IPFSAdapter()
|
||||
const LocalDB = require('./localdb')
|
||||
|
||||
module.exports = { ipfs }
|
||||
// Instantiate adapter libraries.
|
||||
const ipfs = new IPFSAdapter()
|
||||
const localdb = new LocalDB()
|
||||
|
||||
module.exports = { ipfs, localdb }
|
||||
|
||||
@@ -0,0 +1,15 @@
|
||||
/*
|
||||
This library encapsulates code concerned with MongoDB and Mongoose models.
|
||||
*/
|
||||
|
||||
// Load Mongoose models.
|
||||
const Users = require('./models/users')
|
||||
|
||||
class LocalDB {
|
||||
constructor () {
|
||||
// Encapsulate dependencies
|
||||
this.Users = Users
|
||||
}
|
||||
}
|
||||
|
||||
module.exports = LocalDB
|
||||
@@ -1,6 +1,6 @@
|
||||
const mongoose = require('mongoose')
|
||||
const bcrypt = require('bcryptjs')
|
||||
const config = require('../../config')
|
||||
const config = require('../../../../config')
|
||||
const jwt = require('jsonwebtoken')
|
||||
|
||||
const User = new mongoose.Schema({
|
||||
@@ -19,7 +19,6 @@ const User = new mongoose.Schema({
|
||||
},
|
||||
message: props => `${props.value} is not a valid Email format!`
|
||||
}
|
||||
|
||||
}
|
||||
})
|
||||
|
||||
@@ -8,7 +8,7 @@ const jwt = require('jsonwebtoken')
|
||||
|
||||
// Local libraries
|
||||
const config = require('../../../config')
|
||||
const UserModel = require('../../models/users')
|
||||
const UserModel = require('../../adapters/localdb/models/users')
|
||||
|
||||
class Validators {
|
||||
constructor () {
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
REST API validator middleware.
|
||||
*/
|
||||
|
||||
const User = require('../../../models/users')
|
||||
const User = require('../../../adapters/localdb/models/users')
|
||||
const config = require('../../../../config')
|
||||
const getToken = require('../../../lib/auth')
|
||||
const jwt = require('jsonwebtoken')
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
*/
|
||||
|
||||
// User database model.
|
||||
const UserModel = require('../../../models/users')
|
||||
const UserModel = require('../../../adapters/localdb/models/users')
|
||||
|
||||
// User library for business logic.
|
||||
const UserLib = require('../../../lib/users')
|
||||
|
||||
+1
-1
@@ -12,7 +12,7 @@
|
||||
'use strict'
|
||||
const axios = require('axios').default
|
||||
const mongoose = require('mongoose')
|
||||
const User = require('../models/users')
|
||||
const User = require('../adapters/localdb/models/users')
|
||||
const config = require('../../config')
|
||||
const JsonFiles = require('./utils/json-files')
|
||||
const jsonFiles = new JsonFiles()
|
||||
|
||||
+1
-1
@@ -3,7 +3,7 @@
|
||||
functions are called by the /user REST API endpoints.
|
||||
*/
|
||||
|
||||
const UserModel = require('../models/users')
|
||||
const UserModel = require('../adapters/localdb/models/users')
|
||||
const wlogger = require('./wlogger')
|
||||
|
||||
class UserLib {
|
||||
|
||||
@@ -16,7 +16,7 @@ process.env.SVC_ENV = 'test'
|
||||
const config = require('../../../config')
|
||||
const UserRPC = require('../../../src/controllers/json-rpc/users')
|
||||
const RateLimit = require('../../../src/controllers/json-rpc/rate-limit')
|
||||
const UserModel = require('../../../src/models/users')
|
||||
const UserModel = require('../../../src/adapters/localdb/models/users')
|
||||
|
||||
describe('#UserRPC', () => {
|
||||
let uut
|
||||
|
||||
@@ -10,7 +10,7 @@ const mongoose = require('mongoose')
|
||||
// Local support libraries
|
||||
const config = require('../../../config')
|
||||
const testUtils = require('../../utils/test-utils')
|
||||
const User = require('../../../src/models/users')
|
||||
const User = require('../../../src/adapters/localdb/models/users')
|
||||
|
||||
const UserController = require('../../../src/controllers/rest-api/users/controller')
|
||||
let uut
|
||||
|
||||
@@ -8,7 +8,7 @@ const axios = require('axios').default
|
||||
|
||||
// Local libraries
|
||||
const config = require('../../config')
|
||||
const User = require('../../src/models/users')
|
||||
const User = require('../../src/adapters/localdb/models/users')
|
||||
|
||||
const LOCALHOST = `http://localhost:${config.port}`
|
||||
|
||||
|
||||
Reference in New Issue
Block a user