/
index.js
58 lines (50 loc) · 1.24 KB
/
index.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
/**
* Module dependencies.
*/
var junction = require('junction')
, application = require('./application')
, utils = require('./utils');
/**
* Expose `create()`.
*/
exports = module.exports = create;
/**
* Framework version.
*/
require('pkginfo')(module, 'version');
/**
* Create a Junction/Disco application.
*
* @return {Function}
* @api public
*/
function create() {
var app = junction();
utils.merge(app, application);
app.init();
return app;
}
/**
* Expose `.create()` as module method.
*/
exports.create = create;
/**
* Expose element constructors.
*/
exports.elements = {};
exports.elements.InfoQuery = require('./elements/infoquery');
exports.elements.Identity = require('./elements/identity');
exports.elements.Feature = require('./elements/feature');
exports.elements.ItemsQuery = require('./elements/itemsquery');
exports.elements.Item = require('./elements/item');
/**
* Expose bundled middleware.
*/
exports.middleware = {};
exports.middleware.infoQueryResultParser = require('./middleware/infoQueryResultParser');
exports.middleware.itemsQueryResultParser = require('./middleware/itemsQueryResultParser');
/**
* Expose bundled filters.
*/
exports.filters = {};
exports.filters.infoQuery = require('./filters/infoQuery');