Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
20 changes: 10 additions & 10 deletions package.json
Original file line number Diff line number Diff line change
@@ -1,22 +1,22 @@
{
"name": "node-red-contrib-mssql-plus",
"version": "0.12.2",
"version": "0.13.0",
"description": "A node-red node to execute queries, stored procedures and bulk inserts in Microsoft SQL Server and Azure Databases SQL2000 ~ SQL2022",
"main": "odbc.js",
"dependencies": {
"mssql": "^10.0.0",
"mssql": "^11.0.1",
"mustache": "^4.2.0"
},
"devDependencies": {
"eslint": "^7.25.0",
"eslint-config-standard": "^16.0.2",
"eslint-plugin-html": "^6.1.2",
"eslint-plugin-import": "^2.22.1",
"eslint": "^7.32.0",
"eslint-config-standard": "^16.0.3",
"eslint-plugin-html": "^6.2.0",
"eslint-plugin-import": "^2.31.0",
"eslint-plugin-node": "^11.1.0",
"eslint-plugin-promise": "^4.3.1",
"mocha": "^9.2.0",
"node-red": "^1.0.3",
"node-red-node-test-helper": "^0.3.0",
"mocha": "^9.2.2",
"node-red": "^4.0.9",
"node-red-node-test-helper": "^0.3.4",
"should": "^13.2.3"
},
"node-red": {
Expand Down Expand Up @@ -62,6 +62,6 @@
"url": "https://github.com/bestlong/node-red-contrib-mssql-plus/issues"
},
"engines": {
"node": ">=16"
"node": ">=18"
}
}
6 changes: 3 additions & 3 deletions src/mssql.html
Original file line number Diff line number Diff line change
Expand Up @@ -416,11 +416,11 @@ <h3>Shameless request for beta testers...</h3>
return this.name ? 'node_label_italic' : '';
},
oneditprepare: function () {
if (this.parseMustache === undefined) {
this.parseMustache = true;
const node = this;
if (typeof node.parseMustache === 'undefined') {
node.parseMustache = true;
$('#node-input-parseMustache').prop('checked', true);
}
const node = this;
//ensure node.query is a string otherwise editor wont initialise
if (typeof node.query !== 'string') node.query = '';
//create the query editor
Expand Down
14 changes: 8 additions & 6 deletions src/mssql.js
Original file line number Diff line number Diff line change
Expand Up @@ -335,7 +335,7 @@ module.exports = function (RED) {
// node-mssql 5.x to 6.x changes
// ConnectionPool.close() now returns a promise / callbacks will be executed once closing of the
if (node.pool && node.pool.close) {
node.pool.close().catch(() => {})
node.pool.close().catch(() => {});
}
if (updateStatusAndLog) node.status({ fill: 'grey', shape: 'dot', text: 'disconnected' });
node.poolConnect = null;
Expand Down Expand Up @@ -496,7 +496,7 @@ module.exports = function (RED) {
node.paramsOptType = config.paramsOptType || 'none';
node.rows = config.rows || 'rows';
node.rowsType = config.rowsType || 'msg';
node.parseMustache = config.parseMustache || true;
node.parseMustache = !(config.parseMustache === false || config.parseMustache === 'false'); // if not explicitly set to false, then enable mustache parsing

const setResult = function (msg, field, value, returnType = 0) {
// eslint-disable-next-line eqeqeq
Expand Down Expand Up @@ -752,10 +752,11 @@ module.exports = function (RED) {
}
}

const promises = [];
const resolvedTokens = {};
let tokens;
if (node.parseMustache) {
const promises = [];
const tokens = extractTokens(mustache.parse(msg.query));
const resolvedTokens = {};
tokens = extractTokens(mustache.parse(msg.query));
tokens.forEach(function (name) {
const envName = parseEnv(name);
if (envName) {
Expand Down Expand Up @@ -789,7 +790,8 @@ module.exports = function (RED) {
}
}
});

}
if (tokens && tokens.size > 0) {
Promise.all(promises).then(function () {
const value = mustache.render(msg.query, new NodeContext(msg, node.context(), null, false, resolvedTokens));
msg.query = value;
Expand Down
Loading