diff --git a/CHANGELOG.md b/CHANGELOG.md index 7ea3845c2..9d24243fb 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,59 @@ +#### 1.0.6: Maintenance Release + +Runtime + + - Update to JSONata 1.8.3 + - #2536 Handle clone of null in utils + +Editor + + - Prevent button label wrapping in typedInput + - Handle error objects when reporting in palette manager + +Nodes + + - Inject: Revert to cron 1.7.2 + - UDP: when reusing input socket honour the broadcast mode. + +#### 1.0.5: Maintenance Release + +Runtime + + - #2500 Support for context stores using JSONata and evaluateNodeProperty() + - Add better handling of host-key-verify error with projects + - #2517 Handle false values in $env() properly + - #2514 Ensure complete node scope is remapped in subflows + - #2513 Flows/subflows must preinitialise their context objects + - Clear node.close timeout to avoid unnecessary work on restart + - #2532 Set flow.disabled when disabled property is false + - #2522 Ensure file context does not write 'undefined' to store + +Editor + + - #2489 Fix XPath in UI tests + - #2504 Fix paletteCategories order + - #2501 Add page objects for UI testing + - #2494 Check node props when deciding if pasted node can splice links + - #2521 Don't double-sanitize node name in debug sidebar + - #2519 German i18n updates + - #2523 Update nodeTabMap when replacing unknown nodes + - Update TypedInput to use flexbox and remove resizing code + - Handle nodes with no wires array + - Do not collapse whitespace in Debug string messages + +Nodes + + - File: Remove old legacy wording from file node info to stop confusing users. + - Join: Ensure join node handles missing buffer joiner when not in string mode + - Exec: make exec node logging consistent with itself. (only be verbose when in verbose mode) + - Trigger: reset default timeout value when switching away from wait for reset + - Join: Fix join to not crash on appending invalid types to buffer. + - MQTT out: Add warning if topic contains + or # + - #2502 WebSocket i18n update + - #2508 Add Japanese translation for join node + - TCP out: tidy up select of which rows to display + + #### 1.0.4: Maintenance Release Runtime diff --git a/package.json b/package.json index 0ccf2767c..5bf4e5ee0 100644 --- a/package.json +++ b/package.json @@ -32,9 +32,9 @@ "clone": "2.1.2", "content-type": "1.0.4", "cookie": "0.4.0", - "cookie-parser": "1.4.4", + "cookie-parser": "1.4.5", "cors": "2.8.5", - "cron": "1.8.2", + "cron": "1.7.2", "denque": "1.4.1", "express": "4.17.1", "express-session": "1.17.0", @@ -47,18 +47,18 @@ "is-utf8": "0.2.1", "js-yaml": "3.13.1", "json-stringify-safe": "5.0.1", - "jsonata": "1.8.1", + "jsonata": "1.8.3", "lodash.clonedeep": "^4.5.0", "media-typer": "1.1.0", "memorystore": "1.6.2", "mime": "2.4.4", "mqtt": "2.18.8", "multer": "1.4.2", - "mustache": "4.0.0", + "mustache": "4.0.1", "node-red-node-rbe": "^0.2.6", "node-red-node-sentiment": "^0.1.6", "node-red-node-tail": "^0.1.0", - "nopt": "4.0.1", + "nopt": "4.0.3", "oauth2orize": "1.11.0", "on-headers": "1.0.2", "passport": "0.4.1", @@ -67,16 +67,16 @@ "raw-body": "2.4.1", "request": "2.88.0", "semver": "6.3.0", - "uglify-js": "3.8.0", + "uglify-js": "3.8.1", "when": "3.7.8", "ws": "6.2.1", "xml2js": "0.4.23" }, "optionalDependencies": { - "bcrypt": "3.0.6" + "bcrypt": "3.0.8" }, "devDependencies": { - "marked": "0.8.0", + "marked": "0.8.2", "dompurify": "2.0.8", "grunt": "~1.0.4", "grunt-chmod": "~1.1.1", diff --git a/packages/node_modules/@node-red/editor-api/package.json b/packages/node_modules/@node-red/editor-api/package.json index 01d49bd96..936fe3edc 100644 --- a/packages/node_modules/@node-red/editor-api/package.json +++ b/packages/node_modules/@node-red/editor-api/package.json @@ -26,7 +26,7 @@ "express": "4.17.1", "memorystore": "1.6.2", "mime": "2.4.4", - "mustache": "4.0.0", + "mustache": "4.0.1", "oauth2orize": "1.11.0", "passport-http-bearer": "1.0.1", "passport-oauth2-client-password": "0.1.2", diff --git a/packages/node_modules/@node-red/editor-client/src/js/nodes.js b/packages/node_modules/@node-red/editor-client/src/js/nodes.js index 587a23d5b..e6b4bccca 100644 --- a/packages/node_modules/@node-red/editor-client/src/js/nodes.js +++ b/packages/node_modules/@node-red/editor-client/src/js/nodes.js @@ -1224,7 +1224,7 @@ RED.nodes = (function() { defaults: {}, label: "unknown: "+n.type, labelStyle: "red-ui-flow-node-label-italic", - outputs: n.outputs||n.wires.length, + outputs: n.outputs|| (n.wires && n.wires.length) || 0, set: registry.getNodeSet("node-red/unknown") } } else { diff --git a/packages/node_modules/@node-red/editor-client/src/js/ui/common/typedInput.js b/packages/node_modules/@node-red/editor-client/src/js/ui/common/typedInput.js index 760f3c879..06b0dc81d 100644 --- a/packages/node_modules/@node-red/editor-client/src/js/ui/common/typedInput.js +++ b/packages/node_modules/@node-red/editor-client/src/js/ui/common/typedInput.js @@ -737,11 +737,13 @@ this.optionExpandButton.shown = false; } if (this.optionSelectTrigger) { - this.optionSelectTrigger.show(); + this.optionSelectTrigger.css({"display":"inline-flex"}); if (!opt.hasValue) { + this.optionSelectTrigger.css({"flex-grow":1}) this.elementDiv.hide(); this.valueLabelContainer.hide(); } else { + this.optionSelectTrigger.css({"flex-grow":0}) this.elementDiv.show(); this.valueLabelContainer.hide(); } diff --git a/packages/node_modules/@node-red/editor-client/src/js/ui/palette-editor.js b/packages/node_modules/@node-red/editor-client/src/js/ui/palette-editor.js index 97214ace9..f89d6ab9e 100644 --- a/packages/node_modules/@node-red/editor-client/src/js/ui/palette-editor.js +++ b/packages/node_modules/@node-red/editor-client/src/js/ui/palette-editor.js @@ -223,7 +223,11 @@ RED.palette.editor = (function() { var setElements = nodeEntry.sets[setName]; if (set.err) { errorCount++; - $("
  • ").text(set.err).appendTo(nodeEntry.errorList); + var errMessage = set.err; + if (set.err.message) { + errMessage = set.err.message; + } + $("
  • ").text(errMessage).appendTo(nodeEntry.errorList); } if (set.enabled) { activeTypeCount += set.types.length; diff --git a/packages/node_modules/@node-red/editor-client/src/sass/debug.scss b/packages/node_modules/@node-red/editor-client/src/sass/debug.scss index c92c43320..1e77e46e1 100644 --- a/packages/node_modules/@node-red/editor-client/src/sass/debug.scss +++ b/packages/node_modules/@node-red/editor-client/src/sass/debug.scss @@ -217,6 +217,10 @@ .red-ui-debug-msg-type-number { color: $debug-message-text-color-msg-type-number; }; .red-ui-debug-msg-type-number-toggle { cursor: pointer;} +.red-ui-debug-msg-type-string { + white-space: pre-wrap; +} + .red-ui-debug-msg-row { display: block; padding: 4px 2px 2px; diff --git a/packages/node_modules/@node-red/editor-client/src/sass/editor.scss b/packages/node_modules/@node-red/editor-client/src/sass/editor.scss index e5d80cd72..4614d83fa 100644 --- a/packages/node_modules/@node-red/editor-client/src/sass/editor.scss +++ b/packages/node_modules/@node-red/editor-client/src/sass/editor.scss @@ -760,7 +760,7 @@ button.red-ui-toggleButton.toggle { .red-ui-typedInput-value-label,.red-ui-typedInput-option-label { select,.placeholder-input { margin: 3px; - height: 26px; + height: 24px; width: calc(100% - 10px); padding-left: 3px; } diff --git a/packages/node_modules/@node-red/editor-client/src/sass/ui/common/typedInput.scss b/packages/node_modules/@node-red/editor-client/src/sass/ui/common/typedInput.scss index 3516c3eda..ec865b116 100644 --- a/packages/node_modules/@node-red/editor-client/src/sass/ui/common/typedInput.scss +++ b/packages/node_modules/@node-red/editor-client/src/sass/ui/common/typedInput.scss @@ -110,9 +110,9 @@ button.red-ui-typedInput-option-trigger background: $form-button-background; height: 32px; line-height: 30px; - min-width: 23px; vertical-align: middle; color: $form-text-color; + white-space: nowrap; i.red-ui-typedInput-icon { margin-left: 1px; margin-right: 2px; @@ -174,25 +174,21 @@ button.red-ui-typedInput-option-trigger { padding: 0 0 0 0; position:relative; flex-grow: 1; + line-height: 32px; + display: inline-flex; .red-ui-typedInput-option-label { background:$form-button-background; color: $form-text-color; - position:absolute; - left:0; - right:23px; - top: 0; - padding: 0 5px 0 8px; - i.red-ui-typedInput-icon { - margin-right: 4px; - } + flex-grow: 1; + padding: 0 0 0 8px; + display:inline-block; } .red-ui-typedInput-option-caret { - top: 0; - position: absolute; - right: 0; - bottom: 0; - width: 17px; - padding-left: 5px; + flex-grow: 0; + display:inline-block; + width: 23px; + text-align: center; + height: 100%; &:before { content:''; display: inline-block; diff --git a/packages/node_modules/@node-red/nodes/core/function/15-change.html b/packages/node_modules/@node-red/nodes/core/function/15-change.html index fc9fa8d84..59d4337c5 100644 --- a/packages/node_modules/@node-red/nodes/core/function/15-change.html +++ b/packages/node_modules/@node-red/nodes/core/function/15-change.html @@ -1,5 +1,10 @@