diff --git a/packages/node_modules/@node-red/util/lib/util.js b/packages/node_modules/@node-red/util/lib/util.js index 37848ed33..a72b892f3 100644 --- a/packages/node_modules/@node-red/util/lib/util.js +++ b/packages/node_modules/@node-red/util/lib/util.js @@ -22,7 +22,7 @@ const clone = require("clone"); const jsonata = require("jsonata"); -const moment = require("moment"); +const moment = require("moment-timezone"); const safeJSONStringify = require("json-stringify-safe"); const util = require("util"); diff --git a/test/unit/@node-red/util/lib/util_spec.js b/test/unit/@node-red/util/lib/util_spec.js index 4855a3cd2..f8c77d68a 100644 --- a/test/unit/@node-red/util/lib/util_spec.js +++ b/test/unit/@node-red/util/lib/util_spec.js @@ -515,6 +515,11 @@ describe("@node-red/util/util", function() { var result = util.evaluateJSONataExpression(expr,{}); result.should.eql('2020-07-03'); }); + it('accesses moment-timezone from an expression', function() { + var expr = util.prepareJSONataExpression('$moment("2013-11-18 11:55Z").tz("Asia/Taipei").format()',{}); + var result = util.evaluateJSONataExpression(expr,{}); + result.should.eql('2013-11-18T19:55:00+08:00'); + }); it('handles non-existant flow context variable', function() { var expr = util.prepareJSONataExpression('$flowContext("nonExistant")',{context:function() { return {flow:{get: function(key) { return {'foo':'bar'}[key]}}}}}); var result = util.evaluateJSONataExpression(expr,{payload:"hello"});