New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

dnode-promise

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

dnode-promise - npm Package Compare versions

Comparing version 2.0.0 to 3.0.0

44

index.js

@@ -1,16 +0,34 @@

module.exports = function (promiseMethods) {
var dnodeMethods = {};
Object.keys(promiseMethods).forEach(function (methodName) {
dnodeMethods[methodName] = function () {
var args = Array.prototype.slice.apply(arguments, [0, -1]);
var cb = arguments[arguments.length - 1];
var res = promiseMethods[methodName].apply(promiseMethods, args);
if (res.then) {
res.then(function (result) {
cb(result);
module.exports = {
toDnode: function (promiseMethods) {
var dnodeMethods = {};
Object.keys(promiseMethods).forEach(function (methodName) {
dnodeMethods[methodName] = function () {
var args = Array.prototype.slice.call(arguments, 0, -1);
var cb = arguments[arguments.length - 1];
var res = promiseMethods[methodName].apply(promiseMethods, args);
if (res.then) {
res.then(function (result) {
cb(result);
});
}
}
});
return dnodeMethods;
},
toPromise: function (dnodeMethods, PromiseImplementation) {
if ( ! PromiseImplementation) {
var PromiseImplementation = Promise;
}
var promiseMethods = {};
Object.keys(dnodeMethods).forEach(function (methodName) {
promiseMethods[methodName] = function () {
var args = Array.prototype.slice.call(arguments, 0, arguments.length);
return new PromiseImplementation(function (resolve) {
args.push(resolve);
dnodeMethods[methodName].apply(dnodeMethods, args);
});
}
}
});
return dnodeMethods;
});
return promiseMethods;
}
};
{
"name": "dnode-promise",
"version": "2.0.0",
"version": "3.0.0",
"description": "Helper for using promises on a dnode server",

@@ -5,0 +5,0 @@ "main": "index.js",

@@ -17,15 +17,44 @@ # dnode-promise

server:
```js
var dnode = require('dnode');
var dnodep = require('dnode-promise');
var methods = dnodep({
var server = dnode(dnodep.toDnode({
transform: function (s) {
// sorry, lame example =)
return Promise.resolve(s.replace(/[aeiou]{2,}/, 'oo').toUpperCase());
}
});
var server = dnode(methods);
}));
server.listen(5004);
```
client:
```js
var dnode = require('dnode');
var dnodep = require('dnode-promise');
var d = dnode.connect(5004);
d.on('remote', function (methods) {
var remote = dnodep.toPromise(methods);
remote.transform('beep')
.then(function (s) {
console.log('beep => ' + s);
d.end();
});
});
```
If you want a specific promise to be returned from the remote calls,
supply it to the second argument of the `toPromise` method, example:
```js
var BBPromise = require('bluebird');
// ...
var remote = dnodep.toPromise(methods, BBPromise);
remote.transform('beep')
.then(function (s) {
console.log('beep => ' + s);
d.end();
});
// ...
```
## license

@@ -32,0 +61,0 @@

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc