UNPKG

hurt

Version:

HTTP and SPA routing using RFC 6570 URI templates

49 lines (36 loc) 3.29 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; exports.mixin = mixin; var _eventemitter = require('eventemitter3'); var _eventemitter2 = _interopRequireDefault(_eventemitter); var _sync = require('./sync'); var _sync2 = _interopRequireDefault(_sync); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function mixin() { var eventemitter = new _eventemitter2.default(); return _extends({}, eventemitter, _eventemitter2.default.prototype, { pre: [(0, _sync2.default)(function () { for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) { args[_key] = arguments[_key]; } this.emit.apply(this, ['request'].concat(args)); })], post: [(0, _sync2.default)(function () { for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) { args[_key2] = arguments[_key2]; } this.emit.apply(this, ['finish'].concat(args)); })], use: function use() { for (var _len3 = arguments.length, args = Array(_len3), _key3 = 0; _key3 < _len3; _key3++) { args[_key3] = arguments[_key3]; } this.emit.apply(this, ['handler'].concat(args)); return this.use.apply(this, args); } }); } //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9ldmVudHMuanMiXSwibmFtZXMiOlsibWl4aW4iLCJldmVudGVtaXR0ZXIiLCJwcm90b3R5cGUiLCJwcmUiLCJhcmdzIiwiZW1pdCIsInBvc3QiLCJ1c2UiXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7OztRQU1nQkEsSyxHQUFBQSxLOztBQUpoQjs7OztBQUVBOzs7Ozs7QUFFTyxTQUFTQSxLQUFULEdBQWlCO0FBQ3RCLE1BQU1DLGVBQWUsNEJBQXJCOztBQUVBLHNCQUNLQSxZQURMLEVBRUssdUJBQWFDLFNBRmxCO0FBR0VDLFNBQUssQ0FDSCxvQkFBSyxZQUFtQjtBQUFBLHdDQUFOQyxJQUFNO0FBQU5BLFlBQU07QUFBQTs7QUFDdEIsV0FBS0MsSUFBTCxjQUFVLFNBQVYsU0FBd0JELElBQXhCO0FBQ0QsS0FGRCxDQURHLENBSFA7QUFRRUUsVUFBTSxDQUNKLG9CQUFLLFlBQW1CO0FBQUEseUNBQU5GLElBQU07QUFBTkEsWUFBTTtBQUFBOztBQUN0QixXQUFLQyxJQUFMLGNBQVUsUUFBVixTQUF1QkQsSUFBdkI7QUFDRCxLQUZELENBREksQ0FSUjtBQWFFRyxPQWJGLGlCQWFlO0FBQUEseUNBQU5ILElBQU07QUFBTkEsWUFBTTtBQUFBOztBQUNYLFdBQUtDLElBQUwsY0FBVSxTQUFWLFNBQXdCRCxJQUF4QjtBQUNBLGFBQU8sS0FBS0csR0FBTCxhQUFZSCxJQUFaLENBQVA7QUFDRDtBQWhCSDtBQWtCRCIsImZpbGUiOiJldmVudHMuanMiLCJzb3VyY2VzQ29udGVudCI6WyIndXNlIHN0cmljdCc7XG5cbmltcG9ydCBFdmVudEVtaXR0ZXIgZnJvbSAnZXZlbnRlbWl0dGVyMyc7XG5cbmltcG9ydCBzeW5jIGZyb20gJy4vc3luYyc7XG5cbmV4cG9ydCBmdW5jdGlvbiBtaXhpbigpIHtcbiAgY29uc3QgZXZlbnRlbWl0dGVyID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIHJldHVybiB7XG4gICAgLi4uZXZlbnRlbWl0dGVyLFxuICAgIC4uLkV2ZW50RW1pdHRlci5wcm90b3R5cGUsXG4gICAgcHJlOiBbXG4gICAgICBzeW5jKGZ1bmN0aW9uICguLi5hcmdzKSB7XG4gICAgICAgIHRoaXMuZW1pdCgncmVxdWVzdCcsIC4uLmFyZ3MpO1xuICAgICAgfSlcbiAgICBdLFxuICAgIHBvc3Q6IFtcbiAgICAgIHN5bmMoZnVuY3Rpb24gKC4uLmFyZ3MpIHtcbiAgICAgICAgdGhpcy5lbWl0KCdmaW5pc2gnLCAuLi5hcmdzKTtcbiAgICAgIH0pXG4gICAgXSxcbiAgICB1c2UoLi4uYXJncykge1xuICAgICAgdGhpcy5lbWl0KCdoYW5kbGVyJywgLi4uYXJncyk7XG4gICAgICByZXR1cm4gdGhpcy51c2UoLi4uYXJncyk7XG4gICAgfVxuICB9O1xufVxuIl19