UNPKG

1.59 kBJavaScriptView Raw
1'use strict';
2
3var _regenerator = require('babel-runtime/regenerator');
4
5var _regenerator2 = _interopRequireDefault(_regenerator);
6
7var _asyncToGenerator2 = require('babel-runtime/helpers/asyncToGenerator');
8
9var _asyncToGenerator3 = _interopRequireDefault(_asyncToGenerator2);
10
11function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
12
13module.exports = function () {
14 var _ref = (0, _asyncToGenerator3.default)( /*#__PURE__*/_regenerator2.default.mark(function _callee(self, _, id) {
15 var method;
16 return _regenerator2.default.wrap(function _callee$(_context) {
17 while (1) {
18 switch (_context.prev = _context.next) {
19 case 0:
20 method = self.subscriptionMap[id];
21
22
23 self.l.debug(function () {
24 return ['unsubscribe', id, method];
25 });
26
27 if (method) {
28 _context.next = 4;
29 break;
30 }
31
32 throw new Error('Unable to find subscription for ' + id);
33
34 case 4:
35
36 delete self.subscriptionMap[id];
37 delete self.subscriptions[method].callbacks[id];
38
39 return _context.abrupt('return', true);
40
41 case 7:
42 case 'end':
43 return _context.stop();
44 }
45 }
46 }, _callee, this);
47 }));
48
49 function unsubscribe(_x, _x2, _x3) {
50 return _ref.apply(this, arguments);
51 }
52
53 return unsubscribe;
54}(); // Copyright 2017-2018 Jaco Greeff
55// This software may be modified and distributed under the terms
56// of the ISC license. See the LICENSE file for details.
\No newline at end of file