This repository has been archived by the owner on Nov 16, 2022. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathapp.js
71 lines (59 loc) · 2.27 KB
/
app.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
var app = require('koa')()
, koa = require('koa-router')()
, logger = require('koa-logger')
, json = require('koa-json')
, views = require('koa-views')
, onerror = require('koa-onerror')
, demoWallet = require('./services/wallet')
, logEverything = require('./middleware/log-everything');
var index = require('./routes/index');
var users = require('./routes/users');
var wallet = require('./routes/wallet');
var stabletoken = require('./routes/stabletoken');
var offers = require('./routes/securities/offers');
var issues = require('./routes/securities/issues');
var syndicate = require('./routes/securities/syndicate')
var logs = require('./routes/logs')
var funding = require('./routes/funding');
var oauth = require('./routes/oauth');
var sleep = require('koa-sleep')
// global middlewares
app.use(require('koa-bodyparser')());
app.use(json());
app.use(logger());
app.use(logEverything());
demoWallet.createDemoWallets();
app.use(function *(next) {
try {
var start = new Date;
yield next;
var ms = new Date - start;
console.log('%s %s - %s', this.method, this.url, ms);
yield next;
} catch (err) {
console.error(err)
this.status = err.status || 500;
this.body = err.message;
this.app.emit('error', err, this);
}
});
app.use(require('koa-static')(__dirname + '/public'));
//If you would like to configure all the api call to sleep for a bit to test the real world scenario, you can uncomment this.
//app.use(sleep(1000));
// routes definition
koa.use('/', index.routes(), index.allowedMethods());
koa.use('/api/users', users.routes(), users.allowedMethods());
koa.use('/api/wallet', wallet.routes(), wallet.allowedMethods());
koa.use('/api/stabletoken', stabletoken.routes(), stabletoken.allowedMethods());
koa.use('/api/securities/offers', offers.routes(), offers.allowedMethods());
koa.use('/api/securities/issues', issues.routes(), issues.allowedMethods());
koa.use('/api/securities/syndicate', syndicate.routes(), syndicate.allowedMethods());
koa.use('/api/logs', logs.routes(), logs.allowedMethods());
koa.use('/api/funding', funding.routes(), funding.allowedMethods());
koa.use('/oauth', oauth.routes());
// mount root routes
app.use(koa.routes());
app.on('error', function(err, ctx){
logger.error('server error', err, ctx);
});
module.exports = app;