UNPKG

786 BJavaScriptView Raw
1import Promise from '../promise';
2
3let define = {
4
5 eventAliasesOn: function( proto ){
6 let p = proto;
7
8 p.addListener = p.listen = p.bind = p.on;
9 p.unlisten = p.unbind = p.off = p.removeListener;
10 p.trigger = p.emit;
11
12 // this is just a wrapper alias of .on()
13 p.pon = p.promiseOn = function( events, selector ){
14 let self = this;
15 let args = Array.prototype.slice.call( arguments, 0 );
16
17 return new Promise( function( resolve, reject ){
18 let callback = function( e ){
19 self.off.apply( self, offArgs );
20
21 resolve( e );
22 };
23
24 let onArgs = args.concat( [ callback ] );
25 let offArgs = onArgs.concat( [] );
26
27 self.on.apply( self, onArgs );
28 } );
29 };
30 },
31
32}; // define
33
34export default define;