Launch Week Day 3: Introducing Organization Notifications in Socket.Learn More
Socket
Book a DemoSign in
Socket

angular-meteor-promiser

Package Overview
Dependencies
Maintainers
1
Versions
5
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

angular-meteor-promiser - npm Package Compare versions

Comparing version
0.0.1
to
0.1.0
+41
README.md
# angular-meteor-promiser
Turns Meteor subscribe, call, apply callbacks into promises
## Install
```bash
npm install angular-meteor-promiser
```
### `$promiser`
#### subscribe : *Promise*
Same arguments as `Meteor.subscribe` but without callback.
`resolve()` receives a handle that provides `stop()` and `ready()` methods.
#### call : *Promise*
Same arguments as `Meteor.call`.
#### apply : *Promise*
Same arguments as `Meteor.apply`.
#### any : *Promise*
```js
function foo(bar) {
if (!bar) {
throw new Error('Bar, we need you!');
}
return bar;
}
$promiser.any(() => foo('bar'))
.then((data) => { ... })
.catch((error) => { ... });
```
+11
-9

@@ -14,14 +14,8 @@ "use strict";

return this._promise(function (resolve, reject) {
console.log('sub');
var handle = meteor_1.Meteor.subscribe.apply(meteor_1.Meteor, [name].concat(args, [{
onReady: function () {
console.log('onready');
resolve(handle);
},
onStop: function () {
console.log('onstop');
reject();
},
onError: function () {
console.log('onerror');
}

@@ -63,6 +57,14 @@ }]));

};
Promiser.prototype.any = function (fn) {
return this._promise(function (resolve, reject) {
try {
resolve(fn());
}
catch (error) {
reject(error);
}
});
};
Promiser.prototype._promise = function (fn) {
var d = this.$q.defer();
fn(d.resolve, d.reject);
return d.promise;
return this.$q(fn);
};

@@ -69,0 +71,0 @@ return Promiser;

@@ -1,1 +0,1 @@

{"version":3,"file":"angular-meteor-promiser.js","sourceRoot":"","sources":["angular-meteor-promiser.ts"],"names":[],"mappings":";AAAA,IAAY,OAAO,WAAM,SAAS,CAAC,CAAA;AAEnC,uBAEO,eAAe,CAAC,CAAA;AAEvB;IAGE,kBAAY,EAAO;QACjB,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;IACf,CAAC;IAEM,4BAAS,GAAhB,UAAiB,IAAI;QAAE,cAAO;aAAP,WAAO,CAAP,sBAAO,CAAP,IAAO;YAAP,6BAAO;;QAC5B,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAC,OAAO,EAAE,MAAM;YACnC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YACnB,IAAM,MAAM,GAAG,eAAM,CAAC,SAAS,OAAhB,eAAM,GAAW,IAAI,SAAK,IAAI,GAAE;gBAC7C,OAAO;oBACL,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;oBACvB,OAAO,CAAC,MAAM,CAAC,CAAC;gBAClB,CAAC;gBACD,MAAM;oBACJ,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;oBACrB,MAAM,EAAE,CAAC;gBACX,CAAC;gBACD,OAAO;oBACL,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;gBACzB,CAAC;aACF,GAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAEM,uBAAI,GAAX,UAAY,IAAI;QAAE,cAAO;aAAP,WAAO,CAAP,sBAAO,CAAP,IAAO;YAAP,6BAAO;;QACvB,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAC,OAAO,EAAE,MAAM;YACnC,eAAM,CAAC,IAAI,OAAX,eAAM,GAAM,IAAI,SAAK,IAAI,GAAE,UAAC,KAAK,EAAE,IAAI;gBACrC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;oBACV,MAAM,CAAC,KAAK,CAAC,CAAC;gBAChB,CAAC;gBAAC,IAAI,CAAC,CAAC;oBACN,OAAO,CAAC,IAAI,CAAC,CAAC;gBAChB,CAAC;YACH,CAAC,GAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAEM,wBAAK,GAAZ,UAAa,IAAI;QAAE,cAAO;aAAP,WAAO,CAAP,sBAAO,CAAP,IAAO;YAAP,6BAAO;;QACxB,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAC,OAAO,EAAE,MAAM;YACnC,eAAM,CAAC,KAAK,OAAZ,eAAM,GAAO,IAAI,SAAK,IAAI,GAAE,UAAC,KAAK,EAAE,IAAI;gBACtC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;oBACV,MAAM,CAAC,KAAK,CAAC,CAAC;gBAChB,CAAC;gBAAC,IAAI,CAAC,CAAC;oBACN,OAAO,CAAC,IAAI,CAAC,CAAC;gBAChB,CAAC;YACH,CAAC,GAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,2BAAQ,GAAhB,UAAiB,EAAE;QACjB,IAAM,CAAC,GAAG,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC;QAE1B,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC;QAExB,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC;IACnB,CAAC;IACH,eAAC;AAAD,CAAC,AAzDD,IAyDC;AAED,IAAM,IAAI,GAAG,yBAAyB,CAAC;AACvC;kBAAe,IAAI,CAAC;AAEpB,OAAO;KACJ,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC;KAChB,OAAO,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC"}
{"version":3,"file":"angular-meteor-promiser.js","sourceRoot":"","sources":["angular-meteor-promiser.ts"],"names":[],"mappings":";AAAA,IAAY,OAAO,WAAM,SAAS,CAAC,CAAA;AAEnC,uBAEO,eAAe,CAAC,CAAA;AAEvB;IAGE,kBAAY,EAAO;QACjB,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;IACf,CAAC;IAEM,4BAAS,GAAhB,UAAiB,IAAI;QAAE,cAAO;aAAP,WAAO,CAAP,sBAAO,CAAP,IAAO;YAAP,6BAAO;;QAC5B,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAC,OAAO,EAAE,MAAM;YACnC,IAAM,MAAM,GAAG,eAAM,CAAC,SAAS,OAAhB,eAAM,GAAW,IAAI,SAAK,IAAI,GAAE;gBAC7C,OAAO;oBACL,OAAO,CAAC,MAAM,CAAC,CAAC;gBAClB,CAAC;gBACD,MAAM;oBACJ,MAAM,EAAE,CAAC;gBACX,CAAC;aACF,GAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAEM,uBAAI,GAAX,UAAY,IAAI;QAAE,cAAO;aAAP,WAAO,CAAP,sBAAO,CAAP,IAAO;YAAP,6BAAO;;QACvB,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAC,OAAO,EAAE,MAAM;YACnC,eAAM,CAAC,IAAI,OAAX,eAAM,GAAM,IAAI,SAAK,IAAI,GAAE,UAAC,KAAK,EAAE,IAAI;gBACrC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;oBACV,MAAM,CAAC,KAAK,CAAC,CAAC;gBAChB,CAAC;gBAAC,IAAI,CAAC,CAAC;oBACN,OAAO,CAAC,IAAI,CAAC,CAAC;gBAChB,CAAC;YACH,CAAC,GAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAEM,wBAAK,GAAZ,UAAa,IAAI;QAAE,cAAO;aAAP,WAAO,CAAP,sBAAO,CAAP,IAAO;YAAP,6BAAO;;QACxB,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAC,OAAO,EAAE,MAAM;YACnC,eAAM,CAAC,KAAK,OAAZ,eAAM,GAAO,IAAI,SAAK,IAAI,GAAE,UAAC,KAAK,EAAE,IAAI;gBACtC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;oBACV,MAAM,CAAC,KAAK,CAAC,CAAC;gBAChB,CAAC;gBAAC,IAAI,CAAC,CAAC;oBACN,OAAO,CAAC,IAAI,CAAC,CAAC;gBAChB,CAAC;YACH,CAAC,GAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAEM,sBAAG,GAAV,UAAW,EAAE;QACX,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAC,OAAO,EAAE,MAAM;YACnC,IAAI,CAAC;gBACH,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC;YAChB,CAAE;YAAA,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;gBACf,MAAM,CAAC,KAAK,CAAC,CAAC;YAChB,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,2BAAQ,GAAhB,UAAiB,EAAE;QACjB,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IACrB,CAAC;IACH,eAAC;AAAD,CAAC,AAzDD,IAyDC;AAED,IAAM,IAAI,GAAG,yBAAyB,CAAC;AACvC;kBAAe,IAAI,CAAC;AAEpB,OAAO;KACJ,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC;KAChB,OAAO,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC"}

@@ -16,14 +16,8 @@ import * as angular from 'angular';

return this._promise((resolve, reject) => {
console.log('sub');
const handle = Meteor.subscribe(name, ...args, {
onReady() {
console.log('onready');
resolve(handle);
},
onStop() {
console.log('onstop')
reject();
},
onError() {
console.log('onerror');
}

@@ -58,8 +52,14 @@ });

public any(fn) {
return this._promise((resolve, reject) => {
try {
resolve(fn());
} catch (error) {
reject(error);
}
});
}
private _promise(fn) {
const d = this.$q.defer();
fn(d.resolve, d.reject);
return d.promise;
return this.$q(fn);
}

@@ -66,0 +66,0 @@ }

{
"name": "angular-meteor-promiser",
"version": "0.0.1",
"version": "0.1.0",
"description": "Turns Meteor subscribe, call, apply callbacks into promises",

@@ -5,0 +5,0 @@ "main": "angular-meteor-promiser.js",