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

xible-nodepack-email

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

xible-nodepack-email - npm Package Compare versions

Comparing version 0.1.1 to 0.2.0

email.message/typedef.json

120

email.message/index.js

@@ -1,69 +0,71 @@

module.exports = function(NODE) {
'use strict';
let fromIn = NODE.getInputByName('from');
let toIn = NODE.getInputByName('to');
let ccIn = NODE.getInputByName('cc');
let bccIn = NODE.getInputByName('bcc');
let subjectIn = NODE.getInputByName('subject');
let textIn = NODE.getInputByName('text');
let htmlIn = NODE.getInputByName('html');
module.exports = (NODE) => {
const fromIn = NODE.getInputByName('from');
const toIn = NODE.getInputByName('to');
const ccIn = NODE.getInputByName('cc');
const bccIn = NODE.getInputByName('bcc');
const subjectIn = NODE.getInputByName('subject');
const textIn = NODE.getInputByName('text');
const htmlIn = NODE.getInputByName('html');
let messageOut = NODE.getOutputByName('message');
const messageOut = NODE.getOutputByName('message');
function addrConnHandler(addrs, type, mail) {
if (addrs.length) {
mail[type] = addrs.join(',');
} else if (NODE.data[type]) {
mail[type] = NODE.data[type];
}
}
function addrConnHandler(addrs, type, mail) {
if (addrs.length) {
mail[type] = addrs.join(',');
} else if (NODE.data[type]) {
mail[type] = NODE.data[type];
}
}
//return reference glow
messageOut.on('trigger', (conn, state, callback) => {
// return reference glow
messageOut.on('trigger', (conn, state, callback) => {
const mail = {};
let mail = {};
Promise.all([
fromIn.getValues(state)
.then(addrs => addrConnHandler(addrs, 'from', mail)),
toIn.getValues(state)
.then(addrs => addrConnHandler(addrs, 'to', mail)),
ccIn.getValues(state)
.then(addrs => addrConnHandler(addrs, 'cc', mail)),
bccIn.getValues(state)
.then(addrs => addrConnHandler(addrs, 'bcc', mail)),
Promise.all([
subjectIn.getValues(state)
.then((subjects) => {
if (subjects.length) {
mail.subject = subjects.join('');
} else if (NODE.data.subject) {
mail.subject = NODE.data.subject;
}
}),
fromIn.getValues(state).then((addrs) => addrConnHandler(addrs, 'from', mail)),
toIn.getValues(state).then((addrs) => addrConnHandler(addrs, 'to', mail)),
ccIn.getValues(state).then((addrs) => addrConnHandler(addrs, 'cc', mail)),
bccIn.getValues(state).then((addrs) => addrConnHandler(addrs, 'bcc', mail)),
textIn.getValues(state)
.then((texts) => {
if (texts.length) {
mail.text = texts.join('');
} else if (NODE.data.text) {
mail.text = NODE.data.text;
}
}),
subjectIn.getValues(state).then((subjects) => {
if (subjects.length) {
mail.subject = subjects[0];
} else if (NODE.data.subject) {
mail.subject = NODE.data.subject;
}
}),
htmlIn.getValues(state)
.then((htmls) => {
if (htmls.length) {
mail.html = htmls.join('');
} else if (NODE.data.html) {
mail.html = NODE.data.html;
}
})
])
.then(() => {
if (!mail.from || (!mail.to && !mail.cc && !mail.bcc) || !mail.subject) {
return;
}
textIn.getValues(state).then((texts) => {
if (texts.length) {
mail.text = texts[0];
} else if (NODE.data.text) {
mail.text = NODE.data.text;
}
}),
htmlIn.getValues(state).then((htmls) => {
if (htmls.length) {
mail.html = htmls[0];
} else if (NODE.data.html) {
mail.html = NODE.data.html;
}
})
]).then(() => {
if (!mail.from || (!mail.to && !mail.cc && !mail.bcc) || !mail.subject) {
return;
}
callback(mail);
});
});
callback(mail);
});
});
};

@@ -19,9 +19,12 @@ {

"subject": {
"type": "string"
"type": "string",
"maxConnectors": 1
},
"text": {
"type": "string"
"type": "string",
"maxConnectors": 1
},
"html": {
"type": "string"
"type": "string",
"maxConnectors": 1
}

@@ -28,0 +31,0 @@ },

@@ -1,48 +0,41 @@

module.exports = function(NODE) {
'use strict';
let triggerIn = NODE.getInputByName('trigger');
let serverIn = NODE.getInputByName('server');
let messageIn = NODE.getInputByName('message');
module.exports = (NODE) => {
const triggerIn = NODE.getInputByName('trigger');
const serverIn = NODE.getInputByName('servers');
const messageIn = NODE.getInputByName('messages');
let doneOut = NODE.getOutputByName('done');
const doneOut = NODE.getOutputByName('done');
//return reference glow
triggerIn.on('trigger', (conn, state) => {
// return reference glow
triggerIn.on('trigger', (conn, state) => {
Promise.all([serverIn.getValues(state), messageIn.getValues(state)])
.then(([servers, messages]) => {
const total = servers.length * messages.length;
let sent = 0;
Promise.all([serverIn.getValues(state), messageIn.getValues(state)])
.then(([servers, messages]) => {
const total = servers.length * messages.length;
let sent = 0;
function onSent() {
if (++sent === total) {
doneOut.trigger(state);
}
}
function onSent() {
if(++sent === total) {
doneOut.trigger(state);
}
}
servers.forEach((server) => {
messages.forEach((message) => {
if (!message.from || (!message.to && !message.cc && !message.bcc) || !message.subject) {
onSent();
return;
}
servers.forEach((server) => {
messages.forEach((message) => {
if (!message.from || (!message.to && !message.cc && !message.bcc) || !message.subject) {
onSent();
return;
}
server.sendMail(message, (err) => {
if (err) {
NODE.error(err, state);
return;
}
onSent();
});
});
});
});
});
server.sendMail(message, (err) => {
if (err) {
NODE.error(err, state);
return;
}
onSent();
});
});
});
});
});
};

@@ -9,6 +9,6 @@ {

},
"server": {
"servers": {
"type": "email.smtp.server"
},
"message": {
"messages": {
"type": "email.message"

@@ -15,0 +15,0 @@ }

@@ -1,23 +0,21 @@

module.exports = function(NODE) {
'use strict';
const nodemailer = require('nodemailer');
module.exports = (NODE) => {
const nodemailer = require('nodemailer');
let serverOut = NODE.getOutputByName('server');
serverOut.on('trigger', (conn, state, callback) => {
const serverOut = NODE.getOutputByName('server');
serverOut.on('trigger', (conn, state, callback) => {
const smtpConfig = {
host: NODE.data.host,
port: NODE.data.port,
secure: false, // use SSL/TLS
// proxy: 'http://someaddress:someport/'
auth: {
user: NODE.data.username,
pass: NODE.data.password
}
};
let smtpConfig = {
host: NODE.data.host,
port: NODE.data.port,
secure: false, //use SSL/TLS
//proxy: 'http://someaddress:someport/'
auth: {
user: NODE.data.username,
pass: NODE.data.password
}
};
callback(nodemailer.createTransport(smtpConfig));
});
callback(nodemailer.createTransport(smtpConfig));
});
};
{
"name": "xible-nodepack-email",
"version": "0.1.1",
"version": "0.2.0",
"description": "Set of email nodes for Xible",

@@ -10,2 +10,5 @@ "license": "MIT",

},
"scripts": {
"prepublishOnly": "npm shrinkwrap --only=prod"
},
"dependencies": {

@@ -12,0 +15,0 @@ "nodemailer": "*"

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