').appendTo("#red-ui-workspace-footer");
},
- add: addWidget
+ add: addWidget,
+ hide: hideWidget,
+ show: showWidget
}
})();
diff --git a/packages/node_modules/@node-red/editor-client/src/js/ui/tour/tourGuide.js b/packages/node_modules/@node-red/editor-client/src/js/ui/tour/tourGuide.js
index 5ae66720c..30130d2d1 100644
--- a/packages/node_modules/@node-red/editor-client/src/js/ui/tour/tourGuide.js
+++ b/packages/node_modules/@node-red/editor-client/src/js/ui/tour/tourGuide.js
@@ -435,10 +435,15 @@ RED.tourGuide = (function() {
function listTour() {
return [
+ {
+ id: "4_1",
+ label: "4.1",
+ path: "./tours/welcome.js"
+ },
{
id: "4_0",
label: "4.0",
- path: "./tours/welcome.js"
+ path: "./tours/4.0/welcome.js"
},
{
id: "3_1",
diff --git a/packages/node_modules/@node-red/editor-client/src/js/ui/userSettings.js b/packages/node_modules/@node-red/editor-client/src/js/ui/userSettings.js
index 1b61f396e..3bc99e602 100644
--- a/packages/node_modules/@node-red/editor-client/src/js/ui/userSettings.js
+++ b/packages/node_modules/@node-red/editor-client/src/js/ui/userSettings.js
@@ -140,9 +140,22 @@ RED.userSettings = (function() {
title: "menu.label.nodes",
options: [
{setting:"view-node-status",oldSetting:"menu-menu-item-status",label:"menu.label.displayStatus",default: true, toggle:true,onchange:"core:toggle-status"},
+ {setting:"view-node-info-icon", label:"menu.label.displayInfoIcon", default: true, toggle:true,onchange:"core:toggle-node-info-icon"},
{setting:"view-node-show-label",label:"menu.label.showNodeLabelDefault",default: true, toggle:true}
]
},
+ {
+ title: "telemetry.label",
+ options: [
+ {
+ global: true,
+ setting: "telemetryEnabled",
+ label: "telemetry.settingsTitle",
+ description: "telemetry.settingsDescription",
+ toggle: true
+ },
+ ]
+ },
{
title: "menu.label.other",
options: [
@@ -169,13 +182,20 @@ RED.userSettings = (function() {
var initialState;
if (opt.local) {
initialState = localStorage.getItem(opt.setting);
+ } else if (opt.global) {
+ initialState = RED.settings.get(opt.setting);
} else {
initialState = currentEditorSettings.view[opt.setting];
}
var row = $('
').appendTo(pane);
var input;
if (opt.toggle) {
- input = $(' '+RED._(opt.label)+' ').appendTo(row).find("input");
+ let label = RED._(opt.label)
+ if (opt.description) {
+ label = `${label}
${RED._(opt.description)}`;
+ }
+ input = $(' ').appendTo(row)
+ $(''+label+' ').appendTo(row)
input.prop('checked',initialState);
} else if (opt.options) {
$(''+RED._(opt.label)+' ').appendTo(row);
@@ -209,6 +229,8 @@ RED.userSettings = (function() {
var opt = allSettings[id];
if (opt.local) {
localStorage.setItem(opt.setting,value);
+ } else if (opt.global) {
+ RED.settings.set(opt.setting, value)
} else {
var currentEditorSettings = RED.settings.get('editor') || {};
currentEditorSettings.view = currentEditorSettings.view || {};
@@ -237,7 +259,7 @@ RED.userSettings = (function() {
addPane({
id:'view',
- title: RED._("menu.label.view.view"),
+ title: RED._("menu.label.settings"),
get: createViewPane,
close: function() {
viewSettings.forEach(function(section) {
diff --git a/packages/node_modules/@node-red/editor-client/src/js/ui/utils.js b/packages/node_modules/@node-red/editor-client/src/js/ui/utils.js
index 4529a6923..997b8f581 100644
--- a/packages/node_modules/@node-red/editor-client/src/js/ui/utils.js
+++ b/packages/node_modules/@node-red/editor-client/src/js/ui/utils.js
@@ -128,10 +128,25 @@ RED.utils = (function() {
function formatString(str) {
return str.replace(/\r?\n/g,"↵").replace(/\t/g,"→");
}
+
function sanitize(m) {
return m.replace(/&/g,"&").replace(//g,">");
}
+ /**
+ * Truncates a string to a specified maximum length, adding ellipsis
+ * if truncated.
+ *
+ * @param {string} str The string to be truncated.
+ * @param {number} [maxLength = 120] The maximum length of the truncated
+ * string. Default `120`.
+ * @returns {string} The truncated string with ellipsis if it exceeds the
+ * maximum length.
+ */
+ function truncateString(str, maxLength = 120) {
+ return str.length > maxLength ? str.slice(0, maxLength) + "..." : str;
+ }
+
function buildMessageSummaryValue(value) {
var result;
if (Array.isArray(value)) {
@@ -379,6 +394,9 @@ RED.utils = (function() {
}
}
+ // Max string length before truncating
+ const MAX_STRING_LENGTH = 80;
+
/**
* Create a DOM element representation of obj - as used by Debug sidebar etc
*
@@ -474,7 +492,7 @@ RED.utils = (function() {
} else if (typeHint === "internal" || (obj.__enc__ && obj.type === 'internal')) {
e = $('').text("[internal]").appendTo(entryObj);
} else if (typeof obj === 'string') {
- if (/[\t\n\r]/.test(obj)) {
+ if (/[\t\n\r]/.test(obj) || obj.length > MAX_STRING_LENGTH) {
element.addClass('collapsed');
$(' ').prependTo(header);
makeExpandable(header, function() {
@@ -483,7 +501,7 @@ RED.utils = (function() {
$(' ').text(obj).appendTo(row);
},function(state) {if (ontoggle) { ontoggle(path,state);}}, checkExpanded(strippedKey, expandPaths, { expandLeafNodes }));
}
- e = $('').html('"'+formatString(sanitize(obj))+'"').appendTo(entryObj);
+ e = $('').html('"'+formatString(sanitize(truncateString(obj, MAX_STRING_LENGTH)))+'"').appendTo(entryObj);
if (/^#[0-9a-f]{6}$/i.test(obj)) {
$(' ').css('backgroundColor',obj).appendTo(e);
}
@@ -1513,6 +1531,7 @@ RED.utils = (function() {
parseContextKey: parseContextKey,
createIconElement: createIconElement,
sanitize: sanitize,
+ truncateString: truncateString,
renderMarkdown: renderMarkdown,
createNodeIcon: createNodeIcon,
getDarkerColor: getDarkerColor,
diff --git a/packages/node_modules/@node-red/editor-client/src/js/ui/view.js b/packages/node_modules/@node-red/editor-client/src/js/ui/view.js
index e447d203f..e7820f83a 100644
--- a/packages/node_modules/@node-red/editor-client/src/js/ui/view.js
+++ b/packages/node_modules/@node-red/editor-client/src/js/ui/view.js
@@ -82,6 +82,7 @@ RED.view = (function() {
var slicePathLast = null;
var ghostNode = null;
var showStatus = false;
+ let showNodeInfo = true;
var lastClickNode = null;
var dblClickPrimed = null;
var clickTime = 0;
@@ -860,11 +861,51 @@ RED.view = (function() {
toggleStatus(state);
}
});
+ RED.actions.add("core:toggle-node-info-icon", function (state) {
+ if (state === undefined) {
+ RED.userSettings.toggle("view-node-info-icon");
+ } else {
+ toggleNodeInfo(state)
+ }
+ })
RED.view.annotations.init();
RED.view.navigator.init();
RED.view.tools.init();
+ RED.view.annotations.register("red-ui-flow-node-docs",{
+ type: "badge",
+ class: "red-ui-flow-node-docs",
+ element: function(node) {
+
+ const docsBadge = document.createElementNS("http://www.w3.org/2000/svg","g")
+
+ const pageOutline = document.createElementNS("http://www.w3.org/2000/svg","rect");
+ pageOutline.setAttribute("x",0);
+ pageOutline.setAttribute("y",0);
+ pageOutline.setAttribute("rx",2);
+ pageOutline.setAttribute("width",7);
+ pageOutline.setAttribute("height",10);
+ docsBadge.appendChild(pageOutline)
+
+ const pageLines = document.createElementNS("http://www.w3.org/2000/svg","path");
+ pageLines.setAttribute("d", "M 7 3 h -3 v -3 M 2 8 h 3 M 2 6 h 3 M 2 4 h 2")
+ docsBadge.appendChild(pageLines)
+
+ $(docsBadge).on('click', function (evt) {
+ if (node.type === "subflow") {
+ RED.editor.editSubflow(activeSubflow, 'editor-tab-description');
+ } else if (node.type === "group") {
+ RED.editor.editGroup(node, 'editor-tab-description');
+ } else {
+ RED.editor.edit(node, 'editor-tab-description');
+ }
+ })
+
+ return docsBadge;
+ },
+ show: function(n) { return showNodeInfo && !!n.info }
+ })
RED.view.annotations.register("red-ui-flow-node-changed",{
type: "badge",
@@ -5695,37 +5736,62 @@ RED.view = (function() {
activeSubflowChanged = activeSubflow.changed;
}
var filteredNodesToImport = nodesToImport;
- var globalConfig = null;
- var gconf = null;
+ var importedGlobalConfig = null;
+ var existingGlobalConfig = null;
RED.nodes.eachConfig(function (conf) {
if (conf.type === "global-config") {
- gconf = conf;
+ existingGlobalConfig = conf;
}
});
- if (gconf) {
+ if (existingGlobalConfig) {
filteredNodesToImport = nodesToImport.filter(function (n) {
- return (n.type !== "global-config");
+ if (n.type === "global-config") {
+ importedGlobalConfig = n
+ // Do not import it if one exists
+ // The properties of this one will be merged after import
+ return false
+ }
+ return true
});
- globalConfig = nodesToImport.find(function (n) {
- return (n.type === "global-config");
+ } else {
+ filteredNodesToImport = nodesToImport.filter(function (n) {
+ if (n.type === "global-config") {
+ importedGlobalConfig = n
+ if (n.env && n.env.length) {
+ // No existing global-config
+ // Contains env and maybe modules, so import it
+ return true
+ }
+ // Contains modules only - do not import it
+ return false
+ }
+ return true
});
}
- var result = RED.nodes.import(filteredNodesToImport,{
+
+ const modules = importedGlobalConfig?.modules || {}
+ // Ensure do not import modules - since it can contain it
+ if (importedGlobalConfig?.modules) {
+ delete importedGlobalConfig.modules;
+ }
+
+ const importResult = RED.nodes.import(filteredNodesToImport,{
generateIds: options.generateIds,
addFlow: addNewFlow,
importMap: options.importMap,
- markChanged: true
+ markChanged: true,
+ modules: modules
});
- if (result) {
- var new_nodes = result.nodes;
- var new_links = result.links;
- var new_groups = result.groups;
- var new_junctions = result.junctions;
- var new_workspaces = result.workspaces;
- var new_subflows = result.subflows;
- var removedNodes = result.removedNodes;
- var new_default_workspace = result.missingWorkspace;
+ if (importResult) {
+ var new_nodes = importResult.nodes;
+ var new_links = importResult.links;
+ var new_groups = importResult.groups;
+ var new_junctions = importResult.junctions;
+ var new_workspaces = importResult.workspaces;
+ var new_subflows = importResult.subflows;
+ var removedNodes = importResult.removedNodes;
+ var new_default_workspace = importResult.missingWorkspace;
if (addNewFlow && new_default_workspace) {
RED.workspaces.show(new_default_workspace.id);
}
@@ -5839,38 +5905,38 @@ RED.view = (function() {
}
}
- if (globalConfig) {
+ if (importedGlobalConfig && existingGlobalConfig) {
// merge global env to existing global-config
- var env0 = gconf.env;
- var env1 = globalConfig.env;
- var newEnv = Array.from(env0);
+ var existingEnv = existingGlobalConfig.env || [];
+ var importedEnv = importedGlobalConfig.env || []
+ var newEnv = Array.from(existingEnv);
var changed = false;
- env1.forEach(function (item1) {
- var index = newEnv.findIndex(function (item0) {
- return (item0.name === item1.name);
+ importedEnv.forEach(function (importedItem) {
+ var index = newEnv.findIndex(function (existingItem) {
+ return (existingItem.name === importedItem.name);
});
if (index >= 0) {
- var item0 = newEnv[index];
- if ((item0.type !== item1.type) ||
- (item0.value !== item1.value)) {
- newEnv[index] = item1;
+ const existingItem = newEnv[index];
+ if ((existingItem.type !== importedItem.type) ||
+ (existingItem.value !== importedItem.value)) {
+ newEnv[index] = importedItem;
changed = true;
}
}
else {
- newEnv.push(item1);
+ newEnv.push(importedItem);
changed = true;
}
});
- if(changed) {
- gconf.env = newEnv;
+ if (changed) {
+ existingGlobalConfig.env = newEnv;
var replaceEvent = {
t: "edit",
- node: gconf,
+ node: existingGlobalConfig,
changed: true,
changes: {
- env: env0
+ env: existingEnv
}
};
historyEvent = {
@@ -6007,6 +6073,11 @@ RED.view = (function() {
//TODO: subscribe/unsubscribe here
redraw();
}
+ function toggleNodeInfo(s) {
+ showNodeInfo = s
+ RED.nodes.eachNode(function(n) { n.dirty = true;});
+ redraw();
+ }
function setSelectedNodeState(isDisabled) {
if (mouse_mode === RED.state.SELECTING_NODE) {
return;
diff --git a/packages/node_modules/@node-red/editor-client/src/sass/ace.scss b/packages/node_modules/@node-red/editor-client/src/sass/ace.scss
index 5aad96b4d..439ebea56 100644
--- a/packages/node_modules/@node-red/editor-client/src/sass/ace.scss
+++ b/packages/node_modules/@node-red/editor-client/src/sass/ace.scss
@@ -1,3 +1,5 @@
+@use "mixins";
+
.red-ui-editor, .red-ui-editor-dialog {
.ace_read-only {
@@ -42,7 +44,7 @@
background: var(--red-ui-popover-background);
color: var(--red-ui-popover-color);
border-radius: 4px;
- @include component-shadow;
+ @include mixins.component-shadow;
border-color: var(--red-ui-popover-background);
}
.ace_content {
diff --git a/packages/node_modules/@node-red/editor-client/src/sass/base.scss b/packages/node_modules/@node-red/editor-client/src/sass/base.scss
index 58e77863d..afbafe049 100644
--- a/packages/node_modules/@node-red/editor-client/src/sass/base.scss
+++ b/packages/node_modules/@node-red/editor-client/src/sass/base.scss
@@ -1,3 +1,5 @@
+@use "mixins";
+
/**
* Copyright JS Foundation and other contributors, http://js.foundation
*
@@ -43,7 +45,7 @@ body {
}
#red-ui-palette-shade, #red-ui-editor-shade, #red-ui-header-shade, #red-ui-sidebar-shade {
- @include shade;
+ @include mixins.shade;
z-index: 5;
}
#red-ui-sidebar-shade {
@@ -52,7 +54,7 @@ body {
bottom: -1px;
}
#red-ui-full-shade {
- @include shade;
+ @include mixins.shade;
z-index: 15;
}
.red-ui-editor,
@@ -206,12 +208,10 @@ body {
}
img {
- width: auto\9;
height: auto;
max-width: 100%;
vertical-align: middle;
border: 0;
- -ms-interpolation-mode: bicubic;
}
blockquote {
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 dcc8060d4..72c711066 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
@@ -1,3 +1,5 @@
+@use "mixins";
+
/**
* Copyright JS Foundation and other contributors, http://js.foundation
*
@@ -63,7 +65,7 @@
}
}
.red-ui-tray-header {
- @include disable-selection;
+ @include mixins.disable-selection;
position: relative;
box-sizing: border-box;
font-weight: bold;
@@ -77,7 +79,7 @@
}
.red-ui-tray-footer {
- @include component-footer;
+ @include mixins.component-footer;
height: 35px;
font-size: 14px !important;
line-height: 35px;
@@ -110,9 +112,9 @@
padding: 6px;
button {
- @include editor-button;
+ @include mixins.editor-button;
&.toggle {
- @include workspace-button-toggle;
+ @include mixins.workspace-button-toggle;
}
}
}
@@ -179,7 +181,7 @@
}
a.red-ui-tray-resize-button,
button.red-ui-tray-resize-button {
- @include workspace-button;
+ @include mixins.workspace-button;
display: block;
height: 37px;
line-height: 35px;
@@ -274,7 +276,7 @@ button.editor-button, // Deprecated: use .red-ui-button
a.red-ui-button,
button.red-ui-button
{
- @include workspace-button;
+ @include mixins.workspace-button;
height: 34px;
line-height: 32px;
font-size: 13px;
@@ -283,7 +285,7 @@ button.red-ui-button
white-space: nowrap;
text-overflow: ellipsis;
&.toggle {
- @include workspace-button-toggle;
+ @include mixins.workspace-button-toggle;
}
}
diff --git a/packages/node_modules/@node-red/editor-client/src/sass/flow.scss b/packages/node_modules/@node-red/editor-client/src/sass/flow.scss
index 723e8ac79..ad055b97c 100644
--- a/packages/node_modules/@node-red/editor-client/src/sass/flow.scss
+++ b/packages/node_modules/@node-red/editor-client/src/sass/flow.scss
@@ -1,3 +1,5 @@
+@use "mixins";
+
/**
* Copyright JS Foundation and other contributors, http://js.foundation
*
@@ -41,7 +43,7 @@
font-size: 14px;
pointer-events: none;
-webkit-touch-callout: none;
- @include disable-selection;
+ @include mixins.disable-selection;
.red-ui-flow-node-label-text {
dominant-baseline: middle;
@@ -60,7 +62,7 @@
text-anchor: middle;
pointer-events: none;
-webkit-touch-callout: none;
- @include disable-selection;
+ @include mixins.disable-selection;
}
@@ -155,7 +157,7 @@ svg:not(.red-ui-workspace-lasso-active) {
stroke-opacity: var(--red-ui-group-default-stroke-opacity);
}
.red-ui-flow-group-label {
- @include disable-selection;
+ @include mixins.disable-selection;
fill: var(--red-ui-group-default-label-color);
}
@@ -174,10 +176,10 @@ svg:not(.red-ui-workspace-lasso-active) {
}
.red-ui-flow-node-icon-group {
text {
- @include disable-selection;
+ @include mixins.disable-selection;
}
.fa-lg {
- @include disable-selection;
+ @include mixins.disable-selection;
stroke: none;
fill: var(--red-ui-node-icon-color);
text-anchor: middle;
@@ -242,6 +244,18 @@ svg:not(.red-ui-workspace-lasso-active) {
stroke-linecap: round;
}
+.red-ui-flow-node-docs {
+ stroke-width: 1px;
+ stroke-linejoin: round;
+ stroke-linecap: round;
+ stroke: var(--red-ui-node-border);
+ fill: none;
+ cursor: pointer;
+ rect {
+ fill: white;
+ }
+}
+
g.red-ui-flow-node-selected {
.red-ui-workspace-select-mode & {
opacity: 1;
@@ -311,7 +325,7 @@ g.red-ui-flow-node-selected {
fill-opacity: 0.9;
}
.red-ui-flow-node-status-label {
- @include disable-selection;
+ @include mixins.disable-selection;
stroke-width: 0;
fill: var(--red-ui-secondary-text-color);
font-size:9pt;
@@ -417,7 +431,7 @@ g.red-ui-flow-link-unknown path.red-ui-flow-link-line {
pointer-events: none;
-webkit-touch-callout: none;
white-space: pre;
- @include disable-selection;
+ @include mixins.disable-selection;
}
.red-ui-flow-junction-dragging {
.red-ui-flow-junction-background {
diff --git a/packages/node_modules/@node-red/editor-client/src/sass/forms.scss b/packages/node_modules/@node-red/editor-client/src/sass/forms.scss
index a281b9265..3fa8bcc65 100644
--- a/packages/node_modules/@node-red/editor-client/src/sass/forms.scss
+++ b/packages/node_modules/@node-red/editor-client/src/sass/forms.scss
@@ -216,14 +216,11 @@
.uneditable-input:focus {
border-color: var(--red-ui-form-input-focus-color);
outline: 0;
- outline: thin dotted \9;
}
input[type="radio"],
input[type="checkbox"] {
margin: 4px 0 0;
- margin-top: 1px \9;
- *margin-top: 0;
line-height: normal;
}
@@ -285,12 +282,6 @@
color: var(--red-ui-form-placeholder-color);
}
- input:-ms-input-placeholder,
- div[contenteditable="true"]:-ms-input-placeholder,
- textarea:-ms-input-placeholder {
- color: var(--red-ui-form-placeholder-color);
- }
-
input::-webkit-input-placeholder,
div[contenteditable="true"]::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
@@ -568,11 +559,7 @@
input.search-query {
padding-right: 14px;
- padding-right: 4px \9;
padding-left: 14px;
- padding-left: 4px \9;
- /* IE7-8 doesn't have border-radius, so don't indent the padding */
-
margin-bottom: 0;
border-radius: 15px;
}
diff --git a/packages/node_modules/@node-red/editor-client/src/sass/header.scss b/packages/node_modules/@node-red/editor-client/src/sass/header.scss
index 550310205..ed8de3165 100644
--- a/packages/node_modules/@node-red/editor-client/src/sass/header.scss
+++ b/packages/node_modules/@node-red/editor-client/src/sass/header.scss
@@ -1,3 +1,5 @@
+@use "mixins";
+
/**
* Copyright JS Foundation and other contributors, http://js.foundation
*
@@ -15,7 +17,7 @@
**/
.button {
- @include disable-selection;
+ @include mixins.disable-selection;
}
#red-ui-header {
@@ -50,7 +52,7 @@
}
}
img {
- height: 18px;
+ height: 32px;
}
a {
diff --git a/packages/node_modules/@node-red/editor-client/src/sass/jquery.scss b/packages/node_modules/@node-red/editor-client/src/sass/jquery.scss
index ec76049f9..ca3651c61 100644
--- a/packages/node_modules/@node-red/editor-client/src/sass/jquery.scss
+++ b/packages/node_modules/@node-red/editor-client/src/sass/jquery.scss
@@ -1,3 +1,5 @@
+@use "mixins";
+
/**
* Copyright JS Foundation and other contributors, http://js.foundation
*
@@ -54,7 +56,7 @@
border-radius: 1px;
background: var(--red-ui-secondary-background);
padding: 0;
- @include component-shadow;
+ @include mixins.component-shadow;
}
.ui-dialog .ui-dialog-content {
padding: 25px 25px 10px 25px;
@@ -92,7 +94,7 @@
}
.ui-dialog-buttonset button {
- @include workspace-button;
+ @include mixins.workspace-button;
font-size: 14px;
padding: 6px 14px;
margin-right: 8px;
@@ -160,7 +162,7 @@
.ui-widget-overlay {
- @include shade;
+ @include mixins.shade;
z-index: 100;
opacity: 1;
}
diff --git a/packages/node_modules/@node-red/editor-client/src/sass/library.scss b/packages/node_modules/@node-red/editor-client/src/sass/library.scss
index 0b6ca55ed..7cad29397 100644
--- a/packages/node_modules/@node-red/editor-client/src/sass/library.scss
+++ b/packages/node_modules/@node-red/editor-client/src/sass/library.scss
@@ -1,3 +1,5 @@
+@use "mixins";
+
/**
* Copyright JS Foundation and other contributors, http://js.foundation
*
@@ -254,7 +256,7 @@
display: flex;
flex-direction: row;
span:not(:nth-child(2)) {
- @include disable-selection;
+ @include mixins.disable-selection;
}
span {
padding: 8px 0;
diff --git a/packages/node_modules/@node-red/editor-client/src/sass/mixins.scss b/packages/node_modules/@node-red/editor-client/src/sass/mixins.scss
index 6262597a1..486396c59 100644
--- a/packages/node_modules/@node-red/editor-client/src/sass/mixins.scss
+++ b/packages/node_modules/@node-red/editor-client/src/sass/mixins.scss
@@ -18,7 +18,6 @@
-webkit-user-select: none;
-khtml-user-select: none;
-moz-user-select: none;
- -ms-user-select: none;
user-select: none;
}
@@ -26,7 +25,6 @@
-webkit-user-select: auto;
-khtml-user-select: auto;
-moz-user-select: auto;
- -ms-user-select: auto;
user-select: auto;
}
diff --git a/packages/node_modules/@node-red/editor-client/src/sass/palette-editor.scss b/packages/node_modules/@node-red/editor-client/src/sass/palette-editor.scss
index 947ada2e8..8955887dd 100644
--- a/packages/node_modules/@node-red/editor-client/src/sass/palette-editor.scss
+++ b/packages/node_modules/@node-red/editor-client/src/sass/palette-editor.scss
@@ -1,3 +1,5 @@
+@use "mixins";
+
/**
* Copyright JS Foundation and other contributors, http://js.foundation
*
@@ -117,19 +119,27 @@
.red-ui-palette-module-updated {
margin-left: 10px;
}
+ .red-ui-palette-module-downloads {
+ margin-left: 10px;
+ }
.red-ui-palette-module-link {
margin-left: 5px;
}
+ .red-ui-palette-module-deprecated {
+ cursor: pointer;
+ color: var(--red-ui-text-color-error);
+ font-size: 0.7em;
+ border: 1px solid var(--red-ui-text-color-error);
+ border-radius: 30px;
+ padding: 2px 5px;
+ }
+
.red-ui-palette-module-description {
margin-left: 20px;
font-size: 0.9em;
color: var(--red-ui-secondary-text-color);
}
- .red-ui-palette-module-link {
- }
- .red-ui-palette-module-set-button-group {
- }
.red-ui-palette-module-content {
display: none;
padding: 10px 3px;
@@ -167,7 +177,7 @@
color: var(--red-ui-secondary-text-color);
padding-left: 5px;
font-size: 0.9em;
- @include enable-selection;
+ @include mixins.enable-selection;
}
.red-ui-palette-module-type-swatch {
display: inline-block;
@@ -226,12 +236,12 @@
.red-ui-palette-module-name {
color: var(--red-ui-primary-text-color);
white-space: nowrap;
- @include enable-selection;
+ @include mixins.enable-selection;
}
-.red-ui-palette-module-version, .red-ui-palette-module-updated, .red-ui-palette-module-link {
+.red-ui-palette-module-version, .red-ui-palette-module-updated, .red-ui-palette-module-link, .red-ui-palette-module-downloads {
font-style:italic;
font-size: 0.8em;
- @include enable-selection;
+ @include mixins.enable-selection;
}
.red-ui-palette-module-button-group {
position: absolute;
@@ -256,7 +266,7 @@ ul.red-ui-palette-module-error-list {
}
.red-ui-palette-module-shade {
- @include shade;
+ @include mixins.shade;
text-align: center;
padding-top: 20px;
}
@@ -305,3 +315,8 @@ button.red-ui-palette-editor-upload-button {
margin-left: 10px;
}
}
+
+button.red-ui-update-status {
+ width: auto;
+ padding: 0 3px;
+}
diff --git a/packages/node_modules/@node-red/editor-client/src/sass/palette.scss b/packages/node_modules/@node-red/editor-client/src/sass/palette.scss
index a3afc3d76..507869690 100644
--- a/packages/node_modules/@node-red/editor-client/src/sass/palette.scss
+++ b/packages/node_modules/@node-red/editor-client/src/sass/palette.scss
@@ -1,3 +1,5 @@
+@use "mixins";
+
/**
* Copyright JS Foundation and other contributors, http://js.foundation
*
@@ -23,9 +25,29 @@
background: var(--red-ui-primary-background);
width: 180px;
text-align: center;
- @include disable-selection;
- @include component-border;
+ @include mixins.disable-selection;
+ @include mixins.component-border;
transition: width 0.2s ease-in-out;
+
+ &:before {
+ content: '';
+ top: 0px;
+ bottom: 0px;
+ right: 0px;
+ width: 7px;
+ height: 100%;
+ z-index: 4;
+ position: absolute;
+ -webkit-mask-image: url(images/grip.svg);
+ mask-image: url(images/grip.svg);
+ -webkit-mask-size: auto;
+ mask-size: auto;
+ -webkit-mask-position: 50% 50%;
+ mask-position: 50% 50%;
+ -webkit-mask-repeat: no-repeat;
+ mask-repeat: no-repeat;
+ background-color: var(--red-ui-grip-color);
+ }
}
.red-ui-palette-closed {
@@ -112,7 +134,7 @@
line-height: 20px;
overflow: hidden;
text-align: center;
- @include disable-selection;
+ @include mixins.disable-selection;
}
.red-ui-palette-label-right {
margin: 4px 32px 4px 0;
diff --git a/packages/node_modules/@node-red/editor-client/src/sass/popover.scss b/packages/node_modules/@node-red/editor-client/src/sass/popover.scss
index 53d1c7cab..027e783a3 100644
--- a/packages/node_modules/@node-red/editor-client/src/sass/popover.scss
+++ b/packages/node_modules/@node-red/editor-client/src/sass/popover.scss
@@ -1,3 +1,5 @@
+@use "mixins";
+
/**
* Copyright JS Foundation and other contributors, http://js.foundation
*
@@ -28,7 +30,7 @@
font-family: var(--red-ui-primary-font);
font-size: 14px;
line-height: 1.4em;
- @include component-shadow;
+ @include mixins.component-shadow;
border-color: var(--red-ui-popover-border);
}
.red-ui-popover-content {
@@ -194,7 +196,7 @@
.red-ui-popover-panel {
- @include component-shadow;
+ @include mixins.component-shadow;
font-family: var(--red-ui-primary-font);
font-size: var(--red-ui-primary-font-size);
position: absolute;
@@ -203,3 +205,39 @@
background: var(--red-ui-secondary-background);
z-index: 2000;
}
+
+
+.red-ui-popover.red-ui-dialog {
+ z-index: 2003;
+ --red-ui-popover-background: var(--red-ui-secondary-background);
+ --red-ui-popover-border: var(--red-ui-tourGuide-border);
+ --red-ui-popover-color: var(--red-ui-primary-text-color);
+
+ .red-ui-popover-content {
+ h2 {
+ text-align: center;
+ margin-top: 0px;
+ line-height: 1.2em;
+ color: var(--red-ui-tourGuide-heading-color);
+ i.fa {
+ font-size: 1.5em
+ }
+ }
+ }
+
+}
+
+.red-ui-dialog-toolbar {
+ min-height: 36px;
+ position: relative;
+ display: flex;
+ justify-content: flex-end;
+ gap: 10px;
+}
+.red-ui-dialog-body {
+ padding: 20px 40px 10px;
+ a {
+ color: var(--red-ui-text-color-link) !important;
+ text-decoration: none;
+ }
+}
diff --git a/packages/node_modules/@node-red/editor-client/src/sass/sidebar.scss b/packages/node_modules/@node-red/editor-client/src/sass/sidebar.scss
index 21a57d29d..47c8dbc13 100644
--- a/packages/node_modules/@node-red/editor-client/src/sass/sidebar.scss
+++ b/packages/node_modules/@node-red/editor-client/src/sass/sidebar.scss
@@ -1,3 +1,5 @@
+@use "mixins";
+
/**
* Copyright JS Foundation and other contributors, http://js.foundation
*
@@ -23,7 +25,7 @@
background: var(--red-ui-primary-background);
box-sizing: border-box;
z-index: 10;
- @include component-border;
+ @include mixins.component-border;
}
#red-ui-sidebar.closing {
@@ -73,7 +75,7 @@
.red-ui-sidebar-closed > #red-ui-editor-stack { right: 8px !important; }
#red-ui-sidebar .button {
- @include workspace-button;
+ @include mixins.workspace-button;
line-height: 18px;
font-size: 12px;
margin-right: 5px;
@@ -92,23 +94,23 @@
/* Deprecated -> red-ui-footer-button */
.sidebar-footer-button {
- @include component-footer-button;
+ @include mixins.component-footer-button;
}
/* Deprecated -> red-ui-footer-button-toggle */
.sidebar-footer-button-toggle {
- @include component-footer-button-toggle;
+ @include mixins.component-footer-button-toggle;
}
a.sidebar-header-button,
button.sidebar-header-button, /* Deprecated -> red-ui-sidebar-header-button */
a.red-ui-sidebar-header-button,
button.red-ui-sidebar-header-button {
- @include workspace-button;
+ @include mixins.workspace-button;
font-size: 13px;
line-height: 13px;
padding: 5px 8px;
&.toggle {
- @include workspace-button-toggle;
+ @include mixins.workspace-button-toggle;
}
}
@@ -116,7 +118,7 @@ a.sidebar-header-button-toggle, /* Deprecated -> red-ui-sidebar-header-button-to
button.sidebar-header-button-toggle, /* Deprecated -> red-ui-sidebar-header-button-toggle */
a.red-ui-sidebar-header-button-toggle,
button.red-ui-sidebar-header-button-toggle {
- @include workspace-button-toggle;
+ @include mixins.workspace-button-toggle;
font-size: 13px;
line-height: 13px;
padding: 5px 8px;
@@ -128,7 +130,7 @@ button.red-ui-sidebar-header-button-toggle {
}
.red-ui-sidebar-shade {
- @include shade;
+ @include mixins.shade;
}
diff --git a/packages/node_modules/@node-red/editor-client/src/sass/style-custom-theme.scss b/packages/node_modules/@node-red/editor-client/src/sass/style-custom-theme.scss
index 312081503..622639bea 100644
--- a/packages/node_modules/@node-red/editor-client/src/sass/style-custom-theme.scss
+++ b/packages/node_modules/@node-red/editor-client/src/sass/style-custom-theme.scss
@@ -14,6 +14,6 @@
* limitations under the License.
**/
-@import "colors";
-@import "sizes";
-@import "variables";
\ No newline at end of file
+@use "colors";
+@use "sizes";
+@use "variables";
\ No newline at end of file
diff --git a/packages/node_modules/@node-red/editor-client/src/sass/style.scss b/packages/node_modules/@node-red/editor-client/src/sass/style.scss
index 77148abde..2b79e8fa0 100644
--- a/packages/node_modules/@node-red/editor-client/src/sass/style.scss
+++ b/packages/node_modules/@node-red/editor-client/src/sass/style.scss
@@ -14,64 +14,64 @@
* limitations under the License.
**/
-@import "colors";
-@import "sizes";
-@import "variables";
-@import "mixins";
+@use "colors";
+@use "sizes";
+@use "variables";
+@use "mixins";
-@import "base";
-@import "forms";
+@use "base";
+@use "forms";
-@import "jquery";
-@import "ace";
+@use "jquery";
+@use "ace";
-@import "dropdownMenu";
+@use "dropdownMenu";
-@import "header";
-@import "palette";
-@import "sidebar";
-@import "workspace";
-@import "workspaceToolbar";
+@use "header";
+@use "palette";
+@use "sidebar";
+@use "workspace";
+@use "workspaceToolbar";
-@import "notifications";
+@use "notifications";
-@import "editor";
-@import "library";
-@import "search";
+@use "editor";
+@use "library";
+@use "search";
-@import "panels";
-@import "tabs";
-@import "tab-config";
-@import "tab-context";
-@import "tab-info";
-@import "tab-help";
-@import "popover";
-@import "flow";
-@import "palette-editor";
-@import "diff";
+@use "panels";
+@use "tabs";
+@use "tab-config";
+@use "tab-context";
+@use "tab-info";
+@use "tab-help";
+@use "popover";
+@use "flow";
+@use "palette-editor";
+@use "diff";
-@import "userSettings";
+@use "userSettings";
-@import "projects";
+@use "projects";
-@import "ui/common/editableList";
-@import "ui/common/searchBox";
-@import "ui/common/typedInput";
-@import "ui/common/nodeList";
-@import "ui/common/checkboxSet";
-@import "ui/common/stack";
-@import "ui/common/treeList";
-@import "ui/common/autoComplete";
+@use "ui/common/editableList";
+@use "ui/common/searchBox";
+@use "ui/common/typedInput";
+@use "ui/common/nodeList";
+@use "ui/common/checkboxSet";
+@use "ui/common/stack";
+@use "ui/common/treeList";
+@use "ui/common/autoComplete";
-@import "dragdrop";
+@use "dragdrop";
-@import "keyboard";
+@use "keyboard";
-@import "debug";
+@use "debug";
-@import "radialMenu";
+@use "radialMenu";
-@import "tourGuide";
+@use "tourGuide";
-@import "multiplayer";
+@use "multiplayer";
diff --git a/packages/node_modules/@node-red/editor-client/src/sass/tab-config.scss b/packages/node_modules/@node-red/editor-client/src/sass/tab-config.scss
index f0074b1dc..4592998c3 100644
--- a/packages/node_modules/@node-red/editor-client/src/sass/tab-config.scss
+++ b/packages/node_modules/@node-red/editor-client/src/sass/tab-config.scss
@@ -1,3 +1,5 @@
+@use "mixins";
+
/**
* Copyright JS Foundation and other contributors, http://js.foundation
*
@@ -38,7 +40,7 @@
background: var(--red-ui-secondary-background);
height: 100%;
overflow-y:auto;
- @include disable-selection;
+ @include mixins.disable-selection;
&:focus {
outline: none;
diff --git a/packages/node_modules/@node-red/editor-client/src/sass/tab-info.scss b/packages/node_modules/@node-red/editor-client/src/sass/tab-info.scss
index 313025b27..732d4dfe8 100644
--- a/packages/node_modules/@node-red/editor-client/src/sass/tab-info.scss
+++ b/packages/node_modules/@node-red/editor-client/src/sass/tab-info.scss
@@ -1,3 +1,5 @@
+@use "mixins";
+
/**
* Copyright JS Foundation and other contributors, http://js.foundation
*
@@ -25,6 +27,7 @@
padding-left: 9px;
line-height: 21px;
cursor: default;
+ border-bottom: 1px solid var(--red-ui-secondary-border-color);
> * {
vertical-align: middle
}
@@ -33,7 +36,6 @@
margin-left: 5px;
overflow-wrap: anywhere;
}
- border-bottom: 1px solid var(--red-ui-secondary-border-color);
}
table.red-ui-info-table {
font-size: 14px;
@@ -307,7 +309,7 @@ div.red-ui-info-table {
text-align: center;
line-height: 1.9em;
color : var(--red-ui-tertiary-text-color);
- @include disable-selection;
+ @include mixins.disable-selection;
cursor: default;
}
.red-ui-help-tips-buttons {
diff --git a/packages/node_modules/@node-red/editor-client/src/sass/tabs.scss b/packages/node_modules/@node-red/editor-client/src/sass/tabs.scss
index f2cb882b7..2131971a2 100644
--- a/packages/node_modules/@node-red/editor-client/src/sass/tabs.scss
+++ b/packages/node_modules/@node-red/editor-client/src/sass/tabs.scss
@@ -1,3 +1,5 @@
+@use "mixins";
+
/**
* Copyright JS Foundation and other contributors, http://js.foundation
*
@@ -41,7 +43,7 @@
box-sizing:border-box;
border-bottom: 1px solid var(--red-ui-primary-border-color);
white-space: nowrap;
- @include disable-selection;
+ @include mixins.disable-selection;
li {
box-sizing: border-box;
@@ -244,7 +246,7 @@
z-index: 2;
a {
- @include workspace-button;
+ @include mixins.workspace-button;
line-height: 30px;
height: 28px;
width: 28px;
@@ -266,7 +268,7 @@
border-bottom: 1px solid var(--red-ui-primary-border-color);
z-index: 2;
a {
- @include workspace-button-toggle;
+ @include mixins.workspace-button-toggle;
line-height: 26px;
height: 28px;
width: 28px;
diff --git a/packages/node_modules/@node-red/editor-client/src/sass/ui/common/treeList.scss b/packages/node_modules/@node-red/editor-client/src/sass/ui/common/treeList.scss
index f076a533e..25373b138 100644
--- a/packages/node_modules/@node-red/editor-client/src/sass/ui/common/treeList.scss
+++ b/packages/node_modules/@node-red/editor-client/src/sass/ui/common/treeList.scss
@@ -1,3 +1,5 @@
+@use "../../mixins";
+
/**
* Copyright JS Foundation and other contributors, http://js.foundation
*
@@ -67,7 +69,7 @@
}
}
.red-ui-treeList-label {
- @include disable-selection;
+ @include mixins.disable-selection;
padding: 6px 0;
display: flex;
align-items: center;
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 12b0731d1..c4e3422fc 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
@@ -1,3 +1,5 @@
+@use "../../mixins";
+
/**
* Copyright JS Foundation and other contributors, http://js.foundation
*
@@ -67,7 +69,7 @@
}
}
.red-ui-typedInput-options {
- @include component-shadow;
+ @include mixins.component-shadow;
font-family: var(--red-ui-primary-font);
font-size: var(--red-ui-primary-font-size);
diff --git a/packages/node_modules/@node-red/editor-client/src/sass/userSettings.scss b/packages/node_modules/@node-red/editor-client/src/sass/userSettings.scss
index 5e0c7fa47..7abae094c 100644
--- a/packages/node_modules/@node-red/editor-client/src/sass/userSettings.scss
+++ b/packages/node_modules/@node-red/editor-client/src/sass/userSettings.scss
@@ -70,8 +70,14 @@
overflow-y: auto;
}
.red-ui-settings-row {
+ display: flex;
+ gap: 10px;
+ align-items:flex-start;
padding: 5px 10px 2px;
}
+.red-ui-settings-row input[type="checkbox"] {
+ margin-top: 8px;
+}
.red-ui-settings-section {
position: relative;
&:after {
diff --git a/packages/node_modules/@node-red/editor-client/src/sass/variables.scss b/packages/node_modules/@node-red/editor-client/src/sass/variables.scss
index bc8f9da17..9f34d8fde 100644
--- a/packages/node_modules/@node-red/editor-client/src/sass/variables.scss
+++ b/packages/node_modules/@node-red/editor-client/src/sass/variables.scss
@@ -1,305 +1,309 @@
+@use "sass:map";
+@use "colors";
+@use "sizes";
+
:root {
- --red-ui-primary-font: #{$primary-font};
- --red-ui-primary-font-size: #{$primary-font-size};
- --red-ui-monospace-font: #{$monospace-font};
+ --red-ui-primary-font: #{colors.$primary-font};
+ --red-ui-primary-font-size: #{colors.$primary-font-size};
+ --red-ui-monospace-font: #{colors.$monospace-font};
- --red-ui-primary-background: #{$primary-background};
+ --red-ui-primary-background: #{colors.$primary-background};
- --red-ui-secondary-background: #{$secondary-background};
- --red-ui-secondary-background-selected: #{$secondary-background-selected};
- --red-ui-secondary-background-inactive: #{$secondary-background-inactive};
- --red-ui-secondary-background-hover: #{$secondary-background-hover};
- --red-ui-secondary-background-disabled: #{$secondary-background-disabled};
+ --red-ui-secondary-background: #{colors.$secondary-background};
+ --red-ui-secondary-background-selected: #{colors.$secondary-background-selected};
+ --red-ui-secondary-background-inactive: #{colors.$secondary-background-inactive};
+ --red-ui-secondary-background-hover: #{colors.$secondary-background-hover};
+ --red-ui-secondary-background-disabled: #{colors.$secondary-background-disabled};
- --red-ui-tertiary-background: #{$tertiary-background};
+ --red-ui-tertiary-background: #{colors.$tertiary-background};
- --red-ui-shadow: #{$shadow};
+ --red-ui-shadow: #{colors.$shadow};
// Header Height
- --red-ui-header-height: #{$header-height};
+ --red-ui-header-height: #{sizes.$header-height};
// Main body text
- --red-ui-primary-text-color: #{$primary-text-color};
+ --red-ui-primary-text-color: #{colors.$primary-text-color};
// UI control label text
- --red-ui-secondary-text-color: #{$secondary-text-color};
- --red-ui-secondary-text-color-focus: #{$secondary-text-color-focus};
- --red-ui-secondary-text-color-hover: #{$secondary-text-color-hover};
- --red-ui-secondary-text-color-active: #{$secondary-text-color-active};
- --red-ui-secondary-text-color-selected: #{$secondary-text-color-selected};
- --red-ui-secondary-text-color-inactive: #{$secondary-text-color-inactive};
- --red-ui-secondary-text-color-disabled: #{$secondary-text-color-disabled};
- --red-ui-secondary-text-color-disabled-active: #{$secondary-text-color-disabled-active};
- --red-ui-secondary-text-color-disabled-inactive: #{$secondary-text-color-disabled-inactive};
+ --red-ui-secondary-text-color: #{colors.$secondary-text-color};
+ --red-ui-secondary-text-color-focus: #{colors.$secondary-text-color-focus};
+ --red-ui-secondary-text-color-hover: #{colors.$secondary-text-color-hover};
+ --red-ui-secondary-text-color-active: #{colors.$secondary-text-color-active};
+ --red-ui-secondary-text-color-selected: #{colors.$secondary-text-color-selected};
+ --red-ui-secondary-text-color-inactive: #{colors.$secondary-text-color-inactive};
+ --red-ui-secondary-text-color-disabled: #{colors.$secondary-text-color-disabled};
+ --red-ui-secondary-text-color-disabled-active: #{colors.$secondary-text-color-disabled-active};
+ --red-ui-secondary-text-color-disabled-inactive: #{colors.$secondary-text-color-disabled-inactive};
// Sub label text
- --red-ui-tertiary-text-color: #{$tertiary-text-color};
+ --red-ui-tertiary-text-color: #{colors.$tertiary-text-color};
// Heading text
- --red-ui-header-text-color: #{$header-text-color};
+ --red-ui-header-text-color: #{colors.$header-text-color};
- --red-ui-text-color-error: #{$text-color-error};
- --red-ui-text-color-warning: #{$text-color-warning};
- --red-ui-text-color-success: #{$text-color-success};
- --red-ui-text-color-code: #{$text-color-code};
- --red-ui-text-color-link: #{$text-color-link};
+ --red-ui-text-color-error: #{colors.$text-color-error};
+ --red-ui-text-color-warning: #{colors.$text-color-warning};
+ --red-ui-text-color-success: #{colors.$text-color-success};
+ --red-ui-text-color-code: #{colors.$text-color-code};
+ --red-ui-text-color-link: #{colors.$text-color-link};
- --red-ui-primary-border-color: #{$primary-border-color};
- --red-ui-secondary-border-color: #{$secondary-border-color};
- --red-ui-tertiary-border-color: #{$tertiary-border-color};
+ --red-ui-primary-border-color: #{colors.$primary-border-color};
+ --red-ui-secondary-border-color: #{colors.$secondary-border-color};
+ --red-ui-tertiary-border-color: #{colors.$tertiary-border-color};
- --red-ui-border-color-error: #{$border-color-error};
- --red-ui-border-color-warning: #{$border-color-warning};
- --red-ui-border-color-success: #{$border-color-success};
+ --red-ui-border-color-error: #{colors.$border-color-error};
+ --red-ui-border-color-warning: #{colors.$border-color-warning};
+ --red-ui-border-color-success: #{colors.$border-color-success};
- --red-ui-form-background: #{$form-background};
- --red-ui-form-placeholder-color: #{$form-placeholder-color};
- --red-ui-form-text-color: #{$form-text-color};
- --red-ui-form-text-color-disabled: #{$form-text-color-disabled};
- --red-ui-form-input-focus-color: #{$form-input-focus-color};
- --red-ui-form-input-border-color: #{$form-input-border-color};
- --red-ui-form-input-border-selected-color: #{$form-input-border-selected-color};
- --red-ui-form-input-border-error-color: #{$form-input-border-error-color};
- --red-ui-form-input-background: #{$form-input-background};
- --red-ui-form-input-background-disabled: #{$form-input-background-disabled};
- --red-ui-form-button-background: #{$form-button-background};
+ --red-ui-form-background: #{colors.$form-background};
+ --red-ui-form-placeholder-color: #{colors.$form-placeholder-color};
+ --red-ui-form-text-color: #{colors.$form-text-color};
+ --red-ui-form-text-color-disabled: #{colors.$form-text-color-disabled};
+ --red-ui-form-input-focus-color: #{colors.$form-input-focus-color};
+ --red-ui-form-input-border-color: #{colors.$form-input-border-color};
+ --red-ui-form-input-border-selected-color: #{colors.$form-input-border-selected-color};
+ --red-ui-form-input-border-error-color: #{colors.$form-input-border-error-color};
+ --red-ui-form-input-background: #{colors.$form-input-background};
+ --red-ui-form-input-background-disabled: #{colors.$form-input-background-disabled};
+ --red-ui-form-button-background: #{colors.$form-button-background};
- --red-ui-form-tips-background: #{$form-tips-background};
+ --red-ui-form-tips-background: #{colors.$form-tips-background};
- --red-ui-text-editor-color: #{$text-editor-color};
- --red-ui-text-editor-background: #{$text-editor-background};
- --red-ui-text-editor-color-disabled: #{$text-editor-color-disabled};
- --red-ui-text-editor-background-disabled: #{$text-editor-background-disabled};
- --red-ui-text-editor-gutter-background: #{$text-editor-gutter-background};
- --red-ui-text-editor-gutter-color: #{$text-editor-gutter-color};
- --red-ui-text-editor-gutter-active-line-background: #{$text-editor-gutter-active-line-background};
- --red-ui-text-editor-active-line-background: #{$text-editor-active-line-background};
- --red-ui-text-editor-selection-background: #{$text-editor-selection-background};
+ --red-ui-text-editor-color: #{colors.$text-editor-color};
+ --red-ui-text-editor-background: #{colors.$text-editor-background};
+ --red-ui-text-editor-color-disabled: #{colors.$text-editor-color-disabled};
+ --red-ui-text-editor-background-disabled: #{colors.$text-editor-background-disabled};
+ --red-ui-text-editor-gutter-background: #{colors.$text-editor-gutter-background};
+ --red-ui-text-editor-gutter-color: #{colors.$text-editor-gutter-color};
+ --red-ui-text-editor-gutter-active-line-background: #{colors.$text-editor-gutter-active-line-background};
+ --red-ui-text-editor-active-line-background: #{colors.$text-editor-active-line-background};
+ --red-ui-text-editor-selection-background: #{colors.$text-editor-selection-background};
- --red-ui-event-log-background: #{$event-log-background};
- --red-ui-event-log-color: #{$event-log-color};
- --red-ui-event-log-active-line-background: #{$event-log-active-line-background};
- --red-ui-event-log-selection-background: #{$event-log-selection-background};
+ --red-ui-event-log-background: #{colors.$event-log-background};
+ --red-ui-event-log-color: #{colors.$event-log-color};
+ --red-ui-event-log-active-line-background: #{colors.$event-log-active-line-background};
+ --red-ui-event-log-selection-background: #{colors.$event-log-selection-background};
- --red-ui-list-item-color: #{$list-item-color};
- --red-ui-list-item-secondary-color: #{$list-item-secondary-color};
- --red-ui-list-item-background: #{$list-item-background};
- --red-ui-list-item-background-disabled: #{$list-item-background-disabled};
- --red-ui-list-item-background-hover: #{$list-item-background-hover};
- --red-ui-list-item-background-selected: #{$list-item-background-selected};
- --red-ui-list-item-border-selected: #{$list-item-border-selected};
+ --red-ui-list-item-color: #{colors.$list-item-color};
+ --red-ui-list-item-secondary-color: #{colors.$list-item-secondary-color};
+ --red-ui-list-item-background: #{colors.$list-item-background};
+ --red-ui-list-item-background-disabled: #{colors.$list-item-background-disabled};
+ --red-ui-list-item-background-hover: #{colors.$list-item-background-hover};
+ --red-ui-list-item-background-selected: #{colors.$list-item-background-selected};
+ --red-ui-list-item-border-selected: #{colors.$list-item-border-selected};
- --red-ui-tab-text-color-active: #{$tab-text-color-active};
- --red-ui-tab-text-color-inactive: #{$tab-text-color-inactive};
- --red-ui-tab-text-color-disabled-active: #{$tab-text-color-disabled-active};
- --red-ui-tab-text-color-disabled-inactive: #{$tab-text-color-disabled-inactive};
+ --red-ui-tab-text-color-active: #{colors.$tab-text-color-active};
+ --red-ui-tab-text-color-inactive: #{colors.$tab-text-color-inactive};
+ --red-ui-tab-text-color-disabled-active: #{colors.$tab-text-color-disabled-active};
+ --red-ui-tab-text-color-disabled-inactive: #{colors.$tab-text-color-disabled-inactive};
- --red-ui-tab-badge-color: #{$tab-badge-color};
- --red-ui-tab-background: #{$tab-background};
- --red-ui-tab-background-active: #{$tab-background-active};
- --red-ui-tab-background-active-alpha: #{$tab-background-active-alpha};
- --red-ui-tab-background-selected: #{$tab-background-selected};
- --red-ui-tab-background-selected-alpha: #{$tab-background-selected-alpha};
- --red-ui-tab-background-inactive: #{$tab-background-inactive};
- --red-ui-tab-background-inactive-alpha: #{$tab-background-inactive-alpha};
- --red-ui-tab-background-hover: #{$tab-background-hover};
- --red-ui-tab-background-hover-alpha: #{$tab-background-hover-alpha};
+ --red-ui-tab-badge-color: #{colors.$tab-badge-color};
+ --red-ui-tab-background: #{colors.$tab-background};
+ --red-ui-tab-background-active: #{colors.$tab-background-active};
+ --red-ui-tab-background-active-alpha: #{colors.$tab-background-active-alpha};
+ --red-ui-tab-background-selected: #{colors.$tab-background-selected};
+ --red-ui-tab-background-selected-alpha: #{colors.$tab-background-selected-alpha};
+ --red-ui-tab-background-inactive: #{colors.$tab-background-inactive};
+ --red-ui-tab-background-inactive-alpha: #{colors.$tab-background-inactive-alpha};
+ --red-ui-tab-background-hover: #{colors.$tab-background-hover};
+ --red-ui-tab-background-hover-alpha: #{colors.$tab-background-hover-alpha};
- --red-ui-palette-header-background: #{$palette-header-background};
- --red-ui-palette-header-color: #{$palette-header-color};
- --red-ui-palette-content-background: #{$palette-content-background};
+ --red-ui-palette-header-background: #{colors.$palette-header-background};
+ --red-ui-palette-header-color: #{colors.$palette-header-color};
+ --red-ui-palette-content-background: #{colors.$palette-content-background};
- --red-ui-workspace-button-background: #{$workspace-button-background};
- --red-ui-workspace-button-background-hover: #{$workspace-button-background-hover};
- --red-ui-workspace-button-background-active: #{$workspace-button-background-active};
+ --red-ui-workspace-button-background: #{colors.$workspace-button-background};
+ --red-ui-workspace-button-background-hover: #{colors.$workspace-button-background-hover};
+ --red-ui-workspace-button-background-active: #{colors.$workspace-button-background-active};
- --red-ui-workspace-button-color: #{$workspace-button-color};
- --red-ui-workspace-button-color-disabled: #{$workspace-button-color-disabled};
- --red-ui-workspace-button-color-focus: #{$workspace-button-color-focus};
- --red-ui-workspace-button-color-hover: #{$workspace-button-color-hover};
- --red-ui-workspace-button-color-active: #{$workspace-button-color-active};
- --red-ui-workspace-button-color-selected: #{$workspace-button-color-selected};
+ --red-ui-workspace-button-color: #{colors.$workspace-button-color};
+ --red-ui-workspace-button-color-disabled: #{colors.$workspace-button-color-disabled};
+ --red-ui-workspace-button-color-focus: #{colors.$workspace-button-color-focus};
+ --red-ui-workspace-button-color-hover: #{colors.$workspace-button-color-hover};
+ --red-ui-workspace-button-color-active: #{colors.$workspace-button-color-active};
+ --red-ui-workspace-button-color-selected: #{colors.$workspace-button-color-selected};
- --red-ui-workspace-button-color-primary: #{$workspace-button-color-primary};
- --red-ui-workspace-button-background-primary: #{$workspace-button-background-primary};
- --red-ui-workspace-button-background-primary-hover: #{$workspace-button-background-primary-hover};
+ --red-ui-workspace-button-color-primary: #{colors.$workspace-button-color-primary};
+ --red-ui-workspace-button-background-primary: #{colors.$workspace-button-background-primary};
+ --red-ui-workspace-button-background-primary-hover: #{colors.$workspace-button-background-primary-hover};
- --red-ui-workspace-button-color-focus-outline: #{$workspace-button-color-focus-outline};
+ --red-ui-workspace-button-color-focus-outline: #{colors.$workspace-button-color-focus-outline};
- --red-ui-shade-color: #{$shade-color};
+ --red-ui-shade-color: #{colors.$shade-color};
- --red-ui-popover-background: #{$popover-background};
- --red-ui-popover-border: #{$popover-border};
- --red-ui-popover-color: #{$popover-color};
- --red-ui-popover-button-border-color: #{$popover-button-border-color};
- --red-ui-popover-button-border-color-hover: #{$popover-button-border-color-hover};
+ --red-ui-popover-background: #{colors.$popover-background};
+ --red-ui-popover-border: #{colors.$popover-border};
+ --red-ui-popover-color: #{colors.$popover-color};
+ --red-ui-popover-button-border-color: #{colors.$popover-button-border-color};
+ --red-ui-popover-button-border-color-hover: #{colors.$popover-button-border-color-hover};
- --red-ui-diff-text-header-color: #{$diff-text-header-color};
- --red-ui-diff-text-header-background: #{$diff-text-header-background};
- --red-ui-diff-state-color: #{$diff-state-color};
- --red-ui-diff-state-prefix-color: #{$diff-state-prefix-color};
- --red-ui-diff-state-added: #{$diff-state-added};
- --red-ui-diff-state-deleted: #{$diff-state-deleted};
- --red-ui-diff-state-changed: #{$diff-state-changed};
- --red-ui-diff-state-changed-background: #{$diff-state-changed-background};
- --red-ui-diff-state-unchanged: #{$diff-state-unchanged};
- --red-ui-diff-state-unchanged-background: #{$diff-state-unchanged-background};
+ --red-ui-diff-text-header-color: #{colors.$diff-text-header-color};
+ --red-ui-diff-text-header-background: #{colors.$diff-text-header-background};
+ --red-ui-diff-state-color: #{colors.$diff-state-color};
+ --red-ui-diff-state-prefix-color: #{colors.$diff-state-prefix-color};
+ --red-ui-diff-state-added: #{colors.$diff-state-added};
+ --red-ui-diff-state-deleted: #{colors.$diff-state-deleted};
+ --red-ui-diff-state-changed: #{colors.$diff-state-changed};
+ --red-ui-diff-state-changed-background: #{colors.$diff-state-changed-background};
+ --red-ui-diff-state-unchanged: #{colors.$diff-state-unchanged};
+ --red-ui-diff-state-unchanged-background: #{colors.$diff-state-unchanged-background};
- --red-ui-diff-state-conflicted: #{$diff-state-conflicted};
- --red-ui-diff-state-moved: #{$diff-state-moved};
- --red-ui-diff-state-conflict: #{$diff-state-conflict};
- --red-ui-diff-state-conflict-background: #{$diff-state-conflict-background};
+ --red-ui-diff-state-conflicted: #{colors.$diff-state-conflicted};
+ --red-ui-diff-state-moved: #{colors.$diff-state-moved};
+ --red-ui-diff-state-conflict: #{colors.$diff-state-conflict};
+ --red-ui-diff-state-conflict-background: #{colors.$diff-state-conflict-background};
- --red-ui-diff-state-added-background: #{$diff-state-added-background};
- --red-ui-diff-state-added-border: #{$diff-state-added-border};
- --red-ui-diff-state-added-header-background: #{$diff-state-added-header-background};
- --red-ui-diff-state-added-header-border: #{$diff-state-added-header-border};
+ --red-ui-diff-state-added-background: #{colors.$diff-state-added-background};
+ --red-ui-diff-state-added-border: #{colors.$diff-state-added-border};
+ --red-ui-diff-state-added-header-background: #{colors.$diff-state-added-header-background};
+ --red-ui-diff-state-added-header-border: #{colors.$diff-state-added-header-border};
- --red-ui-diff-state-deleted-background: #{$diff-state-deleted-background};
- --red-ui-diff-state-deleted-border: #{$diff-state-deleted-border};
- --red-ui-diff-state-deleted-header-background: #{$diff-state-deleted-header-background};
- --red-ui-diff-state-deleted-header-border: #{$diff-state-deleted-header-border};
+ --red-ui-diff-state-deleted-background: #{colors.$diff-state-deleted-background};
+ --red-ui-diff-state-deleted-border: #{colors.$diff-state-deleted-border};
+ --red-ui-diff-state-deleted-header-background: #{colors.$diff-state-deleted-header-background};
+ --red-ui-diff-state-deleted-header-border: #{colors.$diff-state-deleted-header-border};
- --red-ui-diff-merge-header-color: #{$diff-merge-header-color};
- --red-ui-diff-merge-header-background: #{$diff-merge-header-background};
- --red-ui-diff-merge-header-border-color: #{$diff-merge-header-border-color};
+ --red-ui-diff-merge-header-color: #{colors.$diff-merge-header-color};
+ --red-ui-diff-merge-header-background: #{colors.$diff-merge-header-background};
+ --red-ui-diff-merge-header-border-color: #{colors.$diff-merge-header-border-color};
- --red-ui-menuBackground: #{$menuBackground};
- --red-ui-menuDivider: #{$menuDivider};
- --red-ui-menuColor: #{$menuColor};
- --red-ui-menuActiveColor: #{$menuActiveColor};
- --red-ui-menuActiveBackground: #{$menuActiveBackground};
- --red-ui-menuDisabledColor: #{$menuDisabledColor};
- --red-ui-menuHoverColor: #{$menuHoverColor};
- --red-ui-menuHoverBackground: #{$menuHoverBackground};
- --red-ui-menuCaret: #{$menuCaret};
+ --red-ui-menuBackground: #{colors.$menuBackground};
+ --red-ui-menuDivider: #{colors.$menuDivider};
+ --red-ui-menuColor: #{colors.$menuColor};
+ --red-ui-menuActiveColor: #{colors.$menuActiveColor};
+ --red-ui-menuActiveBackground: #{colors.$menuActiveBackground};
+ --red-ui-menuDisabledColor: #{colors.$menuDisabledColor};
+ --red-ui-menuHoverColor: #{colors.$menuHoverColor};
+ --red-ui-menuHoverBackground: #{colors.$menuHoverBackground};
+ --red-ui-menuCaret: #{colors.$menuCaret};
- --red-ui-view-navigator-background: #{$view-navigator-background};
+ --red-ui-view-navigator-background: #{colors.$view-navigator-background};
- --red-ui-view-lasso-stroke: #{$view-lasso-stroke};
- --red-ui-view-lasso-fill: #{$view-lasso-fill};
+ --red-ui-view-lasso-stroke: #{colors.$view-lasso-stroke};
+ --red-ui-view-lasso-fill: #{colors.$view-lasso-fill};
- --red-ui-view-background: #{$view-background};
- --red-ui-view-grid-color: #{$view-grid-color};
+ --red-ui-view-background: #{colors.$view-background};
+ --red-ui-view-grid-color: #{colors.$view-grid-color};
- --red-ui-node-label-color: #{$node-label-color};
- --red-ui-node-port-label-color: #{$node-port-label-color};
- --red-ui-node-border: #{$node-border};
- --red-ui-node-border-unknown: #{$node-border-unknown};
- --red-ui-node-border-placeholder: #{$node-border-placeholder};
- --red-ui-node-background-placeholder: #{$node-background-placeholder};
+ --red-ui-node-label-color: #{colors.$node-label-color};
+ --red-ui-node-port-label-color: #{colors.$node-port-label-color};
+ --red-ui-node-border: #{colors.$node-border};
+ --red-ui-node-border-unknown: #{colors.$node-border-unknown};
+ --red-ui-node-border-placeholder: #{colors.$node-border-placeholder};
+ --red-ui-node-background-placeholder: #{colors.$node-background-placeholder};
- --red-ui-node-port-background: #{$node-port-background};
- --red-ui-node-port-background-hover: #{$node-port-background-hover};
- --red-ui-node-icon-color: #{$node-icon-color};
- --red-ui-node-icon-background-color: #{$node-icon-background-color};
- --red-ui-node-icon-background-color-fill: #{$node-icon-background-color-fill};
- --red-ui-node-icon-background-color-opacity: #{$node-icon-background-color-opacity};
- --red-ui-node-icon-border-color: #{$node-icon-border-color};
- --red-ui-node-icon-border-color-opacity: #{$node-icon-border-color-opacity};
+ --red-ui-node-port-background: #{colors.$node-port-background};
+ --red-ui-node-port-background-hover: #{colors.$node-port-background-hover};
+ --red-ui-node-icon-color: #{colors.$node-icon-color};
+ --red-ui-node-icon-background-color: #{colors.$node-icon-background-color};
+ --red-ui-node-icon-background-color-fill: #{colors.$node-icon-background-color-fill};
+ --red-ui-node-icon-background-color-opacity: #{colors.$node-icon-background-color-opacity};
+ --red-ui-node-icon-border-color: #{colors.$node-icon-border-color};
+ --red-ui-node-icon-border-color-opacity: #{colors.$node-icon-border-color-opacity};
- --red-ui-node-config-background: #{$node-config-background};
- --red-ui-node-config-icon-container-disabled: #{$node-config-icon-container-disabled};
+ --red-ui-node-config-background: #{colors.$node-config-background};
+ --red-ui-node-config-icon-container-disabled: #{colors.$node-config-icon-container-disabled};
- --red-ui-node-link-port-background: #{$node-link-port-background};
+ --red-ui-node-link-port-background: #{colors.$node-link-port-background};
- --red-ui-node-status-error-border: #{$node-status-error-border};
- --red-ui-node-status-error-background: #{$node-status-error-background};
- --red-ui-node-status-changed-border: #{$node-status-changed-border};
- --red-ui-node-status-changed-background: #{$node-status-changed-background};
+ --red-ui-node-status-error-border: #{colors.$node-status-error-border};
+ --red-ui-node-status-error-background: #{colors.$node-status-error-background};
+ --red-ui-node-status-changed-border: #{colors.$node-status-changed-border};
+ --red-ui-node-status-changed-background: #{colors.$node-status-changed-background};
@each $current-color in red green yellow blue grey gray {
- --red-ui-node-status-colors-#{"" + $current-color}: #{map-get($node-status-colors, $current-color)};
+ --red-ui-node-status-colors-#{"" + $current-color}: #{map.get(colors.$node-status-colors, $current-color)};
}
- --red-ui-node-selected-color: #{$node-selected-color};
- --red-ui-port-selected-color: #{$port-selected-color};
+ --red-ui-node-selected-color: #{colors.$node-selected-color};
+ --red-ui-port-selected-color: #{colors.$port-selected-color};
- --red-ui-link-color: #{$link-color};
- --red-ui-link-link-color: #{$link-link-color};
- --red-ui-link-disabled-color: #{$link-disabled-color};
- --red-ui-link-link-active-color: #{$link-link-active-color};
- --red-ui-link-unknown-color: #{$link-unknown-color};
+ --red-ui-link-color: #{colors.$link-color};
+ --red-ui-link-link-color: #{colors.$link-link-color};
+ --red-ui-link-disabled-color: #{colors.$link-disabled-color};
+ --red-ui-link-link-active-color: #{colors.$link-link-active-color};
+ --red-ui-link-unknown-color: #{colors.$link-unknown-color};
- --red-ui-clipboard-textarea-background: #{$clipboard-textarea-background};
+ --red-ui-clipboard-textarea-background: #{colors.$clipboard-textarea-background};
- --red-ui-deploy-button-color: #{$deploy-button-color};
- --red-ui-deploy-button-color-active: #{$deploy-button-color-active};
- --red-ui-deploy-button-color-disabled: #{$deploy-button-color-disabled};
- --red-ui-deploy-button-background: #{$deploy-button-background};
- --red-ui-deploy-button-background-hover: #{$deploy-button-background-hover};
- --red-ui-deploy-button-background-active: #{$deploy-button-background-active};
- --red-ui-deploy-button-background-disabled: #{$deploy-button-background-disabled};
- --red-ui-deploy-button-background-disabled-hover: #{$deploy-button-background-disabled-hover};
+ --red-ui-deploy-button-color: #{colors.$deploy-button-color};
+ --red-ui-deploy-button-color-active: #{colors.$deploy-button-color-active};
+ --red-ui-deploy-button-color-disabled: #{colors.$deploy-button-color-disabled};
+ --red-ui-deploy-button-background: #{colors.$deploy-button-background};
+ --red-ui-deploy-button-background-hover: #{colors.$deploy-button-background-hover};
+ --red-ui-deploy-button-background-active: #{colors.$deploy-button-background-active};
+ --red-ui-deploy-button-background-disabled: #{colors.$deploy-button-background-disabled};
+ --red-ui-deploy-button-background-disabled-hover: #{colors.$deploy-button-background-disabled-hover};
- --red-ui-header-background: #{$header-background};
- --red-ui-header-accent: #{$header-accent};
- --red-ui-header-button-background-active: #{$header-button-background-active};
- --red-ui-header-menu-color: #{$header-menu-color};
- --red-ui-header-menu-color-disabled: #{$header-menu-color-disabled};
- --red-ui-header-menu-heading-color: #{$header-menu-heading-color};
- --red-ui-header-menu-sublabel-color: #{$header-menu-sublabel-color};
- --red-ui-header-menu-background: #{$header-menu-background};
- --red-ui-header-menu-item-hover: #{$header-menu-item-hover};
- --red-ui-header-menu-item-border-active: #{$header-menu-item-border-active};
- --red-ui-headerMenuItemDivider: #{$headerMenuItemDivider};
- --red-ui-headerMenuCaret: #{$headerMenuCaret};
+ --red-ui-header-background: #{colors.$header-background};
+ --red-ui-header-accent: #{colors.$header-accent};
+ --red-ui-header-button-background-active: #{colors.$header-button-background-active};
+ --red-ui-header-menu-color: #{colors.$header-menu-color};
+ --red-ui-header-menu-color-disabled: #{colors.$header-menu-color-disabled};
+ --red-ui-header-menu-heading-color: #{colors.$header-menu-heading-color};
+ --red-ui-header-menu-sublabel-color: #{colors.$header-menu-sublabel-color};
+ --red-ui-header-menu-background: #{colors.$header-menu-background};
+ --red-ui-header-menu-item-hover: #{colors.$header-menu-item-hover};
+ --red-ui-header-menu-item-border-active: #{colors.$header-menu-item-border-active};
+ --red-ui-headerMenuItemDivider: #{colors.$headerMenuItemDivider};
+ --red-ui-headerMenuCaret: #{colors.$headerMenuCaret};
- --red-ui-vcCommitShaColor: #{$vcCommitShaColor};
+ --red-ui-vcCommitShaColor: #{colors.$vcCommitShaColor};
- --red-ui-dnd-background: #{$dnd-background};
- --red-ui-dnd-color: #{$dnd-color};
+ --red-ui-dnd-background: #{colors.$dnd-background};
+ --red-ui-dnd-color: #{colors.$dnd-color};
- --red-ui-notification-border-default: #{$notification-border-default};
- --red-ui-notification-border-success: #{$notification-border-success};
- --red-ui-notification-border-warning: #{$notification-border-warning};
- --red-ui-notification-border-error: #{$notification-border-error};
+ --red-ui-notification-border-default: #{colors.$notification-border-default};
+ --red-ui-notification-border-success: #{colors.$notification-border-success};
+ --red-ui-notification-border-warning: #{colors.$notification-border-warning};
+ --red-ui-notification-border-error: #{colors.$notification-border-error};
- --red-ui-debug-message-background: #{$debug-message-background};
- --red-ui-debug-message-background-hover: #{$debug-message-background-hover};
+ --red-ui-debug-message-background: #{colors.$debug-message-background};
+ --red-ui-debug-message-background-hover: #{colors.$debug-message-background-hover};
- --red-ui-debug-message-text-color: #{$debug-message-text-color};
- --red-ui-debug-message-text-color-meta: #{$debug-message-text-color-meta};
- --red-ui-debug-message-text-color-object-key: #{$debug-message-text-color-object-key};
- --red-ui-debug-message-text-color-msg-type-other: #{$debug-message-text-color-msg-type-other};
- --red-ui-debug-message-text-color-msg-type-string: #{$debug-message-text-color-msg-type-string};
- --red-ui-debug-message-text-color-msg-type-null: #{$debug-message-text-color-msg-type-null};
- --red-ui-debug-message-text-color-msg-type-meta: #{$debug-message-text-color-msg-type-meta};
- --red-ui-debug-message-text-color-msg-type-number: #{$debug-message-text-color-msg-type-number};
+ --red-ui-debug-message-text-color: #{colors.$debug-message-text-color};
+ --red-ui-debug-message-text-color-meta: #{colors.$debug-message-text-color-meta};
+ --red-ui-debug-message-text-color-object-key: #{colors.$debug-message-text-color-object-key};
+ --red-ui-debug-message-text-color-msg-type-other: #{colors.$debug-message-text-color-msg-type-other};
+ --red-ui-debug-message-text-color-msg-type-string: #{colors.$debug-message-text-color-msg-type-string};
+ --red-ui-debug-message-text-color-msg-type-null: #{colors.$debug-message-text-color-msg-type-null};
+ --red-ui-debug-message-text-color-msg-type-meta: #{colors.$debug-message-text-color-msg-type-meta};
+ --red-ui-debug-message-text-color-msg-type-number: #{colors.$debug-message-text-color-msg-type-number};
- --red-ui-debug-message-border: #{$debug-message-border};
- --red-ui-debug-message-border-hover: #{$debug-message-border-hover};
- --red-ui-debug-message-border-warning: #{$debug-message-border-warning};
- --red-ui-debug-message-border-error: #{$debug-message-border-error};
+ --red-ui-debug-message-border: #{colors.$debug-message-border};
+ --red-ui-debug-message-border-hover: #{colors.$debug-message-border-hover};
+ --red-ui-debug-message-border-warning: #{colors.$debug-message-border-warning};
+ --red-ui-debug-message-border-error: #{colors.$debug-message-border-error};
- --red-ui-group-default-fill: #{$group-default-fill};
- --red-ui-group-default-fill-opacity: #{$group-default-fill-opacity};
- --red-ui-group-default-stroke: #{$group-default-stroke};
- --red-ui-group-default-stroke-opacity: #{$group-default-stroke-opacity};
- --red-ui-group-default-label-color: #{$group-default-label-color};
+ --red-ui-group-default-fill: #{colors.$group-default-fill};
+ --red-ui-group-default-fill-opacity: #{colors.$group-default-fill-opacity};
+ --red-ui-group-default-stroke: #{colors.$group-default-stroke};
+ --red-ui-group-default-stroke-opacity: #{colors.$group-default-stroke-opacity};
+ --red-ui-group-default-label-color: #{colors.$group-default-label-color};
- --red-ui-tourGuide-border: #{$tourGuide-border};
- --red-ui-tourGuide-heading-color: #{$tourGuide-heading-color};
+ --red-ui-tourGuide-border: #{colors.$tourGuide-border};
+ --red-ui-tourGuide-heading-color: #{colors.$tourGuide-heading-color};
- --red-ui-grip-color: #{$grip-color};
+ --red-ui-grip-color: #{colors.$grip-color};
- --red-ui-icons-flow-color: #{$icons-flow-color};
+ --red-ui-icons-flow-color: #{colors.$icons-flow-color};
- --red-ui-spinner-color: #{$spinner-color};
+ --red-ui-spinner-color: #{colors.$spinner-color};
- --red-ui-tab-icon-color: #{$tab-icon-color};
+ --red-ui-tab-icon-color: #{colors.$tab-icon-color};
@each $current-color in 1 2 3 4 5 {
- --red-ui-user-profile-colors-#{"" + $current-color}: #{map-get($user-profile-colors, $current-color)};
+ --red-ui-user-profile-colors-#{"" + $current-color}: #{map.get(colors.$user-profile-colors, $current-color)};
}
}
diff --git a/packages/node_modules/@node-red/editor-client/src/sass/workspace.scss b/packages/node_modules/@node-red/editor-client/src/sass/workspace.scss
index e096c7cf3..95b8b4b45 100644
--- a/packages/node_modules/@node-red/editor-client/src/sass/workspace.scss
+++ b/packages/node_modules/@node-red/editor-client/src/sass/workspace.scss
@@ -1,3 +1,5 @@
+@use "mixins";
+
/**
* Copyright JS Foundation and other contributors, http://js.foundation
*
@@ -22,7 +24,7 @@
bottom: 0px;
right: 322px;
overflow: hidden;
- @include component-border;
+ @include mixins.component-border;
transition: left 0.1s ease-in-out;
}
@@ -40,7 +42,7 @@
}
}
#red-ui-workspace-tabs-shade {
- @include shade;
+ @include mixins.shade;
z-index: 2;
bottom: auto;
height: 35px;
@@ -157,7 +159,7 @@
}
.red-ui-component-footer {
- @include component-footer;
+ @include mixins.component-footer;
> .button-group {
display: inline-block;
@@ -176,12 +178,12 @@
a.red-ui-footer-button,
button.red-ui-footer-button {
- @include component-footer-button;
+ @include mixins.component-footer-button;
}
a.red-ui-footer-button-toggle,
button.red-ui-footer-button-toggle {
- @include component-footer-button-toggle;
+ @include mixins.component-footer-button-toggle;
}
.red-ui-statusbar-widget {
diff --git a/packages/node_modules/@node-red/editor-client/src/sass/workspaceToolbar.scss b/packages/node_modules/@node-red/editor-client/src/sass/workspaceToolbar.scss
index d0b0370ab..7bc79f35a 100644
--- a/packages/node_modules/@node-red/editor-client/src/sass/workspaceToolbar.scss
+++ b/packages/node_modules/@node-red/editor-client/src/sass/workspaceToolbar.scss
@@ -1,3 +1,5 @@
+@use "mixins";
+
/**
* Copyright JS Foundation and other contributors, http://js.foundation
*
@@ -32,7 +34,7 @@
white-space: nowrap;
transition: right 0.2s ease;
overflow: hidden;
- @include disable-selection;
+ @include mixins.disable-selection;
label {
padding: 1px 8px;
@@ -44,12 +46,12 @@
padding: 0;
}
.button {
- @include workspace-button;
+ @include mixins.workspace-button;
margin-right: 10px;
padding: 2px 8px;
}
.button-group {
- @include disable-selection;
+ @include mixins.disable-selection;
.button:first-child {
margin-right: 0;
diff --git a/packages/node_modules/@node-red/editor-client/src/tours/images/nr4-auto-complete.png b/packages/node_modules/@node-red/editor-client/src/tours/4.0/images/nr4-auto-complete.png
similarity index 100%
rename from packages/node_modules/@node-red/editor-client/src/tours/images/nr4-auto-complete.png
rename to packages/node_modules/@node-red/editor-client/src/tours/4.0/images/nr4-auto-complete.png
diff --git a/packages/node_modules/@node-red/editor-client/src/tours/images/nr4-background-deploy.png b/packages/node_modules/@node-red/editor-client/src/tours/4.0/images/nr4-background-deploy.png
similarity index 100%
rename from packages/node_modules/@node-red/editor-client/src/tours/images/nr4-background-deploy.png
rename to packages/node_modules/@node-red/editor-client/src/tours/4.0/images/nr4-background-deploy.png
diff --git a/packages/node_modules/@node-red/editor-client/src/tours/images/nr4-config-select.png b/packages/node_modules/@node-red/editor-client/src/tours/4.0/images/nr4-config-select.png
similarity index 100%
rename from packages/node_modules/@node-red/editor-client/src/tours/images/nr4-config-select.png
rename to packages/node_modules/@node-red/editor-client/src/tours/4.0/images/nr4-config-select.png
diff --git a/packages/node_modules/@node-red/editor-client/src/tours/images/nr4-diff-update.png b/packages/node_modules/@node-red/editor-client/src/tours/4.0/images/nr4-diff-update.png
similarity index 100%
rename from packages/node_modules/@node-red/editor-client/src/tours/images/nr4-diff-update.png
rename to packages/node_modules/@node-red/editor-client/src/tours/4.0/images/nr4-diff-update.png
diff --git a/packages/node_modules/@node-red/editor-client/src/tours/images/nr4-multiplayer-location.png b/packages/node_modules/@node-red/editor-client/src/tours/4.0/images/nr4-multiplayer-location.png
similarity index 100%
rename from packages/node_modules/@node-red/editor-client/src/tours/images/nr4-multiplayer-location.png
rename to packages/node_modules/@node-red/editor-client/src/tours/4.0/images/nr4-multiplayer-location.png
diff --git a/packages/node_modules/@node-red/editor-client/src/tours/images/nr4-multiplayer.png b/packages/node_modules/@node-red/editor-client/src/tours/4.0/images/nr4-multiplayer.png
similarity index 100%
rename from packages/node_modules/@node-red/editor-client/src/tours/images/nr4-multiplayer.png
rename to packages/node_modules/@node-red/editor-client/src/tours/4.0/images/nr4-multiplayer.png
diff --git a/packages/node_modules/@node-red/editor-client/src/tours/images/nr4-plugins.png b/packages/node_modules/@node-red/editor-client/src/tours/4.0/images/nr4-plugins.png
similarity index 100%
rename from packages/node_modules/@node-red/editor-client/src/tours/images/nr4-plugins.png
rename to packages/node_modules/@node-red/editor-client/src/tours/4.0/images/nr4-plugins.png
diff --git a/packages/node_modules/@node-red/editor-client/src/tours/images/nr4-sf-config.png b/packages/node_modules/@node-red/editor-client/src/tours/4.0/images/nr4-sf-config.png
similarity index 100%
rename from packages/node_modules/@node-red/editor-client/src/tours/images/nr4-sf-config.png
rename to packages/node_modules/@node-red/editor-client/src/tours/4.0/images/nr4-sf-config.png
diff --git a/packages/node_modules/@node-red/editor-client/src/tours/images/nr4-timestamp-formatting.png b/packages/node_modules/@node-red/editor-client/src/tours/4.0/images/nr4-timestamp-formatting.png
similarity index 100%
rename from packages/node_modules/@node-red/editor-client/src/tours/images/nr4-timestamp-formatting.png
rename to packages/node_modules/@node-red/editor-client/src/tours/4.0/images/nr4-timestamp-formatting.png
diff --git a/packages/node_modules/@node-red/editor-client/src/tours/4.0/welcome.js b/packages/node_modules/@node-red/editor-client/src/tours/4.0/welcome.js
new file mode 100644
index 000000000..02a559136
--- /dev/null
+++ b/packages/node_modules/@node-red/editor-client/src/tours/4.0/welcome.js
@@ -0,0 +1,231 @@
+export default {
+ version: "4.0.0",
+ steps: [
+ {
+ titleIcon: "fa fa-map-o",
+ title: {
+ "en-US": "Welcome to Node-RED 4.0!",
+ "ja": "Node-RED 4.0 へようこそ!",
+ "fr": "Bienvenue dans Node-RED 4.0!"
+ },
+ description: {
+ "en-US": "Let's take a moment to discover the new features in this release.
",
+ "ja": "本リリースの新機能を見つけてみましょう。
",
+ "fr": "Prenons un moment pour découvrir les nouvelles fonctionnalités de cette version.
"
+ }
+ },
+ {
+ title: {
+ "en-US": "Multiplayer Mode",
+ "ja": "複数ユーザ同時利用モード",
+ "fr": "Mode Multi-utilisateur"
+ },
+ image: 'images/nr4-multiplayer-location.png',
+ description: {
+ "en-US": `This release includes the first small steps towards making Node-RED easier
+ to work with when you have multiple people editing flows at the same time.
+ When this feature is enabled, you will now see who else has the editor open and some
+ basic information on where they are in the editor.
+ Check the release post for details on how to enable this feature in your settings file.
`,
+ "ja": `本リリースには、複数ユーザが同時にフローを編集する時に、Node-REDをより使いやすくするのための最初の微修正が入っています。
+ 本機能を有効にすると、誰がエディタを開いているか、その人がエディタ上のどこにいるかの基本的な情報が表示されます。
+ 設定ファイルで本機能を有効化する方法の詳細は、リリースの投稿を確認してください。
`,
+ "fr": `Cette version inclut les premières étapes visant à rendre Node-RED plus facile à utiliser
+ lorsque plusieurs personnes modifient des flux en même temps.
+ Lorsque cette fonctionnalité est activée, vous pourrez désormais voir si d’autres utilisateurs ont
+ ouvert l'éditeur. Vous pourrez également savoir où ces utilisateurs se trouvent dans l'éditeur.
+ Consultez la note de publication pour plus de détails sur la façon d'activer cette fonctionnalité
+ dans votre fichier de paramètres.
`
+ }
+ },
+ {
+ title: {
+ "en-US": "Better background deploy handling",
+ "ja": "バックグラウンドのデプロイ処理の改善",
+ "fr": "Meilleure gestion du déploiement en arrière-plan"
+ },
+ image: 'images/nr4-background-deploy.png',
+ description: {
+ "en-US": `If another user deploys changes whilst you are editing, we now use a more discrete notification
+ that doesn't stop you continuing your work - especially if they are being very productive and deploying lots
+ of changes.
`,
+ "ja": `他のユーザが変更をデプロイした時に、特に変更が多い生産的な編集作業を妨げないように通知するようになりました。`,
+ "fr": `Si un autre utilisateur déploie des modifications pendant que vous êtes en train de modifier, vous recevrez
+ une notification plus discrète qu'auparavant qui ne vous empêche pas de continuer votre travail.
`
+ }
+ },
+ {
+ title: {
+ "en-US": "Improved flow diffs",
+ "ja": "フローの差分表示の改善",
+ "fr": "Amélioration des différences de flux"
+ },
+ image: 'images/nr4-diff-update.png',
+ description: {
+ "en-US": `When viewing changes made to a flow, Node-RED now distinguishes between nodes that have had configuration
+ changes and those that have only been moved.
+
When faced with a long list of changes to look at, this makes it much easier to focus on more significant items.
`,
+ "ja": `フローの変更内容を表示する時に、Node-REDは設定が変更されたノードと、移動されただけのノードを区別するようになりました。
+
これによって、多くの変更内容を確認する際に、重要な項目に焦点を当てることができます。
`,
+ "fr": `Lors de l'affichage des modifications apportées à un flux, Node-RED fait désormais la distinction entre les
+ noeuds qui ont changé de configuration et ceux qui ont seulement été déplacés.
+
Face à une longue liste de changements à examiner, il est beaucoup plus facile de se concentrer sur les éléments les
+ plus importants.
`
+ }
+ },
+ {
+ title: {
+ "en-US": "Better Configuration Node UX",
+ "ja": "設定ノードのUXが向上",
+ "fr": "Meilleure expérience utilisateur du noeud de configuration"
+ },
+ image: 'images/nr4-config-select.png',
+ description: {
+ "en-US": `The Configuration node selection UI has had a small update to have a dedicated 'add' button
+ next to the select box.
+ It's a small change, but should make it easier to work with your config nodes.
`,
+ "ja": `設定ノードを選択するUIが修正され、選択ボックスの隣に専用の「追加」ボタンが追加されました。
+ 微修正ですが設定ノードの操作が容易になります。
`,
+ "fr": `L'interface utilisateur de la sélection du noeud de configuration a fait l'objet d'une petite
+ mise à jour afin de disposer d'un bouton « Ajouter » à côté de la zone de sélection.
+ C'est un petit changement, mais cela devrait faciliter le travail avec vos noeuds de configuration.
`
+ }
+ },
+ {
+ title: {
+ "en-US": "Timestamp formatting options",
+ "ja": "タイムスタンプの形式の項目",
+ "fr": "Options de formatage de l'horodatage"
+ },
+ image: 'images/nr4-timestamp-formatting.png',
+ description: {
+ "en-US": `Nodes that let you set a timestamp now have options on what format that timestamp should be in.
+ We're keeping it simple to begin with by providing three options:
+
+ Milliseconds since epoch - this is existing behaviour of the timestamp option
+ ISO 8601 - a common format used by many systems
+ JavaScript Date Object
+ `,
+ "ja": `タイムスタンプを設定するノードに、タイムスタンプの形式を指定できる項目が追加されました。
+ 次の3つの項目を追加したことで、簡単に選択できるようになりました:
+
+ エポックからのミリ秒 - 従来動作と同じになるタイムスタンプの項目
+ ISO 8601 - 多くのシステムで使用されている共通の形式
+ JavaScript日付オブジェクト
+ `,
+ "fr": `Les noeuds qui vous permettent de définir un horodatage disposent désormais d'options sur le format dans lequel cet horodatage peut être défini.
+ Nous gardons les choses simples en proposant trois options :
+
+ Millisecondes depuis l'époque : il s'agit du comportement existant de l'option d'horodatage
+ ISO 8601 : un format commun utilisé par de nombreux systèmes
+ Objet Date JavaScript
+ `
+ }
+ },
+ {
+ title: {
+ "en-US": "Auto-complete of flow/global and env types",
+ "ja": "フロー/グローバル、環境変数の型の自動補完",
+ "fr": "Saisie automatique des types de flux/global et env"
+ },
+ image: 'images/nr4-auto-complete.png',
+ description: {
+ "en-US": `The flow/global context inputs and the env input
+ now all include auto-complete suggestions based on the live state of your flows.
+ `,
+ "ja": `flow/globalコンテキストやenvの入力を、現在のフローの状態をもとに自動補完で提案するようになりました。
+ `,
+ "fr": `Les entrées contextuelles flow/global et l'entrée env
+ incluent désormais des suggestions de saisie semi-automatique basées sur l'état actuel de vos flux.
+ `,
+ }
+ },
+ {
+ title: {
+ "en-US": "Config node customisation in Subflows",
+ "ja": "サブフローでの設定ノードのカスタマイズ",
+ "fr": "Personnalisation du noeud de configuration dans les sous-flux"
+ },
+ image: 'images/nr4-sf-config.png',
+ description: {
+ "en-US": `Subflows can now be customised to allow each instance to use a different
+ config node of a selected type.
+ For example, each instance of a subflow that connects to an MQTT Broker and does some post-processing
+ of the messages received can be pointed at a different broker.
+ `,
+ "ja": `サブフローをカスタマイズして、選択した型の異なる設定ノードを各インスタンスが使用できるようになりました。
+ 例えば、MQTTブローカへ接続し、メッセージ受信と後処理を行うサブフローの各インスタンスに異なるブローカを指定することも可能です。
+ `,
+ "fr": `Les sous-flux peuvent désormais être personnalisés pour permettre à chaque instance d'utiliser un
+ noeud de configuration d'un type sélectionné.
+ Par exemple, chaque instance d'un sous-flux qui se connecte à un courtier MQTT et effectue un post-traitement
+ des messages reçus peut être pointée vers un autre courtier.
+ `
+ }
+ },
+ {
+ title: {
+ "en-US": "Remembering palette state",
+ "ja": "パレットの状態を維持",
+ "fr": "Mémorisation de l'état de la palette"
+ },
+ description: {
+ "en-US": `The palette now remembers what categories you have hidden between reloads - as well as any
+ filter you have applied.
`,
+ "ja": `パレット上で非表示にしたカテゴリや適用したフィルタが、リロードしても記憶されるようになりました。
`,
+ "fr": `La palette se souvient désormais des catégories que vous avez masquées entre les rechargements,
+ ainsi que le filtre que vous avez appliqué.
`
+ }
+ },
+ {
+ title: {
+ "en-US": "Plugins shown in the Palette Manager",
+ "ja": "パレット管理にプラグインを表示",
+ "fr": "Affichage des Plugins dans le gestionnaire de palettes"
+ },
+ image: 'images/nr4-plugins.png',
+ description: {
+ "en-US": `The palette manager now shows any plugin modules you have installed, such as
+ node-red-debugger. Previously they would only be shown if the plugins include
+ nodes for the palette.
`,
+ "ja": `パレットの管理に node-red-debugger の様なインストールしたプラグインが表示されます。以前はプラグインにパレット向けのノードが含まれている時のみ表示されていました。
`,
+ "fr": `Le gestionnaire de palettes affiche désormais tous les plugins que vous avez installés,
+ tels que node-red-debugger. Auparavant, ils n'étaient affichés que s'ils contenaient
+ des noeuds pour la palette.
`
+ }
+ },
+ {
+ title: {
+ "en-US": "Node Updates",
+ "ja": "ノードの更新",
+ "fr": "Mises à jour des noeuds"
+ },
+ // image: "images/",
+ description: {
+ "en-US": `The core nodes have received lots of minor fixes, documentation updates and
+ small enhancements. Check the full changelog in the Help sidebar for a full list.
+
+ A fully RFC4180 compliant CSV mode
+ Customisable headers on the WebSocket node
+ Split node now can operate on any message property
+ and lots more...
+ `,
+ "ja": `コアノードには沢山の軽微な修正、ドキュメント更新、小さな機能拡張が入っています。全リストはヘルプサイドバーにある変更履歴を参照してください。
+
+ RFC4180に完全に準拠したCSVモード
+ WebSocketノードのカスタマイズ可能なヘッダ
+ Splitノードは、メッセージプロパティで操作できるようになりました
+ 他にも沢山あります...
+ `,
+ "fr": `Les noeuds principaux ont reçu de nombreux correctifs mineurs ainsi que des améliorations. La documentation a été mise à jour.
+ Consultez le journal des modifications dans la barre latérale d'aide pour une liste complète. Ci-dessous, les changements les plus importants :
+
+ Un mode CSV entièrement conforme à la norme RFC4180
+ En-têtes personnalisables pour le noeud WebSocket
+ Le noeud Split peut désormais fonctionner sur n'importe quelle propriété de message
+ Et bien plus encore...
+ `
+ }
+ }
+ ]
+}
diff --git a/packages/node_modules/@node-red/editor-client/src/tours/welcome.js b/packages/node_modules/@node-red/editor-client/src/tours/welcome.js
index 02a559136..ab09e8455 100644
--- a/packages/node_modules/@node-red/editor-client/src/tours/welcome.js
+++ b/packages/node_modules/@node-red/editor-client/src/tours/welcome.js
@@ -1,12 +1,12 @@
export default {
- version: "4.0.0",
+ version: "4.1.0",
steps: [
{
titleIcon: "fa fa-map-o",
title: {
- "en-US": "Welcome to Node-RED 4.0!",
- "ja": "Node-RED 4.0 へようこそ!",
- "fr": "Bienvenue dans Node-RED 4.0!"
+ "en-US": "Welcome to Node-RED 4.1!",
+ "ja": "Node-RED 4.1 へようこそ!",
+ "fr": "Bienvenue dans Node-RED 4.1!"
},
description: {
"en-US": "Let's take a moment to discover the new features in this release.
",
@@ -16,216 +16,45 @@ export default {
},
{
title: {
- "en-US": "Multiplayer Mode",
- "ja": "複数ユーザ同時利用モード",
- "fr": "Mode Multi-utilisateur"
+ "en-US": "Something new",
},
- image: 'images/nr4-multiplayer-location.png',
+ // image: 'images/nr4-multiplayer-location.png',
description: {
- "en-US": `This release includes the first small steps towards making Node-RED easier
- to work with when you have multiple people editing flows at the same time.
- When this feature is enabled, you will now see who else has the editor open and some
- basic information on where they are in the editor.
- Check the release post for details on how to enable this feature in your settings file.
`,
- "ja": `本リリースには、複数ユーザが同時にフローを編集する時に、Node-REDをより使いやすくするのための最初の微修正が入っています。
- 本機能を有効にすると、誰がエディタを開いているか、その人がエディタ上のどこにいるかの基本的な情報が表示されます。
- 設定ファイルで本機能を有効化する方法の詳細は、リリースの投稿を確認してください。
`,
- "fr": `Cette version inclut les premières étapes visant à rendre Node-RED plus facile à utiliser
- lorsque plusieurs personnes modifient des flux en même temps.
- Lorsque cette fonctionnalité est activée, vous pourrez désormais voir si d’autres utilisateurs ont
- ouvert l'éditeur. Vous pourrez également savoir où ces utilisateurs se trouvent dans l'éditeur.
- Consultez la note de publication pour plus de détails sur la façon d'activer cette fonctionnalité
- dans votre fichier de paramètres.
`
+ "en-US": `Something new
`
}
},
- {
- title: {
- "en-US": "Better background deploy handling",
- "ja": "バックグラウンドのデプロイ処理の改善",
- "fr": "Meilleure gestion du déploiement en arrière-plan"
- },
- image: 'images/nr4-background-deploy.png',
- description: {
- "en-US": `If another user deploys changes whilst you are editing, we now use a more discrete notification
- that doesn't stop you continuing your work - especially if they are being very productive and deploying lots
- of changes.
`,
- "ja": `他のユーザが変更をデプロイした時に、特に変更が多い生産的な編集作業を妨げないように通知するようになりました。`,
- "fr": `Si un autre utilisateur déploie des modifications pendant que vous êtes en train de modifier, vous recevrez
- une notification plus discrète qu'auparavant qui ne vous empêche pas de continuer votre travail.
`
- }
- },
- {
- title: {
- "en-US": "Improved flow diffs",
- "ja": "フローの差分表示の改善",
- "fr": "Amélioration des différences de flux"
- },
- image: 'images/nr4-diff-update.png',
- description: {
- "en-US": `When viewing changes made to a flow, Node-RED now distinguishes between nodes that have had configuration
- changes and those that have only been moved.
-
When faced with a long list of changes to look at, this makes it much easier to focus on more significant items.
`,
- "ja": `フローの変更内容を表示する時に、Node-REDは設定が変更されたノードと、移動されただけのノードを区別するようになりました。
-
これによって、多くの変更内容を確認する際に、重要な項目に焦点を当てることができます。
`,
- "fr": `Lors de l'affichage des modifications apportées à un flux, Node-RED fait désormais la distinction entre les
- noeuds qui ont changé de configuration et ceux qui ont seulement été déplacés.
-
Face à une longue liste de changements à examiner, il est beaucoup plus facile de se concentrer sur les éléments les
- plus importants.
`
- }
- },
- {
- title: {
- "en-US": "Better Configuration Node UX",
- "ja": "設定ノードのUXが向上",
- "fr": "Meilleure expérience utilisateur du noeud de configuration"
- },
- image: 'images/nr4-config-select.png',
- description: {
- "en-US": `The Configuration node selection UI has had a small update to have a dedicated 'add' button
- next to the select box.
- It's a small change, but should make it easier to work with your config nodes.
`,
- "ja": `設定ノードを選択するUIが修正され、選択ボックスの隣に専用の「追加」ボタンが追加されました。
- 微修正ですが設定ノードの操作が容易になります。
`,
- "fr": `L'interface utilisateur de la sélection du noeud de configuration a fait l'objet d'une petite
- mise à jour afin de disposer d'un bouton « Ajouter » à côté de la zone de sélection.
- C'est un petit changement, mais cela devrait faciliter le travail avec vos noeuds de configuration.
`
- }
- },
- {
- title: {
- "en-US": "Timestamp formatting options",
- "ja": "タイムスタンプの形式の項目",
- "fr": "Options de formatage de l'horodatage"
- },
- image: 'images/nr4-timestamp-formatting.png',
- description: {
- "en-US": `Nodes that let you set a timestamp now have options on what format that timestamp should be in.
- We're keeping it simple to begin with by providing three options:
-
- Milliseconds since epoch - this is existing behaviour of the timestamp option
- ISO 8601 - a common format used by many systems
- JavaScript Date Object
- `,
- "ja": `タイムスタンプを設定するノードに、タイムスタンプの形式を指定できる項目が追加されました。
- 次の3つの項目を追加したことで、簡単に選択できるようになりました:
-
- エポックからのミリ秒 - 従来動作と同じになるタイムスタンプの項目
- ISO 8601 - 多くのシステムで使用されている共通の形式
- JavaScript日付オブジェクト
- `,
- "fr": `Les noeuds qui vous permettent de définir un horodatage disposent désormais d'options sur le format dans lequel cet horodatage peut être défini.
- Nous gardons les choses simples en proposant trois options :
-
- Millisecondes depuis l'époque : il s'agit du comportement existant de l'option d'horodatage
- ISO 8601 : un format commun utilisé par de nombreux systèmes
- Objet Date JavaScript
- `
- }
- },
- {
- title: {
- "en-US": "Auto-complete of flow/global and env types",
- "ja": "フロー/グローバル、環境変数の型の自動補完",
- "fr": "Saisie automatique des types de flux/global et env"
- },
- image: 'images/nr4-auto-complete.png',
- description: {
- "en-US": `The flow/global context inputs and the env input
- now all include auto-complete suggestions based on the live state of your flows.
- `,
- "ja": `flow/globalコンテキストやenvの入力を、現在のフローの状態をもとに自動補完で提案するようになりました。
- `,
- "fr": `Les entrées contextuelles flow/global et l'entrée env
- incluent désormais des suggestions de saisie semi-automatique basées sur l'état actuel de vos flux.
- `,
- }
- },
- {
- title: {
- "en-US": "Config node customisation in Subflows",
- "ja": "サブフローでの設定ノードのカスタマイズ",
- "fr": "Personnalisation du noeud de configuration dans les sous-flux"
- },
- image: 'images/nr4-sf-config.png',
- description: {
- "en-US": `Subflows can now be customised to allow each instance to use a different
- config node of a selected type.
- For example, each instance of a subflow that connects to an MQTT Broker and does some post-processing
- of the messages received can be pointed at a different broker.
- `,
- "ja": `サブフローをカスタマイズして、選択した型の異なる設定ノードを各インスタンスが使用できるようになりました。
- 例えば、MQTTブローカへ接続し、メッセージ受信と後処理を行うサブフローの各インスタンスに異なるブローカを指定することも可能です。
- `,
- "fr": `Les sous-flux peuvent désormais être personnalisés pour permettre à chaque instance d'utiliser un
- noeud de configuration d'un type sélectionné.
- Par exemple, chaque instance d'un sous-flux qui se connecte à un courtier MQTT et effectue un post-traitement
- des messages reçus peut être pointée vers un autre courtier.
- `
- }
- },
- {
- title: {
- "en-US": "Remembering palette state",
- "ja": "パレットの状態を維持",
- "fr": "Mémorisation de l'état de la palette"
- },
- description: {
- "en-US": `The palette now remembers what categories you have hidden between reloads - as well as any
- filter you have applied.
`,
- "ja": `パレット上で非表示にしたカテゴリや適用したフィルタが、リロードしても記憶されるようになりました。
`,
- "fr": `La palette se souvient désormais des catégories que vous avez masquées entre les rechargements,
- ainsi que le filtre que vous avez appliqué.
`
- }
- },
- {
- title: {
- "en-US": "Plugins shown in the Palette Manager",
- "ja": "パレット管理にプラグインを表示",
- "fr": "Affichage des Plugins dans le gestionnaire de palettes"
- },
- image: 'images/nr4-plugins.png',
- description: {
- "en-US": `The palette manager now shows any plugin modules you have installed, such as
- node-red-debugger. Previously they would only be shown if the plugins include
- nodes for the palette.
`,
- "ja": `パレットの管理に node-red-debugger の様なインストールしたプラグインが表示されます。以前はプラグインにパレット向けのノードが含まれている時のみ表示されていました。
`,
- "fr": `Le gestionnaire de palettes affiche désormais tous les plugins que vous avez installés,
- tels que node-red-debugger. Auparavant, ils n'étaient affichés que s'ils contenaient
- des noeuds pour la palette.
`
- }
- },
- {
- title: {
- "en-US": "Node Updates",
- "ja": "ノードの更新",
- "fr": "Mises à jour des noeuds"
- },
- // image: "images/",
- description: {
- "en-US": `The core nodes have received lots of minor fixes, documentation updates and
- small enhancements. Check the full changelog in the Help sidebar for a full list.
-
- A fully RFC4180 compliant CSV mode
- Customisable headers on the WebSocket node
- Split node now can operate on any message property
- and lots more...
- `,
- "ja": `コアノードには沢山の軽微な修正、ドキュメント更新、小さな機能拡張が入っています。全リストはヘルプサイドバーにある変更履歴を参照してください。
-
- RFC4180に完全に準拠したCSVモード
- WebSocketノードのカスタマイズ可能なヘッダ
- Splitノードは、メッセージプロパティで操作できるようになりました
- 他にも沢山あります...
- `,
- "fr": `Les noeuds principaux ont reçu de nombreux correctifs mineurs ainsi que des améliorations. La documentation a été mise à jour.
- Consultez le journal des modifications dans la barre latérale d'aide pour une liste complète. Ci-dessous, les changements les plus importants :
-
- Un mode CSV entièrement conforme à la norme RFC4180
- En-têtes personnalisables pour le noeud WebSocket
- Le noeud Split peut désormais fonctionner sur n'importe quelle propriété de message
- Et bien plus encore...
- `
- }
- }
+ // {
+ // title: {
+ // "en-US": "Node Updates",
+ // "ja": "ノードの更新",
+ // "fr": "Mises à jour des noeuds"
+ // },
+ // // image: "images/",
+ // description: {
+ // "en-US": `The core nodes have received lots of minor fixes, documentation updates and
+ // small enhancements. Check the full changelog in the Help sidebar for a full list.
+ //
+ // A fully RFC4180 compliant CSV mode
+ // Customisable headers on the WebSocket node
+ // Split node now can operate on any message property
+ // and lots more...
+ // `,
+ // "ja": `コアノードには沢山の軽微な修正、ドキュメント更新、小さな機能拡張が入っています。全リストはヘルプサイドバーにある変更履歴を参照してください。
+ //
+ // RFC4180に完全に準拠したCSVモード
+ // WebSocketノードのカスタマイズ可能なヘッダ
+ // Splitノードは、メッセージプロパティで操作できるようになりました
+ // 他にも沢山あります...
+ // `,
+ // "fr": `Les noeuds principaux ont reçu de nombreux correctifs mineurs ainsi que des améliorations. La documentation a été mise à jour.
+ // Consultez le journal des modifications dans la barre latérale d'aide pour une liste complète. Ci-dessous, les changements les plus importants :
+ //
+ // Un mode CSV entièrement conforme à la norme RFC4180
+ // En-têtes personnalisables pour le noeud WebSocket
+ // Le noeud Split peut désormais fonctionner sur n'importe quelle propriété de message
+ // Et bien plus encore...
+ // `
+ // }
+ // }
]
}
diff --git a/packages/node_modules/@node-red/nodes/core/common/20-inject.html b/packages/node_modules/@node-red/nodes/core/common/20-inject.html
index 5895220d3..d3b653826 100644
--- a/packages/node_modules/@node-red/nodes/core/common/20-inject.html
+++ b/packages/node_modules/@node-red/nodes/core/common/20-inject.html
@@ -46,12 +46,12 @@
-
+
-
+
-
-
+
+
-
+
diff --git a/packages/node_modules/@node-red/nodes/core/function/16-range.html b/packages/node_modules/@node-red/nodes/core/function/16-range.html
index ebf8340f8..21019703d 100644
--- a/packages/node_modules/@node-red/nodes/core/function/16-range.html
+++ b/packages/node_modules/@node-red/nodes/core/function/16-range.html
@@ -2,7 +2,7 @@
diff --git a/packages/node_modules/@node-red/nodes/core/function/rbe.html b/packages/node_modules/@node-red/nodes/core/function/rbe.html
index 8dff0758d..888486e52 100644
--- a/packages/node_modules/@node-red/nodes/core/function/rbe.html
+++ b/packages/node_modules/@node-red/nodes/core/function/rbe.html
@@ -25,7 +25,7 @@